TAKT Workflow Orchestrator
A YAML-controlled CLI for repeatable multi-agent coding workflows with review loops, checkpoints, and traceable runs.
What does this agent do, and when should you use it?
TAKT is an open-source CLI for defining planning, implementation, review, fix loops, and human checkpoints as YAML workflows. A workflow consists of steps with personas, editing permissions, transition rules, and output contracts; rules can advance work, return it for fixes, or end it with COMPLETE or ABORT. Queued tasks run in isolated Git worktrees through `takt run`, while logs, reports, sessions, traces, and other run artifacts are kept under `.takt/runs/<run>/`. It supports Claude Code, Claude SDK, Codex SDK, OpenCode SDK, Cursor, GitHub Copilot CLI, and Kiro, and exposes both `takt-acp` for Agent Client Protocol and `takt-mcp` as a stdio MCP server. Although built primarily for coding workflows, its workflow model also applies to coordinated tasks that benefit from review and feedback loops.
A user starts with takt or takt add, refines a task in conversation, invokes /go, and can select Queue as task; TAKT stores queued task specifications in .takt/tasks/. takt run creates an isolated worktree for pending work and executes the YAML-defined steps according to initial_step, max_steps, persona, edit, required_permission_mode, and rules. Rules route a run to another step, COMPLETE, ABORT, or back to implementation for a fix loop; execution artifacts, including logs, reports, sessions, traces, and metadata, remain under .takt/runs/<run>/. takt list manages task branches with merge, retry, requeue, force-fail, instruct, and delete actions, while takt watch monitors and automatically executes pending tasks.
- A software team that wants a repeatable plan–implement–review–fix process can use the default workflow and its parallel peer-review and convergent fix loop.
- A maintainer of a CLI or backend service can assign separate personas, policies, knowledge, and edit permissions to planning, implementation, and review steps.
- A Git project that must keep queued changes out of the current working tree can execute them through `takt run` in isolated worktrees.
- A team using Codex SDK, Claude SDK, or OpenCode SDK can configure `provider`, `model`, and API credentials for workflow execution.
- A GitHub-based project can turn an issue into a task with `takt add #6` or `takt #N`, then manage the resulting task branch and PR flow.
- An engineering team integrating a task queue with an MCP or Agent Client Protocol client can run `takt-mcp` or `takt-acp` over stdio.
What are this agent's strengths and limitations?
- YAML steps and transition rules make review and fix loops explicit instead of relying on an agent to remember a prompt-defined process.
- Each step can receive its own persona, policy, knowledge, instructions, output contract, edit setting, and required permission mode.
- Queued execution uses isolated Git worktrees by default and retains local run logs, reports, and traces for auditability.
- It supports both SDK-based and external-CLI providers, plus MCP, ACP, GitHub Actions, and pipeline-mode integration paths.
- It requires Node.js >=24.15.0, Git, and a configured provider; several supported providers also require a separately installed external CLI.
- Teams must design and maintain YAML workflows, facets, permissions, and routing configuration.
- The “Execute now” option writes directly to the current working tree rather than using the default worktree isolation.
- GitHub Issue workflows need the optional `gh` CLI; GitLab integration depends on `glab` and remote-URL detection.
- OAuth permissibility varies by provider and use case, so adopters must check the relevant provider terms.
How do you install or deploy this agent?
Use a Git repository with at least one commit, Node.js >=24.15.0, and Git. Install with npm install -g takt. For Codex SDK, create ~/.takt/config.yaml with provider: codex, model: gpt-5.6-sol, and language: en, then set export TAKT_OPENAI_API_KEY=sk-.... Nix users can run nix run github:nrslib/takt or install with nix profile install github:nrslib/takt.
How do you use this agent?
Run takt, describe the task, type /go, and select “Queue as task.” Run takt run to execute queued work in isolated worktrees. Use takt list to inspect task branches and merge, retry, or requeue them; use takt watch for a resident queue-monitoring process. To create and validate a custom workflow, run takt workflow init my-flow followed by takt workflow doctor my-flow.
How does this agent compare with similar options?
Compared with using plain AI coding agents directly, TAKT places process control in YAML: review and repair loops are explicit transitions, steps receive focused context, and runs leave logs and reports. Direct agent use instead relies chiefly on prompts and agent behavior to preserve the process.