comanda CLI

Orchestrator for Claude Code, Codex and Gemini CLI: YAML workflows that loop until your own quality gates pass

  • 331 ★ on the repository
  • Last commit
  • MIT
CLI

Broad access

Why this level

  • Workflows launch coding agents and shell commands that write files in the repository
  • Parallel branches and unbounded loops spend provider tokens until a gate passes
All reasons and checks

kris-hansen/comanda

Install

Manual install

brew install kris-hansen/comanda/comanda

Installation on macOS through Homebrew.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • Workflows launch coding agents and shell commands that write files in the repository
  • Parallel branches and unbounded loops spend provider tokens until a gate passes

This is third-party code. Review the repository files before installing.

What it does

comanda is a Go command-line program that turns coding-agent work into a YAML workflow. You describe the task in English, and the generate command builds a workflow from it. The chart command draws the workflow as a graph, Mermaid included, and process runs it in your repository. The improve command edits an existing workflow from plain-text feedback, such as adding a second reviewer or a mandatory type check. The central idea is loops with an observable exit criterion. A loop does not stop because an agent said it is done: quality gates run after every iteration. They cover syntax, security or your own command such as make test. On failure a step can retry, abort or skip. State is saved at checkpoints, so a stopped loop can continue. One workflow can combine Claude Code, Gemini CLI, OpenAI Codex, Kimi Code, API models and local models. Steps run in parallel and with different roles. Results pass through files or standard input and output. Parallel implementations get isolated Git worktrees, and project knowledge lives in a codebase index and a durable memory on SQLite FTS5. Finished workflows run from the terminal and CI or are served over HTTP. The comanda mcp command publishes every YAML workflow as an MCP tool and comanda skills as MCP prompts.

Who it is for. For developers who use several coding agents and want a repeatable, gated process stored in the repository.

Good fit when

  • You want a feature to loop through implementation, tests and a security check until make test passes
  • One agent writes and another reviews: Claude Code does the architecture review, Codex judges the rollout plan, Gemini CLI merges the findings
  • You want every pull request checked by one workflow: `git diff | comanda process review.yaml`
  • A long run was interrupted and has to continue from its last checkpoint
  • You want to give your team vetted workflows as MCP tools for Claude Code or Cursor

Not a fit when

  • You need to embed AI into your own application in code: an agent framework or SDK fits that
  • You want to build automation on a visual canvas: comanda works with YAML files
  • The task is for one agent with no repeats or checks: its own command-line tool is simpler
  • You have no agents or provider keys yet: comanda only coordinates tools that are already installed

Example request

Generate a comanda workflow that implements the feature, runs tests and a security check, and repeats until both pass.

Limitations

Workflows launch external agents and your own commands, so Claude Code, Codex, Gemini CLI or provider API keys must already be set up. The OpenAI and Anthropic APIs are unavailable from Russia. Local models through Ollama, vLLM and llama.cpp need no external provider. Prebuilt binaries for macOS, Linux and Windows are on the releases page. Workflows with an unbounded loop or many parallel branches spend tokens quickly, so set max_iterations and an allowed_paths list. Project memory in SQLite is off by default and turned on separately.

How to disable. Remove the program the way you installed it: brew uninstall comanda or delete the binary from your Go bin directory. For MCP, drop the entry with claude mcp remove comanda.

FAQ

How do I expose comanda workflows to Claude Code over MCP?

Run claude mcp add comanda -- comanda mcp. The server speaks stdio, and the --http :8080 flag switches it to streamable HTTP. Every YAML file from ~/.comanda/workflows, .comanda/workflows or a directory passed with --dir becomes a tool, and the placeholders in the workflow become its arguments.

What happens when a quality gate fails?

The policy set for that gate applies: retry repeats the step, abort stops the loop, skip moves on. Gates can be built in (syntax, security) or your own, such as make test.

How is comanda different from an agent framework like LangGraph?

A framework is for building an AI application in code. comanda sits between a coding agent and a framework: it turns agent work into a reviewable YAML program that runs where developers already work.

How do I limit where an agent can write?

The loop config takes allowed_paths, for example the ./src and ./tests directories. Shell tools are enabled only through an explicit allowlist of commands.

How do I continue an interrupted comanda loop?

Run comanda loop status with the loop name to see its state, then comanda loop resume with the same name. The loop continues from the last checkpoint if state persistence is on in the config and checkpoint_interval is set.

Discussion

No questions or reviews yet.

CLI tools
Official

A self-hosted control plane for running several agents: task dispatch, run review, spend tracking, connected via MCP, CLI or REST

MCP serverBroad access6.4KRepository stars

A CLI that loops Claude Code, Codex, OpenCode and other agents over a task list or PRD until everything is done

CLIBroad access3KRepository stars

Skills and hooks for building n8n workflows through the n8n-mcp server: expressions, nodes, validation, AI agents, self-hosting

PluginBroad access6.5KRepository stars

SDKs, a CLI and MCP access to over a thousand prebuilt SaaS integrations for agents, with auth and per-user sessions

CLIBroad access30.8KRepository stars

Connects Claude Code, Cursor, Codex or OpenCode to Telegram, Slack and Discord: teammates message a bot, an agent replies

CLIBroad access325Repository stars

A Claude Code plugin that runs tasks on a schedule: code reviews, security checks and summaries through launchd, cron or Windows Task Scheduler

PluginBroad access512Repository stars

Comparison with similar tools

Entries that share the main search query, and how they differ.

EntryOfficialRepository starsMain difference
comanda (this entry)no331
TAKTno1,427also describes multi-agent processes in YAML; comanda focuses on gated loops and an MCP server
Claw Orchestratorno601a single runtime where work is accepted after checks the agent did not write itself

README in short

The project's motto is to make coding agents earn their exit. The documentation goes from an idea to a governed workflow and separately covers serving workflows over HTTP and as an MCP server.

README badge

Report a problem

Foxx AIcomanda
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.