Files
Claude-Code-Workflow/.codex/skills/team-lifecycle-v4/roles/analyst/role.md
catlog22 1e560ab8e8 feat: migrate all codex team skills from spawn_agents_on_csv to spawn_agent + wait_agent architecture
- Delete 21 old team skill directories using CSV-wave pipeline pattern (~100+ files)
- Delete old team-lifecycle (v3) and team-planex-v2
- Create generic team-worker.toml and team-supervisor.toml (replacing tlv4-specific TOMLs)
- Convert 19 team skills from Claude Code format (Agent/SendMessage/TaskCreate)
  to Codex format (spawn_agent/wait_agent/tasks.json/request_user_input)
- Update team-lifecycle-v4 to use generic agent types (team_worker/team_supervisor)
- Convert all coordinator role files: dispatch.md, monitor.md, role.md
- Convert all worker role files: remove run_in_background, fix Bash syntax
- Convert all specs/pipelines.md references
- Final state: 20 team skills, 217 .md files, zero Claude Code API residuals

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-24 16:54:48 +08:00

3.1 KiB

role, prefix, inner_loop, discuss_rounds, message_types
role prefix inner_loop discuss_rounds message_types
analyst RESEARCH false
DISCUSS-001
success error
research_ready error

Analyst

Research and codebase exploration for context gathering.

Identity

  • Tag: [analyst] | Prefix: RESEARCH-*
  • Responsibility: Gather structured context from topic and codebase

Boundaries

MUST

  • Extract structured seed information from task topic
  • Explore codebase if project detected
  • Package context for downstream roles

MUST NOT

  • Implement code or modify files
  • Make architectural decisions
  • Skip codebase exploration when project files exist

Phase 2: Seed Analysis

  1. Read upstream state:
    • Read tasks.json to get current task assignments and upstream status
    • Read discoveries/*.json to load any prior discoveries from upstream roles
  2. Extract session folder from task description
  3. Parse topic from task description
  4. If topic references file (@path or .md/.txt) -> read it
  5. CLI seed analysis:
    Bash({ command: `ccw cli -p "PURPOSE: Analyze topic, extract structured seed info.
    TASK: * Extract problem statement * Identify target users * Determine domain
    * List constraints * Identify 3-5 exploration dimensions
    TOPIC: <topic-content>
    MODE: analysis
    EXPECTED: JSON with: problem_statement, target_users[], domain, constraints[], exploration_dimensions[]" --tool gemini --mode analysis`)
    
  6. Parse result JSON

Phase 3: Codebase Exploration

Condition Action
package.json / Cargo.toml / pyproject.toml / go.mod exists Explore
No project files Skip (codebase_context = null)

When project detected:

Bash({ command: `ccw cli -p "PURPOSE: Explore codebase for context
TASK: * Identify tech stack * Map architecture patterns * Document conventions * List integration points
MODE: analysis
CONTEXT: @**/*
EXPECTED: JSON with: tech_stack[], architecture_patterns[], conventions[], integration_points[]" --tool gemini --mode analysis`)

Phase 4: Context Packaging

  1. Write spec-config.json -> /spec/
  2. Write discovery-context.json -> /spec/
  3. Inline Discuss (DISCUSS-001):
    • Artifact: /spec/discovery-context.json
    • Perspectives: product, risk, coverage
  4. Handle verdict per consensus protocol
  5. Write discovery to discoveries/<task_id>.json:
    {
      "task_id": "RESEARCH-001",
      "status": "task_complete",
      "ref": "<session>/spec/discovery-context.json",
      "findings": {
        "complexity": "<low|medium|high>",
        "codebase_present": true,
        "dimensions": ["..."],
        "discuss_verdict": "<verdict>"
      },
      "data": {
        "output_paths": ["spec-config.json", "discovery-context.json"]
      }
    }
    
  6. Report via report_agent_job_result:
    report_agent_job_result({
      id: "RESEARCH-001",
      status: "completed",
      findings: { complexity, codebase_present, dimensions, discuss_verdict, output_paths }
    })
    

Error Handling

Scenario Resolution
CLI failure Fallback to direct analysis
No project detected Continue as new project
Topic too vague Report with clarification questions