Switch CMOs and QAs to minimax/MiniMax-M2.7 direct (no OpenRouter)

CMOs (Savannah, Addison, Clipper):
- Switched from claude_local/sonnet to opencode_local/minimax
- Uses MINIMAX_API_KEY secret_ref (direct MiniMax API, not OpenRouter)
- opencode.json with web search MCP
- Removed .mcp.json (claude_local only)
- promptTemplate required in DB (no instructionsFilePath)

QAs (Betty, Regina, Lint Roller):
- Switched from openrouter/minimax to minimax direct
- Model: minimax/MiniMax-M2.7 (was openrouter/minimax/minimax-m2.7)
- Uses MINIMAX_API_KEY instead of OPENROUTER_API_KEY

VP Products: unchanged (stay on opus, .mcp.json for web search MCP only)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
2026-03-21 10:39:04 -04:00
parent a7680209db
commit 0c202506d5
5 changed files with 35 additions and 27 deletions
-12
View File
@@ -1,12 +0,0 @@
{
"mcpServers": {
"minimax-search": {
"type": "stdio",
"command": "uvx",
"args": ["minimax-coding-plan-mcp", "-y"],
"env": {
"MINIMAX_API_HOST": "https://api.minimax.io"
}
}
}
}
+12 -12
View File
@@ -1,6 +1,8 @@
# Addison Addington — Config # Addison Addington — Config
> This file is the operational backup. The active prompt is split across AGENTS.md, SOUL.md, and HEARTBEAT.md. > This file is the operational backup.
>
> **Note:** Uses the `opencode_local` adapter with MiniMax M2.7 direct. Prompt lives as `promptTemplate` in the Paperclip DB. The active prompt is split across AGENTS.md, SOUL.md, and HEARTBEAT.md.
## Identity ## Identity
@@ -9,7 +11,7 @@
| ID | `606d2953-ca84-4ffc-b575-cb7e2e5897d3` | | ID | `606d2953-ca84-4ffc-b575-cb7e2e5897d3` |
| Role | `cmo` | | Role | `cmo` |
| Title | Chief Sign Spinner | | Title | Chief Sign Spinner |
| Adapter | `claude_local` | | Adapter | `opencode_local` |
| Reports To | Countess von Containerheim (`cc3abd0b-f1fb-44fd-af37-81ba3184f328`) | | Reports To | Countess von Containerheim (`cc3abd0b-f1fb-44fd-af37-81ba3184f328`) |
| Budget | 0 cents/month | | Budget | 0 cents/month |
@@ -32,20 +34,18 @@
"cwd": "/paperclip/privilegedescalation/agents/cmo", "cwd": "/paperclip/privilegedescalation/agents/cmo",
"env": { "env": {
"HOME": { "type": "plain", "value": "/paperclip/privilegedescalation/agents/cmo" }, "HOME": { "type": "plain", "value": "/paperclip/privilegedescalation/agents/cmo" },
"MINIMAX_API_KEY": { "type": "secret_ref", "secretId": "fc5a9197-9084-4478-a63d-b1c00a901f9e" }, "MINIMAX_API_KEY": { "type": "secret_ref", "secretId": "fc5a9197-9084-4478-a63d-b1c00a901f9e" }
"GITHUB_APP_ID_ADDISON": { "type": "plain", "value": "3140977" },
"GITHUB_PEM_PATH_ADDISON": { "type": "plain", "value": "/paperclip/secrets/github-pems/privilegedescalation-ceo.pem" }
}, },
"model": "claude-sonnet-4-6", "model": "minimax/MiniMax-M2.7"
"effort": "medium",
"graceSec": 15,
"timeoutSec": 0,
"maxTurnsPerRun": 80,
"instructionsFilePath": "/paperclip/privilegedescalation/agents/cmo/AGENTS.md",
"dangerouslySkipPermissions": true
} }
``` ```
## Capabilities ## Capabilities
Owns and executes the full marketing function for Privileged Escalation — strategy, content creation, social media, community engagement, and sponsor outreach. Does not write code or manage infrastructure. Developer relations, GitHub Sponsors, open source marketing, CNCF ecosystem. Owns and executes the full marketing function for Privileged Escalation — strategy, content creation, social media, community engagement, and sponsor outreach. Does not write code or manage infrastructure. Developer relations, GitHub Sponsors, open source marketing, CNCF ecosystem.
## Known Issues (opencode_local adapter)
- **Env + model wipe on UI save**: Saving config via the Paperclip UI wipes `env` and `model`. Restore via DB patch after any UI save.
- **Prompt UI blank**: The `opencode_local` adapter does not hydrate `promptTemplate` back into the Lexical editor. The prompt is correctly stored in the DB — the blank editor is a display bug.
- **No `instructionsFilePath`**: The `opencode_local` adapter does not support file-based prompt loading. The prompt must be concatenated from SOUL.md + HEARTBEAT.md and set as `promptTemplate` in the DB.
+20
View File
@@ -0,0 +1,20 @@
{
"$schema": "https://opencode.ai/config.json",
"permission": "allow",
"experimental": {
"snapshots": false
},
"mcp": {
"minimax-search": {
"type": "local",
"command": [
"uvx",
"minimax-coding-plan-mcp",
"-y"
],
"environment": {
"MINIMAX_API_HOST": "https://api.minimax.io"
}
}
}
}
+2 -2
View File
@@ -34,11 +34,11 @@
"cwd": "/paperclip/privilegedescalation/agents/engineering/regina", "cwd": "/paperclip/privilegedescalation/agents/engineering/regina",
"env": { "env": {
"HOME": { "type": "plain", "value": "/paperclip/privilegedescalation/agents/engineering/regina" }, "HOME": { "type": "plain", "value": "/paperclip/privilegedescalation/agents/engineering/regina" },
"OPENROUTER_API_KEY": { "type": "secret_ref", "secretId": "d843133a-0702-4f44-b8e8-43249879995f" }, "MINIMAX_API_KEY": { "type": "secret_ref", "secretId": "fc5a9197-9084-4478-a63d-b1c00a901f9e" },
"GITHUB_APP_ID_REGINA": { "type": "plain", "value": "3141386" }, "GITHUB_APP_ID_REGINA": { "type": "plain", "value": "3141386" },
"GITHUB_PEM_PATH_REGINA": { "type": "plain", "value": "/paperclip/secrets/github-pems/privilegedescalation-qa.pem" } "GITHUB_PEM_PATH_REGINA": { "type": "plain", "value": "/paperclip/secrets/github-pems/privilegedescalation-qa.pem" }
}, },
"model": "openrouter/minimax/minimax-m2.7" "model": "minimax/MiniMax-M2.7"
} }
``` ```