Observed since 20 Oct, 21:41 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
9router-auto-free
Daily automated scraper and injector for OpenAgentic free models into 9router combos
English | Bahasa Indonesia
Automated intelligent system that aggregates 100+ free AI coding models from top providers, validates them via live pre-tests directly through 9router, ranks them by empirical coding benchmarks & latency, and injects them into ready-to-use 9router combos (my9model-free, my9model-smart, my9model-fast, openagentic-free, kilo-free, etc.) — allowing Cursor, Claude Code, Cline, and your IDEs to always use active, high-quality, and lowest-latency free AI models without key management headaches.
Security Note: This script reads provider credentials from connections already configured in your 9router SQLite database. No API keys are stored in or transmitted by this repository.
9router-auto-free includes a built-in dark-themed Web Management Console on port 20129:
exclusions.json and priorities.json with tag-based UI or raw JSON editor.# Start the Web Console
npx 9router-auto-free --web
# Or with verbose logging for terminal debugging
npx 9router-auto-free --web --verbose
# Or locally:
npm run web
# node web.js --verbose
Access in your browser: http://localhost:20129
# Run Full Daily Sync immediately
npx 9router-auto-free
# Launch Web Console Dashboard
npx 9router-auto-free --web
# Simulate sync without modifying SQLite database (Dry Run)
npx 9router-auto-free --dry-run
# Intra-day watchdog refresh (check quota & HTTP 429 status)
npx 9router-auto-free --refresh
# Setup automated daily & hourly scheduling
npx 9router-auto-free --setup-cron
npm install -g 9router-auto-free
# Run commands directly from terminal
9router-auto-free
9router-auto-free --web
9router-auto-free --dry-run
POST /api/models/test) to measure real HTTP status and latency.my9model-cooldown; dead models are pruned.| Combo | Description & Recommendation |
|---|---|
my9model-free | Main super combo: Comprehensive pool of all active free models across all providers, ranked with top coding capability and lowest latency first. Best for daily programming. |
my9model-smart | High reasoning & thinking tier: Dedicated to thinking models (Claude 3.7 Sonnet Thinking, Qwen Coder, DeepSeek R1) or highest coding benchmarks. Best for complex architectures & tough debugging. |
my9model-fast | Ultra-low latency tier: Lightning-fast models (Groq, Cerebras, Kilo, etc.) with sub-second response times. Perfect for autocomplete and inline code completions. |
my9model-cooldown | Rate-limit quarantine (429): Holding area for models whose daily quota is exhausted. The hourly watchdog automatically restores them once quotas reset. |
| Provider | Prefix | Output Combo |
|---|---|---|
| OpenAgentic.id | openagentic | openagentic-free |
| Kilo.ai (KiloCode) | kc | kilo-free |
| OpenRouter | openrouter | openrouter-free |
| Google Gemini | gemini | gemini-free |
| Groq | groq | groq-free |
| Cerebras | cerebras | cerebras-free |
| Mistral AI | mistral | mistral-free |
| Cloudflare Workers AI | cloudflare-ai | cloudflare-free |
| Poolside | poolside | poolside-free |
| Ollama Cloud | ollama | ollama-free |
| API.airforce | api-airforce | airforce-free |
| Bazaarlink | bazaarlink | bazaarlink-free |
| B.ai | b-ai | b.ai-free |
| NVIDIA NIM | nvidia | nvidia-free |
| 9router OpenCode | oc | opencode-free |
| Dynamic OpenAI Nodes | <prefix> | <prefix>-free |
Point your OpenAI-Compatible client to 9router:
http://localhost:20128/v1my9model-free (or my9model-smart, my9model-fast)claude --model openai/my9model-free
http://localhost:20128/v1 and Model to my9model-free.export OPENAI_API_BASE=http://localhost:20128/v1
aider --model openai/my9model-free
Enable the automated daily sync (00:05) and hourly quota watchdog (:35) with:
npx 9router-auto-free --setup-cron
(On Linux it automatically installs Systemd User Timers; on macOS/Windows/WSL it installs crontab).
Created by Herliansyah.
Licensed under the MIT License.
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
bcryptjsEnvironment{
"local_name": "bcryptjs",
"alias": false,
"peer_metadata": null
} | ^3.0.3 | runtime |
better-sqlite3Environment{
"local_name": "better-sqlite3",
"alias": false,
"peer_metadata": null
} | ^12.6.2 | runtime |
Source distribution
{
"shasum": "69c60822980b240bfaddeac62c5d67fa1fa91463",
"tarball": "https://registry.npmjs.org/9router-auto-free/-/9router-auto-free-1.1.2.tgz",
"fileCount": 16,
"integrity": "sha512-s3ktzaJlpdDsa9KJXnvOLQNxhMgmq0xGDTg9vInWm6nOHOGpfRVZvAn5z8BgwpLM7n5AMrpPvx08HKn0FK2Png==",
"signatures": [
{
"sig": "MEYCIQDV0glX0yrxtYdPKiZazu+1PJ2kcpLWd7eMZ3YTzRQDjgIhAPnsl0EFtITqujiZiUDqYb4P/PTVayuny1L3o0pv/lOJ",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
},
{
"sig": "MEUCIF/KBD5yTgR6BkM1v1rC84kELbJytK/qI090EboWPD3bAiEA5XkBniea7Hrdhf1E29Hy5pOPVPvFyAnkQHSHGO1NUuc=",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 334286
}Shared repository data · GitHub
Observed since 20 Oct, 21:41 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:4885d37e20d0fcffdb30f458131de996ba00a1628c83bbeb0ac055c240e5c242