Goose setup: API key, Base URL, and models
Configure Goose with a BetterToken API Key, the correct OpenAI host, and a Model ID. Enable the developer extension and verify a text request.
Connect Goose to BetterToken using its OpenAI provider. In macOS testing with a GPT model, Goose 1.55.0 completed text requests and file-reading tool calls through /v1/responses.
Key settings
| Field | Value |
|---|---|
| API Key | BetterToken API Key in OPENAI_API_KEY |
| Base URL | https://bettertoken.ai in OPENAI_HOST, without /v1 |
| Model | YOUR_MODEL_ID in GOOSE_MODEL |
| Provider | GOOSE_PROVIDER=openai |
Prerequisites
- A macOS or Linux terminal for the commands below
- A BetterToken API Key: register and get one
- A Model ID copied from the model plaza
Install
Use the official Goose installer:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bashgoose --versionManual setup
Replace YOUR_API_KEY and YOUR_MODEL_ID before running:
export GOOSE_PROVIDER="openai"export GOOSE_MODEL="YOUR_MODEL_ID"export OPENAI_API_KEY="YOUR_API_KEY"export OPENAI_HOST="https://bettertoken.ai"OPENAI_HOST takes the site root. Keep /v1 out of this field, even though the provider is OpenAI.
For file access, run goose configure, choose Toggle Extensions, and enable developer. The developer extension supplies file and shell tools.
Verify the connection
Run this command in the same terminal:
goose run --no-session --max-turns 4 -t "Reply with only: OK"Check that the final answer is OK. To check file access separately, run Goose in your project and ask it to read a known file; check both the tool result and final answer.
Switch models
Set GOOSE_MODEL to another exact Model ID from the model plaza, then start a new run.
Common errors
| Symptom | What to check |
|---|---|
| Authentication fails | Check OPENAI_API_KEY in the terminal running Goose. |
| Wrong request URL | Set OPENAI_HOST to https://bettertoken.ai, without /v1 or an endpoint suffix. |
| File tools are unavailable | Enable the developer built-in extension with goose configure. |
| Requests still use Responses | In Goose 1.55.0 testing, even OPENAI_BASE_PATH=v1/chat/completions did not change the tested model’s route from /v1/responses. Check the actual request path. |
Related
Technical details
The tested text and file-reading requests used /v1/responses. Provider names and environment variable names alone do not establish which protocol Goose selects for another model.

