English ・ 繁體中文
6 Claude Code skills for context-safe multi-agent collaboration — task splitter, context budget, output reconciler, adversarial debate, shared memory, acceptance gate. Designed to compose with
codex-delegateandgemini-delegate-skill.
📚 Part of the agentic AI learning roadmap — a 7-stage curated path for building agentic AI, multilingual (zh-TW · zh-CN · English). Multi-agent orchestration is covered in Stage 7.
A focused marketplace for the orchestration layer above delegation. Existing delegate skills solve "Claude → Codex / Gemini handoff." This catalog solves what comes next: how to split a goal across agents, how to reconcile their outputs, how to remember decisions across sessions, and how to gate merges.
Sister marketplace: ai-research-skills
(13 skills for the research workflow).
Three high-leverage scenarios where these skills clearly pay off:
- Multi-locale mirror sync — delegate reads/writes the bulk, main session only consumes a short result summary. Largest saving in our usage.
- Mechanical sweeps in parallel — Codex handles batch edits / renames / refactors; the reviewer pattern catches drift before merge.
- Acceptance gate before commit — structured verdict from a subagent replaces hand-rolled
grep × Nchecks, and the YAML presets have caught real drift the human audit missed.
Token measurements and incident logs are in docs/measured-benefits.md for the curious — but the practical takeaway is just the three scenarios above.
📋 When should I actually invoke which skill / preset? See
docs/when-to-invoke.md— has the trigger rules, YES / NO / judgment-call scenarios, decision flowchart, and a copy-paste CLAUDE.md template you can drop into your own project to codify the rules.
Prerequisite: Claude Code (https://claude.ai/code). Recommended (but
not required): codex-delegate and gemini-delegate already
installed via ai-research-skills, plus their CLI binaries on PATH.
claude plugin marketplace add WenyuChiou/agent-collab-skills
claude plugin install agent-collab-workspace@agent-collab-skillsThis installs all 7 skills as one bundle. Verify:
claude plugin list
ls ~/.claude/skills/ # should include agent-task-splitter, etc.Or use the helper script:
bash scripts/install-all.sh # macOS / Linux / git-bash
pwsh scripts/install-all.ps1 # Windows PowerShellNo. Claude Code's built-in skill matching reads each SKILL.md's description field and auto-routes user prompts. Plugin install is the only setup step — saying "split this across Claude, Codex, and Gemini" triggers agent-task-splitter without any extra configuration.
You may optionally add explicit routing rules to your ~/.claude/CLAUDE.md if you:
- already have a delegation protocol there that competes with these skills (e.g., a long-standing "always hand-write codex task files" rule that would otherwise win the routing race)
- want to enforce hard behaviors (e.g., "always run
agent-acceptance-gatebefore merging any multi-agent round")
Otherwise leave CLAUDE.md alone — the skills are designed to work via description-based discovery.
| Skill | Triggered when you say... | Writes to .coord/ |
|---|---|---|
agent-task-splitter |
"Split this task across Claude / Codex / Gemini" / "Plan a multi-agent run for X" | plan.yml + .ai/codex_task_*.md / .ai/gemini_task_*.md |
agent-context-budget |
"Context is getting too large" / "Prepare a fresh session primer" / "Bound this Codex + Gemini run" | context_<NNN>.md + session_primer.md |
agent-output-reconciler |
"Reconcile these N agent outputs" / "Did Codex and Gemini agree?" | reconciliation_<NNN>.md |
agent-debate |
"Have Claude and Codex debate this design" / "Adversarial review on X" | debate_<topic>.md |
agent-shared-memory |
"Update shared memory with X" / "What have agents decided so far?" | memory.yml |
agent-acceptance-gate |
"Run the acceptance gate" / "Pre-commit check before merging" | acceptance_<NNN>.md |
agent-plan-act-reflect (v0.2.2) |
"Iterate on X until it passes Y" / "Self-correct this draft" | par_<topic>.yml + par_<topic>_final.md |
Numbering <NNN> matches the round field in plan.yml so artifacts
trace back to the run that produced them.
goal
↓ agent-task-splitter
.coord/plan.yml + .ai/codex_task_*.md / .ai/gemini_task_*.md
↓ agent-context-budget
.coord/context_<NNN>.md + .coord/session_primer.md
↓ codex-delegate / gemini-delegate (existing)
.ai/codex_log_*.txt + .result.json + codex_result_*.md
↓ agent-output-reconciler
.coord/reconciliation_<NNN>.md
↓ agent-acceptance-gate
.coord/acceptance_<NNN>.md → merge or retry
agent-shared-memory runs alongside the whole pipeline and stores
accepted decisions, open questions, artifacts, and session outcomes.
agent-context-budget keeps handoffs bounded so the main session does
not absorb raw logs or full memory. agent-debate is invoked on
consequential decisions (architecture, design choice), not in the main
loop.
See docs/example-walkthrough.md for
a worked example with real .coord/ sample artifacts produced by
running the pipeline end-to-end against actual Codex + Gemini CLI
invocations.
The pain points each one solves, in order:
- Task splitting is mental load. You currently classify "is this Codex-shaped or Gemini-shaped?" in your head every time. The splitter encodes the heuristics.
- Context explodes during large runs. The context-budget skill turns memory, logs, and agent outputs into bounded packets and a session primer.
- Multi-agent output is hard to compare. When 3 Codex jobs come back in parallel, you read 3 result.json files and merge them manually. The reconciler does the diff.
- Consensus-driven LLM output hides trade-offs. When you ask one agent for a design, you get one answer. The debate skill forces two agents to argue opposing positions.
- Agent sessions don't share memory. Codex resume works
per-session; nothing persists across Claude session A → Codex
session B → Gemini session C. Shared-memory makes
.coord/memory.ymlthe cross-session blackboard. - No standardized merge gate. You currently eyeball the diff +
run
pytestmanually. The gate runs allsuccess_criteriafromplan.yml+ cost budget + cross-agent consistency check.
codex-delegate— consumes splitter output, produces input for reconciler.gemini-delegate-skill— same.academic-writing-skills— acceptance gate optionally calls its banned-word audit on prose changes.agentmemory— optional recall cache only..coord/memory.ymlremains canonical; see docs/agentmemory-integration.md.
- Gemini-cli refuses to read gitignored files. The
.ai/directory is conventionally gitignored to keep transient task files out of commits, butgemini -p "Read .ai/gemini_task_*.md"fails withfile ignored by configured ignore patterns. Workaround: invoke gemini with the task content inlined into the prompt:Side effect: gemini doesn't have file-system context for paths the task file references — make sure the prompt body itself contains all critical context, not just paths to read. The splitter skill's step 6b documents this.TASK=$(cat .ai/gemini_task_<NNN>_<slug>.md) gemini -p "$TASK" --yolo \ < /dev/null > .ai/gemini_log_<NNN>_<slug>.txt 2>&1
- Both
codexandgeminihang at startup if stdin is open. When launching from a script or non-interactive shell, codex-cli ≥ 0.121.0 prints "Reading additional input from stdin..." and waits forever. Same for gemini-cli. Workaround: redirect stdin to/dev/nullon every direct invocation:Thecodex exec --full-auto -m <model> "<prompt>" \ < /dev/null > .ai/codex_log_<NNN>_<slug>.txt 2>&1
codex-delegatewrapper script handles this internally; only directcodex exec/gemini -pcalls need the explicit redirect. - Codex reads gitignored files normally — only gemini has the gitignore conflict.
- Worked example with sample
.coord/artifacts and honest documentation of what real multi-agent runs look like: docs/example-walkthrough.md.
MIT. Early-stage — the SKILL.md prompt scaffolding is complete and
tested in real workflows; please file issues if a skill misfires or
the .coord/ schema breaks under your use case.
Contributions welcome — see CONTRIBUTING.md for the catalog ↔ delegate-skill interop rules.
