buddylist
Download
All guides

Gemini

Gemini contacts run the gemini installed on your computer, with the same sign-in, settings.json, GEMINI.md, extensions and MCP servers.

Set it up. Install Gemini CLI (0.33 or newer) and sign in:

npm install -g @google/gemini-cli   # or: brew install gemini-cli
gemini                              # choose "Sign in with Google"

To use an API key instead, get one from Google AI Studio, set GEMINI_API_KEY, run gemini and choose Use Gemini API key.

It isn't bundled. The app finds gemini on your PATH; set BUDDYLIST_GEMINI_CLI to use a different one.

Add a contact. Pick Gemini as the Service in Add a Contact.

You get the same windows as with Claude:

  • streamed replies
  • a line for each command, file read, file change, search and tool call
  • Accept / Always allow / Decline invitations
  • Nudge to stop
  • conversations that pick up where they left off
  • Gemini's own slash commands (/memory, /init, /restore, …) in Activities

Gemini has its own Mode menu:

Mode Gemini asks before...
Ask before acting changing files and running commands
Auto-accept file edits running commands
Plan mode nothing: it only reads, and writes a plan
Never ask nothing. Only use it in folders you don't mind breaking

Good to know:

  • A new mode or model applies straight away.
  • In a folder Gemini doesn't trust, it stays in Ask before acting or Plan mode, and says so. It also skips that folder's .gemini/settings.json, .env and GEMINI.md.
  • Out of the box Gemini trusts none of the contacts' worktrees, in ~/.buddylist/worktrees. Keep it that way. A worktree's branch can be someone else's pull request, and in a folder it trusts Gemini starts the MCP servers and commands in the branch's .gemini/settings.json without asking. So don't trust ~/.buddylist/worktrees or a folder above it, and don't turn folder trust off.
  • Always allow lasts until you quit the app or start a new chat.
  • A message sent while Gemini is busy waits for its turn.
  • Gemini leaves Plan mode with an ordinary invitation, not plan-approval buttons.
  • Its thinking isn't shown, and it doesn't report what a reply cost.