基于 YAML 的 AI 编码 Agent 工作流编排工具,提供结构化的多 Agent 协作与代码审查循环。
TAKT(TAKT Agent Koordination Topology)是一款专为 AI 编码 Agent 设计的工作流编排工具,当前版本 v0.37.0。它采用 YAML 声明式语法,通过 steps、initial_step、max_steps 定义 Agent 执行序列,支持条件跳转与 COMPLETE/ABORT 终止状态控制,让开发者能够精准定义包含规划、实现、审查和修复的结构化循环。
核心架构
- 以
WorkflowEngine为运行时核心,驱动工作流的解析与执行 - 三层配置覆盖机制:项目级(
.takt/workflows/)> 用户级(~/.takt/workflows/)> 内置级(builtins/) - 双 Schema 验证(Ajv + Zod)确保工作流定义的强类型安全
- 多 Provider 适配层:统一对接 Claude Code、Codex、OpenCode、Cursor Agent、GitHub Copilot 等
- 模块化设计:提示词管理抽离为
faceted-prompting包,配置管理抽离为traced-config包
Faceted Prompting 机制 将提示词拆分为 persona、policy、knowledge、instruction 等独立 facet 进行管理,可自由组合到不同工作流中,实现提示词的复用与标准化。
多 Agent 协作
- 编排不同 persona 与权限的 Agent
- 支持并行审查(parallel reviewers),如架构审查 + 主管审查同时执行
- 失败路由回实现者,声明式规则聚合审查结果
- 内置 Architecture、Security、AI antipattern 审查标准
环境隔离与任务管理
- 任务执行时自动创建 Git worktree,避免对主分支造成污染
- 对话式需求定义与排队机制,
takt run批量执行 - 支持从 GitHub/GitLab Issue 直接导入任务(如
takt add #6) - 每步执行以 NDJSON 格式记录日志,实现从任务下发到 PR 生成的全链路追溯
标准化与复用
- 工作流 YAML 文件支持团队共享,确保一致的质量流程
- 提供 Repertoire 包机制(
takt repertoire add)安装与分发工作流 - 内置工作流:
default(标准开发)、frontend-mini、backend-mini、dual-mini - 支持
takt workflow init、takt eject、takt workflow doctor等工作流管理命令
安装与快速开始
npm install -g takt
takt # 启动交互式对话,选择工作流并描述需求
takt run # 执行排队中的任务
takt add #6 # 从 GitHub Issue 导入
takt list # 查看任务分支
配置文件 ~/.takt/config.yaml:
provider: claude # claude | claude-sdk | codex | opencode | cursor | copilot
model: sonnet
language: en # en | ja
Node.js API 调用:
import { WorkflowEngine, loadWorkflow } from 'takt';
const config = loadWorkflow('default', process.cwd());
const engine = new WorkflowEngine(config, process.cwd(), 'My task');
await engine.run();
CI/CD 集成:提供官方 takt-action GitHub Action,支持 --pipeline 模式无缝接入流水线。仓库内含 Dockerfile、docker-compose.yml 及 devcontainer 配置。支持英文和日文双语。