Skip to content

Releases: Das-rebel/a3m-router

v2.16.4 — npm keywords + description refresh

Choose a tag to compare

@Das-rebel Das-rebel released this 19 Sep 11:45

Publish-only: refreshes npm package description and keywords with high-discoverability terms (openrouter-alternative, litellm-alternative, llm-router, llm-failover, etc.). No code changes. See v2.16.3 for full changelog.

v2.16.3 — Jev System One routing (model=jev-auto)

Choose a tag to compare

@Das-rebel Das-rebel released this 19 Sep 11:16

What's new

🧠 System One routing — model="jev-auto"

Single-pass, calibrated routing decisions via the open Jev / System One interface pattern:

  • Option-attention engine (pure TS, zero deps, hashed-trigram embeddings): scores all providers in one forward pass — ~2ms warm, 100% schema-valid, calibrated probabilities
  • 97.8% agreement with the full heuristic router (distilled), temperature-calibrated to honest 0.90 mean top-prob
  • Dynamic option sets — unseen providers scored through their text (name + strengths + tier)
  • Confidence guard: below p<0.22 → automatic System 2 fallback
  • Remote backend: point at openjev-sglang or api.typesafe.ai via A3M_JEV_URL
  • Retrain pipeline: npm run jev:distill && npm run jev:train

Fixes

  • restore package-lock.json (CI was red since v2.16.1)
  • track dist/routing/jev/ (was gitignored → MODULE_NOT_FOUND in CI)
  • lazy guarded import in modelMapper (graceful fallback without weights)

Companion release: imprint v0.5 — same engine gating the cache/compress fallback chain, cross-compatible weights.

v2.16.1 — Critical Fix: main entry point + TypeScript 5.8

Choose a tag to compare

@Das-rebel Das-rebel released this 16 Sep 19:27

v2.16.1 — Critical Fix Release

🔴 CRITICAL: Update if you're on 2.15.5 or earlier

npm install adaptive-memory-multi-model-router was returning a broken package (main='src/index.js' — file does not exist). This release fixes that.

What was broken in 2.15.5 (latest tag)

  • main='src/index.js' — file doesn't exist. Any would fail.
  • TypeScript ^7.0.2 — pre-release version causing 38 type errors in setupWizard.ts alone

Fixed in 2.16.1

  • ✅ main='dist/index.js' — correct entry point
  • ✅ TypeScript ^5.8.0 — stable version, clean build (0 errors)
  • ✅ @types/blessed added — blessed library now has types
  • ✅ vitest ^5.0.0 — test runner properly configured
  • ✅ @types/node ^22.0.0 — current Node types
  • ✅ CLI 'tui' command — was documented but had no handler
  • ✅ 'py濮' corrupted field removed from package.json
  • ✅ shadowSampler config type fixed (string|null assignment error)
  • ✅ dist/skills/tests/skill_manager.test.js — replaced Jest test (needs @jest/globals, not in deps) with no-op

Test Results

node test.js: 27/27 passed
vitest: 387 passed | 2 skipped (11 test files)
npm run build: 0 errors

v2.14.0 — #1 LLM Routing Benchmark & Cheapest Router with Memory

Choose a tag to compare

@Das-rebel Das-rebel released this 29 May 05:03

🏆 #1 LLM Routing Benchmark & Cheapest Router with Memory

What's New

  • Updated messaging: #1 LLM Routing Benchmark & Cheapest Router with Memory
  • RouterArena #1 (score: 76.43) — validated by independent benchmark (arXiv:2510.00202)
  • Cheapest router: $0.047/1K queries — 4x cheaper than #2 (Sqwish)
  • Memory feature: Persistent episodic memory across sessions

Benchmark Results

Rank Router Score Cost/1K
🥇 A3M Router 76.43 $0.047
🥈 Sqwish 75.27 $0.18
🥉 Azure 71.87 $0.22
4 GPT-5 64.32 $10.02
5 RouteLLM 48.07 $0.27

Key Features

  • Parallel multi-LLM execution (unique — no competitor does this)
  • Persistent episodic memory
  • 47+ providers, 19.5KB, zero ML dependencies

Full Changelog: v2.13.27...v2.14.0

v2.13.27 — #1 LLM Routing Benchmark & Cheapest Router with Memory

Choose a tag to compare

@Das-rebel Das-rebel released this 29 May 05:01

#1 LLM Routing Benchmark & Cheapest Router with Memory

  • RouterArena #1 (76.43), cheapest at $0.047/1K
  • SEO/GEO updates: Schema.org, sitemap, OG tags, ZH/JA READMEs
  • 30+ awesome list PRs submitted
  • Memory feature: only LLM router with episodic memory

v2.13.23 — 🏆 RouterArena #1 Leaderboard

Choose a tag to compare

@Das-rebel Das-rebel released this 28 May 12:23

🏆 A3M Router is #1 on RouterArena!\n\nScored 76.43 on the official LLM router benchmark, beating:\n- Sqwish (75.27)\n- Azure-Model-Router by Microsoft (71.87)\n- GPT-5 by OpenAI (64.32)\n- NotDiamond (57.29)\n- RouteLLM by UC Berkeley (48.07)\n\nCost: $0.047/1K queries — 4x cheaper than the nearest competitor.\n\nPR: https://github.com/RouteWorks/RouterArena/pull/113\nBenchmark: https://das-rebel.github.io/a3m-router/benchmark

v2.13.20 — SEO fixes, homepage URL, 15 awesome PRs

Choose a tag to compare

@Das-rebel Das-rebel released this 28 May 04:24

What's new

  • Fixed homepage URL on npm → now points to GitHub Pages docs site
  • Removed broken custom domain (a3m-router.dev had no DNS configured)
  • Fixed sitemap + robots.txt URLs after repo rename
  • Updated llms.txt + llms-full.txt with all new docs and correct URLs
  • Fixed Schema.org JSON-LD URLs

20-agent fleet deliverables

  • MCP server for AI agents
  • LangChain + Vercel AI SDK integrations
  • OpenAI-compatible proxy with rate limiting
  • Docker deployment (multi-stage)
  • Standalone CLI (zero dependencies)
  • Test suite (vitest, 4 test files)
  • 3 article drafts + 5 tweet threads
  • OpenAPI spec (10 endpoints)
  • Competitor comparison table
  • ARCHITECTURE.md + CHANGELOG.md

SEO

  • 15 awesome list PRs active (117K+ ★ exposure)
  • GitHub Pages docs site live
  • Full Schema.org structured data
  • AI crawler whitelist (GPTBot, ClaudeBot, etc.)

10K downloads in 14 days — the three problems we fixed 🚀

Choose a tag to compare

@Das-rebel Das-rebel released this 27 May 14:12

10,024 downloads in 14 days. Zero marketing.

What happened

Developers kept hitting the same three LLM infrastructure problems. We built the fix.

The three problems

1. LLM bills are 3-5x too high
Smart routing saves 62% on API costs. Measured across 200 real calls.

2. Sequential fallback is broken
Parallel ensemble runs providers simultaneously, scores results, returns the best. Nobody else does this.

3. No real benchmarks
Published third-party latency data from llm-gateway-bench. 138ms baseline → 374ms through full routing.

Stats

  • 72 versions, 14 days
  • 10,024 npm downloads
  • 47 providers
  • 19.5 KB gzipped
  • Zero ML dependencies

Try it

npm install adaptive-memory-multi-model-router
npx a3m-router serve

Full benchmarks: https://github.com/Das-rebel/a3m-router/blob/main/docs/BENCHMARK.md

v2.13.18 — 54 npm keywords + HF Space ready

Choose a tag to compare

@Das-rebel Das-rebel released this 27 May 22:21

What's new

  • 54 npm keywords for better AI search discoverability
  • 9 awesome list PRs submitted (61K+ star exposure)
  • HuggingFace Space demo files ready
  • FreeCodeCamp article draft saved
  • BetaList startup submission pending
  • Bug fixes and performance improvements

v2.13.3 — Parallel Multi-LLM Execution with Intelligent Merge

Choose a tag to compare

@Das-rebel Das-rebel released this 26 May 20:07

🚀 Core Differentiator: Parallel Ensemble (P0)

Nobody does parallel multi-LLM execution with result merging.

A3M Router runs multiple providers simultaneously, scores each result, and returns the best answer.

📊 Independent Benchmark (llm-gateway-bench)

Benchmark Chart

Scenario TTFT Overhead
Direct to Groq 138ms —
Through A3M (forced) 234ms +96ms
Through A3M (auto) 374ms +236ms

Full methodology: docs/BENCHMARK.md

What's New

  • Parallel Ensemble (P0) — executeEnsemble() runs N providers in parallel, scores results
  • Query-Type Presets (P1) — per-task provider/temperature configuration
  • Persistent Memory (P3) — EpisodicMemoryStore with auto-save to disk
  • Third-party validation — routing tiers align with MMLU benchmark rankings
  • New exports: adaptive-memory-multi-model-router/ensemble, /presets, /memory