Joan Workflow

This skill should be used when the user asks about "joan", "pods", "workspace", "domain knowledge", "context sync", "joan init", "joan todo", or needs guidance on how Joan's knowledge management system works. Provides workflow guidance for pods, todos, plans, and workspace management.

7 stars

Best use case

Joan Workflow is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

This skill should be used when the user asks about "joan", "pods", "workspace", "domain knowledge", "context sync", "joan init", "joan todo", or needs guidance on how Joan's knowledge management system works. Provides workflow guidance for pods, todos, plans, and workspace management.

Teams using Joan Workflow should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/joan-workflow/SKILL.md --create-dirs "https://raw.githubusercontent.com/Demerzels-lab/elsamultiskillagent/main/public/skills/donny-son/joan-workflow/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/joan-workflow/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How Joan Workflow Compares

Feature / AgentJoan WorkflowStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

This skill should be used when the user asks about "joan", "pods", "workspace", "domain knowledge", "context sync", "joan init", "joan todo", or needs guidance on how Joan's knowledge management system works. Provides workflow guidance for pods, todos, plans, and workspace management.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Joan Workflow

Joan is a workspace-based knowledge and task management system for AI-assisted development. This skill covers when and how to use Joan's core concepts.

## Core Concepts

### Workspaces

Workspaces are the top-level organizational unit in Joan. Each workspace contains:
- **Pods**: Versioned domain knowledge documents
- **Todos**: Tasks scoped to the workspace
- **Plans**: Implementation specs linked to todos
- **Members**: Team members with roles (admin, member)

### Pods

Pods are versioned markdown documents containing domain knowledge. Use pods to:
- Document project architecture and design decisions
- Store domain-specific terminology and business rules
- Share knowledge across team members and AI assistants
- Maintain living documentation that evolves with the project

**Pod lifecycle:**
1. Create locally with `joan pod create`
2. Edit the markdown file in `.joan/pods/`
3. Push to server with `joan pod push`
4. Pull latest with `joan pod pull`

### Todos

Todos are tasks scoped to a workspace. Use todos to:
- Track work items across team members
- Assign tasks and set priorities
- Link implementation plans to tasks

**Todo workflow:**
1. Create with `joan todo create`
2. List with `joan todo list`
3. Update status as work progresses
4. Archive when complete

### Plans

Plans are implementation specs linked to todos. Use plans to:
- Document how a feature will be implemented
- Break down complex tasks into steps
- Share implementation approach with team

## CLI Commands Reference

### Project Initialization

```bash
joan init                    # Interactive workspace selection
joan init -w <workspace-id>  # Non-interactive with specific workspace
joan status                  # Show project and auth status
```

### Pod Management

```bash
joan pod list               # List tracked pods
joan pod list --all         # List all workspace pods
joan pod add                # Add workspace pods to project
joan pod create             # Create new pod locally
joan pod pull               # Pull pods from server
joan pod push               # Push local pods to server
joan pod open               # Open pod in browser
```

### Todo Management

```bash
joan todo list              # List todos for tracked pods
joan todo list --mine       # List todos assigned to me
joan todo create            # Create new todo
joan todo update <id>       # Update todo fields
joan todo archive <id>      # Archive completed todo
```

### Plan Management

```bash
joan plan list <todo-id>    # List plans for a todo
joan plan create <todo-id>  # Create implementation plan
joan plan pull <todo-id>    # Pull plans from server
joan plan push <todo-id>    # Push plans to server
```

### Context Generation

```bash
joan context claude         # Generate CLAUDE.md with Joan context
```

## When to Use What

### Starting a New Project

1. Run `joan init` to connect project to a workspace
2. Select pods relevant to the project domain
3. Run `joan context claude` to inject context into CLAUDE.md
4. Read the generated pod references before coding

### Before Coding a Feature

1. Check if relevant pods exist: `joan pod list --all`
2. Add any missing pods: `joan pod add`
3. Pull latest: `joan pod pull`
4. Read pods to understand domain context

### After Completing Work

1. Consider if learnings should become a pod
2. Update or create todos to reflect progress
3. Push any local changes: `joan pod push` and `joan todo push`

### Documenting New Knowledge

1. Create a pod: `joan pod create`
2. Write domain knowledge in markdown
3. Push to share: `joan pod push`
4. Update CLAUDE.md context: `joan context claude`

## MCP Integration

Joan provides an MCP server at `https://joan.land/mcp/joan` with tools:
- `list_workspaces` - List accessible workspaces
- `list_pods` - List pods in a workspace
- `get_pod` - Retrieve pod content

The MCP server uses OAuth 2.1 authentication. Authenticate via the CLI first with `joan auth login`.

## Project Configuration

Joan stores project config in `.joan/config.yaml`:

```yaml
workspace_id: <uuid>
tracked_pods:
  - name: "Pod Name"
    id: <uuid>
```

Pods are stored locally in `.joan/pods/` as markdown files.

## Best Practices

### Pod Authoring

- Use clear, descriptive titles
- Include context about when the knowledge applies
- Keep pods focused on a single domain concept
- Update pods when knowledge evolves
- Reference related pods when helpful

### Todo Management

- Create todos at the right granularity (not too big, not too small)
- Link todos to relevant pods for context
- Update status promptly to keep team informed
- Archive completed todos to reduce noise

### Context Synchronization

- Run `joan context claude` after changing tracked pods
- Pull pods before starting significant work
- Push changes promptly to share with team

Related Skills

pi-workflow

7
from Demerzels-lab/elsamultiskillagent

Workflow orchestration for Pi's task management, self-improvement, and code quality standards.

pr-commit-workflow

7
from Demerzels-lab/elsamultiskillagent

This skill should be used when creating commits or pull requests, enforcing a human-written PR structure, intent capture, and evidence in agentic workflows.

automation-workflows

7
from Demerzels-lab/elsamultiskillagent

Design and implement automation workflows to save.

openserv-multi-agent-workflows

7
from Demerzels-lab/elsamultiskillagent

Multi-agent workflow examples to work together on the OpenServ Platform.

prompts-workflow

7
from Demerzels-lab/elsamultiskillagent

Automated workflow for collecting, converting, and publishing AI prompts to ClawdHub. Collects from multiple sources (Reddit, GitHub, Hacker News, SearXNG), converts prompts into Clawdbot Skills, and publishes them automatically.

s2g-workflow-engine

7
from Demerzels-lab/elsamultiskillagent

Connect to S2G (s2g.run) visual workflow automation platform over WebSocket.

nano-banana-kling-ad-workflow

7
from Demerzels-lab/elsamultiskillagent

Recreate low-budget AI video ad workflows using Nano Banana image generation plus Kling 3.0 video synthesis.

git-workflows

7
from Demerzels-lab/elsamultiskillagent

Advanced git operations beyond add/commit/push. Use when rebasing, bisecting bugs, using worktrees for parallel development, recovering with reflog, managing subtrees/submodules, resolving merge conflicts, cherry-picking across branches, or working with monorepos.

loom-workflow

7
from Demerzels-lab/elsamultiskillagent

AI-native workflow analyzer for Loom recordings. Breaks down recorded business processes into structured, automatable workflows. Use when: - Analyzing Loom videos to understand workflows - Extracting steps, tools, and decision points from screen recordings - Generating Lobster workflow files from video walkthroughs - Identifying ambiguities and human intervention points in processes

claude-agent-team-workflows

7
from Demerzels-lab/elsamultiskillagent

Universal multi-agent workflow orchestration using Claude Code Agent Teams.

data-cleaning-annotation-workflow

7
from Demerzels-lab/elsamultiskillagent

Complete workflow for time series datasets (Energy, Manufacturing, Climate) on Kaggle to Data Annotation platform.

esri-workflow-smell-detector (consumer)

7
from Demerzels-lab/elsamultiskillagent

Paid client skill for Esri Workflow Smell Detector via x402 (Base/USDC). Use when you want to run a deterministic automation preflight scan on an ArcGIS Pro project snapshot by calling https://api.x402layer.cc/e/esri-smells (HTTP 402 payment flow).