[Feature]: Expose mavis orchestrator via `mcode exec --team` (CLI parity with Desktop GUI Team button)
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 35/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- typescript
调研方向
首先使用 mcode exec 复现缺失的 --team 和 --agent 选项,然后阅读现有的 mavis Task dispatch,以及 issue 中提到的模板 delegation.md.hbs。跟踪 GUI 的 Team 按钮如何到达该机制,以及 CLI 当前如何处理 --model、sessions 和 output。当一个有文档记录的、由 roster 驱动的 CLI 路径复用现有 orchestrator,并具备可审计的交接、生命周期处理和综合输出时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
Problem
mcode exec (v0.2.6, verified 2026-08-27) is a single-agent executor with no native multi-agent dispatch. The Desktop GUI has a Team button that triggers mavis to orchestrate sub-agents, but the CLI does not.
Why this matters strategically
Exposing the full power of mcode via the CLI is not just a parity
fix — it is what lets MiniMax realize the maximum capability of this
harness and of MiniMax as a platform company.
The whole point of an agent harness is to give a single human (or
agent) leverage: instead of writing code, you describe a goal and the
harness coordinates the work. Today, the harness coordinates only
one agent through the CLI — the moment a task needs a writer +
verifier + synthesist (which is most real research, code-review,
ingest, and data-pipeline work), the user is pushed into either GUI
mode or fragile shell-fan-out. Neither scales.
If the CLI exposes mavis's orchestrator the way the GUI Team
button already does, then any human — or any other agent — can have
an agent team enabled, harness-controlled complex job achieved, by
simply entering a line of CLI code:
mcode exec --team roster.yaml -o final.md "verify this filing"
That single line replaces:
- A click path through the Desktop GUI.
- A hand-written orchestration prompt that encodes five different
sub-agent instructions, output paths, wait conditions, and
handoff rules. - A bespoke shell script that launches N parallel
mcode exec
processes and tries to glue their outputs back together.
Making the CLI a first-class surface for multi-agent work turns
mcode from "a coding agent with a team mode" into "an agent
harness that any user can drive end-to-end from a terminal or from
another agent". That is the version of the product that earns the
"platform" framing — and it is the version that agents (including
MiniMax-built ones) can call without permission-grants, without GUI
sessions, and without ad-hoc wrappers.
The GUI Team button is the proof of concept; the CLI flag is what
makes it platform-grade.
Reproduce the missing flag:
$ mcode exec --team
error: unknown option '--team'
$ mcode exec --agent verifier
error: unknown option '--agent'
The only flags available are --config / --cwd / --input-format / --max-steps / --output-format / --output-last-message / --output-schema / --permission / --timeout / --model / --session / --continue / --input / --file. There is no --team, no --agent-profile, no --orchestrator, no --subagent-roster.
This forces any CLI user who wants multi-agent work (e.g. writer→verifier→synthesist, ingest pipelines, parallel scrapers with handoff) to either:
- Encode the entire sub-agent plan into the prompt — including the names, output paths, "wait for all sub-agents before synthesizing", and disjoint file-ownership rules. If any of those five instructions is missing, the main agent silently does all the work itself and the deliverable looks like multi-agent evidence but isn't.
- Shell-level fan-out of N parallel
mcode execprocesses — no shared coordinator, no handoff log, no synthesis visibility. This is the failure mode I hit on 2026-08-27 (launched 4 parallel execs for a verification task; 2 sub-agents failed silently; the synthesist had no inputs and did the work inline, producing a report that looked tier-tagged but wasn't).
Both options are worse than what the GUI Team button does. They are also worse than what mavis's internal Task tool already does when a parent agent delegates to a child — the runtime clearly knows how to manage sub-agent lifetime, handoff logging, foreground/background discipline, and disjoint ownership (delegation.md.hbs in the dist). The CLI just has no entry point into that machinery.
Proposed solution
Expose the existing mavis orchestrator behind CLI flags. At minimum:
# Sub-agent roster as JSON / YAML file (or inline)
mcode exec \
--team agents.yaml \
--cwd ~/work/dennis-1988 \
--model minimax/MiniMax-M3 \
--permission smart \
--max-steps 25 \
--timeout 8m \
-o final.md \
"Verify Richard Dennis's 1988 inflation claims across historian + economist sub-agents"
# agents.yaml (or .json) example
roster:
- name: verifier
role: source-integrity
output: verifier.md
- name: historian
role: data-pull
output: historian.md
background: true
- name: economist
role: causal-logic
output: economist.md
- name: synthesist
role: synthesis
waits_for: [verifier, historian, economist]
output: final.md
synthesis:
wait_for_outputs: [verifier.md, historian.md, economist.md]
handoff_log_required: true
final_file: final.md
Behaviors the GUI Team button already implements and that the CLI should reuse:
- Sub-agent lifetime managed by
mavis(spawn → work → return → terminate), all in the same session / workspace / scratchpad. - Handoff log enforced by the runtime, not left to the prompt.
- Foreground / background discipline —
background: trueonly for independent work; parallel writers must have disjoint file ownership. - Task registry — sub-agent work auditable via
mavis session list / session messages. - Per-sub-agent model —
model:field in the roster, instead of inheriting the parent--model.
What the CLI should NOT have to invent:
- A new orchestrator. Reuse
mavis'sTasktool dispatch. - A new handoff format. Reuse the existing
delegation.md.hbstemplate. - A new model-routing layer. Reuse the existing
--modelplumbing.
The CLI change is essentially: add --team <file> (or --team <inline-json>), have mcode exec instantiate mavis as the parent, and have mavis fan out per the roster.
Optional follow-ups that would also help:
mcode team list/mcode team validate agents.yaml— schema-check the roster before launch.mcode team init <name>— scaffold a new agent template under~/.mcode/agents/<name>/(mirroring theassets/agents/verifier//worker//explore/built-ins).- Document the existing CLI gap in
docs/code/cli/quick-startso users don't waste hours encoding multi-agent plans into single-agent prompts.
Platform
- macOS
- Windows
- Linux desktop support
- All desktop platforms
Additional context
- MiniMax Code v0.2.6 (CLI), installed via npm.
- mavis
delegation.md.hbsalready encodes the rules the CLI would need: foreground when result blocks next decision; background only for independent / long-running work; parallel writers must have disjoint ownership; the child does not inherit conversation history — the parent must brief it with objective / known facts / scope / acceptance criteria / output format. - Failure case that produced this request: 2026-08-27 verification of Richard Dennis's mid-1988 inflation claims in Market Wizards. Launched 4 parallel
mcode execcalls — historian and economist sub-agents returned withRuntime completed without a final assistant responseandWeb search is down; the synthesist had no inputs and did the work inline, producing a 15KB "synthesis" that looked tier-tagged but wasn't. The whole failure is a direct consequence of the CLI not exposingmavis's orchestrator. - I have not seen any open issue requesting this exact CLI feature. Searched:
cli subagent,--team,--agent,orchestrate. Closest match is #120 (mavis CLI removal) and #101 (web mode), neither covers team-mode CLI.
Before submitting
- I have searched existing issues.
- 主要语言
- TypeScript
- 星标
- 2k
- 派生
- 254
- 平均合并
- 8 小时 35 分钟
- 30 天内合并 PR
- 152
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
MiniMax-AI/minimax-code 的其他 Issue
-
bug needs-triage tui
难度 2/5 1-3 小时 新手友好度 72/100
MiniMax-AI/minimax-code#481 · 1 条评论 ·
维护者通常 1 天内回复
-
bug cli documentation needs-triage
难度 2/5 1-3 小时 新手友好度 84/100
MiniMax-AI/minimax-code#299 · 3 条评论 ·
维护者通常 1 天内回复
-
bug cli needs-triage
难度 2/5 1-3 小时 新手友好度 78/100
MiniMax-AI/minimax-code#128 · 2 条评论 ·
维护者通常 1 天内回复
-
bug desktop
难度 2/5 1-3 小时 新手友好度 82/100
MiniMax-AI/minimax-code#87 · 2 条评论 · 2 个 reaction ·
维护者通常 1 天内回复
-
bug desktop needs-triage
难度 2/5 1-3 小时 新手友好度 68/100
MiniMax-AI/minimax-code#80 ·
维护者通常 1 天内回复
查看 MiniMax-AI/minimax-code 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 72/100
stellar/stellar-dev-skill#151 ·
维护者通常 1 天内回复
-
area:arcade game ready-for-agent
难度 2/5 1-3 小时 新手友好度 62/100
fderuiter/deruiter.dev#2281 · 1 条评论 ·
维护者通常 1 天内回复
-
scope: data grid type: bug
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 2 天内回复
-
fix(frontend): correct VITE_IS_DEVELPOMENT typo in shared/app.ts and align dev environment flags未关闭
难度 2/5 1-3 小时 新手友好度 75/100
vicharanashala/ajrasakha#1439 ·
维护者通常 1 天内回复
-
approved check:passed streams:add
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复