ATC——代理任务协调员
](https://www.npmjs.com/package/atc-kanban)  ](https://nodejs.org) ](https://github.com/JSCOP/atc-kanban) ](https://github.com/sponsors/JSCOP)
使用看板为AI编码代理进行多代理任务编排。
ATC协调多个AI代理(Claude Code、Codex、Gemini CLI、OpenCode)在同一代码库上工作,提供任务锁定、通过git工作树进行分支隔离,以及一个实时仪表板来监控一切。
为什么选择ATC?
当你在一个项目上运行多个AI编码代理时,它们会相互踩踏。两个代理编辑同一个文件,分支冲突,没有人知道谁在做什么。
ATC通过充当中央协调员来解决这个问题:
- 任务锁定 --一次只能有一个代理处理一个任务(30分钟TTL,如果代理死亡,则自动过期)
- Git工作树隔离 --每个任务都有自己的工作树和分支,没有文件冲突
- 合并冲突检测 --存在合并冲突时阻止任务完成
- 代理健康监测 --基于PID的检查会自动断开死代理并释放其锁
- 每个项目一个编排器 --强制执行单个主代理以防止指令冲突
特性
- 🔌 MCP服务器 --AI代理通过以下方式进行交互 模型上下文协议 工具
- 📋 看板仪表板 --实时React 19+WebSocket用户界面
http://localhost:4000 - 🌳 Git工作树隔离 --每个代理在自己的目录中处理自己的分支
- 🔒 TTL任务锁定 --自动过期的专用锁(默认30分钟)
- ✅ 审查工作流程 --使用自动挤压合并回基础分支来批准任务
- 🔗 依赖DAG --具有循环依赖验证的任务依赖关系
- 💀 死特工清理 --每10秒进行一次PID轮询,断开崩溃的代理
- 🚫 合并冲突阻止 --阻止完成可能破坏基础分支的任务
快速开始
# Start HTTP server + dashboard
npx atc-kanban
# Open dashboard at http://localhost:4000对于AI代理集成(MCP模式):
npx atc-kanban --mcpMCP集成
将ATC添加到AI代理的MCP配置中:
开源代码 (opencode.json):
{
"mcpServers": {
"atc": {
"command": "npx",
"args": ["atc-kanban", "--mcp"]
}
}
}克劳德代码 (claude_desktop_config.json):
{
"mcpServers": {
"atc": {
"command": "npx",
"args": ["atc-kanban", "--mcp"]
}
}
}连接后,代理可以注册、声明任务、报告进度并提交审查——所有这些都可以通过MCP工具完成。
任务流程
todo → locked → in_progress → review → done
→ failed- 主剂 (编排器)——创建任务、审查工作、管理依赖关系。每个项目最多1个。
- 工人代理人 (执行者)——索赔任务,在隔离的工作树中工作,提交审查。
当任务获得批准时,ATC会自动将工作树分支挤压并合并回基础分支。
建筑
pnpm monorepo有三个包:
| 包装 | 堆叠 | 用途 |
|---|---|---|
@atc/core | Drizzle ORM+SQLite | 域服务、模式、业务逻辑 |
atc-kanban (服务器) | Hono+WebSocket+MCP SDK | HTTP API,实时事件,MCP stdio服务器 |
@atc/dashboard | React 19+Vite+Tailwind v4 | 看板UI,代理监控 |
数据存储在平台特定位置的本地SQLite数据库中(通过 env路径):
| 操作系统 | 默认数据库路径 |
|---|---|
| 窗户 | %LOCALAPPDATA%\atc-kanban-nodejs\Data\atc.sqlite |
| macOS | ~/Library/Application Support/atc-kanban-nodejs/atc.sqlite |
| Linux | ~/.local/share/atc-kanban-nodejs/atc.sqlite |
配置
| 变量 | 默认值 | 描述 |
|---|---|---|
PORT | 4000 | HTTP服务器端口 |
DB_PATH | *(特定平台)* | SQLite数据库文件路径 |
LOCK_TTL_MINUTES | 30 | 任务锁到期时间(分钟) |
通过环境变量设置或 .env 文件。
发展
git clone https://github.com/JSCOP/atc-kanban.git
cd atc-kanban
pnpm install
pnpm dev # API (:4000) + Dashboard (:5173) with hot reload
pnpm build # Build all packages
pnpm test # Run unit tests
pnpm lint # Biome linter看 贡献.md 公约和准则。
支持
如果ATC对您有用,请考虑赞助该项目以支持正在进行的开发。

许可证
麻省理工学院 ©JSCOP
