MiniMax (minimax) provider: model alias suffixed with [1M] is rejected by API
Author: hhdhhCreated Jun 19, 2026Updated Jun 19, 2026
Bug
When the active provider is minimax, oh --dry-run reports the resolved model as MiniMax-M3[1M]. But invoking oh -p "..." with the configured profile fails with:
API error: Error code: 400 - {'type': 'error', 'error': {'type': 'bad_request_error', 'message': "invalid params, unknown model 'minimax-m3[1m]' (2013)", 'http_code': '400'}, 'request_id': '...'}Reproduction
- Install
openharness-ai0.1.9 in a clean venv (Python 3.10+) - Set provider profile to
minimaxwith valid MiniMax-M3 API key - Run
oh --dry-run --output-format json→ settings.model shows"MiniMax-M3[1M]" - Run
oh -p "Reply ready"(no--modelflag) → rc=0 but stdout empty; stderr has the 400 above
Workaround
Pass --model MiniMax-M3 explicitly (without [1M]). The [1M] suffix appears to be added by OpenHarness when displaying the resolved config but is not stripped before sending to the API.
oh -p "Reply ready" --model MiniMax-M3 # works
oh -p "Reply ready" # fails (uses settings.model = "MiniMax-M3[1M]")Environment
- openharness-ai 0.1.9
- profile:
minimax(active) - settings.json excerpt:
{ "provider": "minimax", "model": "MiniMax-M3", "active_profile": "minimax" }
Suggestion
When the configured model has an alias-with-context-window suffix (like [1M]), the resolver should either:
- (a) strip the suffix before sending to the API, or
- (b) detect the matching upstream model id from the alias map and substitute
Let me know if you want a PR for this — happy to dig into the resolver code.
Related
- Built a 0-dep Python client (
ljg-openharness) that hits this. Working around with defaultmodel="MiniMax-M3"in ourprompt()wrapper. - All 29 of our community skills auto-load from
~/.claude/skills/— really nice compat layer, thanks!
Source: HKUDS/OpenHarness