@askalf/dario 3.19.0 → 3.19.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.
- package/README.md +3 -1
- package/dist/cc-template.js +7 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -88,7 +88,7 @@ Something broken? `dario doctor` prints a single aggregated health report — da
|
|
|
88
88
|
|
|
89
89
|
**You want the proxy layer off the wire entirely.** **Shim mode** (v3.12, hardened in v3.13) is an in-process `globalThis.fetch` patch injected via `NODE_OPTIONS=--require`. No HTTP hop, no port to bind, no `BASE_URL` to set. `dario shim -- claude --print "hi"` and CC thinks it's talking directly to `api.anthropic.com`. See [Shim mode](#shim-mode).
|
|
90
90
|
|
|
91
|
-
**You want to share capacity with a trusted group without surveilling each other.** The **sealed-sender overflow protocol** (v3.13) uses RSA blind signatures (Chaum 1983, implemented from scratch over Node's `crypto`) so members of a trust group can lend unused Claude capacity to each other with cryptographic unlinkability. A lender verifies "this is a valid group member" without learning *which* member. See [Sealed-sender overflow](#sealed-sender-overflow-protocol).
|
|
91
|
+
**You want to share capacity with a trusted group without surveilling each other.** The **sealed-sender overflow protocol** (v3.13) uses RSA blind signatures (Chaum 1983, implemented from scratch over Node's `crypto`) so members of a trust group can lend unused Claude capacity to each other with cryptographic unlinkability. A lender verifies "this is a valid group member" without learning *which* member. Dario ships the primitive; [mux](https://github.com/askalf/mux) is the dedicated product around it (group admin, key distribution, member workflow, borrower CLI). See [Sealed-sender overflow](#sealed-sender-overflow-protocol).
|
|
92
92
|
|
|
93
93
|
**You want to actually audit the thing.** ~7,600 lines of TypeScript across ~15 files. Zero runtime dependencies (`npm ls --production` confirms). Credentials at `~/.dario/` with `0600` permissions. `127.0.0.1`-only by default. Every release [SLSA-attested](https://www.npmjs.com/package/@askalf/dario) via GitHub Actions. Nothing phones home. Small enough to read in a weekend.
|
|
94
94
|
|
|
@@ -232,6 +232,8 @@ Trust-group members can lend each other Claude capacity with **cryptographic unl
|
|
|
232
232
|
|
|
233
233
|
Full feature-parity with `/v1/messages` (streaming, inside-request 429 failover, reverse tool mapping) for borrowed requests is intentionally a follow-up — the current release ships the cryptographic primitive and a working minimal endpoint; full integration layers on top.
|
|
234
234
|
|
|
235
|
+
**Dedicated product.** The sealed-sender protocol has a dedicated product around it: [mux](https://github.com/askalf/mux). mux carries the group admin tooling (key generation, member roster, batch signing), the member workflow (prepare / finalize / status), the borrower CLI, and the lender daemon as a coherent surface. It uses dario as its backend — a mux lender runs a dario pool and fronts it with `/v1/pool/borrow`. Dario keeps the primitive here for anyone who wants to embed it without running the full mux flow; for peer-to-peer capacity sharing as a product, use mux.
|
|
236
|
+
|
|
235
237
|
---
|
|
236
238
|
|
|
237
239
|
## Shim mode
|
package/dist/cc-template.js
CHANGED
|
@@ -232,7 +232,10 @@ const TOOL_MAP = {
|
|
|
232
232
|
execute_command: {
|
|
233
233
|
ccTool: 'Bash',
|
|
234
234
|
translateArgs: (a) => ({ command: a.command || a.cmd || '', ...(a.description ? { description: a.description } : {}) }),
|
|
235
|
-
|
|
235
|
+
// requires_approval is required by Cline's execute_command schema. Default
|
|
236
|
+
// to false — CC already gates Bash upstream through its own permission
|
|
237
|
+
// model, and the borrower controls their own auto-approval settings.
|
|
238
|
+
translateBack: (a) => ({ command: a.command ?? '', requires_approval: false, ...(a.description ? { description: a.description } : { description: a.command ?? '' }) }),
|
|
236
239
|
},
|
|
237
240
|
// Cursor
|
|
238
241
|
run_terminal_cmd: {
|
|
@@ -336,7 +339,9 @@ const TOOL_MAP = {
|
|
|
336
339
|
replace_in_file: {
|
|
337
340
|
ccTool: 'Edit',
|
|
338
341
|
translateArgs: (a) => ({ file_path: a.path || a.filePath || a.file_path || '', old_string: a.old_string || a.old || '', new_string: a.new_string || a.new || '' }),
|
|
339
|
-
|
|
342
|
+
// Cline's schema requires `diff`, not old_string/new_string — formatted as
|
|
343
|
+
// one SEARCH/REPLACE block (see replace_in_file.ts in cline/cline).
|
|
344
|
+
translateBack: (a) => ({ path: a.file_path ?? '', diff: `------- SEARCH\n${a.old_string ?? ''}\n=======\n${a.new_string ?? ''}\n+++++++ REPLACE` }),
|
|
340
345
|
},
|
|
341
346
|
// Roo Code
|
|
342
347
|
apply_diff: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@askalf/dario",
|
|
3
|
-
"version": "3.19.
|
|
3
|
+
"version": "3.19.1",
|
|
4
4
|
"description": "A local LLM router. One endpoint, every provider — Claude subscriptions, OpenAI, OpenRouter, Groq, local LiteLLM, any OpenAI-compat endpoint — your tools don't need to change.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|