@femtomc/mu-agent 26.2.117 → 26.2.118

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -88,7 +88,7 @@ Default operator UI theme is `mu-gruvbox-dark`.
88
88
  - `/mu brand on|off|toggle` — enable/disable UI branding
89
89
  - `/mu ui ...` — inspect interactive `UiDoc`s (`status`/`snapshot`)
90
90
  - `/mu help` — dispatcher catalog of registered `/mu` subcommands
91
- - `ctrl+shift+u` — reopen local programmable-UI interaction flow
91
+ - `ctrl+shift+u` (primary) or `alt+u` (fallback) — reopen local programmable-UI interaction flow
92
92
 
93
93
  ## Tooling model (CLI-first)
94
94
 
@@ -1 +1 @@
1
- {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/extensions/ui.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,+BAA+B,CAAC;AA89CpF,wBAAgB,WAAW,CAAC,EAAE,EAAE,YAAY,QA6N3C;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/extensions/ui.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,+BAA+B,CAAC;AAi+CpF,wBAAgB,WAAW,CAAC,EAAE,EAAE,YAAY,QA+N3C;AAED,eAAe,WAAW,CAAC"}
@@ -7,7 +7,10 @@ const UI_PICKER_LIST_ITEMS_MAX = 4;
7
7
  const UI_PICKER_KEYVALUE_ROWS_MAX = 4;
8
8
  const UI_SESSION_KEY_FALLBACK = "__mu_ui_active_session__";
9
9
  const UI_PROMPT_PREVIEW_MAX = 160;
10
- const UI_INTERACT_SHORTCUT = "ctrl+shift+u";
10
+ const UI_INTERACT_SHORTCUT_PRIMARY = "ctrl+shift+u";
11
+ const UI_INTERACT_SHORTCUT_FALLBACK = "alt+u";
12
+ const UI_INTERACT_SHORTCUTS = [UI_INTERACT_SHORTCUT_PRIMARY, UI_INTERACT_SHORTCUT_FALLBACK];
13
+ const UI_INTERACT_SHORTCUT_HINT = `${UI_INTERACT_SHORTCUT_PRIMARY} or ${UI_INTERACT_SHORTCUT_FALLBACK}`;
11
14
  const UI_PICKER_PANEL_MIN_WIDTH = 56;
12
15
  const UI_PICKER_PANEL_MAX_WIDTH = 118;
13
16
  const UI_PICKER_PANEL_WIDTH_RATIO = 0.9;
@@ -1376,15 +1379,17 @@ export function uiExtension(pi) {
1376
1379
  ctx.ui.notify(usage, "info");
1377
1380
  },
1378
1381
  });
1379
- pi.registerShortcut(UI_INTERACT_SHORTCUT, {
1380
- description: "Open programmable UI modal and optionally submit prompt",
1381
- handler: async (ctx) => {
1382
- const key = sessionKey(ctx);
1383
- const state = ensureState(key);
1384
- await runUiActionFromDoc(ctx, state);
1385
- refreshUi(ctx);
1386
- },
1387
- });
1382
+ for (const shortcut of UI_INTERACT_SHORTCUTS) {
1383
+ pi.registerShortcut(shortcut, {
1384
+ description: "Open programmable UI modal and optionally submit prompt",
1385
+ handler: async (ctx) => {
1386
+ const key = sessionKey(ctx);
1387
+ const state = ensureState(key);
1388
+ await runUiActionFromDoc(ctx, state);
1389
+ refreshUi(ctx);
1390
+ },
1391
+ });
1392
+ }
1388
1393
  pi.registerTool({
1389
1394
  name: "mu_ui",
1390
1395
  label: "mu UI",
@@ -1434,7 +1439,7 @@ export function uiExtension(pi) {
1434
1439
  return;
1435
1440
  }
1436
1441
  if (pending.kind === "action") {
1437
- ctx.ui.notify(`Agent requested input via ${pending.uiId}. Submit now or press ${UI_INTERACT_SHORTCUT} later.`, "info");
1442
+ ctx.ui.notify(`Agent requested input via ${pending.uiId}. Submit now or press ${UI_INTERACT_SHORTCUT_HINT} later.`, "info");
1438
1443
  }
1439
1444
  await runUiActionFromDoc(ctx, state, pending.uiId, pending.actionId);
1440
1445
  refreshUi(ctx);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@femtomc/mu-agent",
3
- "version": "26.2.117",
3
+ "version": "26.2.118",
4
4
  "description": "Shared operator runtime for mu assistant sessions and serve extensions.",
5
5
  "keywords": [
6
6
  "mu",
@@ -24,7 +24,7 @@
24
24
  "themes/**"
25
25
  ],
26
26
  "dependencies": {
27
- "@femtomc/mu-core": "26.2.117",
27
+ "@femtomc/mu-core": "26.2.118",
28
28
  "@mariozechner/pi-agent-core": "^0.54.2",
29
29
  "@mariozechner/pi-ai": "^0.54.2",
30
30
  "@mariozechner/pi-coding-agent": "^0.54.2",