Skip to content

MiniMax models fall through to the Claude-oriented default prompt #41031

Closed as not planned

Description

@quickbeard

Description

SystemPrompt.provider() in packages/opencode/src/session/system.ts picks a system prompt by substring-matching the model id. There is a branch for Kimi (kimi.txt, the open-weight agentic prompt) but none for MiniMax, so every MiniMax model falls through to PROMPT_DEFAULT (default.txt), which is written for Claude.

default.txt assumes a model that already acts without being told to. kimi.txt — which despite the filename has no Kimi/Moonshot-specific text — instead spells out the things open-weight agentic models tend to get wrong: that tools must be used rather than described ("Code that only appears in your text response is NOT saved"), that <system-reminder> tags are authoritative (e.g. plan-mode read-only restrictions), that parallel tool calls are encouraged, and that replies must match the user's language. Running MiniMax on default.txt is a poor fit for those reasons.

Note transform.ts already treats minimax as part of the open-weight family (grouped with kimi, deepseek, qwen, glm around line 778), so prompt selection is out of step with a grouping the codebase already makes elsewhere.

Steps to reproduce

  1. Run a MiniMax model (e.g. MiniMax/MiniMax-M3).
  2. Add a log/inspect SystemPrompt.provider(model)[0] — it returns default.txt, not kimi.txt.

Concretely, MiniMax on default.txt is more prone to describing an edit in prose instead of calling the edit tool, and to ignoring plan-mode <system-reminder> restrictions.

opencode version

dev (reproduces at current dev tip; provider() has no minimax branch).

Activity

  1. github-actions commented on Aug 7, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    Related context:

  2. rekram1-node commented on Aug 12, 2026

    @rekram1-node
    Collaborator

    this is intentional

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions