Files
Claude-Code-Workflow/.claude/skills/team-lifecycle-v5/role-specs/analyst.md
catlog22 8566e3af44 fix(team): use session-id instead of team-name in team_msg across all skills
Root cause: team_msg --team parameter maps directly to filesystem path
.workflow/.team/{value}/.msg/, so using team-name creates wrong directory.

Changes:
- All team skills (14 skills, 80+ files): Changed team=<team-name> to
  team=<session-id> with clear documentation
- Added NOTE in every file: "team must be session ID (e.g., TLS-xxx-date),
  NOT team name. Extract from Session: field in task description."
- CLI fallback examples updated: --team brainstorm -> --team <session-id>

Skills fixed:
- team-brainstorm, team-coordinate, team-frontend, team-issue
- team-iterdev, team-lifecycle-v3, team-planex, team-quality-assurance
- team-review, team-roadmap-dev, team-tech-debt, team-testing
- team-uidesign, team-ultra-analyze

Also includes new team-executor skill for lightweight session execution.
2026-02-27 18:48:39 +08:00

3.3 KiB

role, prefix, inner_loop, discuss_rounds, subagents, message_types
role prefix inner_loop discuss_rounds subagents message_types
analyst RESEARCH false
DISCUSS-001
explore
discuss
success progress error
research_ready research_progress error

Analyst — Phase 2-4

Phase 2: Seed Analysis

Objective: Extract structured seed information from the topic/idea.

  1. Extract session folder from task description (Session: <path>)
  2. Parse topic from task description (first non-metadata line)
  3. If topic starts with @ or ends with .md/.txt → Read the referenced file as topic content
  4. Run Gemini CLI seed analysis:
Bash({
  command: `ccw cli -p "PURPOSE: Analyze topic and extract structured seed information.
TASK: * Extract problem statement * Identify target users * Determine domain context
* List constraints and assumptions * Identify 3-5 exploration dimensions * Assess complexity
TOPIC: <topic-content>
MODE: analysis
EXPECTED: JSON with: problem_statement, target_users[], domain, constraints[], exploration_dimensions[], complexity_assessment" --tool gemini --mode analysis`,
  run_in_background: true
})
  1. Wait for CLI result, parse seed analysis JSON

Phase 3: Codebase Exploration (conditional)

Objective: Gather codebase context if an existing project is detected.

Condition Action
package.json / Cargo.toml / pyproject.toml / go.mod exists Explore codebase
No project files Skip → codebase context = null

When project detected: Call explore subagent with angle: general, keywords: <from seed analysis>.

Task({
  subagent_type: "cli-explore-agent",
  run_in_background: false,
  description: "Explore general context",
  prompt: "Explore codebase for: <topic>\nFocus angle: general\nKeywords: <seed analysis keywords>\nSession folder: <session-folder>\n..."
})

Use exploration results to build codebase context: tech_stack, architecture_patterns, conventions, integration_points.

Phase 4: Context Packaging + Inline Discuss

4a: Context Packaging

spec-config.json<session-folder>/spec/spec-config.json:

  • session_id, topic, status="research_complete", complexity, depth, focus_areas, mode="interactive"

discovery-context.json<session-folder>/spec/discovery-context.json:

  • session_id, phase=1, seed_analysis (all fields), codebase_context (or null), recommendations

design-intelligence.json<session-folder>/analysis/design-intelligence.json (UI mode only):

  • Produced when frontend keywords detected in seed_analysis
  • Fields: industry, style_direction, ux_patterns, color_strategy, typography, component_patterns

4b: Inline Discuss (DISCUSS-001)

Call discuss subagent with:

  • Artifact: <session-folder>/spec/discovery-context.json
  • Round: DISCUSS-001
  • Perspectives: product, risk, coverage

Handle discuss verdict per team-worker consensus handling protocol.

Report: complexity, codebase presence, problem statement, exploration dimensions, discuss verdict + severity, output paths.

Error Handling

Scenario Resolution
Gemini CLI failure Fallback to direct Claude analysis
Codebase detection failed Continue as new project
Topic too vague Report with clarification questions
Explore subagent fails Continue without codebase context
Discuss subagent fails Proceed without discuss, log warning