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.
Summary
Section titled “Summary”| 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.
Gemini CLI
Section titled “Gemini CLI”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) andgemini-2.5-flash. Gemini CLI has no model-list command, so Models / Fetch latest call Gemini’s OpenAI-compatible endpointhttps://generativelanguage.googleapis.com/v1beta/openai/modelswith the key fromGEMINI_API_KEY. Themodels/prefix in the returned ids is removed. - System prompt: no flag, so it’s prepended to the prompt.
Cursor Agent
Section titled “Cursor Agent”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 runscursor-agent modelsand parses its output (one model per line). {{options}}puts--model <model>before the prompt.
GitHub Copilot CLI
Section titled “GitHub Copilot CLI”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.
OpenCode
Section titled “OpenCode”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 runsopencode 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-jsonparser 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 itsprovider modeltable and stores ids asprovider/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_PROVIDERandGOOSE_MODELfrom the environment, so you can override them for a single step in its Environment section.
No harness for your CLI?
Section titled “No harness for your CLI?”Anything that accepts a prompt on stdin, as an argument or in a file can be added with Add harness. See Custom harnesses.