Home

mweinbach / agent-coworker

publicmweinbach/agent-coworker
Overview Code History Branches Pull requestsIssuesInsights
main
HomeOverview Code PRsIssues

feat: add minimax provider with MiniMax-M3 model

4 months ago

0281071
Authored
Max Weinbach6/4/2026, 2:44:53 PM
Adds the minimax provider (https://api.minimax.io) supporting only the MiniMax-M3 model. Routes through the existing pi runtime's openai-completions adapter with a Bearer auth header and custom baseUrl.

- New provider entry (src/providers/minimax.ts) and shared spec (src/providers/minimaxShared.ts) with model metadata, pricing, and API key resolver
- Model registry entry under config/models/minimax/MiniMax-M3.json (1M context, multimodal, knowledgeCutoff 'Unknown' pending vendor publication)
- createMinimaxModelAdapter wired into the model adapter factory
- PI runtime resolution branch (getMinimaxPiModel + resolvePiModel) with compat { maxTokensField: 'max_completion_tokens', thinkingFormat: 'openai' }
- Pricing tier: \.60/M input, \.40/M output, \.12/M cache-read
- User-facing enabled by default; provider label 'MiniMax'
- Provider-gated tool factories audited: minimax uses default local tool set (no native web search)
- Child agent info: frontierCoding role
- WebSocket protocol ProviderName enum and regenerated JSON-RPC artifacts updated
- Tests: new test/providers/minimax.test.ts (11 tests) + augmentations to modelAdapter, saved-keys, connection-catalog, cross-provider, and types test suites

Parentf80c6b7

23 files changed
  • config/models/minimax/MiniMax-M3.json+10−0
  • docs/generated/websocket-jsonrpc.d.ts+22−22
  • docs/generated/websocket-jsonrpc.schema.json+1−1
  • docs/websocket-protocol.md+1−1
  • src/models/childAgentModelInfo.ts+1−0
  • src/models/registry.ts+4−0
  • src/prompt.ts+1−0
  • src/providers/catalog.ts+5
−0
  • src/providers/connectionCatalog.ts+1−0
  • src/providers/index.ts+3−0
  • src/providers/minimax.ts+14−0
  • src/providers/minimaxShared.ts+63−0
  • src/providers/modelAdapter.ts+20−0
  • src/runtime/pi/modelResolution.ts+43−0
  • src/session/pricing.ts+7−0
  • src/shared/providerAuthMethods.ts+1−0
  • src/types.ts+1−0
  • test/providers/connection-catalog.test.ts+26−0
  • test/providers/cross-provider.test.ts+5−0
  • test/providers/minimax.test.ts+136−0
  • test/providers/modelAdapter.test.ts+35−18
  • test/providers/saved-keys.test.ts+66−0
  • test/types.test.ts+8−2