Repository navigation
Conversation
rtravellin
left a comment
There was a problem hiding this comment.
This looks right for new runs: everything goes through runHeadlessAgent, background workers inherit MUSE_CC_MODEL, and check --model matches real runs. One question first.
Resume may switch models (scripts/lib/muse.mjs:707). --model is now always passed, so /muse:delegate --resume without --model gets spark even when the original run used another model. For example, a run started with --model contributor and continued with --resume changes model partway through. The resume path (executeTaskRun with resumeSessionId) doesn't look up the earlier run's model, and no test covers resume.
This only matters if Muse otherwise keeps a session's model when --model is omitted. If it does, could you skip the default on resume, or reuse the model recorded on the run being resumed?
This will also need a rebase: #2 and #3 are merged, and this one overlaps with both (muse-bridge.mjs, lib/muse.mjs, CHANGELOG, README).
With no --model, `muse exec` runs Muse's catalog default, muse-spark-1.3-contributor, whose catalog entry says content may be used for product improvement. The bridge now always names a model: --model if given, else MUSE_CC_MODEL (alias or full id), else the `spark` alias (muse-spark-1.3). `--model contributor` / MUSE_CC_MODEL=contributor still select the contributor model explicitly. - muse.mjs: MODEL_ENV, DEFAULT_MODEL_ALIAS and resolveModelSelection(); runHeadlessAgent resolves the model for every launch, so review, critique, delegate runs (foreground and background workers), transfer, the stop-review gate and `check --probe` are all covered. - /muse:check shows a `model:` line with the model that will be used and why (--model, MUSE_CC_MODEL, or plugin default), plus the catalog note for that model; JSON gains models.selected. check accepts --model, and --probe uses the selected model. The catalog list labels Muse's own default "(Muse default)". - README model sections and Environment table, commands/check.md, and the delegate agent/skill notes updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Muse keeps a session's model when --model is omitted on resume (checked on 1.3.0-R3401.1: a session started on muse-spark-1.3 stays on it when resumed without --model, while a new session without --model gets muse-spark-1.3-contributor). Always passing the plugin default switched a resumed contributor run to spark. runHeadlessAgent now takes resume and then only forwards an explicit --model. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Muse does keep the session's model: on 1.3.0-R3401.1, a session started with |
ab94d12 to
5ed83b3
Compare
With no
--model,muse execruns Muse's catalog default,muse-spark-1.3-contributor, whose catalog entry says content may be used for product improvement. So every review, critique, delegate run and transfer made through the plugin lands on that model unless the user remembers--model sparkeach time, and the repository content in those prompts goes with it.This changes the default, so it is your call as maintainer; I've kept it to one commit to make it easy to take or leave.
The bridge now always names a model:
--modelif given, elseMUSE_CC_MODEL(an alias or a full catalog id), else thesparkalias (muse-spark-1.3).--model contributororMUSE_CC_MODEL=contributorstill selects the contributor model explicitly.muse.mjs:resolveModelSelection();runHeadlessAgentresolves the model for every launch, so review, critique, delegate runs (foreground and background workers), transfer, the stop-time review gate andcheck --probeare all covered./muse:checkgains amodel:line with the model that will be used and why (--model,MUSE_CC_MODEL, or plugin default), plus the catalog note for that model; JSON gainsmodels.selected.checkaccepts--model, and--probeuses the selected model. The catalog list labels Muse's own default "(Muse default)".commands/*.md, the delegate agent and runtime skill notes, CHANGELOG (Unreleased).muse-spark-1.3;MUSE_CC_MODELtakes aliases and full ids and--modelbeats it;checkreports the selected model and its source.Independent of #2 and #3. It shares the
runEveryExecPathtest helper with #3 (identical text, same place) and, like both, adds a line at the top of the CHANGELOG's Unreleased section; I'll rebase whichever lands later.Tests: 113/113 locally on Windows.
🤖 Generated with Claude Code