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-02 15:48:38 +08:00
2026-08-24 14:39:08 +08:00
2026-07-28 21:18:12 +08:00
2026-08-13 16:42:47 +08:00
2026-08-17 15:11:36 +08:00
2026-08-11 16:22:51 +08:00
2026-09-08 15:03:03 +08:00
2026-09-08 15:03:03 +08:00
2026-08-24 13:37:18 +08:00
2026-08-24 13:37:18 +08:00
2026-08-24 13:37:18 +08:00
2026-08-24 13:37:18 +08:00
2026-08-25 16:27:46 +08:00
2026-08-06 17:02:02 +08:00
2026-08-06 17:02:02 +08:00
2026-09-03 13:23:25 +08:00
2026-07-23 01:59:06 +08:00
2026-09-03 13:23:25 +08:00
2026-10-19 13:45:42 +08:00
2026-09-11 16:14:05 +08:00
2026-10-06 23:15:37 -06:00
2026-09-23 19:02:44 +08:00
2026-10-06 23:15:37 -06:00
2026-09-03 13:23:25 +08:00
2026-07-06 16:14:03 +08:00
2026-09-20 12:53:52 +08:00
2026-07-27 02:01:41 +08:00
2026-08-05 15:41:15 +08:00
2026-09-23 16:10:07 +08:00
2026-09-25 14:33:58 +08:00
2026-10-15 21:54:33 +08:00
2026-09-23 16:10:07 +08:00
2026-09-23 16:10:07 +08:00
2026-09-21 18:29:50 +08:00
2026-09-24 13:44:51 +08:00
2026-09-24 13:44:51 +08:00
2026-08-31 12:30:59 +08:00
2026-08-31 12:30:59 +08:00
2026-08-31 12:30:59 +08:00
2026-08-31 12:30:59 +08:00
2026-08-17 15:11:36 +08:00
2026-10-13 13:54:24 +08:00
2026-09-14 18:24:10 +08:00
2026-10-13 13:54:24 +08:00
2026-09-14 14:33:50 +08:00
2026-09-04 17:40:49 +08:00
2026-10-12 14:18:02 +08:00
2026-09-08 14:07:00 +08:00
2026-10-02 07:25:26 -07:00
2026-09-15 12:56:07 +08:00
2026-10-15 21:54:33 +08:00
2026-06-01 23:28:51 +08:00
2026-07-31 16:09:36 +08:00
2026-07-31 16:09:36 +08:00
2026-07-31 16:09:36 +08:00
2026-07-31 16:09:36 +08:00
2026-08-04 18:03:34 +08:00
2026-08-25 16:27:46 +08:00
2026-09-08 16:24:41 +08:00
2026-09-21 18:36:34 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-08 16:24:41 +08:00
2026-09-21 18:36:34 +08:00
2026-09-21 18:36:34 +08:00
2026-09-08 16:24:41 +08:00
2026-10-12 17:19:58 +08:00
2026-09-08 16:24:41 +08:00
2026-09-18 12:50:06 +08:00
2026-07-24 01:52:15 +08:00
2026-04-29 14:00:15 +08:00
2026-05-27 16:40:29 +08:00
2026-05-27 16:40:29 +08:00
2026-06-01 23:28:51 +08:00
2026-04-29 14:00:15 +08:00
2026-09-15 17:47:54 +08:00
2026-07-21 16:01:04 +08:00
2026-07-21 16:01:04 +08:00
2026-07-29 15:15:41 +08:00
2026-10-18 16:23:05 +08:00
2026-10-18 16:23:05 +08:00
2026-10-18 16:23:05 +08:00
2026-10-18 16:23:05 +08:00
2026-09-08 16:24:41 +08:00
2026-10-18 16:23:05 +08:00
2026-08-25 16:27:46 +08:00
2026-08-06 15:22:32 +08:00
2026-08-25 16:27:46 +08:00
2026-08-20 12:54:46 +08:00
2026-09-14 14:33:50 +08:00
2026-08-20 12:54:46 +08:00
2026-09-08 15:03:03 +08:00
2026-08-13 23:18:17 +08:00
2026-09-03 13:23:25 +08:00
2026-09-12 11:25:56 +08:00
2026-04-23 01:52:46 +08:00
2026-04-27 12:16:56 +08:00
2026-08-14 18:56:40 +08:00
2026-08-14 18:56:40 +08:00
2026-08-14 18:56:40 +08:00
2026-08-14 18:56:40 +08:00
2026-07-23 01:59:06 +08:00
2026-09-25 14:33:58 +08:00
2026-09-24 16:43:10 +08:00
2026-08-13 16:42:47 +08:00
2026-09-18 16:07:19 +08:00
2026-08-06 17:02:02 +08:00
2026-09-03 13:23:25 +08:00
2026-08-24 13:42:39 +08:00
2026-08-13 14:20:52 +08:00
2026-09-27 22:21:50 +08:00
2026-08-18 15:35:45 +08:00
2026-09-27 22:21:50 +08:00
2026-08-07 15:22:01 +08:00
2026-10-08 10:13:54 -07:00
2026-10-08 10:13:54 -07:00
2026-09-08 15:03:03 +08:00
2026-09-08 15:03:03 +08:00
2026-08-25 16:27:46 +08:00
2026-09-27 22:21:50 +08:00
2026-09-20 12:53:52 +08:00
2026-08-18 12:44:27 +08:00
2026-08-18 12:44:27 +08:00
2026-09-03 16:40:25 +08:00
2026-08-25 16:27:46 +08:00
2026-07-12 02:53:17 +08:00
2026-08-17 15:11:36 +08:00
2026-09-23 16:57:36 +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-10-19 13:45:42 +08:00
2026-10-08 18:43:01 -07:00
2026-10-08 18:43:01 -07:00
2026-10-08 18:43:01 -07:00
2026-10-08 18:43:01 -07:00
2026-10-08 18:43:01 -07:00
2026-09-14 14:33:50 +08:00
2026-09-14 14:33:50 +08:00
2026-09-03 13:23:25 +08:00
2026-08-28 14:04:10 +08:00
2026-06-25 00:41:25 +08:00
2026-08-07 12:31:55 +08:00
2026-05-30 18:08:21 +08:00
2026-09-15 13:59:20 +08:00
2026-08-07 12:31:55 +08:00
2026-08-07 12:31:55 +08:00
2026-09-03 13:23:25 +08:00
2026-09-15 13:59:20 +08:00
2026-09-20 17:10:32 +08:00
2026-09-20 17:10:32 +08:00
2026-09-20 17:10:32 +08:00
2026-05-28 12:36:16 +08:00
2026-08-24 14:37:26 +08:00
2026-08-24 14:37:26 +08:00
2026-08-24 14:37:26 +08:00
2026-08-24 14:37:26 +08:00
2026-09-07 14:47:56 +08:00
2026-08-31 13:49:38 +08:00
2026-09-01 13:12:38 +08:00
2026-09-01 13:12:38 +08:00
2026-08-20 18:01:53 +08:00
2026-08-20 18:01:53 +08:00
2026-10-12 13:26:00 +08:00
2026-09-18 15:20:48 +08:00
2026-10-12 13:26:00 +08:00
2026-08-25 16:27:46 +08:00
2026-09-08 14:07:00 +08:00
2026-08-25 16:27:46 +08:00
2026-09-08 15:03:03 +08:00
2026-09-08 15:03:03 +08:00
2026-09-16 15:20:06 +08:00
2026-08-24 15:08:14 +08:00
2026-09-03 13:23:25 +08:00
2026-08-24 15:08:14 +08:00
2026-08-24 15:08:14 +08:00
2026-08-24 15:08:14 +08:00
2026-08-24 15:08:14 +08:00
2026-09-16 19:27:59 +08:00
2026-09-16 19:27:59 +08:00
2026-09-16 19:27:59 +08:00
2026-08-04 18:47:10 +08:00
2026-09-14 14:33:50 +08:00
2026-08-25 16:27:46 +08:00
2026-07-23 01:59:06 +08:00
2026-08-11 16:22:51 +08:00
2026-08-17 15:11:36 +08:00
2026-09-03 13:23:25 +08:00
2026-09-08 15:03:03 +08:00
2026-09-14 14:33:50 +08:00
2026-09-14 14:33:50 +08:00
2026-10-15 21:54:33 +08:00
2026-09-14 14:33:50 +08:00
2026-08-28 14:04:10 +08:00
2026-09-14 14:33:50 +08:00
2026-08-31 13:39:39 +08:00
2026-08-07 14:38:03 +08:00
2026-08-07 14:38:03 +08:00
2026-10-08 10:13:54 -07:00
2026-10-08 10:13:54 -07:00
2026-09-30 21:39:07 -07:00
2026-10-19 13:45:42 +08:00
2026-07-23 01:59:06 +08:00
2026-09-03 13:23:25 +08:00
2026-09-08 15:03:03 +08:00
2026-09-15 18:47:19 +08:00
2026-10-18 16:23:05 +08:00
2026-10-19 13:45:42 +08:00
2026-09-03 13:23:25 +08:00
2026-10-07 13:33:02 +08:00
2026-08-25 16:27:46 +08:00