@geohar/pi-mcp-combiner 0.14.2 → 0.16.0-dev.1

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.
Files changed (98) hide show
  1. package/README.md +71 -48
  2. package/dist/client/config-ladder.d.ts +1 -1
  3. package/dist/client/config-ladder.d.ts.map +1 -1
  4. package/dist/client/control.d.ts +1 -1
  5. package/dist/client/control.d.ts.map +1 -1
  6. package/dist/client/elicitation.d.ts +4 -2
  7. package/dist/client/elicitation.d.ts.map +1 -1
  8. package/dist/client/elicitation.js +8 -2
  9. package/dist/client/elicitation.js.map +1 -1
  10. package/dist/client/footer.d.ts +1 -1
  11. package/dist/client/footer.d.ts.map +1 -1
  12. package/dist/client/panel.d.ts +1 -1
  13. package/dist/client/panel.d.ts.map +1 -1
  14. package/dist/client/panel.js +1 -1
  15. package/dist/client/panel.js.map +1 -1
  16. package/dist/client/prompts.d.ts +1 -1
  17. package/dist/client/prompts.d.ts.map +1 -1
  18. package/dist/client/proxy-tool.d.ts +1 -1
  19. package/dist/client/proxy-tool.d.ts.map +1 -1
  20. package/dist/client/resource-naming.d.ts +8 -0
  21. package/dist/client/resource-naming.d.ts.map +1 -0
  22. package/dist/client/resource-naming.js +33 -0
  23. package/dist/client/resource-naming.js.map +1 -0
  24. package/dist/client/settings.d.ts +5 -4
  25. package/dist/client/settings.d.ts.map +1 -1
  26. package/dist/client/settings.js +3 -3
  27. package/dist/client/settings.js.map +1 -1
  28. package/dist/client/tool-matching.d.ts +32 -0
  29. package/dist/client/tool-matching.d.ts.map +1 -0
  30. package/dist/client/tool-matching.js +43 -0
  31. package/dist/client/tool-matching.js.map +1 -0
  32. package/dist/client/types.d.ts +71 -0
  33. package/dist/client/types.d.ts.map +1 -0
  34. package/dist/client/types.js +16 -0
  35. package/dist/client/types.js.map +1 -0
  36. package/dist/client/widget-support.d.ts +17 -0
  37. package/dist/client/widget-support.d.ts.map +1 -0
  38. package/dist/client/widget-support.js +89 -0
  39. package/dist/client/widget-support.js.map +1 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +109 -53
  42. package/dist/index.js.map +1 -1
  43. package/dist/{client/connection.d.ts → native/combiner-connection.d.ts} +46 -38
  44. package/dist/native/combiner-connection.d.ts.map +1 -0
  45. package/dist/native/combiner-connection.js +412 -0
  46. package/dist/native/combiner-connection.js.map +1 -0
  47. package/dist/native/index.d.ts +30 -0
  48. package/dist/native/index.d.ts.map +1 -0
  49. package/dist/native/index.js +61 -0
  50. package/dist/native/index.js.map +1 -0
  51. package/dist/native/resources.d.ts +18 -0
  52. package/dist/native/resources.d.ts.map +1 -0
  53. package/dist/native/resources.js +97 -0
  54. package/dist/native/resources.js.map +1 -0
  55. package/dist/native/tool-surface.d.ts +26 -0
  56. package/dist/native/tool-surface.d.ts.map +1 -0
  57. package/dist/native/tool-surface.js +113 -0
  58. package/dist/native/tool-surface.js.map +1 -0
  59. package/dist/pi.d.ts +19 -0
  60. package/dist/pi.d.ts.map +1 -1
  61. package/package.json +4 -6
  62. package/src/client/config-ladder.ts +1 -1
  63. package/src/client/control.ts +1 -1
  64. package/src/client/elicitation.ts +10 -2
  65. package/src/client/footer.ts +1 -1
  66. package/src/client/panel.ts +2 -2
  67. package/src/client/prompts.ts +1 -1
  68. package/src/client/proxy-tool.ts +1 -1
  69. package/src/client/resource-naming.ts +36 -0
  70. package/src/client/settings.ts +7 -6
  71. package/src/client/tool-matching.ts +69 -0
  72. package/src/client/types.ts +80 -0
  73. package/src/client/widget-support.ts +86 -0
  74. package/src/index.ts +109 -65
  75. package/src/native/combiner-connection.ts +483 -0
  76. package/src/native/index.ts +100 -0
  77. package/src/native/resources.ts +112 -0
  78. package/src/native/tool-surface.ts +147 -0
  79. package/src/pi.ts +16 -0
  80. package/dist/client/connection.d.ts.map +0 -1
  81. package/dist/client/connection.js +0 -332
  82. package/dist/client/connection.js.map +0 -1
  83. package/dist/client/direct-tools.d.ts +0 -41
  84. package/dist/client/direct-tools.d.ts.map +0 -1
  85. package/dist/client/direct-tools.js +0 -122
  86. package/dist/client/direct-tools.js.map +0 -1
  87. package/dist/client/resources.d.ts +0 -20
  88. package/dist/client/resources.d.ts.map +0 -1
  89. package/dist/client/resources.js +0 -119
  90. package/dist/client/resources.js.map +0 -1
  91. package/dist/client/script.d.ts +0 -10
  92. package/dist/client/script.d.ts.map +0 -1
  93. package/dist/client/script.js +0 -130
  94. package/dist/client/script.js.map +0 -1
  95. package/src/client/connection.ts +0 -373
  96. package/src/client/direct-tools.ts +0 -146
  97. package/src/client/resources.ts +0 -137
  98. package/src/client/script.ts +0 -150
package/README.md CHANGED
@@ -1,20 +1,38 @@
1
1
  # @geohar/pi-mcp-combiner
2
2
 
3
- A [Pi](https://pi.dev) extension that gives Pi the **`mcp-combiner`** MCP aggregator —
4
- end to end. It starts the combiner (supervised by
5
- [`sharedserver`](https://github.com/georgeharker/sharedserver)), **speaks MCP to it
6
- directly** (a built-in client half — no second package required), and surfaces every
7
- server, tool, resource, and prompt as first-class Pi UX.
8
-
9
- Use it **standalone** (recommended) or **alongside
10
- [`pi-mcp-adapter`](https://pi.dev/packages/pi-mcp-adapter)** — see
11
- [Two ways to run it](#two-ways-to-run-it).
3
+ A [Pi](https://pi.dev) extension + one shared **MCP aggregator**: a single refcounted
4
+ combiner process fronts *all* your MCP servers, and every client you use talks to
5
+ that one process.
6
+
7
+ **It reuses Pi's MCP stack rather than replacing it.** The transport is
8
+ `@earendil-works/pi-mcp` — Pi's own MCP client library (peer dependency, `^1.0.2`) —
9
+ and Pi's built-in MCP support keeps its role (`/mcp`, codemode, `tool_search`). The
10
+ extension is *additive*; it adds the pieces Pi's built-in can't do:
11
+
12
+ - **Elicitation** — upstream servers can ask *you*: consent ladders, deploy
13
+ confirmations, structured forms. Pi's built-in MCP can't forward those; this
14
+ extension bridges them to Pi's dialogs — and to your paired app over
15
+ [un-bien](https://github.com/georgeharker/un-bien).
16
+ - **Interactive resources (mcp-app widgets)** — Pi's `read_mcp_resource` skips
17
+ `ui://` resources entirely; we register `read_*` tools, host the widget, hold the
18
+ call while you interact, and fold your actions back into the result.
19
+ - **A discovery router** — `mcp({search})` / `({describe})` / `({tool, args})`:
20
+ ranked discovery over the whole aggregated surface, under the tool name `mcp`
21
+ that tool_call gates already recognize.
22
+
23
+ **The sharing is the point.** One combiner process, supervised by
24
+ [`sharedserver`](https://github.com/georgeharker/sharedserver), is shared across Pi,
25
+ Claude Code, OpenCode, and Neovim — upstream connections, sessions, and OAuth live
26
+ once, not once per client. One `servers.json` permission policy (deny / elicit /
27
+ allow, per server) is enforced *at the combiner* for every client alike, keyed by
28
+ per-chat tokens that survive restarts: consent grants, parked sessions, and filters
29
+ carry across combiner restarts by handover, and `combiner__status` reports what a
30
+ boot restored.
12
31
 
13
32
  It is the Pi counterpart of the
14
33
  [Claude Code](https://github.com/georgeharker/mcp-companion/tree/main/plugins/claude)
15
34
  and [OpenCode](https://github.com/georgeharker/mcp-companion/tree/main/plugins/opencode)
16
- plugins, and shares the same combiner and the same `sharedserver` instance — so Pi,
17
- Claude Code, OpenCode, and Neovim can all talk to **one** refcounted combiner process.
35
+ plugins, and shares the same combiner and the same `sharedserver` instance.
18
36
 
19
37
  ## How it fits together
20
38
 
@@ -32,12 +50,13 @@ Three halves, all in this one package:
32
50
  `session_shutdown` only when `reason === "quit"` — reload/resume/fork keep the same
33
51
  Pi process and a fresh `session_start` re-attaches.
34
52
 
35
- 2. **Client** — a thin, combiner-specific MCP client (streamable HTTP, per-Pi-session
36
- identity, an elicitation bridge) that registers the agent-facing surface: the
37
- `mcp()` proxy tool, a scripting tool, `read_*` resource tools, prompt slash
38
- commands, a status footer, and an interactive panel. Everything the hundreds of
39
- tool definitions would cost in context is replaced by two or three tool
40
- definitions and on-demand discovery.
53
+ 2. **Client** — the pi-mcp transport on an owned connection (per-Pi-session custody
54
+ token, elicitation capability advertised and bridged to Pi's UI) that registers
55
+ the agent-facing surface: every combiner tool first-class under its bare name
56
+ (`github_search_code`) with pi-1.0 exposure/namespace/annotations, the `mcp()`
57
+ discovery router on the same connection, `read_*` resource tools (interactive
58
+ `ui://` widgets included), prompt slash commands, a status footer, and an
59
+ interactive panel.
41
60
  3. **Instructions** — on `before_agent_start` it appends the combiner's
42
61
  `<server>_`-prefix / "discover before assuming" directive to the system prompt.
43
62
 
@@ -45,9 +64,7 @@ Three halves, all in this one package:
45
64
  the cargo-dist installer), and the combiner is resolved from PATH / a checkout /
46
65
  a pinned PyPI release — same resolvers as the sibling plugins.
47
66
 
48
- ## Two ways to run it
49
-
50
- ### A. Standalone (recommended)
67
+ ## Running it
51
68
 
52
69
  Install only this extension. Nothing else needed — the client half connects to the
53
70
  combiner and registers everything:
@@ -57,26 +74,18 @@ pi install /path/to/mcp-companion/plugins/pi # local checkout
57
74
  # or the published package under settings.json "packages"
58
75
  ```
59
76
 
60
- On startup you get: the `mcp` tool (search → describe → call), `mcpScript`,
61
- `read_<resource>` tools, `/<server>__<prompt>` slash commands, a footer line
77
+ On startup you get: every combiner tool first-class under its bare name (your
78
+ `directTools` matches declared `direct`, the rest on codemode), the `mcp` discovery
79
+ router, `read_<resource>` tools, `/<server>__<prompt>` slash commands, a footer line
62
80
  (`14 servers enabled (13 ready) · 671 tools`), and `/mcp-combiner panel`.
63
81
 
64
- ### B. Alongside pi-mcp-adapter
65
-
66
- Already running pi-mcp-adapter (for other servers, or while evaluating)? The client
67
- half is gated by a **tri-state**:
68
-
69
- | Setting | Behaviour |
70
- | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
71
- | `"adapter": "auto"` _(default)_ | client **off** when pi-mcp-adapter is detected installed, **on** otherwise — existing adapter setups upgrade with zero behaviour change |
72
- | `"adapter": true` | client on, adapter stays for other servers. Rename ours (`"toolName": "combiner"`) so both tools coexist, and remove the combiner entry from the shared `mcp.json` so the adapter doesn't double-connect |
73
- | `"adapter": false` | legacy mode — process + instructions only; the adapter owns all MCP |
74
-
75
- Env override: `PI_MCP_COMBINER_ADAPTER=off|on|auto`. `/mcp-combiner status` reports
76
- which mode is active and why.
77
-
78
- The legacy **`/mcp-combiner install-config`** verb (writes the combiner entry into the
79
- shared `mcp.json` for the adapter to read) still exists for mode B.
82
+ > **\*Via another mechanism — pi-mcp-adapter.** The target is Pi's native MCP support
83
+ > (Pi ≥ 1.0). If you already run
84
+ > [`pi-mcp-adapter`](https://pi.dev/packages/pi-mcp-adapter) for other servers, this
85
+ > extension can stand down its client half: `"adapter": false` (or the default
86
+ > `"auto"`, which detects the adapter and yields automatically) leaves the process
87
+ > half + instructions to us and MCP to the adapter. `/mcp-combiner install-config`
88
+ > still writes the shared-`mcp.json` entry for the adapter to read.
80
89
 
81
90
  ## Requirements
82
91
 
@@ -85,6 +94,8 @@ shared `mcp.json` for the adapter to read) still exists for mode B.
85
94
  combiner ≥ 0.8.0 (version-gated automatically).
86
95
  - A combiner **`servers.json`** (auto-probe locations below).
87
96
  - pi-mcp-adapter **not** required.
97
+ - **Pi ≥ 1.0** with its bundled `@earendil-works/pi-mcp` (peer dependency,
98
+ `^1.0.2`) — the transport is Pi's own MCP client library.
88
99
 
89
100
  ## Configuration — three layers
90
101
 
@@ -99,8 +110,8 @@ Pi-side knobs (see [`settings.example.json`](./settings.example.json)):
99
110
  | `lazy` | `"lazy"` | `"eager"` connects at session start; `"lazy"` on first use. Prompts/resources/directTools imply eager. |
100
111
  | `exposeResources` | `true` | Register `read_<resource>` tools. |
101
112
  | `prompts` | `true` | Register prompt slash commands. |
102
- | `scriptMode` | `true` | Register the `<toolName>Script` batching tool. |
103
113
  | `uiAutoOpen` | `true` | Auto-open interactive widget URLs in the browser (Stage 2 holds + resource reads). |
114
+ | `warnLargeDirectExposure` | `true` | Warn when >50 tools end up `direct`-exposed (every schema rides in every request); set `false` to silence. Native mode. |
104
115
  | `mcpFooterStatus` | `"full"` | Footer text: `"full"` = `N servers enabled (M ready) · T tools`, `"compact"` = `MCP M/N`, `"off"` = none. |
105
116
  | `mcpFooterKey` | `"mcp"` | The `ctx.ui.setStatus` key the footer publishes under (the slot oh-my-posh-style footers aggregate). |
106
117
  | `url` | — | Explicit combiner URL. Env wins. |
@@ -136,9 +147,11 @@ The recognized `mcp-combiner` entry carries connection + per-project exposure:
136
147
 
137
148
  - **`servers.allow/deny`** — per-project exposure, enforced _at the combiner_ for this
138
149
  chat's token (sees through scripting too) and mirrored client-side.
139
- - **`directTools`** — promote named tools (globs) to first-class Pi tools at session
140
- start, or `"search"` to promote tools the first time `mcp({search})` matches them.
141
- A >50-entry allowlist warns; `true` is deliberately not offered (context cost).
150
+ - **`directTools`** — an allowlist (globs) of tools to declare `direct` (verbatim,
151
+ in every request) instead of `codemode` (reachable from scripts and pi's
152
+ `tool_search`). `"search"` degrades to all-codemode — pi's own discovery replaces
153
+ the old search-promote. A >50-entry allowlist warns; `true` is deliberately not
154
+ offered (context cost: every direct schema rides in every request).
142
155
  - Project layers are read against the **session cwd** — worktree subagents and
143
156
  project switches get their own `.pi/mcp.json`. Commit the `combiner` block if you
144
157
  want worktree agents to honour it.
@@ -180,11 +193,12 @@ mcp({tool: "github_search_code", args: {...}}) → the call
180
193
  mcp({}) → status
181
194
  ```
182
195
 
183
- In `"directTools": "search"` mode, search matches are promoted to first-class tools
184
- and announced in the result.
185
-
186
- **`mcpScript`** — batch calls with trusted JavaScript:
187
- `{code: "const r = await tools.search('q'); emit(r); return await tools.call('t', {})"}`.
196
+ **Per-tool registration** — the combiner's tools are also declared first-class under
197
+ their own bare names (`github_search_code`): `directTools` matches verbatim, the rest
198
+ reachable from codemode scripts and pi's `tool_search` — while the `mcp` router above
199
+ keeps registering on the same connection (tool_call gates that match the `mcp` tool
200
+ name keep working). See [`docs/call-chain.md`](./docs/call-chain.md) for the full
201
+ layer map of a call.
188
202
 
189
203
  **`read_<resource>` tools** — one zero-parameter tool per MCP resource; interactive
190
204
  `mcp-app` resources are flagged and their `read_*` results append the combiner UI-host URL (`/ui/<token>/?resource=…`), auto-opened in the browser — the interactive widget runs combiner-side.
@@ -231,11 +245,20 @@ restart handover all key on the chat — subagents automatically get their own t
231
245
  (each child session binds fresh). A resumed chat continues its identity; a fork
232
246
  deliberately starts fresh. An explicit token in the configured URL always wins.
233
247
 
248
+ Because identity lives at the client, a combiner restart degrades gracefully: the
249
+ sanctioned-restart handover carries consent grants, per-token filters and parked
250
+ sessions to the successor boot, every connection method retries a stale session once
251
+ (`withStaleRetry`), and `combiner__status` / `/health` report what this boot restored
252
+ (`_handover`) — the post-restart re-orientation receipt.
253
+
234
254
  ## Permissions
235
255
 
236
256
  Tool-call policy is enforced **at the combiner** (`permissions` in `servers.json`:
237
257
  deny/elicit/allow per server, with interactive elicitation bridged to Pi's UI —
238
- subagents decline securely by default). If you also run
258
+ subagents decline securely by default). "Allow for session" grants are keyed by the
259
+ chat token and carried across sanctioned combiner restarts. In native mode the
260
+ combiner's tool annotations (readOnly/destructive hints) ride pi's registration for
261
+ classification-aware gates. If you also run
239
262
  [`pi-permission-system`](https://github.com/gotgenes/pi-packages), keep `toolName:
240
263
  "mcp"` for its `mcp`-surface rules (tool-glob patterns like `github_*` match out of
241
264
  the box).
@@ -1,4 +1,4 @@
1
- import type { DirectToolsSpec } from "./direct-tools.js";
1
+ import type { DirectToolsSpec } from "./tool-matching.js";
2
2
  export type ServerFilter = {
3
3
  allow?: string[];
4
4
  deny?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"config-ladder.d.ts","sourceRoot":"","sources":["../../src/client/config-ladder.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD,MAAM,MAAM,YAAY,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAEhE,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;0EAEsE;IACtE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,oFAAoF;IACpF,KAAK,EAAE,aAAa,CAAA;IACpB,qFAAqF;IACrF,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,yDAAyD;IACzD,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CASjD;AAmBD,kFAAkF;AAClF,wBAAgB,eAAe,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,GACnC,OAAO,CAMT;AAqDD,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAUxF;AASD,MAAM,MAAM,aAAa,GAAG;IACxB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,YAAY,EAAE,YAAY,GAAG,SAAS,CAAA;IACtC,UAAU,EAAE,eAAe,GAAG,SAAS,CAAA;IACvC,KAAK,EAAE,aAAa,CAAA;IACpB,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACtC,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAA;IACX,gFAAgF;IAChF,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,0CAA0C;IAC1C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1D;AAED,gEAAgE;AAChE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAUD,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,2BAA2B,GAAG,aAAa,CAarF"}
1
+ {"version":3,"file":"config-ladder.d.ts","sourceRoot":"","sources":["../../src/client/config-ladder.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEzD,MAAM,MAAM,YAAY,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAEhE,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;0EAEsE;IACtE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IACxB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,aAAa,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,oFAAoF;IACpF,KAAK,EAAE,aAAa,CAAA;IACpB,qFAAqF;IACrF,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,yDAAyD;IACzD,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CASjD;AAmBD,kFAAkF;AAClF,wBAAgB,eAAe,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,GACnC,OAAO,CAMT;AAqDD,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,CAUxF;AASD,MAAM,MAAM,aAAa,GAAG;IACxB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,YAAY,EAAE,YAAY,GAAG,SAAS,CAAA;IACtC,UAAU,EAAE,eAAe,GAAG,SAAS,CAAA;IACvC,KAAK,EAAE,aAAa,CAAA;IACpB,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACtC,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAA;IACX,gFAAgF;IAChF,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,0CAA0C;IAC1C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1D;AAED,gEAAgE;AAChE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAUD,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,2BAA2B,GAAG,aAAa,CAarF"}
@@ -1,4 +1,4 @@
1
- import type { CombinerConnection } from "./connection.js";
1
+ import type { CombinerConnection } from "./types.js";
2
2
  export type HealthServer = {
3
3
  name?: string;
4
4
  status?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../src/client/control.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjG,MAAM,MAAM,cAAc,GAAG;IACzB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IACxC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAkBD,mEAAmE;AACnE,wBAAsB,UAAU,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAwC7F;AAED,iFAAiF;AACjF,wBAAsB,YAAY,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,gBAAgB,EAC7C,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAajB"}
1
+ {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../src/client/control.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjG,MAAM,MAAM,cAAc,GAAG;IACzB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IACxC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAkBD,mEAAmE;AACnE,wBAAsB,UAAU,CAAC,UAAU,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAwC7F;AAED,iFAAiF;AACjF,wBAAsB,YAAY,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,gBAAgB,EAC7C,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAajB"}
@@ -17,6 +17,8 @@ export type ElicitResponse = {
17
17
  * incl. string[] for array-typed form fields). */
18
18
  export type ElicitValue = string | number | boolean | string[];
19
19
  /** Handle an elicitation request against Pi's UI. Never throws — a UI that can't
20
- * answer declines, and the combiner applies its elicitUnavailable policy. */
21
- export declare function handleElicitation(req: ElicitRequest, elicitUi: ElicitUi): Promise<ElicitResponse>;
20
+ * answer declines, and the combiner applies its elicitUnavailable policy.
21
+ * `abort` (wired from the connection's elicitation handler signal) cancels between
22
+ * dialogs: a cancelled pending request must not keep prompting the user. */
23
+ export declare function handleElicitation(req: ElicitRequest, elicitUi: ElicitUi, abort?: AbortSignal): Promise<ElicitResponse>;
22
24
  //# sourceMappingURL=elicitation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"elicitation.d.ts","sourceRoot":"","sources":["../../src/client/elicitation.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAElD,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAA;AAElE,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE,CAAA;AAIjG;mDACmD;AACnD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;AAiD9D;8EAC8E;AAC9E,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BvG"}
1
+ {"version":3,"file":"elicitation.d.ts","sourceRoot":"","sources":["../../src/client/elicitation.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAElD,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAA;AAElE,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE,CAAA;AAIjG;mDACmD;AACnD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;AAiD9D;;;6EAG6E;AAC7E,wBAAsB,iBAAiB,CACnC,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,cAAc,CAAC,CA6BzB"}
@@ -61,8 +61,12 @@ async function askProperty(ui, label, prop) {
61
61
  return value;
62
62
  }
63
63
  /** Handle an elicitation request against Pi's UI. Never throws — a UI that can't
64
- * answer declines, and the combiner applies its elicitUnavailable policy. */
65
- export async function handleElicitation(req, elicitUi) {
64
+ * answer declines, and the combiner applies its elicitUnavailable policy.
65
+ * `abort` (wired from the connection's elicitation handler signal) cancels between
66
+ * dialogs: a cancelled pending request must not keep prompting the user. */
67
+ export async function handleElicitation(req, elicitUi, abort) {
68
+ if (abort?.aborted)
69
+ return { action: "cancel" };
66
70
  if (!elicitUi.hasUI || !elicitUi.ui?.select || !elicitUi.ui.input)
67
71
  return REFUSE;
68
72
  const schema = isRecord(req.requestedSchema) ? req.requestedSchema : undefined;
@@ -82,6 +86,8 @@ export async function handleElicitation(req, elicitUi) {
82
86
  const entries = Object.entries(props).filter(([, v]) => isRecord(v));
83
87
  const content = {};
84
88
  for (const [name, raw] of entries) {
89
+ if (abort?.aborted)
90
+ return { action: "cancel" };
85
91
  const label = entries.length === 1 ? header : `${header}: ${name}`;
86
92
  const value = await askProperty(elicitUi.ui, label, raw);
87
93
  if (value === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"elicitation.js","sourceRoot":"","sources":["../../src/client/elicitation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elicitation.js","sourceRoot":"","sources":["../../src/client/elicitation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CombinerConnection } from "./connection.js";
1
+ import type { CombinerConnection } from "./types.js";
2
2
  import type { ExtensionUIContext } from "../pi.js";
3
3
  import type { FooterStatus } from "./settings.js";
4
4
  export type FooterCounts = {
@@ -1 +1 @@
1
- {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/client/footer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAajD,MAAM,MAAM,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E;kFACkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAyB9D;AAED,sEAAsE;AACtE,wBAAgB,UAAU,CACtB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,GACnB,MAAM,GAAG,SAAS,CAWpB;AAID;mFACmF;AACnF,wBAAsB,YAAY,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,EAAE,EAAE,kBAAkB,GAAG,SAAS,EAClC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
1
+ {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/client/footer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAajD,MAAM,MAAM,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E;kFACkF;AAClF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CAyB9D;AAED,sEAAsE;AACtE,wBAAgB,UAAU,CACtB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,YAAY,EACpB,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,GACnB,MAAM,GAAG,SAAS,CAWpB;AAID;mFACmF;AACnF,wBAAsB,YAAY,CAC9B,UAAU,EAAE,kBAAkB,EAC9B,EAAE,EAAE,kBAAkB,GAAG,SAAS,EAClC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
@@ -1,4 +1,4 @@
1
- import type { CombinerConnection } from "./connection.js";
1
+ import type { CombinerConnection } from "./types.js";
2
2
  export type PanelDeps = {
3
3
  connection: CombinerConnection;
4
4
  toolName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/client/panel.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAA+C,MAAM,iBAAiB,CAAA;AAQtG,MAAM,MAAM,SAAS,GAAG;IACpB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAClC,2EAA2E;IAC3E,SAAS,EAAE,MAAM;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;IAClE,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,KAAK,IAAI,CAAA;CACvE,CAAA;AA6aD,kEAAkE;AAClE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBnF"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/client/panel.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAA+C,MAAM,YAAY,CAAA;AAQjG,MAAM,MAAM,SAAS,GAAG;IACpB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAClC,2EAA2E;IAC3E,SAAS,EAAE,MAAM;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;IAClE,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,KAAK,IAAI,CAAA;CACvE,CAAA;AA6aD,kEAAkE;AAClE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBnF"}
@@ -9,7 +9,7 @@
9
9
  import { spawn } from "node:child_process";
10
10
  import { Container, Text, matchesKey, truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
11
11
  import { metaToolCall } from "./control.js";
12
- import { resourceServer } from "./resources.js";
12
+ import { resourceServer } from "./resource-naming.js";
13
13
  // State glyphs mirror the Neovim plugin's status_icon() table; "meta" marks the
14
14
  // combiner's own combiner__* tools group (nvim's combiner_on hexagon).
15
15
  const STATE_GLYPHS = {
@@ -1 +1 @@
1
- {"version":3,"file":"panel.js","sourceRoot":"","sources":["../../src/client/panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"panel.js","sourceRoot":"","sources":["../../src/client/panel.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ExtensionAPI } from "../pi.js";
2
- import type { CombinerConnection, PromptSummary } from "./connection.js";
2
+ import type { CombinerConnection, PromptSummary } from "./types.js";
3
3
  /** Adapter-compatible prompt-name sanitizer: collapse invalid runs to `_`, trim,
4
4
  * `prompt` when empty, leading `_` when it starts with a digit. */
5
5
  export declare function sanitizePromptName(name: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/client/prompts.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAIxE;oEACoE;AACpE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIvD;AAED,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAIpF;AAID,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAgBtG;AA+DD,MAAM,MAAM,kBAAkB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1G,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAChE,kBAAkB,CAyBpB;AAMD;;iFAEiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAa1D;AA0BD;6EAC6E;AAC7E,wBAAsB,kBAAkB,CACpC,EAAE,EAAE,YAAY,EAChB,UAAU,EAAE,kBAAkB,EAC9B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EACvB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,KAAK,IAAI,GACpE,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/client/prompts.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAInE;oEACoE;AACpE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIvD;AAED,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAIpF;AAID,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAgBtG;AA+DD,MAAM,MAAM,kBAAkB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1G,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAChE,kBAAkB,CAyBpB;AAMD;;iFAEiF;AACjF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAa1D;AA0BD;6EAC6E;AAC7E,wBAAsB,kBAAkB,CACpC,EAAE,EAAE,YAAY,EAChB,UAAU,EAAE,kBAAkB,EAC9B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EACvB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,KAAK,IAAI,GACpE,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
@@ -1,5 +1,5 @@
1
1
  import type { ToolDefinition } from "../pi.js";
2
- import type { CombinerConnection, ToolSummary } from "./connection.js";
2
+ import type { CombinerConnection, ToolSummary } from "./types.js";
3
3
  export type ProxyToolDeps = {
4
4
  connection: CombinerConnection;
5
5
  /** Human label for error messages, e.g. "mcp". */
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-tool.d.ts","sourceRoot":"","sources":["../../src/client/proxy-tool.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAKtE,MAAM,MAAM,aAAa,GAAG;IACxB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAA;IAChB;uFACmF;IACnF,eAAe,CAAC,EAAE,MAAM;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;IACzE;mFAC+E;IAC/E,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IACpD,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAO/C;AAmFD,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAiIjE"}
1
+ {"version":3,"file":"proxy-tool.d.ts","sourceRoot":"","sources":["../../src/client/proxy-tool.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,UAAU,CAAA;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAKjE,MAAM,MAAM,aAAa,GAAG;IACxB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAA;IAChB;uFACmF;IACnF,eAAe,CAAC,EAAE,MAAM;QAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;IACzE;mFAC+E;IAC/E,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IACpD,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAA;CACvB,CAAA;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAO/C;AAmFD,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAiIjE"}
@@ -0,0 +1,8 @@
1
+ import type { ResourceSummary } from "./types.js";
2
+ /** Ported verbatim from pi-mcp-adapter's resource-tools.ts (MIT, © 2026 Nico Bailon). */
3
+ export declare function resourceNameToToolName(name: string): string;
4
+ /** Attribute a resource to an upstream server for filtering: ui:// URIs carry the
5
+ * server as the host component (ui://todoist/…); otherwise fall back to the name's
6
+ * leading word before a dash/underscore. */
7
+ export declare function resourceServer(r: ResourceSummary): string | undefined;
8
+ //# sourceMappingURL=resource-naming.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-naming.d.ts","sourceRoot":"","sources":["../../src/client/resource-naming.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD,yFAAyF;AACzF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa3D;AAED;;6CAE6C;AAC7C,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAMrE"}
@@ -0,0 +1,33 @@
1
+ // Resource naming helpers — extracted from legacy-client/resources.ts during the
2
+ // Extracted during the legacy-client factoring so surfaces that survive the native migration (panel, widget
3
+ // resource attribution) don't import the deprecated legacy-client/ directory.
4
+ //
5
+ // These name the SAME way legacy read_<resource> tools always did (ported verbatim
6
+ // from pi-mcp-adapter, MIT © Nico Bailon); native widget resource support reuses the
7
+ // attribution logic, so panel counts and native read_* tools agree on server keys.
8
+ /** Ported verbatim from pi-mcp-adapter's resource-tools.ts (MIT, © 2026 Nico Bailon). */
9
+ export function resourceNameToToolName(name) {
10
+ let result = name
11
+ .replace(/[^a-zA-Z0-9]/g, "_")
12
+ .replace(/_+/g, "_")
13
+ .replace(/^_+/, "") // Remove leading underscores
14
+ .replace(/_+$/, "") // Remove trailing underscores
15
+ .toLowerCase();
16
+ // Ensure we have a valid name
17
+ if (!result || /^\d/.test(result)) {
18
+ result = "resource" + (result ? "_" + result : "");
19
+ }
20
+ return result;
21
+ }
22
+ /** Attribute a resource to an upstream server for filtering: ui:// URIs carry the
23
+ * server as the host component (ui://todoist/…); otherwise fall back to the name's
24
+ * leading word before a dash/underscore. */
25
+ export function resourceServer(r) {
26
+ const m = r.uri.match(/^[a-z][a-z0-9+.-]*:\/\/([^/?#]+)/i);
27
+ if (m?.[1])
28
+ return m[1].split(".")[0]?.toLowerCase();
29
+ const name = r.name ?? r.uri;
30
+ const head = name.split(/[-_]/, 1)[0];
31
+ return head ? head.toLowerCase() : undefined;
32
+ }
33
+ //# sourceMappingURL=resource-naming.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-naming.js","sourceRoot":"","sources":["../../src/client/resource-naming.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,4GAA4G;AAC5G,8EAA8E;AAC9E,EAAE;AACF,mFAAmF;AACnF,qFAAqF;AACrF,mFAAmF;AAInF,yFAAyF;AACzF,MAAM,UAAU,sBAAsB,CAAC,IAAY;IAC/C,IAAI,MAAM,GAAG,IAAI;SACZ,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;SAC7B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,6BAA6B;SAChD,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,8BAA8B;SACjD,WAAW,EAAE,CAAA;IAElB,8BAA8B;IAC9B,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,GAAG,UAAU,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACtD,CAAC;IACD,OAAO,MAAM,CAAA;AACjB,CAAC;AAED;;6CAE6C;AAC7C,MAAM,UAAU,cAAc,CAAC,CAAkB;IAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAC1D,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAA;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAA;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AAChD,CAAC"}
@@ -6,8 +6,8 @@ export type CombinerSettings = {
6
6
  toolName: string;
7
7
  /** "lazy" (default): connect on first mcp() call. "eager": connect at session_start. */
8
8
  lazy: "lazy" | "eager";
9
- /** Client-half gate. `true`: we are the MCP tool. `false`: legacy mode — the
10
- * process + instructions halves only, pi-mcp-adapter (if installed) owns MCP.
9
+ /** Client-half gate. `true`: we are the MCP tool. `false`: the process +
10
+ * instructions halves only, pi-mcp-adapter (if installed) owns MCP.
11
11
  * `"auto"` (default): OFF when pi-mcp-adapter is detected installed, ON otherwise —
12
12
  * so existing adapter users upgrade with zero behaviour change, while fresh
13
13
  * installs get the one-package experience. Env PI_MCP_COMBINER_ADAPTER wins. */
@@ -24,11 +24,12 @@ export type CombinerSettings = {
24
24
  * slot pi-mcp-adapter wrote and footers (oh-my-posh's PI_STATUS aggregate)
25
25
  * already surface; rename only if something else claims it. */
26
26
  mcpFooterKey: string;
27
- /** Register the trusted batching tool (<toolName>Script). Default true. */
28
- scriptMode: boolean;
29
27
  /** Auto-open interactive widget URLs (Stage 2 holds + resource reads).
30
28
  * Default true. */
31
29
  uiAutoOpen: boolean;
30
+ /** Warn when the direct-exposure set grows large (default threshold: 50 tools —
31
+ * every schema rides in every request). Default true. */
32
+ warnLargeDirectExposure: boolean;
32
33
  /** Explicit combiner base URL (e.g. "http://127.0.0.1:9741/mcp"). Env wins. */
33
34
  url?: string;
34
35
  /** Notify (vs stderr-only) for connection lifecycle messages. */
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/client/settings.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAA;AAE1C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAA;AAErD,MAAM,MAAM,gBAAgB,GAAG;IAC3B;wEACoE;IACpE,QAAQ,EAAE,MAAM,CAAA;IAChB,wFAAwF;IACxF,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IACtB;;;;qFAIiF;IACjF,OAAO,EAAE,WAAW,CAAA;IACpB,iDAAiD;IACjD,eAAe,EAAE,OAAO,CAAA;IACxB;2EACuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB;yEACqE;IACrE,eAAe,EAAE,YAAY,CAAA;IAC7B;;oEAEgE;IAChE,YAAY,EAAE,MAAM,CAAA;IACpB,2EAA2E;IAC3E,UAAU,EAAE,OAAO,CAAA;IACnB;wBACoB;IACpB,UAAU,EAAE,OAAO,CAAA;IACnB,+EAA+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,iEAAiE;IACjE,MAAM,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,gBAW9B,CAAA;AAED;kFACkF;AAClF,wBAAgB,QAAQ,IAAI,MAAM,CAMjC;AAED,mDAAmD;AACnD,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;iDACiD;AACjD,wBAAgB,YAAY,CAAC,IAAI,SAAiB,GAAG,gBAAgB,CA0BpE"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/client/settings.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAA;AAE1C,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAA;AAErD,MAAM,MAAM,gBAAgB,GAAG;IAC3B;wEACoE;IACpE,QAAQ,EAAE,MAAM,CAAA;IAChB,wFAAwF;IACxF,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IACtB;;;;qFAIiF;IACjF,OAAO,EAAE,WAAW,CAAA;IACpB,iDAAiD;IACjD,eAAe,EAAE,OAAO,CAAA;IACxB;2EACuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB;yEACqE;IACrE,eAAe,EAAE,YAAY,CAAA;IAC7B;;oEAEgE;IAChE,YAAY,EAAE,MAAM,CAAA;IACpB;wBACoB;IACpB,UAAU,EAAE,OAAO,CAAA;IACnB;8DAC0D;IAC1D,uBAAuB,EAAE,OAAO,CAAA;IAChC,+EAA+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,iEAAiE;IACjE,MAAM,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,gBAW9B,CAAA;AAED;kFACkF;AAClF,wBAAgB,QAAQ,IAAI,MAAM,CAMjC;AAED,mDAAmD;AACnD,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;iDACiD;AACjD,wBAAgB,YAAY,CAAC,IAAI,SAAiB,GAAG,gBAAgB,CA0BpE"}
@@ -17,8 +17,8 @@ export const DEFAULT_SETTINGS = {
17
17
  prompts: true,
18
18
  mcpFooterStatus: "full",
19
19
  mcpFooterKey: "mcp",
20
- scriptMode: true,
21
20
  uiAutoOpen: true,
21
+ warnLargeDirectExposure: true,
22
22
  notify: true,
23
23
  };
24
24
  /** Pi's agent dir: `$PI_CODING_AGENT_DIR` when set, else the first existing of the
@@ -70,8 +70,8 @@ export function loadSettings(path = settingsPath()) {
70
70
  out.mcpFooterKey = d.mcpFooterKey.trim();
71
71
  if (typeof d.uiAutoOpen === "boolean")
72
72
  out.uiAutoOpen = d.uiAutoOpen;
73
- if (typeof d.scriptMode === "boolean")
74
- out.scriptMode = d.scriptMode;
73
+ if (typeof d.warnLargeDirectExposure === "boolean")
74
+ out.warnLargeDirectExposure = d.warnLargeDirectExposure;
75
75
  if (typeof d.url === "string" && d.url.trim())
76
76
  out.url = d.url.trim();
77
77
  if (typeof d.notify === "boolean")
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/client/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/client/settings.ts"],"names":[],"mappings":"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"}