llm-relay 0.52.0 → 0.53.0
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/dist/availability-snapshot.js +5 -4
- package/dist/availability-snapshot.js.map +1 -1
- package/dist/availability.d.ts +21 -1
- package/dist/availability.js +45 -4
- package/dist/availability.js.map +1 -1
- package/dist/breaker-persistence.d.ts +39 -0
- package/dist/breaker-persistence.js +166 -0
- package/dist/breaker-persistence.js.map +1 -0
- package/dist/candidates.d.ts +7 -1
- package/dist/candidates.js.map +1 -1
- package/dist/circuit-breaker.d.ts +44 -0
- package/dist/circuit-breaker.js +91 -0
- package/dist/circuit-breaker.js.map +1 -1
- package/dist/cli.d.ts +23 -0
- package/dist/cli.js +152 -9
- package/dist/cli.js.map +1 -1
- package/dist/ping/metrics.d.ts +25 -1
- package/dist/ping/metrics.js +36 -9
- package/dist/ping/metrics.js.map +1 -1
- package/dist/quota-demotion.d.ts +10 -8
- package/dist/quota-demotion.js +23 -9
- package/dist/quota-demotion.js.map +1 -1
- package/dist/server.js +14 -0
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
- package/skills/llm-relay/SKILL.md +26 -0
package/package.json
CHANGED
|
@@ -23,6 +23,32 @@ One boundary governs everything it does: the proxy fixes **protocol form** (tool
|
|
|
23
23
|
violate the schema), never **judgment**. It refuses to fabricate destructive tool calls, and an
|
|
24
24
|
unrepairable response fails loudly (502 / mid-stream SSE error) rather than passing through broken.
|
|
25
25
|
|
|
26
|
+
## First use on a machine — ASK, do not assume
|
|
27
|
+
|
|
28
|
+
A fresh install writes a config that **changes nothing**: every Claude model id reaches real
|
|
29
|
+
Anthropic, and the free pools exist but nothing is routed to them. That is the safe default and it
|
|
30
|
+
is almost certainly not why the operator installed a traffic router — so the relay leaves a marker
|
|
31
|
+
saying the question has never been put, and **you** are the one who asks.
|
|
32
|
+
|
|
33
|
+
`llm-relay routing show` and `llm-relay offload status` print a first-run notice **on stderr** while
|
|
34
|
+
that marker exists. When you see it:
|
|
35
|
+
|
|
36
|
+
1. Ask the operator what they want. Offer concrete options, not a lecture:
|
|
37
|
+
- **Subagents only** (recommended start) — `llm-relay offload claude on`. Marked child requests
|
|
38
|
+
go to the free pools; the operator's own turns stay on Anthropic. Nothing else changes.
|
|
39
|
+
- **Subagents plus the whole conversation** — `llm-relay offload claude on --scope all`. Spends
|
|
40
|
+
no Anthropic quota, and every turn now runs on a weaker model. Say that plainly.
|
|
41
|
+
- **Free lanes only, never spend money** — add `"freeOnly": true` to the rule. It refuses with a
|
|
42
|
+
clean 503 rather than falling through to paid.
|
|
43
|
+
- **Nothing yet** — a real answer. Leave the routing alone.
|
|
44
|
+
2. Apply the answer with the ordinary verbs. Do not hand-edit `config.json`.
|
|
45
|
+
3. Run `llm-relay routing answered` to retire the notice — including when the answer was "nothing
|
|
46
|
+
yet". Forcing a config edit just to silence a prompt is how a default gets changed for the
|
|
47
|
+
wrong reason.
|
|
48
|
+
|
|
49
|
+
⚠ Ask ONCE per machine. The marker is the memory; do not re-open the question because a later
|
|
50
|
+
session did not see the notice.
|
|
51
|
+
|
|
26
52
|
## Addressing a model
|
|
27
53
|
|
|
28
54
|
Three forms in a request's `model` field, resolved in this order:
|