General
The Workflow Ran With Four Personas Instead of Five and Looked Fine
quintetkit DEV Community 周榜
2 views
I run Claude Code as five separate subagents with different permissions —
architect, coder, reviewer, conflict resolver, UI designer. One of them stopped
loading.
Nothing said so. The work still got done, by whoever was left. It got
slower, review got softer, declared scopes stopped being respected. Every one of
those looks like "the model is having a bad day".
The symptom has the shape of not working well. The cause was not being
there.
A file in .claude/agents/ is skipped silently
Five conditions in the frontmatter, any one of which means the file is not
treated as a subagent:
Condition
What happens
No name
Treated as documentation — a note kept beside your agents
The opening --- is not line 1
Read as having no frontmatter, so documentation again
A name starting with -, or containing :
The whole file is skipped
A name but no description
Skipped
YAML that does not parse
Nothing is read, file skipped
None of these appear in the session. The reason goes to the debug log, which
you see with --debug, which you are not running when things seem fine.
The second row is the one I hit. I had pasted content into a persona file and
an editor put something above the opening ---. From then on the file was
prose sitting next to four agents, and Claude distributed its work to them.
: is unavailable because it is reserved for plugin-scoped names like
my-plugin:reviewer. A leading - is out for the same class of reason.
Copying a persona is where this gets interesting
Adding a persona by duplicating an existing one is the obvious move, and
forgetting to change name is the obvious mistake.
Which of two files with the same name loads is not documented. It is decided
by filesystem read order.
So the same repository can run a different persona on a different machine,
and both machines are "working". I do not have a story about being burned by
this one, and I am fairly sure that is luck rather than care.
claude plugin validate gets you part of the way
claude plugin validate .claude/agents
claude plugin validate ~/.claude/agents
It finds frontmatter that fails to parse. Two limits worth knowing:
it looks only at the directory you name — user scope is a separate run
it does not flag a file that parses but has no name
Which is most of the list above. It is worth running and it is not sufficient.
The one that was my own fault
My coder persona had this:
tools: *
meaning "this one gets everything". tools accepts exact tool names or the
server patterns mcp__<server> / mcp__<server>__*. A bare * is not among
them, and an entry resolving to nothing makes Claude Code refuse to launch the
subagent.
The documented way to say "everything" is to omit the field.
Why my own linter could not see that is written up separately.
https://quintetkit.github.io/en/articles/blind-spot-from-refusing-to-check.html
The short version is that the rule I wrote to avoid false positives was phrased
as "don't look at the tools field".
That one is worse than a missing persona, because coder is the one that writes
the code. The other four keep working, so it presents as the coder being
unreliable today.
What I do now
Two checks, and I only run them twice: after setup, and after adding or copying
a persona.
npx @quintetkit/ccheck # the five conditions, duplicate names, tools: *
claude --debug # once, to see what was skipped and why
And a habit that is cheaper than either: count them. If the configuration
says five personas, the thing you want to confirm is that five loaded — not that
the work is getting done. The work getting done was never the question.
The five conditions and every frontmatter field, in one table:
https://quintetkit.github.io/en/reference/claude-code-subagent-frontmatter.html
I publish the configuration for splitting Claude Code into separate personas —
Architect, Coder, Reviewer, Conflict Resolver — under MIT. Copy it, run
./setup.sh, and it works. It does not depend on your tech stack.
https://github.com/quintetkit/quartet
I built one real tool using nothing but this workflow. Every Issue, PR, review
and merge is still there. The parts that went wrong were not deleted.
https://github.com/quintetkit/mdlinkcheck
The version that adds a UI Designer persona, review criteria, a per-Issue
parallel execution script and a 11-chapter guide is on the
product page.
The full kit — five personas, the scripts and the complete guide — is available here.
https://quintetkit.gumroad.com/l/quintet
Read original: https://dev.to/quintetkit/the-workflow-ran-with-four-personas-instead-of-five-and-looked-fine-2cd7
← Previous
Calling the NovelAI V5 API directly: nai-diffusion-5-full request body, params_version 4/3/1/0 identical, missing v4_prompt is a 500
Next →
Stop Eating Free Scope: The Change Log Habit That Saved My Freelance Hours
Related
The Sky Becomes a Data Center: The Race to Put AI in Orbit
General
1
DEV Community 周榜
Nvidia เปิดสูตรเหรียญทอง IMO ทั้งชุด หลังนักคณิตศาสตร์เตือนเรื่อง AI
General
2
DEV Community 周榜
Stop Eating Free Scope: The Change Log Habit That Saved My Freelance Hours
General
0
DEV Community
Calling the NovelAI V5 API directly: nai-diffusion-5-full request body, params_version 4/3/1/0 identical, missing v4_prompt is a 500
General
2
DEV Community 周榜
Comments0
No comments yet — be the first