Nguyen Van Duy Khiem

Back

Giới thiệu#

free-coding-models là một công cụ TUI thời gian thực ping 160 mô hình coding từ 20 nhà cung cấp đồng thời, giúp bạn tìm LLM nhanh nhất cho AI coding assistant của mình.

npm version node version license models count providers count

Những người đóng góp

vava-nessa · erwinh22 · whit3rabbit · skylaweber · PhucTruong-ctrl

💬 Thảo luận về dự án trên Discord

Bởi Vanessa Depraute

1. Tạo API key miễn phí (NVIDIA, OpenRouter, Hugging Face, v.v.)
2. npm i -g free-coding-models
3. free-coding-models
plaintext

Tìm mô hình LLM coding nhanh nhất trong vài giây

Ping các mô hình coding miễn phí từ 20 nhà cung cấp theo thời gian thực — chọn mô hình tốt nhất cho OpenCode, OpenClaw, hoặc bất kỳ AI coding assistant nào

⚠️ Thông báo beta
Hỗ trợ FCM Proxy V2 cho các công cụ bên ngoài vẫn đang trong giai đoạn beta. Claude Code, Codex, Gemini và các launcher proxy-backed khác đã hoạt động trong nhiều thiết lập, nhưng các trường hợp edge về auth và khởi động vẫn có thể thất bại khi tích hợp đang ổn định.


Mục lục#


✨ Tính năng#

  • 🎯 Tập trung coding — Chỉ các mô hình LLM được tối ưu cho việc tạo code, không phải chat hay vision
  • 🌐 Nhiều nhà cung cấp — Mô hình từ NVIDIA NIM, Groq, Cerebras, SambaNova, OpenRouter, Hugging Face Inference, Replicate, DeepInfra, Fireworks AI, Codestral, Hyperbolic, Scaleway, Google AI, SiliconFlow, Together AI, Cloudflare Workers AI, Perplexity API, Alibaba Cloud (DashScope), ZAI, và iFlow
  • ⚙️ Màn hình cài đặt — Nhấn P để quản lý API key nhà cung cấp, bật/tắt nhà cung cấp, truy cập cài đặt FCM Proxy V2, và kiểm tra/cài đặt cập nhật
  • 📡 FCM Proxy V2 — Reverse proxy tích hợp với xoay vòng nhiều key, failover giới hạn rate, và dịch định dạng wire Anthropic cho Claude Code. Chế độ background service tùy chọn giữ proxy chạy 24/7
  • 🚀 Ping song song — Tất cả mô hình được test đồng thời qua native fetch
  • 📊 Animation thời gian thực — Xem độ trễ xuất hiện trực tiếp trong buffer màn hình alternate
  • 🏆 Xếp hạng thông minh — Top 3 mô hình nhanh nhất được highlight với huy chương 🥇🥈🥉
  • ⏱ Giám sát thích ứng — Bắt đầu với nhịp 2s nhanh trong 60s, ổn định ở 10s, chậm lại 30s sau 5 phút idle, và hỗ trợ chế độ 4s bắt buộc
  • 📈 Trung bình cuộn — Avg được tính từ TẤT CẢ các ping thành công từ khi bắt đầu
  • 📊 Theo dõi uptime — Tỷ lệ phần trăm ping thành công hiển thị thời gian thực
  • 📐 Điểm ổn định — Điểm composite 0–100 đo lường tính nhất quán (p95, jitter, spikes, uptime)
  • 📊 Theo dõi token usage — Proxy logs token prompt+completion cho mỗi cặp nhà cung cấp/mô hình chính xác
  • 📜 Request Log Overlay — Nhấn X để kiểm tra các request proxied gần đây và token usage
  • 📋 Changelog Overlay — Nhấn N để duyệt tất cả phiên bản trong index
  • 🛠 MODEL_NOT_FOUND Rotation — Nếu nhà cung cấp trả về 404, TUI xoay qua các nhà cung cấp khác cho cùng mô hình
  • 🔄 Auto-retry — Các mô hình timeout tiếp tục được retry
  • 🎮 Lựa chọn tương tác — Di chuyển bằng phím mũi tên, nhấn Enter để hành động
  • 💻 Tích hợp OpenCode — Tự động phát hiện setup NIM, đặt mô hình làm mặc định, launch OpenCode
  • 🦞 Tích hợp OpenClaw — Đặt mô hình đã chọn làm nhà cung cấp mặc định
  • 🧰 Public tool launchers — 13 chế độ công cụ: OpenCode CLI, OpenCode Desktop, OpenClaw, Crush, Goose, Aider, Claude Code, Codex, Gemini, Qwen, OpenHands, Amp, và Pi
  • 🔌 Install Endpoints flow — Nhấn Y để cài đặt nhà cung cấp vào công cụ
  • 📝 Feature Request (phím J) — Gửi phản hồi ẩn danh
  • 🐛 Bug Report (phím I) — Gửi báo cáo lỗi ẩn danh
  • 📶 Chỉ báo trạng thái — UP ✅ · No Key 🔑 · Timeout ⏳ · Overloaded 🔥 · Not Found 🚫
  • 🏷 Lọc tier — Lọc mô hình theo chữ tier (S, A, B, C)
  • ⭐ Favorites bền vững — Nhấn F để ghim/bỏ ghim mô hình

📋 Yêu cầu#

Trước khi sử dụng free-coding-models, hãy đảm bảo bạn có:

  1. Node.js 18+ — Bắt buộc cho native fetch API
  2. Ít nhất một API key miễn phí — chọn bất kỳ hoặc tất cả:
    • NVIDIA NIMbuild.nvidia.com → Profile → API Keys → Generate — free tier: 40 req/phút (không cần thẻ tín dụng)
    • Groqconsole.groq.com/keys → Create API Key — free tier: 30-50 RPM mỗi mô hình (khác nhau)
    • Cerebrascloud.cerebras.ai → API Keys → Create — free tier: hào phóng (developer tier giới hạn cao hơn 10×)
    • SambaNovasambanova.ai/developers → Developers portal → API key (dev tier hào phóng)
    • OpenRouteropenrouter.ai/keys → Create key (request miễn phí trên :free models, xem chi tiết bên dưới)

Chi tiết Free Tier OpenRouter#

OpenRouter cung cấp request miễn phí trên các mô hình free (:free):

  1. OpenCode (tùy chọn)Cài đặt OpenCode để sử dụng tích hợp OpenCode
  2. OpenClaw (tùy chọn)Cài đặt OpenClaw để sử dụng tích hợp OpenClaw

💡 Mẹo: Bạn không cần tất cả 20 nhà cung cấp. Một key là đủ để bắt đầu. Thêm nhiều hơn sau qua màn hình Settings (phím P). Các mô hình không có key vẫn hiển thị độ trễ thực (🔑 NO KEY) để bạn có thể đánh giá nhà cung cấp trước khi đăng ký.


📦 Cài đặt#

# npm (cài đặt global — khuyến nghị)
npm install -g free-coding-models

# pnpm
pnpm add -g free-coding-models

# bun
bun add -g free-coding-models

# Hoặc sử dụng trực tiếp với npx/pnpx/bunx
npx free-coding-models YOUR_API_KEY
pnpx free-coding-models YOUR_API_KEY
bunx free-coding-models YOUR_API_KEY
bash

🆕 Có gì mới#

Phiên bản 0.3.5 sửa lỗi tương thích proxy Claude Code chính được tìm thấy trong sử dụng thực tế:

  • Request beta-route Claude Code giờ hoạt động — proxy chấp nhận URL Anthropic như /v1/messages?beta=true/v1/messages/count_tokens?beta=true, đây là cách các build Claude Code gần đây thực sự gọi API.
  • Luồng proxy Claude giờ hoạt động như free-claude-code ở lớp routing — id mô hình Claude fake vẫn map proxy-side sang backend free đã chọn, nhưng route matcher không còn break trước khi mapping chạy.
  • Fix được validate với binary claude thực — không chỉ unit tests. Lỗi selected model (claude-sonnet-4-6) may not exist chính xác giờ đã biến mất trong local end-to-end repro.

🚀 Sử dụng#

AI E2E workflow (/testfcm)#

Để validate level repo, dự án này giờ ship một flow test manual AI-driven lặp lại:

  • Ưu tiên: pnpm test:fcm -- --{"tool"} crush
  • Fallback khi pnpm không khả dụng: npm run test:fcm -- --{"tool"} crush
  • Kiểm tra plumbing mock: pnpm test:fcm:mock

Nó làm gì:

  1. Copy ~/.free-coding-models.json hiện tại của bạn vào HOME isolated
  2. Chạy preflight --json để bắt regression khởi động rõ ràng
  3. Bắt đầu TUI thực trong PTY qua lệnh expect hệ thống
  4. Nhấn Enter như user để launch công cụ đã chọn
  5. Gửi hi
  6. Capture response, request-log.jsonl, daemon logs, và tool config được tạo
  7. Viết báo cáo Markdown vào task/reports/ và artifacts raw vào task/artifacts/

Flow lệnh được document trong task/TESTFCM-WORKFLOW.md. Slash commands project-local cũng được include tại .claude/commands/testfcm.md.crush/commands/testfcm.md.

Chọn công cụ target#

Chạy free-coding-models không có flag launcher bắt đầu ở chế độ OpenCode CLI.

  • Nhấn Z trong TUI để cycle public launch targets: OpenCode CLIOpenCode DesktopOpenClawCrushGoosePiAiderClaude CodeCodexGeminiQwenOpenHandsAmp
  • Hoặc bắt đầu trực tiếp ở chế độ target với flag CLI như --opencode-desktop, --openclaw, --crush, --goose, --pi, --aider, --claude-code, --codex, --gemini, --qwen, --openhands, hoặc --amp
  • Target active luôn hiển thị trong header badge trước khi bạn nhấn Enter

Cách hoạt động:

  1. Giai đoạn ping — Tất cả mô hình được bật được ping song song (lên đến 160 across 20 nhà cung cấp)
  2. Giám sát liên tục — Mô hình bắt đầu với re-ping 2s trong 60s, sau đó fallback 10s tự động, và chậm 30s sau 5 phút idle trừ khi bạn force chế độ 4s với W
  3. Cập nhật thời gian thực — Xem cột “Latest”, “Avg”, và “Up%” cập nhật trực tiếp
  4. Chọn bất cứ lúc nào — Dùng ↑↓ mũi tên để di chuyển, nhấn Enter trên mô hình để hành động
  5. Phát hiện thông minh — Tự động phát hiện nếu NVIDIA NIM được cấu hình trong OpenCode hoặc OpenClaw

Setup wizard (lần chạy đầu — walkthrough tất cả 20 nhà cung cấp):#

Bạn không cần tất cả 20 nhà cung cấp — bỏ qua bất kỳ nhà cung cấp nào bằng cách nhấn Enter. Ít nhất một key là bắt buộc.

Thêm hoặc thay đổi keys sau#

Nhấn P để mở màn hình Settings bất cứ lúc nào:

  ⚙  Settings

  Providers

  ❯ [ ✅ ] NVIDIA NIM              nvapi-••••••••••••3f9a  [Test ✅]  Free tier (provider quota theo mô hình)
    [ ✅ ] OpenRouter              (no key set)            [Test —]   Free trên :free (50/ngày <$10, 1000/ngày ≥$10)
    [ ✅ ] Hugging Face Inference  (no key set)            [Test —]   Credits miễn phí hàng tháng (~$0.10)

  Setup Instructions — NVIDIA NIM
  1) Tạo tài khoản NVIDIA NIM: https://build.nvidia.com
  2) Profile → API Keys → Generate
  3) Nhấn T để test key của bạn

  ↑↓ Navigate  •  Enter Edit/Run  •  + Add key  •  - Remove key  •  Space Toggle  •  T Test key  •  S Sync→OpenCode  •  R Restore backup  •  U Updates  •  ⌫ Delete profile  •  Esc Close
plaintext
  • ↑↓ — di chuyển nhà cung cấp
  • Enter — chỉnh sửa key đã chọn, chạy maintenance actions, hoặc load profile đã chọn
  • + / - — thêm key khác cho nhà cung cấp đã chọn hoặc xóa một key
  • Space — toggle nhà cung cấp enabled/disabled
  • T — fire real test ping để verify key hoạt động (hiển thị ✅/❌)
  • S — sync fcm-proxy vào OpenCode khi proxy mode + persistence được bật
  • R — restore backup OpenCode cuối cùng được tạo bởi sync/cleanup flows
  • U — manually check npm cho version mới hơn
  • Backspace — xóa saved profile đã chọn
  • Esc — đóng settings và reload danh sách mô hình

Keys được lưu vào ~/.free-coding-models.json (permissions 0600).

Update manual ở cùng màn hình Settings (P) dưới Maintenance (Enter để check, Enter lần nữa để install khi update khả dụng). Khi npm release mới hơn được biết, footer chính cũng thêm warning line đỏ full-width với lệnh recovery manual npm install -g free-coding-models@latest. Favorites cũng được persist trong cùng file config và tồn tại qua restart, app relaunches, và package updates. Hàng favorites stays pinned ở trên cùng và vẫn hiển thị ngay cả khi chế độ Configured Only được bật. Bảng chính giờ bắt đầu ở chế độ Configured Only, vì vậy nếu chưa có gì được setup bạn có thể nhấn P và thêm API key đầu tiên ngay lập tức.

Environment variable overrides#

Env vars luôn ưu tiên hơn file config:

NVIDIA_API_KEY=nvapi-xxx free-coding-models
GROQ_API_KEY=gsk_xxx free-coding-models
CEREBRAS_API_KEY=csk_xxx free-coding-models
OPENROUTER_API_KEY=sk-or-xxx free-coding-models
HUGGINGFACE_API_KEY=hf_xxx free-coding-models
REPLICATE_API_TOKEN=r8_xxx free-coding-models
DEEPINFRA_API_KEY=di_xxx free-coding-models
FIREWORKS_API_KEY=fw_xxx free-coding-models
SILICONFLOW_API_KEY=sk_xxx free-coding-models
TOGETHER_API_KEY=together_xxx free-coding-models
CLOUDFLARE_API_TOKEN=cf_xxx CLOUDFLARE_ACCOUNT_ID=your_account_id free-coding-models
PERPLEXITY_API_KEY=pplx_xxx free-coding-models
ZAI_API_KEY=zai-xxx free-coding-models
DASHSCOPE_API_KEY=sk-xxx free-coding-models
bash

Lấy API keys miễn phí của bạn#

NVIDIA NIM (44 mô hình, S+ → C tier):

  1. Đăng ký tại build.nvidia.com
  2. Đi đến Profile → API Keys → Generate API Key
  3. Đặt tên (ví dụ: “free-coding-models”), đặt expiry thành “Never”
  4. Copy — chỉ hiển thị một lần!

Groq (6 mô hình, inference nhanh):

  1. Đăng ký tại console.groq.com
  2. Đi đến API Keys → Create API Key

Cerebras (3 mô hình, silicon ultra-nhanh):

  1. Đăng ký tại cloud.cerebras.ai
  2. Đi đến API Keys → Create

OpenRouter (mô hình :free):

  1. Đăng ký tại openrouter.ai/keys
  2. Tạo API key (sk-or-...)

Hugging Face Inference:

  1. Đăng ký tại huggingface.co/settings/tokens
  2. Tạo Access Token (hf_...)

Replicate:

  1. Đăng ký tại replicate.com/account/api-tokens
  2. Tạo API token (r8_...)

DeepInfra:

  1. Đăng ký tại deepinfra.com/login
  2. Tạo API key từ account dashboard của bạn

Fireworks AI:

  1. Đăng ký tại fireworks.ai
  2. Mở Settings → Access Tokens và tạo token

Mistral Codestral:

  1. Đăng ký tại codestral.mistral.ai
  2. Đi đến API Keys → Create

Hyperbolic:

  1. Đăng ký tại app.hyperbolic.ai/settings
  2. Tạo API key trong Settings

Scaleway:

  1. Đăng ký tại console.scaleway.com/iam/api-keys
  2. Đi đến IAM → API Keys

Google AI Studio:

  1. Đăng ký tại aistudio.google.com/apikey
  2. Tạo API key cho endpoints Gemini/Gemma

SiliconFlow:

  1. Đăng ký tại cloud.siliconflow.cn/account/ak
  2. Tạo API key trong Account → API Keys

Together AI:

  1. Đăng ký tại api.together.ai/settings/api-keys
  2. Tạo API key trong Settings

Cloudflare Workers AI:

  1. Đăng ký tại dash.cloudflare.com
  2. Tạo API token với permissions Workers AI
  3. Export cả CLOUDFLARE_API_TOKENCLOUDFLARE_ACCOUNT_ID

Perplexity API:

  1. Đăng ký tại perplexity.ai/settings/api
  2. Tạo API key (PERPLEXITY_API_KEY)

Alibaba Cloud (DashScope) (8 mô hình, Qwen3-Coder family):

  1. Đăng ký tại modelstudio.console.alibabacloud.com
  2. Kích hoạt Model Studio (1M tokens miễn phí mỗi mô hình, region Singapore, 90 ngày)
  3. Tạo API key (DASHSCOPE_API_KEY)

ZAI (5 mô hình, GLM family):

  1. Đăng ký tại z.ai
  2. Đăng ký Coding Plan
  3. Lấy API key từ dashboard

💡 Free tiers — mỗi nhà cung cấp expose dev/free tier với quota riêng. ZAI yêu cầu Coding Plan subscription.


🤖 Mô hình Coding#

160 mô hình coding across 20 nhà cung cấp và 8 tiers, xếp hạng theo SWE-bench Verified — industry-standard benchmark đo lường GitHub issue resolution thực tế. Scores được self-reported bởi nhà cung cấp trừ khi được ghi chú.

Alibaba Cloud (DashScope) (8 mô hình)#

TierSWE-benchMô hình
S+ ≥70%Qwen3 Coder Plus (69.6%), Qwen3 Coder 480B (70.6%)
S 60–70%Qwen3 Coder Max (67.0%), Qwen3 Coder Next (65.0%), Qwen3 235B (70.0%), Qwen3 80B Instruct (65.0%)
A+ 50–60%Qwen3 32B (50.0%)
A 40–50%Qwen2.5 Coder 32B (46.0%)

ZAI Coding Plan (5 mô hình)#

TierSWE-benchMô hình
S+ ≥70%GLM-5 (77.8%), GLM-4.5 (75.0%), GLM-4.7 (73.8%), GLM-4.5-Air (72.0%), GLM-4.6 (70.0%)

NVIDIA NIM (44 mô hình)#

TierSWE-benchMô hình
S+ ≥70%GLM 5 (77.8%), Kimi K2.5 (76.8%), Step 3.5 Flash (74.4%), MiniMax M2.1 (74.0%), GLM 4.7 (73.8%), DeepSeek V3.2 (73.1%), Devstral 2 (72.2%), Kimi K2 Thinking (71.3%), Qwen3 Coder 480B (70.6%), Qwen3 235B (70.0%)
S 60–70%MiniMax M2 (69.4%), DeepSeek V3.1 Terminus (68.4%), Qwen3 80B Thinking (68.0%), Qwen3.5 400B (68.0%), Kimi K2 Instruct (65.8%), Qwen3 80B Instruct (65.0%), DeepSeek V3.1 (62.0%), Llama 4 Maverick (62.0%), GPT OSS 120B (60.0%)
A+ 50–60%Mistral Large 675B (58.0%), Nemotron Ultra 253B (56.0%), Colosseum 355B (52.0%), QwQ 32B (50.0%)
A 40–50%Nemotron Super 49B (49.0%), Mistral Medium 3 (48.0%), Qwen2.5 Coder 32B (46.0%), Magistral Small (45.0%), Llama 4 Scout (44.0%), Llama 3.1 405B (44.0%), Nemotron Nano 30B (43.0%), R1 Distill 32B (43.9%), GPT OSS 20B (42.0%)
A- 35–40%Llama 3.3 70B (39.5%), Seed OSS 36B (38.0%), R1 Distill 14B (37.7%), Stockmark 100B (36.0%)
B+ 30–35%Ministral 14B (34.0%), Mixtral 8x22B (32.0%), Granite 34B Code (30.0%)
B 20–30%R1 Distill 8B (28.2%), R1 Distill 7B (22.6%)
C <20%Gemma 2 9B (18.0%), Phi 4 Mini (14.0%), Phi 3.5 Mini (12.0%)

Groq (10 mô hình)#

TierSWE-benchMô hình
S 60–70%Kimi K2 Instruct (65.8%), Llama 4 Maverick (62.0%)
A+ 50–60%QwQ 32B (50.0%)
A 40–50%Llama 4 Scout (44.0%), R1 Distill 70B (43.9%)
A- 35–40%Llama 3.3 70B (39.5%)

Cerebras (7 mô hình)#

TierSWE-benchMô hình
A+ 50–60%Qwen3 32B (50.0%)
A 40–50%Llama 4 Scout (44.0%)
A- 35–40%Llama 3.3 70B (39.5%)

Thang tier#

  • S+/S — Elite frontier coders (≥60% SWE-bench), tốt nhất cho complex real-world tasks và refactors
  • A+/A — Alternatives tuyệt vời, mạnh ở hầu hết coding tasks
  • A-/B+ — Performer solid, tốt cho targeted programming tasks
  • B/C — Mô hình lightweight hoặc cũ hơn, tốt cho code completion trên constrained infra

Lọc theo tier#

Dùng --tier để tập trung vào capability band cụ thể:

free-coding-models --tier S     # Chỉ S+ và S (frontier models)
free-coding-models --tier A     # Chỉ A+, A, A- (solid performers)
free-coding-models --tier B     # Chỉ B+, B (lightweight options)
free-coding-models --tier C     # Chỉ C (edge/minimal models)
bash

📊 Cột TUI#

Bảng chính hiển thị một hàng mỗi mô hình với các cột sau:

CộtSort keyMô tả
RankRVị trí dựa trên thứ tự sort hiện tại (huy chương cho top 3: 🥇🥈🥉)
TierSWE-bench tier (S+, S, A+, A, A-, B+, B, C)
SWE%SSWE-bench Verified score — industry-standard cho coding
CTXCKích thước context window (ví dụ: 128k)
ModelMTên hiển thị mô hình (favorites hiển thị ⭐ prefix)
ProviderOTên nhà cung cấp (NIM, Groq, v.v.) — nhấn D để cycle provider filter
Latest PingLRound-trip latency gần nhất bằng milliseconds
Avg PingATrung bình cuộn của TẤT CẢ ping thành công từ khi launch
HealthHTrạng thái hiện tại: UP ✅, NO KEY 🔑, Timeout ⏳, Overloaded 🔥, Not Found 🚫
VerdictVHealth verdict dựa trên avg latency + stability analysis
StabilityBĐiểm consistency composite 0–100 (xem Stability Score)
Up%UUptime — tỷ lệ phần trăm ping thành công
UsedTổng token prompt+completion đã tiêu thụ trong logs cho cặp nhà cung cấp/mô hình chính xác này, hiển thị bằng k hoặc M

Giá trị Verdict#

Cột Verdict kết hợp avg latency với stability analysis:

VerdictÝ nghĩa
PerfectAvg < 400ms với p95/jitter ổn định
NormalAvg < 1000ms, responses nhất quán
SlowAvg 1000–2000ms
SpikyAvg tốt nhưng tail latency thất thường (p95 >> avg)
Very SlowAvg 2000–5000ms
OverloadedServer trả về 429/503 (rate limited hoặc capacity hit)
UnstableTrước đó up nhưng giờ timeout, hoặc avg > 5000ms
Not ActiveChưa có ping thành công
PendingPing đầu tiên vẫn đang bay

📐 Điểm Ổn Định#

Cột Stability (sort với phím B) hiển thị điểm composite 0–100 trả lời: “Mô hình này nhất quán và dự đoán được như thế nào?”

Avg latency một mình gây hiểu lầm — một mô hình avg 250ms mà ngẫu nhiên spike lên 6 giây cảm giác chậm hơn trong thực tế so với mô hình 400ms ổn định. Điểm stability capture điều này.

Công thức#

Bốn signals được normalize thành 0–100 mỗi cái, sau đó kết hợp với weights:

Stability = 0.30 × p95_score
          + 0.30 × jitter_score
          + 0.20 × spike_score
          + 0.20 × reliability_score
plaintext
ComponentWeightĐo lường gìCách normalize
p95 latency30%Tail-latency spikes — 5% tệ nhất của response times100 × (1 - p95 / 5000), clamped thành 0–100
Jitter (σ)30%Response times thất thường — độ lệch chuẩn của ping times100 × (1 - jitter / 2000), clamped thành 0–100
Spike rate20%Fraction của pings trên 3000ms100 × (1 - spikes / total_pings)
Reliability20%Uptime — fraction của ping HTTP 200 thành côngTrực tiếp phần trăm uptime (0–100)

📡 FCM Proxy V2#

free-coding-models include một reverse proxy local merge tất cả API key nhà cung cấp của bạn vào một endpoint. Chế độ background service tùy chọn giữ nó chạy 24/7 — ngay cả không có TUI.

Tắt mặc định — bật trong Settings (P) → Cài đặt FCM Proxy V2.

Proxy làm gì#

Tính năngMô tả
Unified endpointMột URL (http://127.0.0.1:18045/v1) thay thế 20+ endpoints nhà cung cấp
Key rotationTự động swap sang API key tiếp theo khi một key hit rate limits (429)
Usage trackingTheo dõi token consumption cho mỗi cặp nhà cung cấp/mô hình thời gian thực
Anthropic translationClaude Code gửi POST /v1/messages — proxy dịch sang định dạng OpenAI upstream
Path normalizationChuyển đổi API paths không chuẩn (ZAI, Cloudflare) thành calls /v1/ chuẩn

Chế độ In-process vs Background Service#

In-process (mặc định)Background Service (always-on)
LifetimeBắt đầu/dừng với TUITồn tại qua reboots
Use caseSessions nhanhTruy cập 24/7 từ bất kỳ tool nào
SetupToggle trong SettingsCài đặt one-time qua TUI hoặc CLI
PortNgẫu nhiên hoặc cấu hìnhỔn định (18045 mặc định)
TokenMới mỗi sessionBền vững (env files ở lại valid)

Setup nhanh#

Qua TUI (khuyến nghị):

  1. Nhấn P để mở Settings
  2. Chọn FCM Proxy V2 settings → và nhấn Enter
  3. Bật Proxy mode, sau đó chọn Install background service

Qua CLI:

free-coding-models daemon install     # Cài đặt + start như OS service
free-coding-models daemon status      # Kiểm tra trạng thái running
free-coding-models daemon restart     # Restart sau thay đổi config
free-coding-models daemon stop        # Dừng graceful (SIGTERM)
free-coding-models daemon uninstall   # Xóa OS service hoàn toàn
free-coding-models daemon logs        # Hiển thị service logs gần đây
bash

Để sanity-check trình duyệt nhanh, mở http://127.0.0.1:18045/ hoặc http://127.0.0.1:18045/v1/health trong khi proxy đang chạy.

Quản lý service#

Overlay FCM Proxy V2 chuyên dụng (truy cập qua J từ TUI chính, hoặc Settings → Enter) cung cấp điều khiển đầy đủ:

  • Gợi ý công cụ hiện tại — Hiển thị công cụ được chọn Z nào sẽ nhận proxy config persisted (khi chế độ đó hỗ trợ)
  • Toggle auto-sync — Tự động viết provider fcm-proxy vào config công cụ hiện tại khi proxy bắt đầu
  • Cleanup — Xóa entries fcm-proxy khỏi config công cụ hiện tại
  • Hiển thị trạng thái — Running/Stopped/Stale/Unhealthy với PID, port, uptime, số lượng account/mô hình
  • Phát hiện version mismatch — cảnh báo nếu version service khác với version FCM đã cài đặt
  • Restart — stop + start qua OS service manager
  • Stop — SIGTERM graceful (service có thể tự restart nếu đã cài đặt)
  • Force kill — SIGKILL emergency cho processes stuck
  • Xem logs — 50 dòng cuối từ ~/.free-coding-models/daemon-stdout.log

Hỗ trợ nền tảng#

Nền tảngLoại serviceĐường dẫn config
macOSlaunchd LaunchAgent~/Library/LaunchAgents/com.fcm.proxy.plist
Linuxsystemd user service~/.config/systemd/user/fcm-proxy.service
WindowsKhông hỗ trợFallback sang proxy in-process

Files config#

FileMục đích
~/.free-coding-models.jsonAPI keys, cài đặt proxy, service consent
~/.free-coding-models/daemon.jsonFile trạng thái (PID, port, token) — ghi bởi background service
~/.free-coding-models/daemon-stdout.logLog output service

Trường proxy.activeTool giờ chỉ legacy-only. FCM Proxy V2 tuân theo công cụ được chọn Z hiện tại tự động bất cứ khi nào chế độ đó hỗ trợ proxy sync persisted.

Cleanup#

  • Từ overlay FCM Proxy V2: Clean {tool} proxy config — xóa entries fcm-proxy khỏi công cụ hiện tại được chọn
  • Hoặc: free-coding-models --clean-proxy

An toàn#

  • Dev guard: installDaemon() bị chặn khi chạy từ git checkout — ngăn hardcoding local repo paths trong OS service files
  • Chỉ localhost: Proxy listen trên 127.0.0.1, không bao giờ expose ra network
  • Yêu cầu consent: Cài đặt service yêu cầu user action rõ ràng — không bao giờ tự động cài đặt
  • Hot-reload: Thay đổi config được pick up tự động không cần restart service

📜 Request Log Overlay#

Nhấn X bất cứ lúc nào để mở dedicated request-log overlay.

  • Proxy-only accounting: Entries được ghi khi requests flow qua multi-account proxy.
  • Token totals chính xác: Overlay aggregate prompt+completion usage cho mỗi request proxied.
  • Hiển thị mỗi request: Bạn có thể kiểm tra nhà cung cấp, mô hình, status, token count, và latency cho các requests gần đây.
  • Tái sử dụng bảng khởi động: Cột Used trong bảng chính được derive từ cùng file request log.

Dùng ↑↓ để scroll và Esc hoặc X để quay lại bảng chính.


🧰 Supported Tool Launchers#

Bạn có thể sử dụng free-coding-models với 12+ AI coding tools. Khi bạn chọn mô hình và nhấn Enter, công cụ tự động cấu hình và pre-select mô hình đã chọn của bạn:

ToolFlagAuto-Config
OpenCode CLI--opencode~/.config/opencode/opencode.json
OpenCode Desktop--opencode-desktopMở Desktop app
OpenClaw--openclaw~/.openclaw/openclaw.json
Crush--crush~/.config/crush/crush.json
Goose--goose~/.config/goose/config.yaml + custom_providers/
Aider--aider~/.aider.conf.yml
Claude Code--claude-codeYêu cầu FCM Proxy V2
Codex--codexYêu cầu FCM Proxy V2
Gemini--geminiYêu cầu FCM Proxy V2
Qwen--qwen~/.qwen/settings.json
OpenHands--openhandsLLM_MODEL env var
Amp--amp~/.config/amp/settings.json
Pi--pi~/.pi/agent/settings.json

Nhấn Z để cycle qua tất cả 13 chế độ công cụ trong TUI, hoặc dùng flags để bắt đầu ở chế độ ưa thích của bạn.

⚡ = Yêu cầu FCM Proxy V2 background service (nhấn J để bật). Các công cụ này không thể kết nối với nhà cung cấp miễn phí mà không có proxy.

Hỗ trợ công cụ bên ngoài proxy-backed vẫn là beta. Mong đợi các cạnh khởi động/auth đôi khi trong khi CLI contracts của bên thứ ba vẫn đang settle.

Claude Code được launch với Claude alias thực (--model sonnet) trong khi proxy map family Claude fake đó trở lại backend FCM đã chọn của bạn, điều này tránh selections local gpt-oss-* stale breaking trước khi proxy được hit. Codex được launch qua custom provider config rõ ràng nên nó ở lại API-key mode qua proxy. Gemini proxy launches được version-gated: các build cũ như 0.33.0 bị chặn với diagnostic rõ ràng thay vì bị misconfigured silent.

Flow Install Endpoints (phím Y) giờ chỉ target các công cụ có persisted config contract ổn định. Claude Code, Codex, và Gemini ở lại launcher-only và nên được bắt đầu trực tiếp từ FCM.


🔌 Tích hợp OpenCode#

Cách dễ nhất — để free-coding-models làm mọi thứ:

  1. Chạy: free-coding-models --opencode (hoặc launch không flag để dùng chế độ OpenCode CLI mặc định)
  2. Đợi các mô hình được ping (trạng thái xanh ✅)
  3. Di chuyển với ↑↓ mũi tên đến mô hình ưa thích của bạn
  4. Nhấn Enter — công cụ tự động:
    • Phát hiện nếu NVIDIA NIM được cấu hình trong OpenCode
    • Đặt mô hình đã chọn của bạn làm mặc định trong ~/.config/opencode/opencode.json
    • Launch OpenCode với mô hình pre-selected và sẵn sàng sử dụng

tmux sub-agent panes#

Khi được launch từ tmux session hiện có, free-coding-models giờ tự động thêm argument OpenCode --port nên OpenCode/oh-my-opencode có thể spawn sub-agents trong panes.

  • Ưu tiên 1: reuse OPENCODE_PORT nếu nó valid và free
  • Ưu tiên 2: auto-pick port free đầu tiên trong 4096-5095

Bạn có thể force port cụ thể:

OPENCODE_PORT=4098 free-coding-models --opencode
bash

ZAI provider proxy#

OpenCode không native hỗ trợ định dạng API path của ZAI (/api/coding/paas/v4/*). Khi bạn chọn mô hình ZAI, free-coding-models tự động bắt đầu reverse proxy local dịch requests /v1/* chuẩn của OpenCode sang API của ZAI. Điều này hoàn toàn trong suốt — chỉ cần chọn mô hình ZAI và nhấn Enter.

Cách hoạt động:

  1. HTTP proxy localhost bắt đầu trên port ngẫu nhiên khả dụng
  2. OpenCode được cấu hình với provider zai trỏ tới http://localhost:<port>/v1
  3. Proxy rewrite /v1/models thành /api/coding/paas/v4/models/v1/chat/completions thành /api/coding/paas/v4/chat/completions
  4. Khi OpenCode thoát, proxy tự động shutdown

Không cần cấu hình manual — lifecycle proxy được quản lý hoàn toàn bởi free-coding-models.

Cài đặt OpenCode Manual (Tùy chọn)#

Tạo hoặc chỉnh sửa ~/.config/opencode/opencode.json:

{
  "provider": {
    "nvidia": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "NVIDIA NIM",
      "options": {
        "baseURL": "https://integrate.api.nvidia.com/v1",
        "apiKey": "{env:NVIDIA_API_KEY}"
      }
    }
  },
  "model": "nvidia/deepseek-ai/deepseek-v3.2"
}
json

Sau đó đặt environment variable:

export NVIDIA_API_KEY=nvapi-xxxx-your-key-here
# Thêm vào ~/.bashrc hoặc ~/.zshrc để persistent
bash

Chạy /models trong OpenCode và chọn provider NVIDIA NIM và mô hình đã chọn của bạn.

⚠️ Lưu ý: Mô hình miễn phí có giới hạn usage dựa trên tier của NVIDIA — kiểm tra build.nvidia.com cho quotas.

Fallback Cài đặt Tự động#

Nếu NVIDIA NIM chưa được cấu hình trong OpenCode, công cụ:

  • Hiển thị hướng dẫn cài đặt trong terminal của bạn
  • Tạo file prompt trong $HOME/prompt với cấu hình chính xác
  • Launch OpenCode, sẽ phát hiện và hiển thị prompt tự động

🦞 Tích hợp OpenClaw#

OpenClaw là autonomous AI agent daemon. free-coding-models có thể cấu hình nó để sử dụng mô hình NVIDIA NIM làm provider mặc định — không cần download hay setup local, mọi thứ chạy qua remote API NIM.

Quick Start#

free-coding-models --openclaw
bash

Hoặc nhấn Z trong TUI cho đến khi header hiển thị OpenClaw, sau đó nhấn Enter trên mô hình.

  1. Đợi các mô hình được ping
  2. Di chuyển với ↑↓ mũi tên đến mô hình ưa thích của bạn
  3. Nhấn Enter — công cụ tự động:
    • Đọc ~/.openclaw/openclaw.json
    • Thêm block provider nvidia (NIM base URL + API key của bạn) nếu thiếu
    • Đặt agents.defaults.model.primary thành nvidia/<model-id>
    • Lưu config và in các bước tiếp theo

Những gì được ghi vào config OpenClaw#

⚠️ Lưu ý: providers phải nested dưới models.providers — không phải ở root config. Key providers root-level bị OpenClaw bỏ qua.

⚠️ Lưu ý: Mô hình cũng phải được liệt kê trong agents.defaults.models (allowlist). Không có entry này, OpenClaw reject mô hình với “not allowed” ngay cả khi nó được đặt làm primary.

Sau khi cập nhật config OpenClaw#

Gateway của OpenClaw auto-reloads thay đổi file config (tùy thuộc vào gateway.reload.mode). Để apply manual:

# Apply qua CLI
openclaw models set nvidia/deepseek-ai/deepseek-v3.2

# Hoặc chạy lại setup wizard tương tác
openclaw configure
bash

⚠️ Lưu ý: openclaw restart không tồn tại như CLI command. Kill và relaunch process manual nếu bạn cần full restart.

💡 Tại sao sử dụng mô hình NIM remote với OpenClaw? NVIDIA NIM serve mô hình qua API nhanh — không cần GPU local, không giới hạn VRAM, credits miễn phí cho developers. Bạn có được frontier-class coding models (DeepSeek V3, Kimi K2, Qwen3 Coder) mà không cần download gì.

Patching OpenClaw cho hỗ trợ mô hình NVIDIA đầy đủ#

Vấn đề: Mặc định, OpenClaw chỉ cho phép một vài mô hình NVIDIA cụ thể trong allowlist của nó. Nếu bạn cố sử dụng mô hình không có trong danh sách, bạn sẽ gặp lỗi này:

Model "nvidia/mistralai/devstral-2-123b-instruct-2512" is not allowed. Use /models to list providers, or /models <provider> to list models.
plaintext

Giải pháp: Patch cấu hình OpenClaw để thêm TẤT CẢ 47 mô hình NVIDIA từ free-coding-models vào allowlist:

# Từ thư mục package free-coding-models
node patch-openclaw.js
bash

Script này:

  • Backup ~/.openclaw/agents/main/agent/models.json~/.openclaw/openclaw.json
  • Thêm tất cả 47 mô hình NVIDIA với context window và token limits phù hợp
  • Bảo toàn các mô hình và cấu hình hiện có
  • In summary những gì được thêm

Sau khi patch:

  1. Restart OpenClaw gateway:

    systemctl --user restart openclaw-gateway
    bash
  2. Verify các mô hình khả dụng:

    free-coding-models --openclaw
    bash
  3. Chọn bất kỳ mô hình nào — không còn lỗi “not allowed”!

Tại sao cần điều này: OpenClaw sử dụng hệ thống allowlist nghiêm ngặt để ngăn typos và mô hình invalid. Script patch-openclaw.js populate allowlist với tất cả mô hình NVIDIA hoạt động đã biết, vì vậy bạn có thể tự do chuyển đổi giữa chúng mà không cần chỉnh sửa file config manual.


⚙️ Cách hoạt động#

┌──────────────────────────────────────────────────────────────────┐
│  1. Vào alternate screen buffer (như vim/htop/less)              │
│  2. Ping TẤT CẢ mô hình song song                                │
│  3. Hiển thị bảng thời gian thực với Latest/Avg/Stability/Up%   │
│  4. Re-ping TẤT CẢ mô hình ở 2s khi khởi động, sau đó 10s       │
│     steady-state và 30s sau 5 phút idle trừ khi forced 4s với W │
│  5. Cập nhật rolling averages + stability scores mỗi mô hình    │
│  6. User có thể di chuyển với ↑↓ và chọn với Enter             │
│  7. Khi Enter (OpenCode): đặt mô hình, launch OpenCode          │
│  8. Khi Enter (OpenClaw): cập nhật ~/.openclaw/openclaw.json    │
└──────────────────────────────────────────────────────────────────┘
plaintext

Kết quả: Giao diện giám sát liên tục ở lại mở cho đến khi bạn chọn mô hình hoặc nhấn Ctrl+C. Rolling averages cung cấp dữ liệu latency dài hạn chính xác, điểm stability tiết lộ mô hình nào thực sự nhất quán so với spikey lừa dối, và bạn có thể cấu hình công cụ đã chọn của mình với một keystroke. Nếu terminal quá hẹp, app hiển thị cảnh báo căn giữa thay vì bảng truncated.


📋 API Reference#

🎁 Premium Flag#

Flag --premium cung cấp quick view chỉ các mô hình S/S+ tier elite với health hoàn hảo (UP) và verdict tốt (Perfect, Normal, hoặc Slow). Điều này hữu ích khi bạn muốn tập trung độc quyền vào các mô hình chất lượng cao nhất, đáng tin cậy nhất hiện khả dụng.

free-coding-models --premium
bash

Nó làm gì bên dưới:

  • Đặt tierFilter thành S (chỉ hiển thị mô hình S+ và S tier).
  • Lọc ra bất kỳ mô hình nào không hiện UP (ẩn 429, 410, auth fail, timeouts, v.v.).
  • Lọc ra mô hình với verdicts kém (ẩn Spiky, Very Slow, Overloaded, Unstable, v.v.).
  • Force sort column thành verdict với thứ tự tăng dần, nên các mô hình được đánh giá tốt nhất xuất hiện ở trên cùng.
  • Để các cài đặt khác không chạm, vì vậy bạn vẫn có thể kết hợp nó với các flag như --json cho scripting.

Bạn có thể kết hợp --premium với các flag khác (ví dụ: --json --hide-unconfigured) để further tailor output.


Environment variables (override file config):

VariableMô tả
NVIDIA_API_KEYKey NVIDIA NIM
GROQ_API_KEYKey Groq
CEREBRAS_API_KEYKey Cerebras
SAMBANOVA_API_KEYKey SambaNova
OPENROUTER_API_KEYKey OpenRouter
HUGGINGFACE_API_KEY / HF_TOKENToken Hugging Face
REPLICATE_API_TOKENToken Replicate
DEEPINFRA_API_KEY / DEEPINFRA_TOKENKey DeepInfra
CODESTRAL_API_KEYKey Mistral Codestral
HYPERBOLIC_API_KEYKey Hyperbolic
SCALEWAY_API_KEYKey Scaleway
GOOGLE_API_KEYKey Google AI Studio
SILICONFLOW_API_KEYKey SiliconFlow
TOGETHER_API_KEYKey Together AI
CLOUDFLARE_API_TOKEN / CLOUDFLARE_API_KEYToken/key Cloudflare Workers AI
CLOUDFLARE_ACCOUNT_IDAccount ID Cloudflare (bắt buộc cho URL endpoint Workers AI)
PERPLEXITY_API_KEY / PPLX_API_KEYKey Perplexity API
ZAI_API_KEYKey ZAI
DASHSCOPE_API_KEYKey Alibaba Cloud (DashScope) API

File config: ~/.free-coding-models.json (tự động tạo, permissions 0600)

Cấu hình:

  • Ping timeout: 15 giây mỗi attempt (mô hình chậm có thêm thời gian)
  • Ping cadence: startup burst ở 2 giây trong 60s, sau đó 10 giây bình thường, 30 giây khi idle 5 phút, hoặc forced 4 giây qua W
  • Chế độ monitor: Giao diện ở lại mở mãi mãi, nhấn Ctrl+C để thoát

Flags:

FlagMô tả
(không)Bắt đầu ở chế độ OpenCode CLI
--opencodeChế độ OpenCode CLI — Enter launch OpenCode CLI với mô hình đã chọn
--opencode-desktopChế độ OpenCode Desktop — Enter đặt mô hình và mở OpenCode Desktop
--openclawChế độ OpenClaw — Enter đặt mô hình đã chọn làm mặc định trong OpenClaw
--crushChế độ Crush — Enter viết crush.json và launch Crush
--gooseChế độ Goose — Enter launch Goose với env-based provider config
--bestChỉ hiển thị mô hình top-tier (A+, S, S+)
--fiablePhân tích 10 giây, xuất mô hình đáng tin cậy nhất dưới dạng provider/model_id
--jsonXuất kết quả dưới dạng JSON (cho scripting/automation, CI/CD, dashboards)
--tier SChỉ hiển thị mô hình S+ và S tier
--tier AChỉ hiển thị mô hình A+, A, A- tier
--tier BChỉ hiển thị mô hình B+, B tier
--tier CChỉ hiển thị mô hình C tier
--profile <name>Load config profile đã lưu khi khởi động
--recommendTự động mở overlay Smart Recommend khi bắt đầu
--clean-proxyXóa config fcm-proxy persisted khỏi OpenCode

Phím tắt (TUI chính):

  • ↑↓ — Di chuyển mô hình
  • Enter — Chọn mô hình và launch công cụ target hiện tại từ header badge
  • R/S/C/M/O/L/A/H/V/B/U/G — Sort theo Rank/SWE/Ctx/Model/Provider/Latest/Avg/Health/Verdict/Stability/Up%/Usage
  • F — Toggle favorite trên mô hình đã chọn (⭐ trong cột Model, pinned ở trên cùng)
  • T — Cycle tier filter (All → S+ → S → A+ → A → A- → B+ → B → C → All)
  • D — Cycle provider filter (All → NIM → Groq → …)
  • E — Toggle chế độ configured-only (bật mặc định, persisted qua sessions và profiles)
  • Z — Cycle target tool (OpenCode CLI → Desktop → OpenClaw → Crush → Goose → Pi → Aider → Claude Code → Codex → Gemini → Qwen → OpenHands → Amp)
  • X — Toggle request logs (logs request proxied gần đây/token usage, lên đến 500 entries)
  • A (trong logs) — Toggle giữa hiển thị 500 entries hoặc TẤT CẢ logs
  • P — Mở Settings (quản lý API keys, toggles, updates, profiles)
  • Y — Mở Install Endpoints (provider → tool → connection mode → scope → models, Direct hoặc FCM Proxy V2)
  • Shift+P — Cycle qua saved profiles (chuyển đổi cài đặt TUI trực tiếp)
  • Shift+S — Lưu cài đặt TUI hiện tại làm profile được đặt tên (prompt inline)
  • Q — Mở overlay Smart Recommend (tìm mô hình tốt nhất cho task của bạn)
  • N — Mở Changelog overlay (duyệt index của tất cả phiên bản, Enter để xem chi tiết, B để quay lại)
  • W — Cycle chế độ ping (FAST 2s → NORMAL 10s → SLOW 30s → FORCED 4s)
  • J — Mở cài đặt FCM Proxy V2 (hiển thị badge xanh lá “Proxy On” / đỏ “Proxy Off” trong footer)
  • I — Feedback, bugs & requests
  • K / Esc — Hiển thị overlay help / Đóng overlay
  • Ctrl+C — Thoát

Nhấn K giờ hiển thị reference in-app đầy đủ: hotkeys chính, hotkeys settings, và CLI flags với ví dụ sử dụng.

🔌 Install Endpoints (Y)#

Y mở dedicated install flow cho các nhà cung cấp đã cấu hình. Flow 5 bước là:

  1. Provider — Chọn một nhà cung cấp đã có API key trong Settings
  2. Tool — Chọn công cụ target từ các install targets tương thích:
    • Config-based: OpenCode CLI, OpenCode Desktop, OpenClaw, Crush, Goose, Pi, Aider, Amp, Qwen
    • Env-file based: OpenHands (ghi ~/.fcm-openhands-env — source nó trước khi launch)
  3. Connection Mode — Chọn cách công cụ kết nối với nhà cung cấp:
    • ⚡ Direct Provider — kết nối API thuần, không có proxy
    • 🔄 FCM Proxy V2 — route qua FCM Proxy V2 với key rotation và usage tracking
  4. Scope — Chọn Install all models hoặc Install selected models only
  5. Models (nếu scope = selected) — Multi-select từng mô hình từ catalog nhà cung cấp

Hành vi quan trọng:

  • Installs được ghi vào config công cụ target như entries FCM-managed (namespaced dưới fcm-*)
  • Install all models là đường được khuyến nghị vì FCM có thể refresh catalog đó tự động trên các launches sau khi danh sách mô hình nhà cung cấp thay đổi
  • Install selected models only hữu ích khi bạn muốn picker nhỏ hơn curated bên trong công cụ target
  • OpenCode CLIOpenCode Desktop chia sẻ cùng opencode.json, nên managed provider xuất hiện trong cả hai
  • Claude Code, Codex, và Gemini là launcher-only trong flow này hiện tại. Dùng đường launcher Enter bình thường nên FCM có thể apply proxy/runtime contract phù hợp tự động.
  • Cho install targets env-based như OpenHands, FCM ghi file helper sourceable tại ~/.fcm-{tool}-env

Phím tắt (màn hình Settings — phím P):

  • ↑↓ — Di chuyển nhà cung cấp, hàng maintenance, và hàng profile
  • Enter — Chỉnh sửa API key inline, check/cài đặt update, hoặc load profile
  • Space — Toggle nhà cung cấp enabled/disabled
  • T — Test API key nhà cung cấp hiện tại (fires live ping)
  • U — Check updates manual từ settings
  • Backspace — Xóa profile đã chọn (chỉ trên hàng profile)
  • Esc — Đóng settings và quay lại TUI chính

📋 Config Profiles#

Profiles cho phép bạn lưu và restore các cấu hình TUI khác nhau — hữu ích nếu bạn chuyển đổi giữa work/personal setups, tùy chọn tier khác nhau, hoặc muốn giữ danh sách favorites riêng.

Những gì được lưu trong profile:

  • Favorites (mô hình starred)
  • Sort column và direction
  • Tier filter
  • Ping mode
  • Configured-only filter
  • API keys

Lưu profile:

  1. Cấu hình TUI theo cách bạn muốn (favorites, sort, tier, v.v.)
  2. Nhấn Shift+S — prompt inline xuất hiện ở dưới cùng
  3. Gõ tên (ví dụ: work, fast-only, presentation) và nhấn Enter
  4. Profile được lưu và trở thành profile active (hiển thị như badge tím trong header)

Chuyển đổi profiles:

  • Shift+P trong bảng chính — cycle qua saved profiles (hoặc quay lại raw config)
  • --profile <name> — load profile cụ thể khi khởi động

Quản lý profiles:

  • Mở Settings (phím P) — scroll xuống phần Profiles
  • Enter trên hàng profile để load nó
  • Trong khi profile active, chỉnh sửa favorites và API keys cập nhật profile active đó ngay lập tức
  • Backspace trên hàng profile để xóa nó

Profiles được lưu bên trong ~/.free-coding-models.json dưới key profiles.


🔧 Development#

git clone https://github.com/vava-nessa/free-coding-models
cd free-coding-models
npm install
npm start -- YOUR_API_KEY
bash

Phát hành version mới#

  1. Thực hiện thay đổi của bạn và commit chúng với message mô tả
  2. Cập nhật CHANGELOG.md với entry version mới
  3. Bump "version" trong package.json (ví dụ: 0.1.30.1.4)
  4. Commit với chỉ số version làm message:
git add .
git commit -m "0.1.4"
git push
bash

GitHub Actions workflow tự động publish lên npm trên mọi push vào main.


📄 License#

MIT © vava


Built with ☕ and 🌹 by vava

📬 Contribute#

Chúng tôi chào đón đóng góp! Hãy thoải mái mở issues, submit pull requests, hoặc tham gia vào dự án.

Q: Tôi có thể sử dụng cái này với các nhà cung cấp khác không? A: Có, công cụ được thiết kế để mở rộng; xem source cho ví dụ về customizing endpoints.

Q: Các số latency chính xác như thế nào? A: Chúng đại diện cho round-trip times trung bình được đo trong quá trình testing; hiệu suất thực tế có thể khác nhau tùy thuộc vào điều kiện mạng.

Q: Tôi có cần download mô hình local cho OpenClaw không? A: Không — free-coding-models cấu hình OpenClaw để sử dụng remote API của NVIDIA NIM, vì vậy các mô hình chạy trên infrastructure của NVIDIA. Không cần GPU hay setup local.

📧 Support#

Cho các câu hỏi hoặc vấn đề, mở GitHub issue.

💬 Hãy thảo luận về dự án trên Discord: https://discord.gg/ZTNFHvvCkU


Chúng tôi thu thập dữ liệu usage ẩn danh để cải thiện công cụ và sửa lỗi. Không có thông tin cá nhân nào được thu thập.

free-coding-models — Tìm LLM Coding Nhanh Trong Giây
https://astro-pure.js.org/vi/blog/free-coding-models
Author Duy Khiem
Published at March 18, 2026