Supported agent CLIs
Open Free Max drives seven official agent CLIs — Claude Code, Codex, OpenCode, Mistral Vibe, Antigravity, Kimi Code and Cursor Agent — in real interactive mode, and this table shows exactly what each one supports.
Open Free Max never reimplements an agent. It launches the official binary in an embedded pseudo-terminal and drives it with keystrokes, exactly as a human would. That is why support differs per CLI: OFM can only use the capabilities each vendor actually exposes on the command line.
The seven CLIs
| CLI | Binary | Vendor |
|---|---|---|
| Claude Code | claude |
Anthropic |
| Codex | codex |
OpenAI |
| Antigravity | agy |
|
| OpenCode | opencode |
OpenCode |
| Mistral Vibe | vibe |
Mistral |
| Kimi Code | kimi |
Moonshot |
| Cursor Agent | agent |
Cursor |
Capability matrix
What OFM can do with each CLI, and why:
| Capability | Claude Code | Codex | Antigravity | OpenCode | Vibe | Kimi | Cursor |
|---|---|---|---|---|---|---|---|
| Interactive PTY session | yes | yes | yes | yes | yes | yes | yes |
| Resume a specific conversation by id | yes | yes | yes | — | — | — | — |
| Resume the latest conversation | yes | yes | yes | yes | — | yes | — |
| Launch flags in Settings | yes | yes | yes | yes | yes | yes | — |
| Custom MCP servers | yes | yes | — | — | — | — | — |
| OFM memory as an MCP tool | yes | — | yes | — | — | — | — |
| Obsidian vault | yes | yes | best-effort | — | — | — | — |
| History ingested into memory | yes | yes | yes | — | yes | — | — |
| Exact token accounting | yes | estimated | estimated | estimated | estimated | estimated | estimated |
A dash means the vendor exposes no injection path that leaves the user’s own configuration untouched. OFM will not silently rewrite a CLI’s global config file to fake support — see Why OFM refuses to patch your CLI config.
Resume is not the same everywhere
Session persistence is the most visible asymmetry:
- Claude Code lets OFM impose the session id at launch (
--session-id), then reopen it exactly (--resume <id>). This is the only CLI where a tab is guaranteed to reopen the same conversation. - Codex and Antigravity cannot be given an id at startup, but can resume a known one
afterwards (
codex resume <id>,agy --conversation <id>). OFM keeps the id it observed. - OpenCode and Kimi Code only offer “continue the last conversation” for the current folder.
- Mistral Vibe and Cursor Agent expose no resume flag: a new tab starts a new conversation.
Full behaviour in Session persistence.
Why OFM refuses to patch your CLI config
Every CLI in this list is your tool, configured your way. OFM only injects things through channels that die with the session:
- a command-line flag (
--mcp-config,-c key=value), - an environment variable given to that process,
- or, when a vendor offers nothing else, a project-scoped file the user can see and delete.
OFM never edits ~/.claude.json, ~/.codex/config.toml or ~/.gemini/config/ behind your
back. The cost of that rule is the dashes in the matrix above. The benefit is that uninstalling
OFM leaves your CLIs exactly as it found them.
Missing CLI? Use the assistant
If a CLI is not on your PATH, its tab shows an installation assistant: the exact install command for your platform, a copy button, a “open a terminal with the command pre-filled” action, and a re-check button. It also knows the platform traps — reopen the terminal on Windows so the PATH reloads, install inside the distribution when working in WSL, and use a login shell on macOS so GUI launches see your real PATH.
Frequently asked
- Do I need all seven CLIs installed?
- No. Install only the ones you use. Open Free Max detects what is on your PATH and shows an installation assistant for the rest; a missing CLI never blocks the app.
- Can I run two different CLIs on the same project at the same time?
- Yes. Each agent session is an independent tab with its own pseudo-terminal, so a Claude Code session and a Codex session can work in the same folder simultaneously.