Agent Skills › EverMind-AI/Raven › multi-agent-coding

multi-agent-coding

GitHub

指导如何通过子代理执行编码任务,包括选择代理、管理实例上下文、处理文件输出及隔离工作区,确保多代理协作时的代码安全与流程规范。

raven/memory_engine/skills/multi-agent-coding/SKILL.md EverMind-AI/Raven

Trigger Scenarios

需要编写或修改代码 需要修复或测试代码 代码审查请求 编码代理配额耗尽

Install

npx skills add EverMind-AI/Raven --skill multi-agent-coding -g -y
More Options

Non-standard path

npx skills add https://github.com/EverMind-AI/Raven/tree/main/raven/memory_engine/skills/multi-agent-coding -g -y

Use without installing

npx skills use EverMind-AI/Raven@multi-agent-coding

指定 Agent (Claude Code)

npx skills add EverMind-AI/Raven --skill multi-agent-coding -a claude-code -g -y

安装 repo 全部 skill

npx skills add EverMind-AI/Raven --all -g -y

预览 repo 内 skill

npx skills add EverMind-AI/Raven --list

SKILL.md

Frontmatter
{
    "name": "multi-agent-coding",
    "metadata": {
        "raven": {
            "emoji": "💻",
            "always": true,
            "inject": "description",
            "requires": {
                "tools": [
                    "spawn"
                ]
            }
        }
    },
    "description": "Use when the user needs a coding task done - code written, changed, fixed, tested or reviewed - through its follow-ups, and when a coding agent reports its quota or usage limit used up."
}

Coding with sub-agents

1. A coding agent for the work

Coding work goes to a coding agent on the roster: the one the user named, otherwise one the ## Delegation section says owns coding, otherwise one whose description says it writes or edits code. When a Worker Table is bound, subagent takes worker labels instead: pick the worker whose brief covers the coding work. When none does, tell the user and ask how to go on rather than writing the code yourself or sending it to an agent outside the enum.

2. One instance per task

An instance is one conversation with one agent, named by the instance handle.

  • A new task gets a new instance, never an earlier task's handle, which would carry that task's context into it. That holds for a task built on a finished one, such as docs for a finished feature: it starts fresh, with the earlier task's output file (section 3).
  • A follow-up on an unfinished task - a correction, a bug in what it did, "keep going" - goes to that task's instance: same subagent, same instance, a new node_id. The agent keeps its context, so the prompt carries the new request in the user's words.
  • Send a follow-up only once the instance's running dispatch has returned: sent sooner, it can start a separate conversation without that context.

3. Results by file

When a task needs what another produced, put that task's output file in its prompt - {{ <node_id>.output_path }} of its last dispatch - instead of retelling the result. The file is the agent's report, not the code, so also say where the code is (section 4).

4. A worktree per task in a shared project

Local sub-agents share this session's working directory, where nothing locks a file, and giving each agent its own files there does not isolate them: tests run against the other's half-made edits, and one agent's git stash or checkout wipes the other's work. So when a coding task will run beside another in the same project - dispatched together, or while the other is running or unfinished - its prompt tells the agent to make its own worktree, on a branch you name for the task (fix/login-session-expiry), so the work can be found even if the agent stops before reporting:

Create a git worktree of your own for this task on a new branch <branch>, outside the project or in a directory git ignores. Work only there, and end your report with its path and branch. If the project is not a git repository, do not make it one: work in place on only this task's files, and say so.

  • Every later prompt for the task - a follow-up, a takeover (section 5) - names its worktree: the branch, and the path from the report. A task built on its code, such as docs for it, works there too once the task has finished.
  • A worktree starts from the last commit, without the checkout's uncommitted changes. When the request depends on them, ask the user before dispatching.
  • When the work is done, tell the user which branch holds it. Merging the branch or removing the worktree is work for the task's instance, once the user asks.

5. Out of quota: another coding agent

When a coding agent's result says its usage limit, quota, credits or balance is used up - often with a 402 or 429 status or a reset time, in whatever words or language - send the task to another coding agent right away.

  • Pick one that does not draw on the same account: agents that run through one platform share its quota, and a spent platform credit fails them all.
  • When a Worker Table is bound, the takeover goes to another worker whose brief covers it and that runs on a different agent, by the same account rule.
  • Use a new node_id and a new instance. The old instance's context does not carry over, so the prompt carries what the task needs: the user's requests on it, the worktree's branch and any path a report gave (the worktree may hold the first agent's unfinished changes), and the output files of the task's finished dispatches. From then on, the new instance is the task's instance.
  • Tell the user which agent ran out (and when it resets, if it said) and which took over. Do not send the task back to the one that ran out; when no coding agent is left, ask the user how to go on.
  • In a graph, answer the node's report with replan, putting its work on another coding agent under a new id. continue would send it back to the agent that ran out, and the user need not be asked.

Raven's own limits refuse every agent alike, so follow the refusal instead of switching agents: a spawn or graph refused because this session hit its spawn rate limit or its dispatch rate limit, because delegation is paused, or because the host is shutting down.

Version History

  • c813725 Current 2026-11-02 09:33

Same Skill Collection

demos/skill_retrieval/skills/image-gen/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-content-websites/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-games-and-playful-experiences/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-interactive-explainers/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-polished-visual-frontends/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-product-and-tool-interfaces/SKILL.md
plugins-dist/design-engine/raven_design/skills/build-ui-components-and-systems/SKILL.md
plugins-dist/design-engine/raven_design/skills/create-data-visualizations/SKILL.md
plugins-dist/design-engine/raven_design/skills/create-illustrations-and-scenes/SKILL.md
plugins-dist/design-engine/raven_design/skills/create-maps-and-spatial-plans/SKILL.md
plugins-dist/design-engine/raven_design/skills/create-technical-diagrams/SKILL.md
plugins-dist/design-engine/raven_design/skills/design-brand-identities/SKILL.md
plugins-dist/design-engine/raven_design/skills/design-editorial-and-presentations/SKILL.md
plugins-dist/design-engine/raven_design/skills/design-icons-and-symbols/SKILL.md
plugins-dist/design-engine/raven_design/skills/design-typefaces-and-lettering/SKILL.md
plugins-dist/design-engine/raven_design/skills/review-against-ai-patterns/SKILL.md
plugins-dist/design-engine/raven_design/skills/visual-artifact-design/SKILL.md
plugins-dist/ppt-engine/raven_ppt/skill/ppt-script-authoring/SKILL.md
raven/memory_engine/skills/raven-self-config/SKILL.md
raven/memory_engine/skills/weather/SKILL.md
agents/raven-design/skills/deck-to-pptx/SKILL.md
plugins-dist/design-engine/raven_design/skills/create-marketing-graphics/SKILL.md
skills/git-story-film/SKILL.md

Metadata

Files
0
Version
c813725
Hash
808db6a5
Indexed
2026-11-02 09:33

Home - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-02 22:01
浙ICP备14020137号-1