feat: add gemini-acp provider, update docs on subscription models + improvements to codex (#8000)
Signed-off-by: Michael Neale <michael.neale@gmail.com>
This commit is contained in:
@@ -55,18 +55,9 @@ goose automatically enables Anthropic's [prompt caching](https://platform.claude
|
||||
|
||||
### CLI Providers
|
||||
|
||||
goose also supports special "pass-through" providers that work with existing CLI tools, allowing you to use your subscriptions instead of paying per token:
|
||||
|
||||
| Provider | Description | Requirements |
|
||||
|-----------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [Claude Code](https://www.anthropic.com/claude-code) (`claude-code`) | Uses Anthropic's Claude CLI tool with your Claude Code subscription. Provides access to Claude with 200K context limit. | Claude CLI installed and authenticated, active Claude Code subscription |
|
||||
| [OpenAI Codex](https://developers.openai.com/codex/cli) (`codex`) | Uses OpenAI's Codex CLI tool with your ChatGPT Plus/Pro subscription. Provides access to GPT-5 models with up to 400K context limit. | Codex CLI installed and authenticated, active ChatGPT Plus/Pro subscription |
|
||||
| [Cursor Agent](https://docs.cursor.com/en/cli/overview) (`cursor-agent`) | Uses Cursor's AI CLI tool with your Cursor subscription. Provides access to GPT-5, Claude 4, and other models through the cursor-agent command-line interface. | cursor-agent CLI installed and authenticated |
|
||||
| [Gemini CLI](https://ai.google.dev/gemini-api/docs) (`gemini-cli`) | Uses Google's Gemini CLI tool with your Google AI subscription. Provides access to Gemini with 1M context limit. | Gemini CLI installed and authenticated |
|
||||
|
||||
:::tip CLI Providers
|
||||
CLI providers are cost-effective alternatives that use your existing subscriptions. They work differently from API providers as they execute CLI commands and integrate with the tools' native capabilities. See the [CLI Providers guide](/docs/guides/cli-providers) for detailed setup instructions.
|
||||
:::
|
||||
|
||||
### ACP Providers
|
||||
|
||||
@@ -76,6 +67,7 @@ goose supports [Agent Client Protocol (ACP)](https://agentclientprotocol.com/) a
|
||||
|-----------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| [Claude ACP](https://github.com/zed-industries/claude-agent-acp) (`claude-acp`) | Uses Claude Code via ACP. Passes goose extensions to the agent as MCP servers. | `npm install -g @zed-industries/claude-agent-acp`, active Claude Code subscription |
|
||||
| [Codex ACP](https://github.com/zed-industries/codex-acp) (`codex-acp`) | Uses OpenAI Codex via ACP. Passes goose extensions to the agent as MCP servers. | `npm install -g @zed-industries/codex-acp`, active ChatGPT Plus/Pro subscription |
|
||||
| [Gemini ACP](https://github.com/google-gemini/gemini-cli) (`gemini-acp`) | Uses Google's Gemini CLI via ACP (native `--acp` support). Passes goose extensions to the agent as MCP servers. | `npm install -g @google/gemini-cli`, authenticated with Google account |
|
||||
|
||||
:::tip ACP Providers
|
||||
See the [ACP Providers guide](/docs/guides/acp-providers) for detailed setup instructions.
|
||||
|
||||
@@ -11,6 +11,10 @@ goose supports [Agent Client Protocol (ACP)](https://agentclientprotocol.com/) a
|
||||
|
||||
ACP providers pass goose [extensions](/docs/getting-started/using-extensions) through to the agent as MCP servers, so the agent can call your extensions directly.
|
||||
|
||||
:::tip Use Your Existing Subscriptions
|
||||
ACP providers let you use goose with your existing Claude Code, ChatGPT Plus/Pro, or Google Gemini subscriptions — no per-token API costs. They are the recommended replacement for the deprecated [CLI providers](/docs/guides/cli-providers).
|
||||
:::
|
||||
|
||||
:::warning Limitations
|
||||
- **No session fork or resume**: You can start new sessions, but `goose session resume` and `goose session fork` are not supported yet.
|
||||
- **ACP session ID differs from goose session ID**: Telemetry fields may not correlate across the two.
|
||||
@@ -20,7 +24,7 @@ ACP providers pass goose [extensions](/docs/getting-started/using-extensions) th
|
||||
|
||||
### Claude ACP
|
||||
|
||||
Wraps [claude-agent-acp](https://github.com/zed-industries/claude-agent-acp), an ACP adapter for Anthropic's Claude Code. Uses the same Claude subscription as the `claude-code` CLI provider.
|
||||
Wraps [claude-agent-acp](https://github.com/zed-industries/claude-agent-acp), an ACP adapter for Anthropic's Claude Code. Uses the same Claude subscription as the deprecated `claude-code` CLI provider.
|
||||
|
||||
**Requirements:**
|
||||
- Node.js and npm
|
||||
@@ -29,13 +33,22 @@ Wraps [claude-agent-acp](https://github.com/zed-industries/claude-agent-acp), an
|
||||
|
||||
### Codex ACP
|
||||
|
||||
Wraps [codex-acp](https://github.com/zed-industries/codex-acp), an ACP adapter for OpenAI's Codex. Uses the same ChatGPT subscription as the `codex` CLI provider. Codex's sandbox blocks network by default; goose automatically enables network access when HTTP MCP servers are configured.
|
||||
Wraps [codex-acp](https://github.com/zed-industries/codex-acp), an ACP adapter for OpenAI's Codex. Uses the same ChatGPT subscription as the deprecated `codex` CLI provider. Codex's sandbox blocks network by default; goose automatically enables network access when HTTP MCP servers are configured.
|
||||
|
||||
**Requirements:**
|
||||
- Node.js and npm
|
||||
- Active ChatGPT Plus/Pro subscription or OpenAI API credits
|
||||
- Authenticated with your OpenAI account (`codex` CLI working)
|
||||
|
||||
### Gemini ACP
|
||||
|
||||
Uses Google's [Gemini CLI](https://github.com/google-gemini/gemini-cli) directly via its native `--acp` flag. No shim needed — Gemini CLI speaks ACP natively. Replaces the deprecated `gemini-cli` CLI provider.
|
||||
|
||||
**Requirements:**
|
||||
- Node.js and npm
|
||||
- Gemini CLI installed (`npm install -g @google/gemini-cli`)
|
||||
- Authenticated with your Google account (run `gemini` once to authenticate via browser)
|
||||
|
||||
## Setup Instructions
|
||||
|
||||
### Claude ACP
|
||||
@@ -110,6 +123,42 @@ Wraps [codex-acp](https://github.com/zed-industries/codex-acp), an ACP adapter f
|
||||
│ gpt-5.2-codex
|
||||
```
|
||||
|
||||
### Gemini ACP
|
||||
|
||||
1. **Install Gemini CLI**
|
||||
|
||||
```bash
|
||||
npm install -g @google/gemini-cli
|
||||
```
|
||||
|
||||
2. **Authenticate with Google**
|
||||
|
||||
Run `gemini` once and follow the browser-based authentication flow.
|
||||
|
||||
3. **Configure goose**
|
||||
|
||||
Set the provider environment variable:
|
||||
```bash
|
||||
export GOOSE_PROVIDER=gemini-acp
|
||||
```
|
||||
|
||||
Or configure through the goose CLI using `goose configure`:
|
||||
|
||||
```bash
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Configure Providers
|
||||
│
|
||||
◇ Which model provider should we use?
|
||||
│ Gemini CLI (ACP)
|
||||
│
|
||||
◇ Model fetch complete
|
||||
│
|
||||
◇ Enter a model from that provider:
|
||||
│ default
|
||||
```
|
||||
|
||||
## Usage Examples
|
||||
|
||||
### Basic Usage
|
||||
@@ -134,6 +183,12 @@ GOOSE_PROVIDER=codex-acp goose run \
|
||||
-t 'Search for flights from BKI to SYD tomorrow'
|
||||
```
|
||||
|
||||
```bash
|
||||
GOOSE_PROVIDER=gemini-acp goose run \
|
||||
--with-extension 'npx -y @modelcontextprotocol/server-everything' \
|
||||
-t 'Use the echo tool to say hello'
|
||||
```
|
||||
|
||||
## Configuration Options
|
||||
|
||||
### Claude ACP Configuration
|
||||
@@ -185,13 +240,32 @@ See [claude-agent-acp](https://github.com/zed-industries/claude-agent-acp) for s
|
||||
|
||||
See [codex-acp](https://github.com/zed-industries/codex-acp) for approval policy and sandbox details.
|
||||
|
||||
### Gemini ACP Configuration
|
||||
|
||||
| Environment Variable | Description | Default |
|
||||
|----------------------|---------------------|-------------|
|
||||
| `GOOSE_PROVIDER` | Set to `gemini-acp` | None |
|
||||
| `GOOSE_MODEL` | Model to use | `default` |
|
||||
| `GOOSE_MODE` | Permission mode | `auto` |
|
||||
|
||||
**Permission Modes (`GOOSE_MODE`):**
|
||||
|
||||
| Mode | Gemini Mode | Behavior |
|
||||
|-----------------|-------------|---------------------------------------------------------------|
|
||||
| `auto` | `yolo` | Auto-approves all tool calls |
|
||||
| `smart-approve` | `auto_edit` | Auto-approves file edits, prompts for other operations |
|
||||
| `approve` | `default` | Prompts for all permission-required operations |
|
||||
| `chat` | `plan` | Planning only, no tool execution |
|
||||
|
||||
See the [Gemini CLI documentation](https://github.com/google-gemini/gemini-cli) for approval mode details.
|
||||
|
||||
## Error Handling
|
||||
|
||||
ACP providers depend on external npm packages, so ensure:
|
||||
|
||||
- The ACP adapter binary is installed and in your PATH (`claude-agent-acp` or `codex-acp`)
|
||||
- The ACP agent binary is installed and in your PATH (`claude-agent-acp`, `codex-acp`, or `gemini`)
|
||||
- The underlying CLI tool is authenticated and working
|
||||
- Subscription limits are not exceeded
|
||||
- Node.js and npm are installed
|
||||
|
||||
If goose can't find the binary, session startup will fail with an error. Run `which claude-agent-acp` or `which codex-acp` to verify installation.
|
||||
If goose can't find the binary, session startup will fail with an error. Run `which claude-agent-acp`, `which codex-acp`, or `which gemini` to verify installation.
|
||||
|
||||
@@ -7,6 +7,10 @@ description: Use Claude Code, Codex, Cursor Agent, or Gemini CLI subscriptions i
|
||||
|
||||
# CLI Providers
|
||||
|
||||
:::warning Deprecated — Use ACP Providers
|
||||
The Claude Code (`claude-code`), Codex (`codex`), and Gemini CLI (`gemini-cli`) providers are deprecated. Use the [ACP providers](/docs/guides/acp-providers) (`claude-acp`, `codex-acp`, `gemini-acp`) instead, which support goose extensions via MCP and use the standardized Agent Client Protocol. CLI providers are kept for backward compatibility only.
|
||||
:::
|
||||
|
||||
goose can make use of pass-through providers that integrate with existing CLI tools from Anthropic, OpenAI, Cursor, and Google. These providers allow you to use your existing Claude Code, Codex, Cursor Agent, and Google Gemini CLI subscriptions through goose's interface, adding session management, persistence, and workflow integration capabilities to these tools.
|
||||
|
||||
:::warning Limitations
|
||||
|
||||
Reference in New Issue
Block a user