Muse Code · 5 min read

Plugin management is on by default, plus per-run config flags and safer MCP configs

Muse Code 1.4.3 to 1.4.6 turns plugin management on by default and adds repeatable -c config flags, env-expanded MCP configs and corporate CA support. Session handling, two new hooks and muse serve permission defaults round out the week.

Key takeaways 6
  • Plugin management is on by default in 1.4.3: browse, install and create plugins from /plugins, muse plugins or the Settings Plugins row.
  • muse exec, the TUI and muse serve accept repeatable -c key=value flags for per-run settings, and MCP urls and headers expand ${VAR} and ${VAR:-default}.
  • Set ca_bundle to your company's CA file, and the HTTPS clients also trust the system certificate store.
  • /resume takes an id or a name, Automatic session naming is available in /settings, and session_retention_days deletes old sessions on macOS and Linux.
  • New PostToolBatch and StopFailure hooks arrive in 1.4.6, and contributor mode is now on by default for subscribers.
  • muse serve starts new sessions on Auto-review when a reviewer is available, and apps can choose a permission profile in session/start.

Muse Code setups tend to outgrow a single settings file. Plugins need a place to live, MCP configs carry secrets that should not be committed, corporate proxies break TLS, and saved sessions pile up. This week addresses all of it: plugin management is on by default, configuration gets per-run flags and environment expansion, and session handling gets names and retention. Two new hooks and a change to the muse serve permission default round it out.

This update covers October 8-11, 2026, with versions 1.4.3 to 1.4.6. That is 4 releases and 388 changelog entries, so the list below is a selection.


Plugins no longer need setup

Plugin management is on by default. Since 1.4.3 you can browse, install and create plugins from /plugins, from muse plugins in the shell, or from the Plugins row in Settings. There is no flag to flip first.

The conditions are short. No prerequisites or plan restrictions are listed for this feature. If plugin management was previously switched off in your setup, check whether you want it on now. The /plugins command is the quickest way to see what is on offer.

Details are thin. The changelog entry describes the entry points and nothing more. What a plugin can contain and how installation is scoped is something to find out by opening /plugins yourself. I would not assume more than what the screen shows.


Changes for everyday work

Per-run config flags. muse exec, the interactive TUI and muse serve accept repeatable -c key=value (--config) flags. Each one sets any existing setting for that run only, including MCP servers. Secret fields take ${VAR} references instead of inline values. Managed policy still wins, so a flag cannot override what your admin enforces.

Environment expansion in MCP configs. MCP server url and header values in settings.json and in a trusted project .mcp.json now expand ${VAR} and ${VAR:-default} from your environment. A checked-in config can therefore keep its secrets out. Write $$ when you need a literal $.

Corporate CA support. Set ca_bundle to your company’s CA file, and model providers plus telemetry trust it. Networks that inspect traffic then connect instead of failing. Certificate problems now report a clear error instead of retrying. Separately, HTTPS clients also trust your system’s certificate store alongside the built-in roots, so some inspected networks may work with no configuration at all.

Resume by name. Inside Muse Code, /resume <id-or-name> switches straight to that session, the same as muse resume <id-or-name> from the shell.

Automatic session naming. Turn it on in /settings and each session gets a short Name and a Description. A name you set with /name or /rename always wins, so the automatic one never overwrites yours.

Session retention. Set session_retention_days in your settings file to delete saved sessions you have not opened for that many days. Unset keeps sessions forever. For now this works on macOS and Linux only.

Two new hooks. A PostToolBatch hook runs once after each committed tool batch and receives the ordered tool calls. A handler can block the batch with a reason, stop the turn, or add context, which is held until the turn’s completion hook settles. Feedback from a PostToolBatch hook that ends a turn reaches the model on the next user turn, exactly once and in handler order. A StopFailure hook runs once when a turn ends in a final model failure, and it receives the failure category and safe details.

Contributor mode is on for subscribers. It is subscribers-only and routes each model family to its served contributor model. As of 1.4.6 it is on by default, and the contributor-mode notice appears right after your first login inside the app, before any request goes out in contributor mode. You can turn it off any time in /settings. Without an active subscription or a served contributor model, the toggle stays hidden and requests go out unchanged.

muse serve reviews by default. muse serve now runs its own reviewer and honors permissions.default_profile: ":auto-review". A host with no default profile and no sandbox flags starts new sessions on Auto-review instead of Ask me, provided a reviewer is available. A --disable-sandbox or --sandbox-network host keeps human approval. To keep Ask me everywhere, set permissions.default_profile: ":ask-me".

Pick the profile at session start. Apps can choose the permission profile with the permissionProfile member of session/start. An id the host does not offer is refused before the session exists. A session served without a signed-in provider now lists the profiles that host policy excludes as unavailable, the same as a signed-in host does.


Technical notes

Session protocol.

  • The protocol serves turn/foregroundCompleted when the answer is done but background reminder checks still hold the turn open. Apps can use it to stop showing ‘Working…’.
  • Apps can pause a running workflow and read its paused state on the workflow item.
  • Apps can upload video in chunks and attach it to a turn by reference.

Launch and exec.

  • --effort is now a shorter alias for --reasoning-effort, at launch and in exec.
  • muse exec --disable-reminders runs without reminder agents.
  • Shell commands, background monitors and hook commands now see MUSE_SESSION_ID and MUSE_THREAD_ID.

Models. /model <model-id> switches directly without the picker. An id that is not in the model list applies to the current session only and is not saved.

Composer. While a turn runs, Tab queues your message for the next turn and Alt+Enter inserts a newline. A skill typed or picked in the composer during a running turn now steers in with Enter, or waits for the next turn with Alt+Enter, instead of being refused.

MCP and agents. A named toolset (run.toolset) can select a server’s MCP tools with a trailing *, such as mcp__docs__*. Agent definitions can choose a model and reasoning effort for delegated Workflow tasks.

Sandbox. The host-network sandbox mode is now spelled unrestricted. enabled still works as a deprecated alias, so update your configs when convenient.


What to take away

If you work in the terminal. Open /plugins once and see what plugin management offers. Try /model <model-id> and the shorter --effort flag. Use -c key=value for one-off runs instead of editing settings, for example when you want a different MCP server for a single muse exec call. If you are a subscriber, check /settings to see whether contributor mode is now on and whether you want it.

If you run parallel sessions. Turn on Automatic session naming in /settings and use /resume <id-or-name> to jump between sessions. Consider session_retention_days if saved sessions accumulate (macOS and Linux only). MUSE_SESSION_ID and MUSE_THREAD_ID in shell commands, monitors and hooks let your scripts tell sessions apart. During a running turn, Tab queues the next message and Alt+Enter adds a newline.

If you administer integrations and company deployments. Move MCP secrets out of checked-in .mcp.json files and into ${VAR} references. Set ca_bundle where traffic is inspected, and expect certificate problems to fail with a clear error instead of retries. Decide whether the muse serve Auto-review default fits your hosts. If it does not, set permissions.default_profile: ":ask-me". If you build on the session protocol, look at permissionProfile in session/start, turn/foregroundCompleted, and the new PostToolBatch and StopFailure hooks. Managed policy still wins over -c flags.

Sources: the Muse Code changelog, versions 1.4.3 to 1.4.6 (October 8-11, 2026), and the Muse Code documentation. Availability of individual features, including contributor mode, may change.

Patrick Zandl trains teams in Claude Code and agentic software development in Prague and writes about what actually works in real-world AI-assisted projects. Follow on LinkedIn

Read next

Get the next one by email

New articles and the weekly Claude Code update. No spam.