claude-devfleet

Orchestrate multi-agent coding tasks via Claude DevFleet — plan projects, dispatch parallel agents in isolated worktrees, monitor progress, and read structured reports. Use when dispatching parallel coding agents across isolated worktrees and tracking their reports.

By affaan-m · 2,841 installs

npx skills add affaan-m/ecc --skill claude-devfleet

Source repository · Upstream listing

Claude DevFleet Multi Agent Orchestration When to Use Use this skill when you need to dispatch multiple Claude Code agents to work on coding tasks in parallel. Each agent runs in an isolated git worktree with full tooling. Setup The DevFleet server is a separate project, not bundled with ECC. Install and run it from its repository first: <https://github.com/LEC AI/claude devfleet Then connect the running instance via MCP: Before first use, verify the process listening on port 18801 is the DevFleet binary you installed (see SECURITY.md on localhost MCP servers). How It Works Tools Tool Purpose plan project(prompt) AI breaks a description into a project with chained missions create project(name, path?, description?) Create a project manually, returns project id create mission(project id, title, prompt, depends on?, auto dispatch?) Add a mission. depends on is a list of mission ID strings (e.g., ["abc 123"] ). Set auto dispatch=true to auto start when deps are met. dispatch mission(mission id, model?, max turns?) Start an agent on a mission cancel mission(mission id) Stop a running agent wait for mission(mission id, timeout seconds?) Block until a mission completes (see note below) get mission status(mission id) Check mission progress without blocking get report(mission id) Read structured report (files changed, tested, errors, next steps) get dashboard() System overview: running agents, stats, recent activity list projects() Browse all projects list missions(project id, status?) List missions in a project Note on wait for mission : This blocks the conversation for up to timeout seconds (default 600). For long running missions, prefer polling with get mission status every 30–60 seconds instead, so the user sees progress updates. Workflow: Plan → Dispatch → Monitor → Report 1. Plan : Call plan project(prompt="...") → returns project id + list of missions with depends on chains and auto dispatch=true . 2. Show plan : Present mission titles, types, and dependency chain to the user. 3. Dispatch : Call dispatch mission(mission id=<first mission id ) on the root mission (empty depends on ). Remaining missions auto dispatch as their dependencies complete (because plan project sets auto dispatch=true on them). 4. Monitor : Call get mission status(mission id=...) or get dashboard() to check progress. 5. Report : Call get report(mission id=...) when missions complete. Share highlights with the user. Concurrency DevFleet runs up to 3 concurrent agents by default (configurable via DEVFLEET MAX AGENTS ). When all slots are full, missions with auto dispatch=true queue in the mission watcher and dispatch automatically as slots free up. Check get dashboard() for current slot usage. Examples Full auto: plan and launch 1. plan project(prompt="...") → shows plan with missions and dependencies. 2. Dispatch the first mission (the one with empty depends on ). 3. Remaining missions auto dispatch as dependencies resolve (they have auto dispatch=true ). 4. Report back with project ID and mission count so the user knows what was launched. 5. Poll with get mission status or get dashboard() periodically until all missions reach a terminal state ( completed , failed , or cancelled ). 6. get report(mission id=...) for each terminal mission — summarize successes and call out failures with errors and next steps. Manual: step by step control 1. create project(name="My Project") → returns project id . 2. create mission(project id=project id, title="...", prompt="...", auto dispatch=true) for the first (root) mission → capture root mission id . create mission(project id=project id, title="...", prompt="...", auto dispatch=true, depends on=["<root mission id "]) for each subsequent task. 3. dispatch mission(mission id=...) on the first mission to start the chain. 4. get report(mission id=...) when done. Sequential with review 1. create project(name="...") → get project id . 2. create mission(project id=project id, title="Implement feature", prompt="...") → get impl mission id . 3. dispatch mission(mission id=impl mission id) , then poll with get mission status until complete. 4. get report(mission id=impl mission id) to review results. 5. create mission(project id=project id, title="Review", prompt="...", depends on=[impl mission id], auto dispatch=true) — auto starts since the dependency is already met. Guidelines Always confirm the plan with the user before dispatching, unless they said to go ahead. Include mission titles and IDs when reporting status. If a mission fails, read its report before retrying. Check get dashboard() for agent slot availability before bulk dispatching. Mission dependencies form a DAG — do not create circular dependencies. Each agent runs in an isolated git worktree and auto merges on completion. If a merge conflict occurs, the changes remain on the agent's worktree branch for manual resolution. When manually creating missions, always set auto dispatch=true if you want them to trigger automatically when dependencies complete. Without this flag, missions stay in draft status.