git clone https://github.com/vava-nessa/free-coding-models
cd free-coding-models
pnpm install
pnpm start| File | Role |
|---|---|
bin/free-coding-models.js |
Main CLI entrypoint — TUI, pinging, key handling |
src/utils.js |
Pure helpers: sorting, filtering, scoring, parseArgs |
src/opencode.js |
OpenCode launch logic |
src/opencode-config.js |
OpenCode config read/write |
src/tool-launchers.js |
All external tool launchers |
src/endpoint-installer.js |
Y flow — install provider into tool config |
sources.js |
Model catalog — all 160 models across 20 providers |
pnpm test # unit tests (node:test, zero deps)
pnpm test:fcm # AI E2E flow — drives the real TUI in a PTY
pnpm test:fcm:mock # same but with a mock binaryTests live in test/test.js. Pure logic lives in src/utils.js so it can be tested without mocking the TUI.
- Update
CHANGELOG.md - Bump
"version"inpackage.json - Commit with just the version number as the message:
git add .
git commit -m "0.1.4"
git pushGitHub Actions auto-publishes to npm on every push to main. Verify with:
npm view free-coding-models version
npm install -g free-coding-models@<new-version>
free-coding-models --help