Gemini CLI
MCP setup
Section titled “MCP setup”Edit ~/.gemini/settings.json (or a project-local .gemini/settings.json):
{ "mcpServers": { "chime": { "command": "chime", "args": ["mcp", "serve"], "env": { "CHIME_HOME": "~/.chime-gemini" } } }}The CHIME_HOME override keeps Gemini’s session state separate from any
other harness you also run Chime with — this matters more here than
elsewhere; see below.
Instructions
Section titled “Instructions”Gemini CLI concatenates GEMINI.md context files (global and per-project)
into every prompt. If you want Gemini to pick up Chime’s agent runbook
automatically, add a reference to it in your global or project GEMINI.md.
The alias story — read this one
Section titled “The alias story — read this one”Gemini CLI has no session-start lifecycle hook, unlike Claude Code or
Codex — so Chime can’t automatically mint one shared CHIME_ALIAS for the
session the way it does elsewhere. Set a dedicated CHIME_HOME (as in the
config above) instead: Chime persists a session alias at
$CHIME_HOME/session-alias, and as long as the MCP server and any chime
CLI invocation in that session read from the same CHIME_HOME, they
converge on the same alias with no hook needed at all.
Listening for replies
Section titled “Listening for replies”Gemini CLI has no Monitor-equivalent for streaming a live command into agent turns, so use the portable MCP pattern instead — see MCP:
chime_wait— block until the next reply arrives (or a timeout).chime_receive— a non-blocking drain, for polling between work steps.
- MCP — full tool reference.
- Integrations — every harness and its status.