Skip to content

plan-phase, new-project, and quick still spawn general-purpose instead of dedicated agent types #859

@begna112

Description

@begna112

Bug

Several workflows still use subagent_type="general-purpose" with a "First, read agent .md" prompt workaround instead of the dedicated GSD agent types. This was originally needed due to anthropics/claude-code#13898 (custom subagents can't access MCP tools), but that bug appears fixed in Claude Code 2.1.30+ (confirmed on 2.1.63).

Related: #500, #517, #455

Impact

Agents spawned as general-purpose:

  • Don't get the tool configuration from agent frontmatter (no MCP tools, no Skill access)
  • Don't get <tool_preferences> blocks
  • Don't get color coding in the Claude Code UI
  • Waste context reading the agent .md file as their first action instead of having it as system prompt

Affected Spawns

plan-phase.md (3 spawns):

  • Line ~128: Researcher → general-purpose (should be gsd-phase-researcher)
  • Line ~216: Planner → general-purpose (should be gsd-planner)
  • Line ~312: Revision planner → general-purpose (should be gsd-planner)

new-project.md (4 spawns):

  • Lines ~547, ~587, ~627, ~667: 4 parallel researchers → general-purpose (should be gsd-project-researcher)

quick.md (1 spawn):

  • Line ~226: Revision planner → general-purpose (should be gsd-planner)

Already Correct

These workflows already use dedicated types:

  • plan-phase.md: checker → gsd-plan-checker
  • execute-phase.md: executor → gsd-executor, verifier → gsd-verifier
  • new-project.md: synthesizer → gsd-research-synthesizer, roadmapper → gsd-roadmapper
  • research-phase.md: researcher → gsd-phase-researcher

Suggested Fix

Switch all 8 spawns to their dedicated agent types and remove the "First, read agent .md" prompt prefix. The dedicated types already have MCP tools listed in their frontmatter (mcp__context7__, mcp__hashline-edit__, mcp__serena__*) and are properly registered in Claude Code's Task tool registry.

If cross-harness compatibility (OpenCode) is still a concern, the agent type could be conditionally selected based on the runtime, but general-purpose should not be the default on Claude Code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageNew issue awaiting maintainer review

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions