@iicp/client 0.7.86 → 0.7.88

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 (53) hide show
  1. package/README.md +37 -16
  2. package/dist/backend_stability.d.ts.map +1 -1
  3. package/dist/backend_stability.js +26 -0
  4. package/dist/backend_stability.js.map +1 -1
  5. package/dist/backends/index.d.ts +1 -1
  6. package/dist/backends/index.d.ts.map +1 -1
  7. package/dist/backends/index.js +3 -1
  8. package/dist/backends/index.js.map +1 -1
  9. package/dist/backends/meshllm.d.ts +11 -0
  10. package/dist/backends/meshllm.d.ts.map +1 -0
  11. package/dist/backends/meshllm.js +18 -0
  12. package/dist/backends/meshllm.js.map +1 -0
  13. package/dist/cli.d.ts +11 -0
  14. package/dist/cli.d.ts.map +1 -1
  15. package/dist/cli.js +389 -9
  16. package/dist/cli.js.map +1 -1
  17. package/dist/client.d.ts +4 -1
  18. package/dist/client.d.ts.map +1 -1
  19. package/dist/client.js +53 -7
  20. package/dist/client.js.map +1 -1
  21. package/dist/delegation.js +1 -1
  22. package/dist/delegation.js.map +1 -1
  23. package/dist/dispatch_ticket.d.ts +13 -0
  24. package/dist/dispatch_ticket.d.ts.map +1 -0
  25. package/dist/dispatch_ticket.js +27 -0
  26. package/dist/dispatch_ticket.js.map +1 -0
  27. package/dist/index.d.ts +4 -0
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +6 -2
  30. package/dist/index.js.map +1 -1
  31. package/dist/node.d.ts +3 -0
  32. package/dist/node.d.ts.map +1 -1
  33. package/dist/node.js +21 -4
  34. package/dist/node.js.map +1 -1
  35. package/dist/profile_compatibility.d.ts +12 -0
  36. package/dist/profile_compatibility.d.ts.map +1 -0
  37. package/dist/profile_compatibility.js +28 -0
  38. package/dist/profile_compatibility.js.map +1 -0
  39. package/dist/recovery.d.ts +6 -0
  40. package/dist/recovery.d.ts.map +1 -1
  41. package/dist/recovery.js +5 -0
  42. package/dist/recovery.js.map +1 -1
  43. package/dist/relay_worker_client.d.ts +3 -0
  44. package/dist/relay_worker_client.d.ts.map +1 -1
  45. package/dist/relay_worker_client.js +11 -0
  46. package/dist/relay_worker_client.js.map +1 -1
  47. package/dist/selection.d.ts +8 -0
  48. package/dist/selection.d.ts.map +1 -0
  49. package/dist/selection.js +20 -0
  50. package/dist/selection.js.map +1 -0
  51. package/dist/types.d.ts +33 -2
  52. package/dist/types.d.ts.map +1 -1
  53. package/package.json +1 -1
package/README.md CHANGED
@@ -39,7 +39,7 @@ What good looks like:
39
39
  ```bash
40
40
  iicp-node --help # shows query, serve, proxy, mcp-gateway, credits, ...
41
41
  which iicp-node # points to your Node/npm environment
42
- iicp-node --version # prints iicp-node 0.7.86 or newer
42
+ iicp-node --version # prints iicp-node 0.7.88 or newer
43
43
  ```
44
44
 
45
45
  The query command contacts the public directory, discovers a matching live node,
@@ -133,17 +133,13 @@ export OPENAI_BASE_URL=http://127.0.0.1:9483/v1
133
133
  Then point LangChain, Cursor, liteLLM or another OpenAI-compatible tool at that
134
134
  base URL. Full guide: <https://iicp.network/docs/proxy>
135
135
 
136
- ## Provider upgrade note
136
+ ## Keep provider nodes current
137
137
 
138
- > **Upgrade note (0.7.80)** clients now support remote-routing policy profiles
139
- > that can refuse unsafe remote dispatch before any prompt leaves the caller.
140
- > Use `--routing-profile sensitive` for fail-closed no-remote behavior,
141
- > `eu-restricted` for EU/EEA node filtering, or `strict-policy` when a
142
- > no-retention node policy manifest is required.
143
- >
144
- > Existing provider reachability fixes from 0.7.79 remain intact.
145
-
146
- ### Keeping provider nodes current
138
+ The current public release line is **0.7.88**. Upgrade through your package
139
+ manager before troubleshooting an older installation. Routing profiles can
140
+ refuse remote dispatch before a prompt leaves the client; use `sensitive` for
141
+ local-only work, `eu-restricted` for EU/EEA routing, or `strict-policy` when a
142
+ no-retention policy manifest is required.
147
143
 
148
144
  Provider nodes run an hourly official-registry check by default
149
145
  (`IICP_AUTO_UPDATE=1`, `IICP_AUTO_UPDATE_INTERVAL_S=3600`; minimum 300s).
@@ -151,12 +147,10 @@ When npm publishes a newer stable release, `serve` runs
151
147
  `npm install -g @iicp/client@latest` and re-execs the node so identity and cached
152
148
  node tokens are preserved.
153
149
 
154
- If a node is older than 0.7.67, perform one manual upgrade/restart first,
155
- especially for Dockerized Python or TypeScript providers: early updater wiring
156
- did not reliably cover every normal `serve` path. For Docker, use a Compose
150
+ If an older supervised node does not update itself, perform one manual upgrade
151
+ and restart through its normal supervisor. For Docker, use a Compose
157
152
  `restart: unless-stopped` policy (or `docker run --restart unless-stopped`) so
158
- 0.7.80 can intentionally exit from a confirmed tunnel-dead state and let Docker
159
- bring it back cleanly.
153
+ verified recovery can restart cleanly.
160
154
 
161
155
  > **Upgrade note (0.5.3)** — if you operate a node and use the native IICP
162
156
  > TCP transport on port 9484, upgrade to `^0.5.3`. Releases 0.5.0–0.5.2
@@ -334,10 +328,27 @@ surface to IICP clients:
334
328
  | `--backend-type` | Handler export | Speaks | Default base URL |
335
329
  |------------------|----------------|--------|------------------|
336
330
  | `openai_compat` *(default)* | `openaiCompatHandler` | OpenAI `/v1/*` dialect (Ollama, LM Studio, OpenAI) | `http://localhost:11434/v1` |
331
+ | `meshllm` | `meshllmHandler` | Stable chat over a local MeshLLM OpenAI `/v1` gateway | `http://localhost:9337/v1` |
337
332
  | `vllm` | `vllmHandler` | OpenAI dialect, tuned for vLLM | `http://localhost:8000/v1` |
338
333
  | `llamacpp` | `llamacppHandler` | OpenAI dialect, tuned for llama.cpp server | `http://localhost:8080/v1` |
339
334
  | `anthropic` | `anthropicHandler` | Anthropic Messages API (`POST /v1/messages`) — first-class Claude | `https://api.anthropic.com/v1` |
340
335
 
336
+ ### MeshLLM
337
+
338
+ MeshLLM is a local OpenAI-compatible backend. Start its local gateway, then choose
339
+ one advertised model explicitly (the stable IICP profile serves chat only):
340
+
341
+ ```bash
342
+ iicp-node serve --backend-type meshllm --model <meshllm-model-id>
343
+ ```
344
+
345
+ The upstream experimental `mesh` ensemble is never selected automatically. Use it
346
+ only with an explicit `--model mesh --experimental` opt-in.
347
+
348
+ MeshLLM remains the local inference runtime. IICP uses its local OpenAI-compatible
349
+ gateway for task execution and does not publish MeshLLM peer or topology details
350
+ through IICP discovery.
351
+
341
352
  #### Native Anthropic backend (v0.7.35+)
342
353
 
343
354
  The `anthropic` backend speaks the Anthropic **Messages API** directly rather than
@@ -520,6 +531,16 @@ and the identity, with its founder ordinal, is gone.
520
531
 
521
532
  Full guide: **[iicp.network/docs/operator-identity](https://iicp.network/docs/operator-identity)**
522
533
 
534
+ ### Operator data rights
535
+
536
+ You can request a portable, redacted record of the operator metadata held by a compatible directory without uploading your private identity key:
537
+
538
+ ```bash
539
+ iicp-node operator dsr export --output ~/iicp-operator-export.json
540
+ ```
541
+
542
+ The client obtains a short-lived challenge and signs it locally. The receipt excludes the private key, node tokens, prompt content, and contact details; it is saved owner-only on Unix. `restrict` and `anonymize` are explicit, confirmed requests and do not erase retention records that a directory must keep for security, fraud prevention, or legal obligations. See the [operator rights guide](https://iicp.network/operator/rights).
543
+
523
544
  ---
524
545
 
525
546
  ## SDK conformance
@@ -1 +1 @@
1
- {"version":3,"file":"backend_stability.d.ts","sourceRoot":"","sources":["../src/backend_stability.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,cAAc,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAE9G,MAAM,WAAW,+BAA+B;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,qBAAa,2BAA2B;IACtC,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,aAAa,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEzB,IAAI,GAAE,+BAAoC;IAQtD,WAAW,CAAC,KAAK,SAAa,GAAG,MAAM,GAAG,IAAI;IAO9C,UAAU,CAAC,KAAK,SAAa,GAAG,OAAO;IAIvC,UAAU,CAAC,KAAK,SAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAYxD;AAWD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,2BAA2B,CAmBhG;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,aAAa,CAAC,EAAE,MAAM,EACtB,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7E,2BAA2B,CAyD7B;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAuBvC"}
1
+ {"version":3,"file":"backend_stability.d.ts","sourceRoot":"","sources":["../src/backend_stability.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,cAAc,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAE9G,MAAM,WAAW,+BAA+B;IAC9C,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,qBAAa,2BAA2B;IACtC,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,EAAE,aAAa,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEzB,IAAI,GAAE,+BAAoC;IAQtD,WAAW,CAAC,KAAK,SAAa,GAAG,MAAM,GAAG,IAAI;IAO9C,UAAU,CAAC,KAAK,SAAa,GAAG,OAAO;IAIvC,UAAU,CAAC,KAAK,SAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAYxD;AAWD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,2BAA2B,CAmBhG;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,aAAa,CAAC,EAAE,MAAM,EACtB,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7E,2BAA2B,CAyD7B;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA8CvC"}
@@ -151,6 +151,32 @@ async function observeBackendStability(opts) {
151
151
  const f = opts.fetchImpl ?? fetch;
152
152
  const signal = () => AbortSignal.timeout(opts.timeoutMs ?? 2000);
153
153
  try {
154
+ if (flavor === "meshllm") {
155
+ const ready = await f(`${root}/readyz`, { headers, signal: signal() });
156
+ if (!ready.ok)
157
+ return new BackendStabilityObservation({
158
+ backendState: "draining", reasonClass: "backend_loading", drainUntilMs: Date.now() + 30_000,
159
+ diagnostics: { ready: false },
160
+ });
161
+ const inventory = await f(`${root}/v1/models`, { headers, signal: signal() });
162
+ if (!inventory.ok)
163
+ return new BackendStabilityObservation({
164
+ backendState: "draining", reasonClass: "backend_loading", drainUntilMs: Date.now() + 30_000,
165
+ diagnostics: { ready: false },
166
+ });
167
+ const inventoryBody = await inventory.json();
168
+ const models = typeof inventoryBody === "object" && inventoryBody !== null
169
+ && Array.isArray(inventoryBody.data)
170
+ ? inventoryBody.data
171
+ : null;
172
+ const present = models?.some((model) => typeof model.id === "string" && modelMatches(model.id, opts.expectedModel)) ?? false;
173
+ if (!models || models.length === 0 || (opts.expectedModel && !present))
174
+ return new BackendStabilityObservation({
175
+ backendState: "draining", reasonClass: "backend_loading", drainUntilMs: Date.now() + 30_000,
176
+ diagnostics: { selected_model_ready: false },
177
+ });
178
+ return new BackendStabilityObservation({ diagnostics: { ready: true } });
179
+ }
154
180
  if (flavor === "ollama" || flavor === "") {
155
181
  const r = await f(`${root}/api/ps`, { headers, signal: signal() });
156
182
  if (r.ok)
@@ -1 +1 @@
1
- {"version":3,"file":"backend_stability.js","sourceRoot":"","sources":["../src/backend_stability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend_stability.js","sourceRoot":"","sources":["../src/backend_stability.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * `--backend-type` flag).
7
7
  */
8
8
  import { type BackendHandler, type BackendOptions } from "./base.js";
9
- export declare const BACKEND_TYPES: readonly ["openai_compat", "vllm", "llamacpp", "anthropic"];
9
+ export declare const BACKEND_TYPES: readonly ["openai_compat", "vllm", "llamacpp", "meshllm", "anthropic"];
10
10
  export type BackendType = (typeof BACKEND_TYPES)[number];
11
11
  /** Return a backend handler by name. Throws on an unknown type. */
12
12
  export declare function getBackendHandler(backendType: string, opts?: BackendOptions): BackendHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAMrE,eAAO,MAAM,aAAa,6DAA8D,CAAC;AACzF,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AASzD,mEAAmE;AACnE,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,cAAmB,GAAG,cAAc,CAQhG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAOrE,eAAO,MAAM,aAAa,wEAAyE,CAAC;AACpG,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAUzD,mEAAmE;AACnE,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,cAAmB,GAAG,cAAc,CAQhG"}
@@ -13,12 +13,14 @@ exports.getBackendHandler = getBackendHandler;
13
13
  const openai_compat_js_1 = require("./openai_compat.js");
14
14
  const vllm_js_1 = require("./vllm.js");
15
15
  const llamacpp_js_1 = require("./llamacpp.js");
16
+ const meshllm_js_1 = require("./meshllm.js");
16
17
  const anthropic_js_1 = require("./anthropic.js");
17
- exports.BACKEND_TYPES = ["openai_compat", "vllm", "llamacpp", "anthropic"];
18
+ exports.BACKEND_TYPES = ["openai_compat", "vllm", "llamacpp", "meshllm", "anthropic"];
18
19
  const FACTORIES = {
19
20
  openai_compat: openai_compat_js_1.openaiCompatHandler,
20
21
  vllm: vllm_js_1.vllmHandler,
21
22
  llamacpp: llamacpp_js_1.llamacppHandler,
23
+ meshllm: meshllm_js_1.meshllmHandler,
22
24
  anthropic: anthropic_js_1.anthropicHandler,
23
25
  };
24
26
  /** Return a backend handler by name. Throws on an unknown type. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC;;;;;;GAMG;;;AAmBH,8CAQC;AAxBD,yDAAyD;AACzD,uCAAwC;AACxC,+CAAgD;AAChD,iDAAkD;AAErC,QAAA,aAAa,GAAG,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAU,CAAC;AAGzF,MAAM,SAAS,GAAkE;IAC/E,aAAa,EAAE,sCAAmB;IAClC,IAAI,EAAE,qBAAW;IACjB,QAAQ,EAAE,6BAAe;IACzB,SAAS,EAAE,+BAAgB;CAC5B,CAAC;AAEF,mEAAmE;AACnE,SAAgB,iBAAiB,CAAC,WAAmB,EAAE,OAAuB,EAAE;IAC9E,MAAM,OAAO,GAAG,SAAS,CAAC,WAA0B,CAAC,CAAC;IACtD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,qBAAa,CAAC,EAAE,CACtG,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC;;;;;;GAMG;;;AAqBH,8CAQC;AA1BD,yDAAyD;AACzD,uCAAwC;AACxC,+CAAgD;AAChD,6CAA8C;AAC9C,iDAAkD;AAErC,QAAA,aAAa,GAAG,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAU,CAAC;AAGpG,MAAM,SAAS,GAAkE;IAC/E,aAAa,EAAE,sCAAmB;IAClC,IAAI,EAAE,qBAAW;IACjB,QAAQ,EAAE,6BAAe;IACzB,OAAO,EAAE,2BAAc;IACvB,SAAS,EAAE,+BAAgB;CAC5B,CAAC;AAEF,mEAAmE;AACnE,SAAgB,iBAAiB,CAAC,WAAmB,EAAE,OAAuB,EAAE;IAC9E,MAAM,OAAO,GAAG,SAAS,CAAC,WAA0B,CAAC,CAAC;IACtD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,qBAAa,CAAC,EAAE,CACtG,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** MeshLLM local OpenAI-compatible backend. */
2
+ import { type BackendHandler } from "./base.js";
3
+ export interface MeshLlmOptions {
4
+ baseUrl?: string;
5
+ model?: string;
6
+ apiKey?: string;
7
+ timeoutMs?: number;
8
+ }
9
+ /** Stable MeshLLM profile: local HTTP chat only; no peer/control-plane coupling. */
10
+ export declare function meshllmHandler(opts?: MeshLlmOptions): BackendHandler;
11
+ //# sourceMappingURL=meshllm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meshllm.d.ts","sourceRoot":"","sources":["../../src/backends/meshllm.ts"],"names":[],"mappings":"AACA,+CAA+C;AAE/C,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAI3E,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,IAAI,GAAE,cAAmB,GAAG,cAAc,CAWxE"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ /** MeshLLM local OpenAI-compatible backend. */
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.meshllmHandler = meshllmHandler;
6
+ const base_js_1 = require("./base.js");
7
+ const CHAT_INTENT = "urn:iicp:intent:llm:chat:v1";
8
+ /** Stable MeshLLM profile: local HTTP chat only; no peer/control-plane coupling. */
9
+ function meshllmHandler(opts = {}) {
10
+ const openAiHandler = (0, base_js_1.buildOpenAiDialectHandler)("meshllm", opts.baseUrl ?? "http://localhost:9337/v1", opts.model, opts.apiKey ?? "", opts.timeoutMs ?? 30000);
11
+ return async (task) => {
12
+ if (task.intent !== CHAT_INTENT) {
13
+ return { error_code: 400, error_message: "MeshLLM stable backend supports llm:chat:v1 only" };
14
+ }
15
+ return openAiHandler(task);
16
+ };
17
+ }
18
+ //# sourceMappingURL=meshllm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meshllm.js","sourceRoot":"","sources":["../../src/backends/meshllm.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,+CAA+C;;AAc/C,wCAWC;AAvBD,uCAA2E;AAE3E,MAAM,WAAW,GAAG,6BAA6B,CAAC;AASlD,oFAAoF;AACpF,SAAgB,cAAc,CAAC,OAAuB,EAAE;IACtD,MAAM,aAAa,GAAG,IAAA,mCAAyB,EAC7C,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,0BAA0B,EAAE,IAAI,CAAC,KAAK,EACjE,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,IAAI,KAAK,CAC3C,CAAC;IACF,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;QACpB,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAChC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,kDAAkD,EAAE,CAAC;QAChG,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC"}
package/dist/cli.d.ts CHANGED
@@ -19,6 +19,7 @@ export interface ServeOpts {
19
19
  backendUrl: string;
20
20
  policyManifest?: string;
21
21
  backendType: string;
22
+ experimental?: boolean;
22
23
  /** #5 — Bearer key for an auth-requiring OpenAI-compat backend (LM Studio, hosted). Empty = none. */
23
24
  backendApiKey: string;
24
25
  model: string;
@@ -74,6 +75,16 @@ export declare function verifyCreditAwards(directoryUrl: string, nodeId: string)
74
75
  verified: number;
75
76
  failed: number;
76
77
  }>;
78
+ type HandoffMarker = {
79
+ affected_node_names?: unknown;
80
+ restart_requested_node_names?: unknown;
81
+ completed_node_names?: unknown;
82
+ created_at_unix?: unknown;
83
+ grace_seconds?: unknown;
84
+ };
85
+ /** Return remaining grace seconds; completed/restarted services never restart twice. */
86
+ export declare function handoffRestartDelay(marker: HandoffMarker, nodeName: string, now: number): number | null;
87
+ export declare function completeHandoffForNode(nodeName: string): void;
77
88
  export declare function main(argv?: string[]): Promise<number>;
78
89
  export {};
79
90
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}