#3143·ECC

rules/common/agents.md documents the wrong agent location and invocation names

Author: Kotsur69Created Sep 16, 2026Updated Sep 16, 2026

Summary

rules/common/agents.md tells the model two things about ECC's own agents that are not true for a plugin install, and the resulting failure is silent.

Version: ECC 2.2.1, installed as the ecc@ecc plugin (Claude Code, --marketplace install).

What the rule says

## Available Agents

Located in `~/.claude/agents/`:

| Agent | Purpose | When to Use |
|-------|---------|-------------|
| planner | Implementation planning | Complex features, refactoring |
| architect | System design | Architectural decisions |
| code-reviewer | Code review | After writing code |
...

What is actually true

  1. Location. The agents ship inside the plugin, at plugins/cache/ecc/ecc/2.2.1/agents/*.md (68 of them). ~/.claude/agents/ does not contain them — on this machine it holds only three unrelated local agents.
  2. Names. Plugin agents are namespaced. The Agent tool resolves them as ecc:planner, ecc:architect, ecc:code-reviewer, and so on. The bare names in the table do not resolve.

The rule is installed to ~/.claude/rules/ecc/common/agents.md, which scripts/install-apply.js describes as "managed rules under rules/ecc" — so a local correction is overwritten on the next update.

Impact

This is a quiet failure, which is what makes it worth fixing. The model reads the rule, calls subagent_type: "planner", gets no match, and then simply does the work inline instead of surfacing an error. The user never sees a failure — they just silently stop getting agent delegation, which is the main thing ECC is installed for.

It also interacts badly with the "Immediate Agent Usage" section directly below the table, which instructs the model to reach for planner / code-reviewer / tdd-guide with no user prompt. Every one of those auto-invocations misses.

Suggested fix

In rules/common/agents.md, replace the "Located in ~/.claude/agents/" heading with the plugin-scoped form, and prefix the agent names in the tables:

## Where Agents Live

ECC agents ship with the `ecc@ecc` plugin, not in `~/.claude/agents/`.
They are invoked through the Agent tool with a plugin-scoped `subagent_type`:

    Agent(subagent_type: "ecc:planner", prompt: "...")

The same change applies to the Immediate Agent Usage list, and to the translated copies under docs/es/, docs/ja-JP/, docs/tr/, and docs/zh-CN/, which carry the same text.

Two smaller things noticed while patching this locally, in case they are useful:

  • The table lists 11 agents out of 68 shipped, so most of the roster is undiscoverable from the rule itself. A pointer to /ecc:ecc-guide would help.
  • Some copies of this rule lack the Delegation Completion Contract section that appears elsewhere in the project. Without it, the "Parallel Task Execution" instruction just above can produce agents that spawn children and then end their turn with "waiting for background agents", orphaning the results.

Happy to open a PR with the corrected rule plus the four translations if that is welcome.


Generated with Claude Code