88f6d6272b
MUL-8057: feat(agent): run Meta Muse Code as an MSP runtime ( #9309 )
...
* feat(agent): run Meta Muse Code as an MSP runtime
Muse Code speaks MSP (Muse Session Protocol) over `muse serve`: JSON-RPC
2.0 on stdio, like ACP, but with its own method vocabulary. A session opens
with session/start or session/resume, work is submitted with turn/start, and
assistant text, reasoning and tool calls arrive as transcript items.
The adapter maps those items onto the Backend contract, reads the terminal
turn outcome, and reports a notFound resume as ResumeRejected so the daemon
retries on a fresh session instead of losing continuity silently.
Approval is a session property, not a launch flag: `muse serve` has no
--yolo, and the CLI documents --yolo as TUI-only. A fresh session is created
with approvalMode=allowAll and a resumed session re-asserts it with
session/setApprovalMode, which is what lets a claimed task run without
waiting for a human. The container and per-task worktree remain the
isolation boundary, as they are for every other backend.
commandId must be UUIDv7 — Muse derives a turn id from it and rejects
anything else — so the adapter mints time-ordered ids rather than v4.
The model catalog comes from the session-free model/list query and the pick
is applied through session/start modelId.
* feat(runtime-profiles): allow muse as a protocol family
A custom runtime profile may only be based on a protocol family the daemon
supports, and the database enforces the same list. Widening both keeps the
create flow, the server validation and the CHECK constraint in lockstep with
agent.SupportedTypes.
* fix(muse): complete runtime integration and lifecycle handling (MUL-8057)
Co-authored-by: multica-agent <[email protected] >
* docs(muse): document runtime setup and support (MUL-8057)
Co-authored-by: multica-agent <[email protected] >
---------
Co-authored-by: yushen <[email protected] >
Co-authored-by: multica-agent <[email protected] >
2026-10-19 13:45:42 +08:00
..
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-10 14:12:16 +08:00
2026-09-10 14:12:16 +08:00
2026-09-10 14:12:16 +08:00
2026-09-10 14:12:16 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-23 18:30:31 +08:00
2026-09-15 15:25:20 +08:00
2026-09-15 15:25:20 +08:00
2026-09-15 15:25:20 +08:00
2026-09-15 15:25:20 +08:00
2026-09-23 18:30:31 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 18:30:31 +08:00
2026-09-16 18:44:59 +08:00
2026-09-16 18:44:59 +08:00
2026-09-16 18:44:59 +08:00
2026-09-16 18:44:59 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-24 13:08:11 +08:00
2026-09-24 12:41:47 +08:00
2026-09-24 12:41:47 +08:00
2026-09-24 12:41:47 +08:00
2026-09-24 12:41:47 +08:00
2026-09-23 18:30:31 +08:00
2026-09-01 16:04:34 +08:00
2026-09-01 16:04:34 +08:00
2026-08-25 22:43:16 +08:00
2026-09-01 16:04:34 +08:00
2026-09-29 23:27:27 -07:00
2026-10-07 13:33:02 +08:00
2026-10-07 13:33:02 +08:00
2026-10-13 14:25:49 +08:00
2026-10-07 13:33:02 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-27 03:23:21 +08:00
2026-09-27 03:23:21 +08:00
2026-09-27 03:23:21 +08:00
2026-09-27 03:23:21 +08:00
2026-09-27 03:23:21 +08:00
2026-09-23 18:30:31 +08:00
2026-08-20 00:22:04 +08:00
2026-09-01 16:04:34 +08:00
2026-08-20 00:22:04 +08:00
2026-09-01 16:04:34 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-10-12 15:56:39 +08:00
2026-10-12 15:56:39 +08:00
2026-10-12 15:56:39 +08:00
2026-10-12 15:56:39 +08:00
2026-10-12 15:56:39 +08:00
2026-09-23 18:30:31 +08:00
2026-09-01 16:04:34 +08:00
2026-09-01 16:04:34 +08:00
2026-08-05 13:42:05 +08:00
2026-09-01 16:04:34 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-23 18:30:31 +08:00
2026-09-16 13:47:30 +08:00
2026-09-16 13:47:30 +08:00
2026-09-16 13:47:30 +08:00
2026-09-16 13:47:30 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-09-23 18:30:31 +08:00
2026-09-27 02:26:24 +08:00
2026-09-27 02:26:24 +08:00
2026-09-27 02:26:24 +08:00
2026-09-27 02:26:24 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 14:33:43 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-21 18:29:50 +08:00
2026-09-08 22:51:19 +08:00
2026-09-23 18:30:31 +08:00
2026-09-01 16:04:34 +08:00
2026-08-20 00:22:04 +08:00
2026-09-01 16:04:34 +08:00
2026-09-01 16:04:34 +08:00
2026-09-24 14:25:49 +08:00
2026-09-24 14:25:49 +08:00
2026-09-24 14:25:49 +08:00
2026-09-24 14:25:49 +08:00
2026-09-24 14:25:49 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-10-14 14:43:47 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-01 16:04:34 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-10-19 13:45:42 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-10-08 01:18:08 +08:00
2026-10-08 01:18:08 +08:00
2026-10-08 01:18:08 +08:00
2026-10-08 01:18:08 +08:00
2026-10-08 01:18:08 +08:00
2026-09-23 18:30:31 +08:00
2026-09-01 16:04:34 +08:00
2026-09-01 16:04:34 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-20 14:57:49 +08:00
2026-09-20 14:57:49 +08:00
2026-09-20 14:57:49 +08:00
2026-09-20 14:57:49 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-27 02:11:19 +08:00
2026-09-27 02:11:19 +08:00
2026-09-27 02:11:19 +08:00
2026-09-27 02:11:19 +08:00
2026-09-27 02:11:19 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-01 16:04:34 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-27 18:15:01 +08:00
2026-09-23 18:30:31 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00
2026-09-03 22:53:11 +08:00