Skip to content

Other coding CLIs

Besides Claude Code and Codex, Jimothy ships preconfigured harnesses for eight more coding CLIs. Install the CLI, sign it in the way its own docs describe, then click Re-detect on the Harnesses page. Each card’s Docs button opens the project’s documentation.

All of these run unattended with your user’s permissions. Every definition can be edited from the pencil button and reset with ↺. If a CLI changes its flags, edit the harness rather than waiting for an app update. See Custom harnesses for what each field means.

Harness Command Arguments (defaults) Prompt via Output Model args Model list Default model
Gemini CLI gemini --yolo --prompt {{prompt}} argument text --model {{model}} Gemini API (GEMINI_API_KEY) gemini-2.5-pro
Cursor Agent cursor-agent -p --force --output-format text {{options}} {{prompt}} argument text --model {{model}} cursor-agent models auto
GitHub Copilot CLI copilot -p {{prompt}} --allow-all-tools argument text --model {{model}} none none
Aider aider --yes-always --no-pretty --no-stream --no-check-update --message-file {{promptFile}} file text --model {{model}} none sonnet
OpenCode opencode run {{options}} {{prompt}} argument text --model {{model}} opencode models none
Pi pi -p --mode json --no-session {{options}} stdin pi-json --model {{model}} pi --list-models none
Amp amp --dangerously-allow-all -x stdin text none none none
Goose goose run --no-session --text {{prompt}} argument text none none none

“None” as default model means no --model flag is passed unless the step picks one, so the CLI uses its own configured default.

With text output, the step’s output is the process’s entire stdout (ANSI colours stripped). You get the full transcript in the log, but no tool-call structure, cost or tokens.

Google’s Gemini CLI in headless mode. --yolo auto-approves all tool calls. Install with npm i -g @google/gemini-cli and sign in by running gemini once, or set GEMINI_API_KEY.

  • Prompt: passed as --prompt <prompt>.
  • Models: gemini-2.5-pro (default) and gemini-2.5-flash. Gemini CLI has no model-list command, so Models / Fetch latest call Gemini’s OpenAI-compatible endpoint https://generativelanguage.googleapis.com/v1beta/openai/models with the key from GEMINI_API_KEY. The models/ prefix in the returned ids is removed.
  • System prompt: no flag, so it’s prepended to the prompt.

Cursor’s CLI agent in print mode (-p). --force allows commands without confirmation. Install with curl https://cursor.com/install -fsS | bash, then sign in with cursor-agent login.

  • Prompt: the last argument.
  • Models: auto (default), sonnet-4.5, gpt-5. Models runs cursor-agent models and parses its output (one model per line).
  • {{options}} puts --model <model> before the prompt.

GitHub’s Copilot coding agent in programmatic mode. --allow-all-tools lets it run tools without asking. Install with npm i -g @github/copilot and sign in by running copilot once.

  • Prompt: -p <prompt>.
  • Models: claude-sonnet-4.5, gpt-5, with no default, so Copilot uses its own default unless a step picks one. There’s no model-list source; type other ids in the step’s model box or add them in the harness editor.
  • The model arguments are appended after --allow-all-tools.

AI pair programming for any model provider. Install with python -m pip install aider-install && aider-install (or pipx install aider-chat).

  • Prompt: written to a temporary Markdown file in the run’s data folder and passed with --message-file. This avoids command-line length limits.
  • Flags: --yes-always (no confirmations), --no-pretty, --no-stream (clean text output) and --no-check-update.
  • Models: sonnet (default), opus, gpt-5, gemini/gemini-2.5-pro, deepseek/deepseek-chat. Aider uses LiteLLM-style ids, so a provider prefix selects the provider. Provider keys (ANTHROPIC_API_KEY, OPENAI_API_KEY, …) come from the environment; set them in Settings → Execution → Environment variables or a step’s Environment.
  • Local models: Aider can drive Ollama models, which makes it the simplest way to run a code-editing step on a local model. See Local models with Ollama.
  • Aider commits its own changes by default.

Open source terminal agent supporting many providers. Install with npm i -g opencode-ai and configure providers with opencode auth login.

  • Prompt: the last argument of opencode run.
  • Models: provider-prefixed ids such as anthropic/claude-sonnet-5, openai/gpt-5, google/gemini-2.5-pro. No default, so OpenCode’s configured model is used unless the step picks one. Models runs opencode models. Long catalogs collapse in the step’s model picker; type to search. See Models.

A minimal multi-provider coding agent in print mode with JSON events (--mode json). --no-session keeps runs from being saved as Pi sessions.

  • Prompt: stdin.
  • System prompt: --append-system-prompt <system prompt>.
  • Output: the pi-json parser shows thinking, tool calls and tool results, and records cost and tokens summed over all assistant messages.
  • Models: none preconfigured; Pi uses its default model unless one is picked. Models runs pi --list-models; Jimothy reads its provider model table and stores ids as provider/model.

Sourcegraph’s Amp agent in execute mode (-x). --dangerously-allow-all skips confirmations. Install with npm i -g @sourcegraph/amp and sign in by running amp once.

  • Prompt: stdin.
  • Models: Amp chooses its own model. The harness has no model arguments, so choosing a model on a step has no effect.

Block’s open source agent. Configure a provider with goose configure before using it.

  • Prompt: goose run --no-session --text <prompt>.
  • Models: the provider and model come from Goose’s own configuration. The harness has no model arguments, so choosing a model on a step has no effect. Goose reads GOOSE_PROVIDER and GOOSE_MODEL from the environment, so you can override them for a single step in its Environment section.

Anything that accepts a prompt on stdin, as an argument or in a file can be added with Add harness. See Custom harnesses.