@oneciel-ai/claude-any 0.1.104 → 0.1.105
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 +94 -5
- package/claude_any.py +1935 -218
- package/docs/README.ja.md +1 -1
- package/docs/README.ko.md +42 -7
- package/docs/README.zh.md +1 -1
- package/docs/manual.md +39 -5
- package/npm-bin/postinstall.js +46 -0
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -26,6 +26,21 @@
|
|
|
26
26
|
|
|
27
27
|
## Today's Top 3 Benefits
|
|
28
28
|
|
|
29
|
+
### 2026-06-03
|
|
30
|
+
|
|
31
|
+
1. **Router lifecycle isolation** — Claude Any now distinguishes routers it
|
|
32
|
+
manages from routers owned by another config directory or active session. It
|
|
33
|
+
replaces stale same-config routers only when they are idle, and managed
|
|
34
|
+
routers shut down after their Claude Code child exits.
|
|
35
|
+
2. **OpenAI/vLLM compatibility repairs** — long compacted routed sessions keep
|
|
36
|
+
required tool-result messages with assistant tool calls, vLLM endpoint
|
|
37
|
+
routing distinguishes OpenAI-compatible and Anthropic-compatible servers, and
|
|
38
|
+
128K context presets stay visible instead of collapsing back to 65K.
|
|
39
|
+
3. **Cleaner ultracode, advisor, and channel behavior** — ultracode is gated by
|
|
40
|
+
verified model capabilities, `/advisor` remains an explicit user action, and
|
|
41
|
+
external-channel digests stay local so internal `tool_result` or background
|
|
42
|
+
summary text is not posted back into AI-Net-style rooms.
|
|
43
|
+
|
|
29
44
|
### 2026-05-28
|
|
30
45
|
|
|
31
46
|
1. **Non-native Claude Code workflow prep** — routed providers can opt in to Claude Code dynamic workflows with `workflows_enabled`, which removes Claude Any's experimental-beta disable env for that launch.
|
|
@@ -82,7 +97,7 @@ passes normal Claude Code arguments through unchanged.
|
|
|
82
97
|
|
|
83
98
|
Credits: One Ciel LLC
|
|
84
99
|
|
|
85
|
-
Current version: `0.1.
|
|
100
|
+
Current version: `0.1.105`
|
|
86
101
|
|
|
87
102
|
## Why This Exists
|
|
88
103
|
|
|
@@ -332,13 +347,27 @@ claude-any --ca-upgrade-and-exit
|
|
|
332
347
|
```
|
|
333
348
|
|
|
334
349
|
Headless coverage checklist: provider, base URL, model, Advisor model, API key
|
|
335
|
-
or API-key environment variable, max output, context window, request timeout,
|
|
350
|
+
or API-key environment variable, multi-key round-robin, max output, context window, request timeout,
|
|
336
351
|
RPM limit, RPM status display, streaming, web search, web fetch, Claude skills,
|
|
337
352
|
update check, language, Ollama context/options, and normal Claude Code
|
|
338
353
|
passthrough arguments are all configurable without opening the menu. API keys
|
|
339
354
|
can be passed directly with `--ca-api-key`, but `--ca-api-key-env` is safer for
|
|
340
355
|
scripts because the secret does not appear in shell history.
|
|
341
356
|
|
|
357
|
+
For high-token routed sessions such as ultracode, store multiple keys for the
|
|
358
|
+
same provider and Claude Any will rotate them per upstream request:
|
|
359
|
+
|
|
360
|
+
```sh
|
|
361
|
+
export OPENCODE_API_KEYS="KEY1,KEY2,KEY3"
|
|
362
|
+
claude-any --ca-provider opencode --ca-api-keys-env OPENCODE_API_KEYS --ca-no-launch
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
This distributes provider quota/rate usage across keys; it does not reduce the
|
|
366
|
+
task's actual token consumption. The menu also accepts comma/newline-separated
|
|
367
|
+
keys in the API-key input paths and shows a masked primary key plus a short
|
|
368
|
+
fingerprint so you can confirm which key set is actually active without exposing
|
|
369
|
+
the secret.
|
|
370
|
+
|
|
342
371
|
More examples are in [Headless Examples](#headless-examples) and
|
|
343
372
|
[the full manual](docs/manual.md#headless-usage).
|
|
344
373
|
|
|
@@ -437,7 +466,9 @@ Release flow:
|
|
|
437
466
|
The demo sequence now shows provider selection, Base URL entry, model selection,
|
|
438
467
|
LLM options, and the compatibility test. The compatibility test checks a plain
|
|
439
468
|
text response, a required `tool_use`, and a `tool_result` follow-up before the
|
|
440
|
-
launcher recommends starting Claude Code.
|
|
469
|
+
launcher recommends starting Claude Code. When multiple API keys are configured
|
|
470
|
+
for the selected provider, the test also sends a lightweight text probe with
|
|
471
|
+
each key so a dead key is caught before launch instead of during round-robin use.
|
|
441
472
|
|
|
442
473
|
Additional current screenshots:
|
|
443
474
|
|
|
@@ -560,8 +591,66 @@ steps under that larger model's supervision.
|
|
|
560
591
|
|
|
561
592
|
## Changelog
|
|
562
593
|
|
|
563
|
-
###
|
|
564
|
-
|
|
594
|
+
### 0.1.105
|
|
595
|
+
|
|
596
|
+
- **Router lifecycle isolation**: routed launches now track managed router
|
|
597
|
+
ownership with the current Claude Any config directory and owner process,
|
|
598
|
+
replace only idle same-config routers on the same port, refuse foreign-config
|
|
599
|
+
routers instead of killing unrelated sessions, and ask managed routers to stop
|
|
600
|
+
after their Claude Code child exits. npm `postinstall` also performs a
|
|
601
|
+
best-effort managed-router cleanup so upgrades do not leave stale local
|
|
602
|
+
bridges attached to old code.
|
|
603
|
+
- **Routed transcript repair for OpenAI-compatible providers**: compacted or
|
|
604
|
+
truncated contexts that still contain an assistant `tool_calls` message are
|
|
605
|
+
repaired before upstream forwarding by preserving the required matching tool
|
|
606
|
+
messages. This avoids DeepSeek/OpenAI-compatible errors such as
|
|
607
|
+
`insufficient tool messages following tool_calls message` after long routed
|
|
608
|
+
coding sessions.
|
|
609
|
+
- **vLLM and local Anthropic-compatible routing fixes**: vLLM endpoint detection
|
|
610
|
+
now distinguishes OpenAI-compatible `/v1` URLs from Anthropic-compatible
|
|
611
|
+
Messages endpoints, normalizes system messages for Anthropic-style vLLM
|
|
612
|
+
servers, shows model context metadata in the model picker when available, and
|
|
613
|
+
adds visible 128K presets instead of forcing every long-context choice back to
|
|
614
|
+
65K.
|
|
615
|
+
- **Claude Code capability and ultracode guards**: workflow/ultracode launch
|
|
616
|
+
options now use explicit model capability metadata. Claude family IDs exposed
|
|
617
|
+
through routed gateways can infer supported capabilities, while unverified
|
|
618
|
+
OpenCode/DeepSeek/local IDs no longer advertise `xhigh_effort` unless the user
|
|
619
|
+
sets a provider capability override.
|
|
620
|
+
- **Advisor routing hardening**: routed sessions strip Claude Code's autonomous
|
|
621
|
+
server-side advisor tool from normal turns so `/advisor` remains an explicit
|
|
622
|
+
user action. Advisor model aliases are resolved through the selected provider,
|
|
623
|
+
preventing routed advisor requests from sending Claude Any alias names as raw
|
|
624
|
+
upstream model IDs.
|
|
625
|
+
- **Upstream request identity and install diagnostics**: routed provider calls
|
|
626
|
+
send a Claude Code oriented user-agent header by default, and startup now warns
|
|
627
|
+
when another `claude-any` executable shadows the active npm install. Self
|
|
628
|
+
updates target the npm prefix that owns the running executable instead of a
|
|
629
|
+
different global install.
|
|
630
|
+
- **External channel summary cleanup**: AI-Net-style channel digest summaries are
|
|
631
|
+
kept as local status notices and simplified to point users back to the MCP
|
|
632
|
+
system for details. Internal `tool_result`, background-summary, and
|
|
633
|
+
no-reply markers are suppressed from outbound external-channel messages.
|
|
634
|
+
- **Provider API-key round-robin**: routed providers now support multiple stored
|
|
635
|
+
API keys per provider (`api_keys`) while preserving the existing single
|
|
636
|
+
`api_key` config. `--ca-api-keys`, `--ca-api-keys-env`,
|
|
637
|
+
`--ca-set-api-keys`, and `set-api-keys` configure comma-, semicolon-, or
|
|
638
|
+
newline-separated key lists. Upstream provider requests rotate through the
|
|
639
|
+
keys in-process, which is useful for high-token ultracode sessions that need
|
|
640
|
+
quota/rate distribution across keys. Compatibility tests now probe every
|
|
641
|
+
configured key independently before the normal text/tool/tool-result checks.
|
|
642
|
+
API-key status lines include the masked primary key and a short SHA-256
|
|
643
|
+
fingerprint, and single-key entry/clipboard/env paths auto-detect multiple
|
|
644
|
+
pasted keys to avoid silently overwriting a round-robin set.
|
|
645
|
+
- **Rate-limit error surfacing**: routed upstream 429 responses with a
|
|
646
|
+
`Retry-After` longer than the current request timeout now fail fast and report
|
|
647
|
+
the provider's real error type/message plus `Retry-After`, instead of sleeping
|
|
648
|
+
until Claude Code surfaces the situation as a generic timeout.
|
|
649
|
+
- **Compatibility-test rate-limit diagnostics**: compatibility-test requests now
|
|
650
|
+
mark themselves for the local router, and router-backed OpenAI-compatible
|
|
651
|
+
paths skip rate-limit retry sleeps for those probes. A provider-side 429 should
|
|
652
|
+
show as the provider's rate-limit error instead of leaving the menu stuck and
|
|
653
|
+
later reporting a generic timeout.
|
|
565
654
|
- **Claude native model registry refresh**: Anthropic native model refresh now
|
|
566
655
|
prefers the official Claude model documentation before falling back to API
|
|
567
656
|
model-list endpoints, stores the refreshed list in a provider-scoped
|