Agent skill

archon-workflow

Task management with Archon MCP server. Manage projects, tasks, documents, and RAG knowledge base. Use for tracking work, organizing projects, searching documentation, and maintaining persistent context across sessions.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/archon-workflow

SKILL.md

Archon Workflow Skill

Triggers

Use this skill when you see:

  • archon, task, project, document
  • rag, knowledge base, search docs
  • task management, project tracking
  • session context, persistent memory

Instructions

Core Concept

Archon is the PRIMARY task management system. It provides:

  • Projects: Container for related work
  • Tasks: Trackable work items with status
  • Documents: Persistent knowledge storage
  • RAG: Knowledge base search

RULE: Always use Archon over TodoWrite for task management.

Project Management

Find Projects

python
# List all projects
find_projects()

# Search projects
find_projects(query="authentication")

# Get specific project with full details
find_projects(project_id="proj-123")

# Get master projects only (no sub-projects)
find_projects(masters_only=True)

# Get sub-projects of a master
find_projects(parent_id="master-proj-123")

Create/Update Projects

python
# Create standalone project
manage_project("create",
    title="User Authentication System",
    description="Implement OAuth2 and JWT authentication",
    github_repo="https://github.com/org/repo"
)

# Create sub-project under master
manage_project("create",
    title="Auth Backend",
    description="Backend authentication services",
    parent_id="master-proj-123"
)

# Update project
manage_project("update",
    project_id="proj-123",
    description="Updated scope and requirements"
)

# Delete project
manage_project("delete", project_id="proj-123")

# Move project (change parent)
manage_project("move",
    project_id="proj-123",
    new_parent_id="new-master-123"
)

Task Management

Task Status Flow

todo -> doing -> review -> done

Find Tasks

python
# All tasks
find_tasks()

# Search tasks
find_tasks(query="authentication")

# Get specific task
find_tasks(task_id="task-123")

# Filter by status
find_tasks(filter_by="status", filter_value="todo")
find_tasks(filter_by="status", filter_value="doing")

# Filter by project
find_tasks(filter_by="project", filter_value="proj-123")

# Filter by assignee
find_tasks(filter_by="assignee", filter_value="User")

# Include sub-project tasks
find_tasks(
    filter_by="project",
    filter_value="master-proj-123",
    include_sub_project_tasks=True
)

# Exclude completed
find_tasks(include_closed=False)

Create Tasks

python
# Create task
manage_task("create",
    project_id="proj-123",
    title="Implement JWT token generation",
    description="""
    Create JWT token generation service.

    Requirements:
    - Support RS256 signing
    - Configurable expiration
    - Include user claims

    Acceptance Criteria:
    - [ ] Tokens validate correctly
    - [ ] Refresh tokens work
    - [ ] Tests passing
    """,
    assignee="User",
    feature="authentication"
)

# Create with priority (0-100, higher = more priority)
manage_task("create",
    project_id="proj-123",
    title="Critical security fix",
    description="Fix authentication bypass vulnerability",
    task_order=90
)

Update Tasks

python
# Start working on task
manage_task("update",
    task_id="task-123",
    status="doing"
)

# Move to review
manage_task("update",
    task_id="task-123",
    status="review"
)

# Complete task
manage_task("update",
    task_id="task-123",
    status="done"
)

# Reassign task
manage_task("update",
    task_id="task-123",
    assignee="Claude"
)

# Update description
manage_task("update",
    task_id="task-123",
    description="Updated requirements..."
)

# Delete task
manage_task("delete", task_id="task-123")

Document Management

Use documents for persistent knowledge that survives sessions.

Document Types

  • spec - Technical specifications
  • design - Design documents
  • note - General notes
  • prp - Product requirement prompts
  • api - API documentation
  • guide - How-to guides

Find Documents

python
# All project documents
find_documents(project_id="proj-123")

# Search documents
find_documents(project_id="proj-123", query="authentication")

# Get specific document
find_documents(project_id="proj-123", document_id="doc-123")

# Filter by type
find_documents(project_id="proj-123", document_type="spec")

Create/Update Documents

python
# Create document
manage_document("create",
    project_id="proj-123",
    title="Authentication Architecture",
    document_type="spec",
    content={
        "overview": "OAuth2 + JWT implementation",
        "components": ["auth-service", "token-service"],
        "decisions": [
            {"decision": "Use RS256", "reason": "Asymmetric for microservices"}
        ]
    },
    tags=["backend", "security"],
    author="Claude"
)

# Update document
manage_document("update",
    project_id="proj-123",
    document_id="doc-123",
    content={
        "overview": "Updated architecture...",
        "last_updated": "2024-01-15"
    }
)

# Delete document
manage_document("delete",
    project_id="proj-123",
    document_id="doc-123"
)

RAG Knowledge Base

Search external documentation and code examples.

Get Available Sources

python
# List all knowledge sources
rag_get_available_sources()
# Returns: sources with id, name, url

Search Knowledge Base

python
# Search all sources (2-5 keywords work best)
rag_search_knowledge_base(
    query="React hooks useState",
    match_count=5
)

# Search specific source
rag_search_knowledge_base(
    query="authentication JWT",
    source_id="src_anthropic_docs",
    match_count=5
)

# Get raw chunks instead of pages
rag_search_knowledge_base(
    query="error handling",
    return_mode="chunks"
)

Search Code Examples

python
# Find code examples
rag_search_code_examples(
    query="FastAPI middleware",
    match_count=5
)

# Filter by source
rag_search_code_examples(
    query="React context",
    source_id="src_react_docs"
)

Read Full Pages

python
# After search, get full page content
rag_read_full_page(page_id="uuid-from-search")

# Or by URL
rag_read_full_page(url="https://docs.example.com/page")

List Pages for Source

python
# Browse all pages in a source
rag_list_pages_for_source(source_id="src_123")

# Filter by section
rag_list_pages_for_source(
    source_id="src_123",
    section="# Getting Started"
)

Session Workflow

Starting a Session

python
# 1. Load project context
project = find_projects(project_id="proj-123")

# 2. Check current tasks
tasks = find_tasks(
    filter_by="project",
    filter_value="proj-123",
    include_closed=False
)

# 3. Load relevant documents
docs = find_documents(project_id="proj-123")

# 4. Start on a task
manage_task("update", task_id="task-123", status="doing")

During Work

python
# Research using RAG
rag_search_knowledge_base(query="relevant topic")

# Update task as you progress
manage_task("update",
    task_id="task-123",
    description="Added: Implementation complete, testing needed"
)

Ending a Session

python
# 1. Update task status
manage_task("update", task_id="task-123", status="review")

# 2. Save session context to document
manage_document("update",
    project_id="proj-123",
    document_id="session-context-doc",
    content={
        "last_session": "2024-01-15",
        "completed": ["Task A", "Task B"],
        "in_progress": ["Task C"],
        "blockers": ["Waiting on API access"],
        "next_steps": ["Complete Task C", "Start Task D"]
    }
)

Best Practices

  1. Always Check Tasks First: Start sessions by checking find_tasks()
  2. Update Status Promptly: Move tasks through workflow as you work
  3. Use Documents for Context: Persist important decisions and state
  4. RAG Before Implementing: Search knowledge base before writing code
  5. Feature Labels: Group related tasks with feature field
  6. Clear Descriptions: Include acceptance criteria in task descriptions
  7. Save Before Clear: Update documents before /clear or /compact

Didn't find tool you were looking for?

Be as detailed as possible for better results