Set up your Agent once, then switch models and reasoning effort in the same session.
Prefer to skip manual setup? Ask AI to do it for you.
Follow https://siapi.ai/docs/pi?model=deepseek-flash&surface=cli&platform=macos to connect my Agent to all SI-API models. Preserve existing settings and ask for my API key when needed.
- GLM 5.3 Flash
- DeepSeek V4.1 Flash
- Kimi K3.1 Pro
- Kimi K3.1 Pro HighSpeed
- GLM 5.3
- MiniMax M3.1 Flash
- Qwen3.8 Max
All seven models are in this download. Keep the same configuration when switching models. Get your API key →
1. Prepare your tool and key
Install Pi from its official page. Create or copy your SI-API key from /keys.
export SIAPI_API_KEY="YOUR_SIAPI_API_KEY"2. Save the configuration
Download and extract the ZIP. Replace YOUR_SIAPI_API_KEY with your key, then save each file to the path below. Merge these fields into an existing file, preserving other providers, permissions and preferences. Do not replace an existing configuration wholesale.
Configuration location: ~/.config/siapi/pi
models.json
Save to: ~/.config/siapi/pi/models.json
Save in the dedicated Pi directory. Keep reasoning, thinkingLevelMap and compat fields, including null entries that disable unsupported levels. Save settings.json alongside it for per-model effort defaults. Keep existing providers if this file already exists.
View or copy configuration
{
"providers": {
"siapi": {
"baseUrl": "https://siapi.ai/v1",
"api": "openai-completions",
"apiKey": "$SIAPI_API_KEY",
"models": [
{
"id": "glm-5.3-flash",
"name": "GLM 5.3 Flash",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": null,
"minimal": null,
"low": "low",
"medium": null,
"high": "high",
"xhigh": null,
"max": "max"
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
},
{
"id": "deepseek-flash",
"name": "DeepSeek V4.1 Flash",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": null,
"high": "high",
"xhigh": null,
"max": "max"
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
},
{
"id": "kimi-k3.1-pro",
"name": "Kimi K3.1 Pro",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": null,
"minimal": null,
"low": "low",
"medium": null,
"high": "high",
"xhigh": null,
"max": "max"
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
},
{
"id": "kimi-k3.1-pro-highspeed",
"name": "Kimi K3.1 Pro HighSpeed",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": null,
"minimal": null,
"low": "low",
"medium": null,
"high": "high",
"xhigh": null,
"max": "max"
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
},
{
"id": "glm-5.3",
"name": "GLM 5.3",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": null,
"minimal": null,
"low": "low",
"medium": null,
"high": "high",
"xhigh": null,
"max": "max"
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
},
{
"id": "minimax-m3.1",
"name": "MiniMax M3.1 Flash",
"input": [
"text"
],
"reasoning": false,
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": false
}
},
{
"id": "qwen3.8-max",
"name": "Qwen3.8 Max",
"input": [
"text"
],
"reasoning": true,
"thinkingLevelMap": {
"off": "none",
"minimal": null,
"low": "low",
"medium": "medium",
"high": null,
"xhigh": "xhigh",
"max": null
},
"compat": {
"supportsDeveloperRole": false,
"supportsReasoningEffort": true
}
}
]
}
}
}
settings.json
Save to: ~/.config/siapi/pi/settings.json
Merge these fields into an existing file, preserving other providers, permissions and preferences. Do not replace an existing configuration wholesale. modelThinkingLevels sets the starting effort for each model; models.json separately declares its available choices. Save both files in the same PI_CODING_AGENT_DIR.
View or copy configuration
{
"defaultProvider": "siapi",
"defaultModel": "deepseek-flash",
"modelThinkingLevels": {
"siapi/glm-5.3-flash": "max",
"siapi/deepseek-flash": "high",
"siapi/kimi-k3.1-pro": "max",
"siapi/kimi-k3.1-pro-highspeed": "max",
"siapi/glm-5.3": "max",
"siapi/qwen3.8-max": "xhigh"
}
}
3. Start your Agent
Start a new session and send a message. The startup model is deepseek-flash.
PI_CODING_AGENT_DIR="$HOME/.config/siapi/pi" pi --provider siapi --model deepseek-flash4. Switch between all models
After setup, choose any model below inside your Agent. The same key and configuration work for all seven models; no new download or connection is needed.
| Model / API ID | Command / picker path | Thinking settings |
|---|---|---|
GLM 5.3 Flashglm-5.3-flash | /model → SI-API → GLM 5.3 Flash (glm-5.3-flash) | Low, High and Max. Thinking is always enabled; choose Low for less reasoning. The model default is Max. |
DeepSeek V4.1 Flashdeepseek-flash | /model → SI-API → DeepSeek V4.1 Flash (deepseek-flash) | Off, Low, High and Max. Medium / XHigh map to High; Ultra maps to Max. |
Kimi K3.1 Prokimi-k3.1-pro | /model → SI-API → Kimi K3.1 Pro (kimi-k3.1-pro) | Low, High and Max. Thinking is always enabled; choose Low for less reasoning. The model default is Max. |
Kimi K3.1 Pro HighSpeedkimi-k3.1-pro-highspeed | /model → SI-API → Kimi K3.1 Pro HighSpeed (kimi-k3.1-pro-highspeed) | Low, High and Max. Thinking is always enabled; choose Low for less reasoning. The model default is Max. |
GLM 5.3glm-5.3 | /model → SI-API → GLM 5.3 (glm-5.3) | Low, High and Max. Thinking is always enabled; choose Low for less reasoning. The model default is Max. |
MiniMax M3.1 Flashminimax-m3.1 | /model → SI-API → MiniMax M3.1 Flash (minimax-m3.1) | Use the model default. This route does not expose custom thinking controls. |
Qwen3.8 Maxqwen3.8-max | /model → SI-API → Qwen3.8 Max (qwen3.8-max) | Off, Low, Medium and XHigh. High / Max map to XHigh, not additional levels. |
5. Choose reasoning effort
Send each command separately inside your Agent. On DeepSeek V4.1 Flash, switch from Low to High before your next message.
/thinkingAvailable effort levels depend on the model; see the table above. MiniMax M3.1 Flash uses its model default.
Effort defaults and saved settings
Start on DeepSeek V4.1 Flash. Choose Low, send a short file-reading task, then choose High and repeat. Check the current setting after each change.
Effort means how much reasoning to request. Kimi K3.1 Pro / HighSpeed, GLM 5.3 and GLM 5.3 Flash offer Low / High / Max with thinking always enabled. Choose Low for shorter reasoning; there is no Off option. Their model default is Max, but a client setting can override it. DeepSeek and Qwen have their own intensity levels listed below.
MiniMax M3.1 Flash uses its default reasoning behavior. MiniMax M3 settings apply to a different model.
Save both supplied files. settings.json uses modelThinkingLevels to set High for DeepSeek, Max for Kimi and GLM, XHigh for Qwen. models.json declares which choices are available; it does not set these defaults.
Open /thinking and choose Low or High, or use Shift+Tab to cycle supported levels. The footer shows the active level. This changes the session; Ctrl+S saves the global fallback. Per-model defaults take precedence over that fallback: edit modelThinkingLevels or use /settings → Default thinking level per model to change them. Ctrl+T only shows or hides reasoning text.
/model
/thinking- If the selector is missing, confirm that Pi loaded the supplied models.json from the same PI_CODING_AGENT_DIR. Supported models need reasoning: true and the complete thinkingLevelMap. Null entries remove unsupported levels; do not delete them. Open /model to reload the file, then inspect /thinking again.
Expected: On DeepSeek V4.1 Flash, the current setting changes from Low to High and back to Low before your next message. Other models follow the controls listed below.
Check the model and run your first task
Check the model and run your first task
Open a project containing README.md. Allow the tool to read it, then send the prompt below. Confirm that it reads the file and returns a summary. To check another model, switch using the table above and repeat this task.
/model
/thinkingUse the file-reading tool to read README.md in this project and summarize its purpose in one sentence. Do not modify any files.
Tool-specific notes
- Pi runs in your terminal, including an editor’s integrated terminal. There is no separate Desktop configuration here.
- Opening /model reloads models.json. Use /thinking for the session; settings.json holds startup defaults. Unsupported thinking levels are disabled in the model mapping.
Connection not working? · Usage
Agent compatibility — Client versions, tested reasoning fields and known limits.
Download setup instructions