@blockrun/clawrouter 0.9.4 → 0.9.5

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 CHANGED
@@ -335,14 +335,14 @@ Track your savings with `/stats` in any OpenClaw conversation.
335
335
 
336
336
  They're built for developers. ClawRouter is built for **agents**.
337
337
 
338
- | | OpenRouter / LiteLLM | ClawRouter |
339
- | ----------- | --------------------------- | -------------------------------- |
340
- | **Setup** | Human creates account | Agent generates wallet |
341
- | **Auth** | API key (shared secret) | Wallet signature (cryptographic) |
342
- | **Payment** | Prepaid balance (custodial) | Per-request (non-custodial) |
343
- | **Routing** | Proprietary / closed | Open source, client-side |
344
- | **Rate limits** | Per-key quotas | None (your wallet, your limits) |
345
- | **Cost** | $25/M (Opus equivalent) | $2.05/M blended average |
338
+ | | OpenRouter / LiteLLM | ClawRouter |
339
+ | --------------- | --------------------------- | -------------------------------- |
340
+ | **Setup** | Human creates account | Agent generates wallet |
341
+ | **Auth** | API key (shared secret) | Wallet signature (cryptographic) |
342
+ | **Payment** | Prepaid balance (custodial) | Per-request (non-custodial) |
343
+ | **Routing** | Proprietary / closed | Open source, client-side |
344
+ | **Rate limits** | Per-key quotas | None (your wallet, your limits) |
345
+ | **Cost** | $25/M (Opus equivalent) | $2.05/M blended average |
346
346
 
347
347
  Agents shouldn't need a human to paste API keys. They should generate a wallet, receive funds, and pay per request — programmatically.
348
348
 
@@ -350,13 +350,13 @@ Agents shouldn't need a human to paste API keys. They should generate a wallet,
350
350
 
351
351
  Based on [50+ OpenClaw issues](https://github.com/openclaw/openclaw/issues?q=openrouter):
352
352
 
353
- | Issue | Problem | ClawRouter |
354
- |-------|---------|------------|
355
- | [#11202](https://github.com/openclaw/openclaw/issues/11202) | API keys leaked in every LLM prompt | No API keys to leak |
356
- | [#2373](https://github.com/openclaw/openclaw/issues/2373) | `openrouter/auto` path broken | `blockrun/auto` just works |
357
- | [#8615](https://github.com/openclaw/openclaw/issues/8615) | Single API key rate limit hell | Non-custodial, no limits |
358
- | [#2963](https://github.com/openclaw/openclaw/issues/2963) | Tool calling fails silently | Full tool support |
359
- | [#10687](https://github.com/openclaw/openclaw/issues/10687) | "Unknown model" errors | 30+ models, auto-update |
353
+ | Issue | Problem | ClawRouter |
354
+ | ----------------------------------------------------------- | ----------------------------------- | -------------------------- |
355
+ | [#11202](https://github.com/openclaw/openclaw/issues/11202) | API keys leaked in every LLM prompt | No API keys to leak |
356
+ | [#2373](https://github.com/openclaw/openclaw/issues/2373) | `openrouter/auto` path broken | `blockrun/auto` just works |
357
+ | [#8615](https://github.com/openclaw/openclaw/issues/8615) | Single API key rate limit hell | Non-custodial, no limits |
358
+ | [#2963](https://github.com/openclaw/openclaw/issues/2963) | Tool calling fails silently | Full tool support |
359
+ | [#10687](https://github.com/openclaw/openclaw/issues/10687) | "Unknown model" errors | 30+ models, auto-update |
360
360
 
361
361
  **[Full comparison →](docs/vs-openrouter.md)**
362
362
 
package/dist/cli.js CHANGED
@@ -1388,6 +1388,7 @@ function resolveModelAlias(model) {
1388
1388
  const withoutPrefix = normalized.slice("blockrun/".length);
1389
1389
  const resolvedWithoutPrefix = MODEL_ALIASES[withoutPrefix];
1390
1390
  if (resolvedWithoutPrefix) return resolvedWithoutPrefix;
1391
+ return withoutPrefix;
1391
1392
  }
1392
1393
  return model;
1393
1394
  }
@@ -2018,9 +2019,11 @@ var RequestDeduplicator = class {
2018
2019
  removeInflight(key) {
2019
2020
  const entry = this.inflight.get(key);
2020
2021
  if (entry) {
2021
- const errorBody = Buffer.from(JSON.stringify({
2022
- error: { message: "Original request failed, please retry", type: "dedup_origin_failed" }
2023
- }));
2022
+ const errorBody = Buffer.from(
2023
+ JSON.stringify({
2024
+ error: { message: "Original request failed, please retry", type: "dedup_origin_failed" }
2025
+ })
2026
+ );
2024
2027
  for (const resolve of entry.resolvers) {
2025
2028
  resolve({
2026
2029
  status: 503,