free-coding-models 0.3.67 → 0.3.68
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/changelog/v0.1.1.md +3 -0
- package/changelog/v0.1.10.md +3 -0
- package/changelog/v0.1.11.md +10 -0
- package/changelog/v0.1.12.md +16 -0
- package/changelog/v0.1.13.md +3 -0
- package/changelog/v0.1.14.md +3 -0
- package/changelog/v0.1.15.md +3 -0
- package/changelog/v0.1.16.md +13 -0
- package/changelog/v0.1.17.md +3 -0
- package/changelog/v0.1.18.md +3 -0
- package/changelog/v0.1.19.md +3 -0
- package/changelog/v0.1.2.md +3 -0
- package/changelog/v0.1.20.md +14 -0
- package/changelog/v0.1.21.md +12 -0
- package/changelog/v0.1.22.md +6 -0
- package/changelog/v0.1.23.md +16 -0
- package/changelog/v0.1.24.md +9 -0
- package/changelog/v0.1.25.md +13 -0
- package/changelog/v0.1.26.md +6 -0
- package/changelog/v0.1.27.md +6 -0
- package/changelog/v0.1.28.md +5 -0
- package/changelog/v0.1.29.md +5 -0
- package/changelog/v0.1.3.md +3 -0
- package/changelog/v0.1.31.md +10 -0
- package/changelog/v0.1.32.md +8 -0
- package/changelog/v0.1.33.md +5 -0
- package/changelog/v0.1.34.md +6 -0
- package/changelog/v0.1.35.md +5 -0
- package/changelog/v0.1.36.md +16 -0
- package/changelog/v0.1.37.md +5 -0
- package/changelog/v0.1.38.md +9 -0
- package/changelog/v0.1.39.md +3 -0
- package/changelog/v0.1.4.md +3 -0
- package/changelog/v0.1.40.md +3 -0
- package/changelog/v0.1.41.md +11 -0
- package/changelog/v0.1.42.md +3 -0
- package/changelog/v0.1.43.md +3 -0
- package/changelog/v0.1.44.md +17 -0
- package/changelog/v0.1.45.md +6 -0
- package/changelog/v0.1.46.md +9 -0
- package/changelog/v0.1.47.md +6 -0
- package/changelog/v0.1.48.md +11 -0
- package/changelog/v0.1.49.md +10 -0
- package/changelog/v0.1.5.md +3 -0
- package/changelog/v0.1.50.md +7 -0
- package/changelog/v0.1.51.md +4 -0
- package/changelog/v0.1.52.md +10 -0
- package/changelog/v0.1.54.md +41 -0
- package/changelog/v0.1.55.md +3 -0
- package/changelog/v0.1.56.md +11 -0
- package/changelog/v0.1.57.md +7 -0
- package/changelog/v0.1.58.md +7 -0
- package/changelog/v0.1.59.md +7 -0
- package/changelog/v0.1.6.md +3 -0
- package/changelog/v0.1.60.md +7 -0
- package/changelog/v0.1.61.md +9 -0
- package/changelog/v0.1.62.md +9 -0
- package/changelog/v0.1.63.md +15 -0
- package/changelog/v0.1.64.md +22 -0
- package/changelog/v0.1.65.md +15 -0
- package/changelog/v0.1.66.md +22 -0
- package/changelog/v0.1.67.md +40 -0
- package/changelog/v0.1.68.md +38 -0
- package/changelog/v0.1.69.md +3 -0
- package/changelog/v0.1.7.md +3 -0
- package/changelog/v0.1.70.md +7 -0
- package/changelog/v0.1.71.md +7 -0
- package/changelog/v0.1.72.md +7 -0
- package/changelog/v0.1.73.md +7 -0
- package/changelog/v0.1.74.md +3 -0
- package/changelog/v0.1.75.md +9 -0
- package/changelog/v0.1.76.md +13 -0
- package/changelog/v0.1.77.md +13 -0
- package/changelog/v0.1.78.md +7 -0
- package/changelog/v0.1.79.md +8 -0
- package/changelog/v0.1.8.md +3 -0
- package/changelog/v0.1.80.md +7 -0
- package/changelog/v0.1.81.md +19 -0
- package/changelog/v0.1.82.md +9 -0
- package/changelog/v0.1.83.md +22 -0
- package/changelog/v0.1.84.md +25 -0
- package/changelog/v0.1.85.md +19 -0
- package/changelog/v0.1.86.md +17 -0
- package/changelog/v0.1.87.md +7 -0
- package/changelog/v0.1.88.md +167 -0
- package/changelog/v0.1.89.md +22 -0
- package/changelog/v0.1.9.md +3 -0
- package/changelog/v0.2.0.md +30 -0
- package/changelog/v0.2.1.md +17 -0
- package/changelog/v0.2.10.md +7 -0
- package/changelog/v0.2.11.md +6 -0
- package/changelog/v0.2.12.md +16 -0
- package/changelog/v0.2.13.md +16 -0
- package/changelog/v0.2.14.md +6 -0
- package/changelog/v0.2.15.md +6 -0
- package/changelog/v0.2.17.md +14 -0
- package/changelog/v0.2.2.md +16 -0
- package/changelog/v0.2.3.md +7 -0
- package/changelog/v0.2.4.md +7 -0
- package/changelog/v0.2.5.md +12 -0
- package/changelog/v0.2.7.md +3 -0
- package/changelog/v0.2.8.md +107 -0
- package/changelog/v0.2.9.md +10 -0
- package/changelog/v0.3.0.md +30 -0
- package/changelog/v0.3.1.md +17 -0
- package/changelog/v0.3.11.md +20 -0
- package/changelog/v0.3.12.md +18 -0
- package/changelog/v0.3.13.md +4 -0
- package/changelog/v0.3.14.md +6 -0
- package/changelog/v0.3.15.md +4 -0
- package/changelog/v0.3.16.md +3 -0
- package/changelog/v0.3.17.md +4 -0
- package/changelog/v0.3.18.md +12 -0
- package/changelog/v0.3.19.md +12 -0
- package/changelog/v0.3.2.md +5 -0
- package/changelog/v0.3.21.md +13 -0
- package/changelog/v0.3.22.md +29 -0
- package/changelog/v0.3.23.md +12 -0
- package/changelog/v0.3.24.md +34 -0
- package/changelog/v0.3.25.md +40 -0
- package/changelog/v0.3.26.md +85 -0
- package/changelog/v0.3.28.md +3 -0
- package/changelog/v0.3.29.md +107 -0
- package/changelog/v0.3.3.md +11 -0
- package/changelog/v0.3.30.md +3 -0
- package/changelog/v0.3.31.md +113 -0
- package/changelog/v0.3.32.md +123 -0
- package/changelog/v0.3.33.md +129 -0
- package/changelog/v0.3.34.md +156 -0
- package/changelog/v0.3.35.md +173 -0
- package/changelog/v0.3.36.md +186 -0
- package/changelog/v0.3.37.md +182 -0
- package/changelog/v0.3.38.md +3 -0
- package/changelog/v0.3.39.md +3 -0
- package/changelog/v0.3.4.md +9 -0
- package/changelog/v0.3.40.md +18 -0
- package/changelog/v0.3.41.md +7 -0
- package/changelog/v0.3.42.md +9 -0
- package/changelog/v0.3.43.md +13 -0
- package/changelog/v0.3.44.md +10 -0
- package/changelog/v0.3.45.md +12 -0
- package/changelog/v0.3.46.md +5 -0
- package/changelog/v0.3.47.md +4 -0
- package/changelog/v0.3.48.md +10 -0
- package/changelog/v0.3.49.md +18 -0
- package/changelog/v0.3.5.md +5 -0
- package/changelog/v0.3.50.md +41 -0
- package/changelog/v0.3.51.md +37 -0
- package/changelog/v0.3.52.md +43 -0
- package/changelog/v0.3.54.md +55 -0
- package/changelog/v0.3.55.md +62 -0
- package/changelog/v0.3.56.md +53 -0
- package/changelog/v0.3.57.md +61 -0
- package/changelog/v0.3.58.md +10 -0
- package/changelog/v0.3.59.md +3 -0
- package/changelog/v0.3.6.md +12 -0
- package/changelog/v0.3.60.md +3 -0
- package/changelog/v0.3.61.md +3 -0
- package/changelog/v0.3.62.md +3 -0
- package/changelog/v0.3.63.md +20 -0
- package/changelog/v0.3.64.md +10 -0
- package/changelog/v0.3.65.md +10 -0
- package/changelog/v0.3.66.md +17 -0
- package/{CHANGELOG.md → changelog/v0.3.67.md} +1 -1
- package/changelog/v0.3.68.md +18 -0
- package/changelog/v0.3.9.md +10 -0
- package/package.json +3 -3
- package/sources.js +6 -8
- package/src/changelog-loader.js +41 -41
- package/web/dist/assets/{index-DCwSuNgI.js → index-Cfy_uz7_.js} +1 -1
- package/web/dist/index.html +1 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Changelog v0.2.12 - 2026-03-14
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Auto-select models for all external tools**: All 10 supported tools (Aider, Crush, Goose, Claude Code, Codex, Gemini, Qwen, OpenHands, Amp, Pi) now automatically configure and pre-select the chosen model on launch — no manual model selection needed after pressing Enter.
|
|
5
|
+
- **Changelog loader utility**: New `src/changelog-loader.js` module parses CHANGELOG.md for future TUI integration to display changes directly in the app instead of opening a browser.
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
- **Infinite update loop on startup**: Disabled forced auto-update that caused the app to detect the same update repeatedly after restarting. The app now checks for updates in the background without forcing installation.
|
|
9
|
+
- **Removed disruptive browser window**: The auto-update process no longer opens a browser window to show the changelog — it now shows update information in the terminal only.
|
|
10
|
+
- **Update failure tracking**: If update checks fail 3+ times, the app displays a prominent red footer warning: `⚠ OUTDATED version, please update` with manual update instructions instead of crashing.
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
- **OpenHands integration improved**: Now sets `LLM_MODEL` and `LLM_API_KEY` environment variables for proper model pre-selection on launch.
|
|
14
|
+
- **Amp integration improved**: Now writes `amp.model` to config file with the selected model ID.
|
|
15
|
+
|
|
16
|
+
---
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Changelog v0.2.13 - 2026-03-14
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Persist UI view settings**: Tier filter (T key), provider filter (D key), and sort order now persist across session restarts — settings are saved to `~/.free-coding-models.json` under `config.settings` and automatically restored on next startup. Settings also mirror into active profiles so profile switching captures live view preferences.
|
|
5
|
+
- When T cycles tier: S+ tier is now remembered for next session
|
|
6
|
+
- When D cycles provider: Filtered provider is now remembered
|
|
7
|
+
- When sort keys (R/O/M/L/A/S/C/H/V/B/U) change order: Sort column and direction are now remembered
|
|
8
|
+
- Profile loading has priority over global `config.settings` so saved profiles override global defaults
|
|
9
|
+
- **Reset view settings (Shift+R)**: New keyboard shortcut to instantly reset tier filter, provider filter, and sort order to defaults (All tier, no provider filter, avg sort ascending). Also clears persisted settings from `config.settings` so next restart returns to factory defaults.
|
|
10
|
+
- Useful when you've customized your view but want a fresh start
|
|
11
|
+
- Does not affect favorites, API keys, or other settings — only view state
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
- **Help overlay (K key)**: Updated to document new Shift+R keybinding for resetting view settings
|
|
15
|
+
|
|
16
|
+
---
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Changelog v0.2.14 - 2026-03-14
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
- **Changelog scrolling viewport**: Scrolling in changelog details (N key) now respects viewport boundaries — content no longer scrolls beyond visible area. Down/PageDown/End keys now properly clamp to max scroll offset so you can view all content without it disappearing off screen.
|
|
5
|
+
|
|
6
|
+
---
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Changelog v0.2.15 - 2026-03-15
|
|
2
|
+
|
|
3
|
+
### Changed
|
|
4
|
+
- **Changelog scrolling experience**: Circular wrap-around scrolling in changelog details (N key) — up at the top now wraps to the bottom, down at the bottom wraps to the top. PageUp/PageDown also wrap for seamless infinite browsing, just like the main TUI list navigation. Home/End still jump to absolute first/last positions for quick access.
|
|
5
|
+
|
|
6
|
+
---
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Changelog v0.2.17 - 2026-03-16
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **All coding tools re-enabled in Z-cycle**: Aider, Claude Code, Codex CLI, Gemini CLI, Qwen Code, OpenHands, and Amp are now back in the public tool mode cycle alongside OpenCode, OpenClaw, Crush, Goose, and Pi — 13 tools total.
|
|
5
|
+
- **All coding tools available in Install Endpoints (Y key)**: The endpoint installer now supports all 13 tools as install targets, not just the original 5. Each tool gets its proper config format (JSON, YAML, or env file).
|
|
6
|
+
- **Connection mode choice in Install flow**: When installing endpoints (Y key), users now choose between **Direct Provider** (pure API connection) or **FCM Proxy** (local proxy with key rotation and usage tracking) — new Step 3 in the 5-step flow.
|
|
7
|
+
- **Install support for new tools**: Pi (models.json + settings.json), Aider (.aider.conf.yml), Amp (settings.json), Gemini (settings.json), Qwen (modelProviders config), Claude Code/Codex/OpenHands (sourceable env files at ~/.fcm-*-env).
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- **Install Endpoints flow is now 5 steps**: Provider → Tool → Connection Mode → Scope → Models (was 4 steps without connection mode choice).
|
|
11
|
+
- **Tool labels in install overlay use metadata**: Tool names and emojis in the Y overlay now come from `tool-metadata.js` instead of hard-coded ternary chains — easier to maintain and always in sync.
|
|
12
|
+
- **Help overlay updated**: Z-cycle hint and CLI flag examples now list all 13 tools.
|
|
13
|
+
|
|
14
|
+
---
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Changelog v0.2.2 - 2026-03-10
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
|
|
5
|
+
- 🔌 Added a new `Y` install flow that pushes one configured provider directly into `OpenCode CLI`, `OpenCode Desktop`, `OpenClaw`, `Crush`, or `Goose`, with either the full catalog or a curated model subset.
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- 🔄 Tracked endpoint installs are now refreshed automatically on future launches so managed tool catalogs stay aligned when provider model lists evolve.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- 🔐 Clarified provider auth failures in the main table so configured keys rejected by a provider no longer appear as `NO KEY`.
|
|
14
|
+
- 🔁 Hardened Settings key tests with multi-model retries plus detailed diagnostics under Setup Instructions when a provider probe fails.
|
|
15
|
+
- 🏷️ Fixed Settings provider badges so configured keys show `Test` before the first probe, while providers without a key now show `Missing Key`.
|
|
16
|
+
- 🤗 Clarified the Hugging Face setup hint in Settings to require a fine-grained token with `Make calls to Inference Providers`.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Changelog v0.2.3 - 2026-03-10
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
|
|
5
|
+
- 🔧 Fixed Codestral API endpoint URL from `codestral.mistral.ai/v1` to `api.mistral.ai/v1` to align with Mistral AI's unified API platform. This resolves authentication failures when testing Codestral API keys in Settings.
|
|
6
|
+
|
|
7
|
+
---
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Changelog v0.2.4 - 2026-03-10
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
|
|
5
|
+
- 🔧 Fixed Configured Only filter (E key) not being applied at startup. The flag was initialized correctly but the filter function was never called on first render, causing all models to appear visible even when Configured Only mode was enabled.
|
|
6
|
+
|
|
7
|
+
---
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Changelog v0.2.5 - 2026-03-10
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
|
|
5
|
+
- 🔒 **Improved config save reliability** - API keys are now much safer from corruption and loss:
|
|
6
|
+
- Automatic backups before each save (keeps last 5 versions in `~/.free-coding-models.backups/`)
|
|
7
|
+
- Post-write verification confirms file was written correctly and data wasn't lost
|
|
8
|
+
- Explicit error handling instead of silent failures
|
|
9
|
+
- Auto-repair on startup if config is corrupted (restores from latest backup)
|
|
10
|
+
- Console notifications when backup is used or config is repaired
|
|
11
|
+
|
|
12
|
+
---
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# Changelog v0.2.8 - 2026-03-13
|
|
2
|
+
|
|
3
|
+
### Updated
|
|
4
|
+
|
|
5
|
+
- 📊 **Provider quota information refreshed** – Updated free‑tier request limits for NVIDIA NIM, Groq, Cerebras, Replicate, DeepInfra, and Fireworks AI in `src/provider-metadata.js` and the README.
|
|
6
|
+
- 📖 **README requirements section** – Added the latest quota details for each provider (40 req/min for NVIDIA, 30‑50 RPM for Groq, generous dev tier for Cerebras, 6 req/min free Replicate, 200 concurrent DeepInfra, 10 req/min free Fireworks) and clarified payment‑method dependent limits.
|
|
7
|
+
- 🛠️ **No functional code changes** – Metadata updates only; all tests continue to pass.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- 📊 **Added `--json` flag for scriptable output** - Output model results as JSON for automation, CI/CD, and monitoring dashboards. Example: `free-coding-models --tier S --json | jq '.[0].modelId'`
|
|
12
|
+
|
|
13
|
+
- 💾 **Added persistent ping cache** - Cache ping results for 5 minutes to speed up subsequent runs:
|
|
14
|
+
- Cache stored in `~/.free-coding-models.cache.json`
|
|
15
|
+
- Automatic cache refresh on startup if stale
|
|
16
|
+
- Saves API rate limits and reduces wait time
|
|
17
|
+
- Cache is saved on exit for next run
|
|
18
|
+
|
|
19
|
+
- 🔐 **Added config file security check with auto-fix** - Warns if `~/.free-coding-models.json` has insecure permissions:
|
|
20
|
+
- Checks file permissions on startup
|
|
21
|
+
- Warns if file is readable by others (security risk)
|
|
22
|
+
- Offers one-click auto-fix with `chmod 600`
|
|
23
|
+
- Shows manual fix command if auto-fix fails or is declined
|
|
24
|
+
|
|
25
|
+
- 🎨 **Added provider colors to logs and settings** - Provider names are now colored the same way as in the main table:
|
|
26
|
+
- Settings overlay (P) shows colored provider names
|
|
27
|
+
- Fiable mode output uses colored provider names
|
|
28
|
+
- Tool launcher messages use colored provider names
|
|
29
|
+
- Request log overlay (X) shows colored provider names
|
|
30
|
+
- Consistent visual experience across all UI elements
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- 📝 **Increased default log limit from 200 to 500 entries** - Request log overlay now shows up to 500 entries by default (previously 200)
|
|
35
|
+
- 🔀 **Added toggle for unlimited logs** - Press `A` in request log overlay to toggle between showing 500 entries or ALL logs
|
|
36
|
+
- ❌ **Enhanced visual failure indication in logs** - Failed requests with zero tokens now have:
|
|
37
|
+
- Dark red background (`rgb(40, 0, 0)`) on the entire row
|
|
38
|
+
- Model name in red
|
|
39
|
+
- Token column shows red cross emoji (✗) instead of token count
|
|
40
|
+
- Quick visual identification of errors vs successful requests
|
|
41
|
+
- 📝 **Updated documentation** - Added `--json` flag to CLI flags table in README.md with usage examples
|
|
42
|
+
|
|
43
|
+
- 🔌 Added `terminalcp` MCP server configuration for Claude Code to spawn and interact with the TUI headlessly. Agents can now visually test the terminal interface by capturing output and sending keystrokes programmatically. See AGENTS.md → "Testing the TUI with terminalcp" for usage.
|
|
44
|
+
- 🎨 **Added consistent branding header to all overlays** - Each overlay (Settings, Help, Log, Install Endpoints, Recommend, Feature Request, Bug Report) now displays:
|
|
45
|
+
- Free-coding-models logo with rocket emoji (🚀)
|
|
46
|
+
- Version number display
|
|
47
|
+
- Clean title on a separate line
|
|
48
|
+
- Consistent visual styling across all screens
|
|
49
|
+
- **Main table title now uses rocket emoji (🚀) and cyanBright color** for consistency with overlays
|
|
50
|
+
|
|
51
|
+
### Changed
|
|
52
|
+
|
|
53
|
+
- 📝 **Updated documentation** - Added `--json` flag to CLI flags table in README.md with usage examples
|
|
54
|
+
|
|
55
|
+
- 📊 **Improved ping progress visibility** - Moved ping completion counter from the W badge to the main status bar:
|
|
56
|
+
- Now shows as `📦 49/59` next to model status counts (up/timeout/down)
|
|
57
|
+
- More prominent placement makes it easier to see ping progress at a glance
|
|
58
|
+
- W badge still shows interval, mode, and countdown to next ping
|
|
59
|
+
|
|
60
|
+
- 🧹 **Removed unnecessary blank line** - Overlays (Settings P, Help K, Log X) no longer have a blank line at the top, giving more vertical space for content
|
|
61
|
+
|
|
62
|
+
- 🔽 **Removed duplicate "CONFIGURED ONLY" badge** - The header no longer shows the "CONFIGURED ONLY" indicator since it's already displayed in the footer hints. This reduces header clutter while keeping the information visible.
|
|
63
|
+
|
|
64
|
+
- 🎨 **Enhanced Request Log (X) with colors and visual indicators**:
|
|
65
|
+
- **Latency gradient**: Green (<500ms) → Orange (<1000ms) → Yellow (<1500ms) → Red (≥1500ms) for quick performance assessment
|
|
66
|
+
- **Token opacity**: Light green (low usage) → Medium green → Bright green (high usage, >30k tokens)
|
|
67
|
+
- **Model coloring**: Matches status color for visual consistency
|
|
68
|
+
- **Status colors** - Distinct colors for each HTTP code:
|
|
69
|
+
- `200` ✅ → Bright green
|
|
70
|
+
- `400` → Dark magenta (#8B008B)
|
|
71
|
+
- `401` → Dark orchid (#9932CC)
|
|
72
|
+
- `403` → Medium orchid (#BA55D3)
|
|
73
|
+
- `404` → Dark red (crimson)
|
|
74
|
+
- `413` → Tomato red (#FF6347)
|
|
75
|
+
- `429` → Dark orange (#FFB90F)
|
|
76
|
+
- `500` → Crimson (#DC143C)
|
|
77
|
+
- `502` → Medium violet red (#C71585)
|
|
78
|
+
- `503` → Medium purple (#9370DB)
|
|
79
|
+
- `5xx` → Magenta (other 5xx errors)
|
|
80
|
+
- `0` → Dim gray (timeout/unknown)
|
|
81
|
+
- **Fixed token display bug**: Corrected chalk function calls that were showing JavaScript code instead of token counts
|
|
82
|
+
|
|
83
|
+
- 💖 **Added "Buy me a coffee" link to footer**:
|
|
84
|
+
- Added in main TUI footer next to Contributors link (buymeacoffee.com/vavanessadev)
|
|
85
|
+
- Added in Settings overlay (P) footer with credits "Made with 💖 & ☕ by vava-nessa"
|
|
86
|
+
- Warm orange color for the coffee link to match the cozy theme
|
|
87
|
+
|
|
88
|
+
### Fixed
|
|
89
|
+
|
|
90
|
+
- 🖥️ **Overlays now use 100% terminal width** - All overlays (Settings P, Help K, Log X, Recommend Q, Feature J, Bug I) now dynamically adapt to full terminal width instead of fixed 116-column panels:
|
|
91
|
+
- Rate limits text is no longer truncated (full descriptions visible)
|
|
92
|
+
- Diagnostic messages wrap using available terminal width
|
|
93
|
+
- Separator lines extend to full terminal width
|
|
94
|
+
- Better readability on wider terminals
|
|
95
|
+
|
|
96
|
+
- 🔒 **Fixed profile loading to preserve API keys** - Loading a profile now MERGES apiKeys instead of replacing them:
|
|
97
|
+
- Keys in the profile override existing keys (allows profile-specific overrides)
|
|
98
|
+
- Keys NOT in the profile are preserved (prevents key loss when switching profiles)
|
|
99
|
+
- Fixes bug where switching profiles would cause API keys disappear
|
|
100
|
+
- Added test to verify merge behavior
|
|
101
|
+
|
|
102
|
+
- 📝 **Updated OpenRouter rate limits information**:
|
|
103
|
+
- README now includes detailed explanation of free tier quotas (50/day <$10 credits, 1000/day ≥$10)
|
|
104
|
+
- Settings overlay displays accurate rate limit text
|
|
105
|
+
- Added note about failed requests counting toward daily quota
|
|
106
|
+
|
|
107
|
+
---
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Changelog v0.2.9 - 2026-03-14
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
- **Discord link**: Updated expired invite URL to `https://discord.gg/f2AjwV2AN` in README and TUI footer
|
|
5
|
+
|
|
6
|
+
### Added
|
|
7
|
+
- **Discord link health-check workflow**: New GitHub Actions workflow (`check-discord-link.yml`) runs every 12 hours, validates the Discord invite via the Discord API, and auto-opens an issue labeled `discord-link` if the link becomes invalid
|
|
8
|
+
- **Pi provider metadata**: Added `pi` provider entry to `src/provider-metadata.js` with light blue color, pi.dev signup URL, and setup hint for `@mariozechner/pi-coding-agent` integration
|
|
9
|
+
|
|
10
|
+
---
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Changelog v0.3.0 - 2026-03-16
|
|
2
|
+
|
|
3
|
+
## 🚀 FCM Proxy V2 — Always-on background proxy service
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- **Always-on background proxy service** — `launchd` (macOS) / `systemd` (Linux). All tools get free model access 24/7 without the TUI.
|
|
7
|
+
- **Anthropic wire format translation** — Claude Code works natively through FCM Proxy V2 (no external Python proxy needed).
|
|
8
|
+
- **`J` key shortcut** — Opens FCM Proxy V2 settings directly. Footer shows `📡 FCM Proxy V2 On/Off` badge.
|
|
9
|
+
- **Dedicated proxy overlay** — Full-page manager with status, restart, stop, force-kill, and log viewer.
|
|
10
|
+
- **CLI daemon subcommand** — `free-coding-models daemon [status|install|uninstall|restart|stop|logs]`
|
|
11
|
+
- **Stable proxy identity** — Persistent token & port (`18045`) survive restarts.
|
|
12
|
+
- **`GET /v1/health` + `/v1/stats`** — Health and stats endpoints for monitoring.
|
|
13
|
+
- **Hot-reload** — Config changes picked up automatically without restart.
|
|
14
|
+
- **Generalized proxy sync** (`src/proxy-sync.js`) — Single-endpoint config sync for 12 tools.
|
|
15
|
+
- **Retry backoff with jitter** — Progressive delays (0ms, 300ms, 800ms + jitter).
|
|
16
|
+
- **Automatic account cooldown** — 3+ consecutive failures → graduated cooldown (30s → 60s → 120s).
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- **Rebranded to FCM Proxy V2** across all CLI messages, overlays, and services.
|
|
20
|
+
- **Proxy overlay generalized** — Tool selector, auto-sync toggle, and cleanup for any of 12 tools.
|
|
21
|
+
- **Feedback overlay redesigned** — `I` key opens unified "Feedback, bugs & requests".
|
|
22
|
+
- **Claude Code / Codex / Gemini require proxy** — Clear error message + instructions when proxy is off.
|
|
23
|
+
- **Goose launcher rewritten** — Writes `config.yaml` with `GOOSE_PROVIDER`/`GOOSE_MODEL` (replaces obsolete `OPENAI_HOST` env vars).
|
|
24
|
+
- **Crush launcher improved** — Removed `disable_default_providers`, sets both `models.large` + `models.small`.
|
|
25
|
+
- **Pi launcher improved** — Uses `--provider` and `--model` CLI flags for guaranteed auto-selection.
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
- 20+ security & stability fixes including body size limits, stack trace leak prevention, SSE buffer overflow guards, `execSync` timeout safety, crash protections, and more.
|
|
29
|
+
|
|
30
|
+
**Full changelog:** https://github.com/vava-nessa/free-coding-models/blob/main/CHANGELOG.md
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Changelog v0.3.1 - 2026-03-16
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **CLI `--help` output**: `free-coding-models --help` now prints the full launcher, analysis, config, and daemon command matrix in a non-interactive format.
|
|
5
|
+
|
|
6
|
+
### Fixed
|
|
7
|
+
- **Outdated-version footer alert**: The main TUI now shows a full-width red footer line with manual `npm install -g free-coding-models@latest` recovery instructions, but only when a newer npm version is actually known.
|
|
8
|
+
- **Claude Code proxy auth conflict**: Proxy launches now sanitize inherited env vars and use only `ANTHROPIC_AUTH_TOKEN` + `ANTHROPIC_BASE_URL`, matching the `free-claude-code` contract instead of mixing Anthropic auth modes.
|
|
9
|
+
- **Codex CLI proxy routing**: Codex launches now force an explicit custom provider config and the proxy now supports `POST /v1/responses`, so `codex-cli 0.114.0` no longer depends on the broken built-in OAuth/base-url path.
|
|
10
|
+
- **Anthropic token counting**: Added `POST /v1/messages/count_tokens` with a fast local estimate so Claude-compatible clients keep their budgeting flow through FCM Proxy V2.
|
|
11
|
+
- **Gemini proxy failure mode**: Gemini launch now preflights the installed CLI/config, blocks incompatible builds like `0.33.0`, and surfaces `~/.gemini/settings.json` schema errors instead of pretending proxy mode works.
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
- **Proxy auto-sync now follows the current tool**: The proxy overlay no longer asks for a separate active tool; cleanup and auto-sync now target the current `Z` mode whenever that tool supports persisted proxy config.
|
|
15
|
+
- **Install Endpoints (`Y`) is narrower on purpose**: `Claude Code`, `Codex`, and `Gemini` were removed from the install-target menu so the flow only lists tools with a stable persisted-config contract.
|
|
16
|
+
- **Proxy model listing is more Codex-friendly**: `GET /v1/models` now returns both the usual OpenAI `data` array and a `models` array with `slug` fields for clients that expect a richer catalog shape.
|
|
17
|
+
- **Launcher diagnostics now mention the beta state clearly**: Proxy-backed external tools now remind users that the integration is still stabilizing when a launch is blocked.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Changelog v0.3.11 - 2026-03-16
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
- Added early 404 response when a requested model has no registered accounts, ensuring clear error handling.
|
|
5
|
+
|
|
6
|
+
### Removed
|
|
7
|
+
- **Profile system**: Entire profile system removed to ensure API keys persist permanently across all sessions. No more profile switching causing API key loss.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- **`--proxy` foreground mode**: New `--proxy` flag starts FCM Proxy V2 in the current terminal with a live dashboard showing status, accounts, provider breakdown, and real-time request log. No daemon install needed — works from dev checkout too.
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
- **Claude Code proxy auth**: Proxy now accepts `x-api-key` header (used by Anthropic SDK / Claude Code) in addition to `Authorization: Bearer`
|
|
14
|
+
- **Claude model fallback**: When `anthropicRouting` is all null, Claude model names now fall back to the first available account instead of returning "Model not found"
|
|
15
|
+
- **Proxy sync for Claude Code**: Added `claude-code` to `PROXY_SYNCABLE_TOOLS` so the env file is properly written/updated by proxy sync
|
|
16
|
+
- **Correct env var name**: Claude Code env file now exports `ANTHROPIC_API_KEY` (SDK standard) instead of `ANTHROPIC_AUTH_TOKEN`
|
|
17
|
+
- **Auto-source shell profile**: Claude Code env file is now automatically sourced in `.zshrc` / `.bashrc` / `.bash_profile`
|
|
18
|
+
- **Removed deleted profile functions from tests**: Cleaned up test imports after profile system removal from config.js
|
|
19
|
+
|
|
20
|
+
---
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Changelog v0.3.12 - 2026-03-17
|
|
2
|
+
|
|
3
|
+
> **Proxy / bridge update:** the current legacy proxy stack is now officially discontinued while we rebuild that whole layer from zero. This cleanup is intentional: Claude Code support, a smarter router, and a much more reliable external-tools bridge are being reworked as a separate, cleaner system and will come back in a future release. In the meantime, FCM has been cleaned up and narrowed to the stable direct-launch surface so the app stays solid for day-to-day usage.
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- **Legacy proxy cleanup action**: Settings now includes a one-shot cleanup that removes discontinued proxy leftovers from older installs and explains that a more stable replacement is in progress.
|
|
7
|
+
|
|
8
|
+
### Changed
|
|
9
|
+
- **Stable direct-launch surface**: The app now documents and exposes only the supported direct-provider launcher workflow while the old bridge is rebuilt.
|
|
10
|
+
- **README reset**: Rewrote the documentation to match the real product surface, current tools, and current test commands.
|
|
11
|
+
- **Footer transparency**: The main TUI now shows an explicit magenta notice that the old proxy is disabled while the replacement bridge is being rebuilt.
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- **Selected model now really becomes the launched tool default**: external tool launch prep now writes the chosen model into each tool config before spawn, and OpenClaw no longer hardcodes `nvidia/*` when another provider was selected.
|
|
15
|
+
|
|
16
|
+
### Removed
|
|
17
|
+
- **Global proxy stack**: Deleted the old proxy runtime, daemon flow, request-log flow, and related orphaned helpers/tests.
|
|
18
|
+
- **Hidden launcher bridges**: Claude Code, Codex, and Gemini are no longer exposed in the app while their integrations are being rewritten.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# Changelog v0.3.13 - 2026-03-17
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
- **Small Width Warnings toggle actually works again**: the Settings row now shows `Small Width Warnings` with clear enabled/disabled status, the startup overlay reacts immediately to the toggle, and the narrow-terminal warning now auto-hides after 2 seconds instead of 4.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Changelog v0.3.14 - 2026-03-17
|
|
2
|
+
|
|
3
|
+
### Changed
|
|
4
|
+
- **Massive TUI Controller Extraction:** Extracted the main UI event loop and state machine out of `bin/free-coding-models.js` into a dedicated `src/app.js` controller. This cuts the main executable size drastically and makes the TUI architecture more modular and testable.
|
|
5
|
+
- **Robust Error Boundaries:** Wrapped all critical asynchronous operations, keypress handlers, UI render timers, and polling cycles with comprehensive `try/catch` blocks. Instead of the TUI crashing and destroying the terminal scrollback on unexpected errors, it will now gracefully exit the alternate screen buffer, print a formatted stack trace, and point users to the GitHub issue tracker and feedback form.
|
|
6
|
+
- **Global Crash Resiliency:** Added `uncaughtException` and `unhandledRejection` listeners at the entry point to guarantee terminal restoration even if a library fails catastrophically.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# Changelog v0.3.17 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Auto Light/Dark Theme**: Implemented automatic detection of the user's terminal theme (dark or light) so that the TUI is always readable. Added semantic color tokens, and users can override the theme as `dark`, `light`, or `auto` via the Settings interface.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Changelog v0.3.18 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Missing tool bootstrap flow**: FCM now detects when a target CLI is absent, offers a minimal in-TUI install confirmation, runs the official global install command, then resumes the selected model launch automatically.
|
|
5
|
+
|
|
6
|
+
### Changed
|
|
7
|
+
- **TUI readability overhaul across every screen**: the main table, Settings, Help, Smart Recommend, Feedback, and Changelog overlays now share a semantic high-contrast theme system instead of a patchwork of hardcoded colors.
|
|
8
|
+
- **Global theme switching now works for real**: press `G` to cycle `auto → dark → light` live, and the Settings screen now exposes a visible `Global Theme` row for the same control.
|
|
9
|
+
- **Launcher binary resolution**: direct tool launches now search PATH plus common user bin directories so a freshly installed CLI can be reused immediately in the same FCM session.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
- **Theme repaint bugs**: provider colors, tier colors, separators, badges, cursor highlights, and overlay backgrounds now update immediately when the theme changes instead of keeping stale import-time colors.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Changelog v0.3.19 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Command palette overlay (`Ctrl+P`)**: Added a searchable floating palette with fuzzy matching so users can quickly run filters, sorts, overlays, and global actions.
|
|
5
|
+
|
|
6
|
+
### Changed
|
|
7
|
+
- **Main footer and help discoverability**: surfaced `Ctrl+P` in table hints and Help overlay so the new command launcher is visible immediately.
|
|
8
|
+
- **Command palette spacing polish**: added two-character inner padding around the floating palette so the overlay feels less cramped and visually cleaner.
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **Command palette visual jitter**: background ping cycles now pause while the command palette is open so table rows stop reshuffling during command search.
|
|
12
|
+
- **Command palette background freeze**: while the palette is open, the full table behind it is now frozen (spinner glyphs, ping countdown, and dynamic row updates) and resumes instantly on close.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Changelog v0.3.2 - 2026-03-16
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
- **Claude Code model-family routing now mirrors `free-claude-code`**: The proxy remaps Claude's internal model ids like `claude-3-5-sonnet-*`, `claude-3-haiku-*`, `claude-3-opus-*`, `sonnet`, `haiku`, and `default` back to the selected FCM proxy model instead of rejecting them as missing.
|
|
5
|
+
- **Claude Code helper/background requests stay on the selected model**: Launches now pin the Anthropic helper model env vars and encode the selected proxy model inside `ANTHROPIC_AUTH_TOKEN`, so Claude Code has a stable fallback even when it emits internal aliases.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Changelog v0.3.21 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Changed
|
|
4
|
+
- **Responsive table layout**: the TUI now adapts to narrow terminals by progressively shrinking columns and hiding least-useful ones. Compact mode shortens headers (`Lat. P`, `Avg. P`, `StaB.`, `PrOD…`) and tightens Provider (10 cols), Health (13 cols), Latest Ping (10 cols), and Avg Ping (8 cols). Below compact, Rank → Up% → Tier → Stability are hidden one by one. Minimum usable width: ~116 cols.
|
|
5
|
+
- **SWE% column tightened**: reduced from 9 to 6 columns wide — trims excess right padding without losing data.
|
|
6
|
+
- **Provider truncation in compact mode**: provider names longer than 5 chars are truncated to 4 chars + `…` (e.g. `Cere…`).
|
|
7
|
+
- **Health truncation in compact mode**: status text longer than 6 chars is truncated with `…` (e.g. `🔥 429 TR…`).
|
|
8
|
+
- **Removed "Used" column from TUI**: the token usage column has been removed from the main table as it was outdated.
|
|
9
|
+
- **Width guardrail threshold tightened**: the narrow-terminal warning now triggers only below 80 columns (instead of broader widths) and keeps the same 2-second auto-hide behavior.
|
|
10
|
+
- **Width warning is always enforced in narrow terminals**: removed the `Small Width Warnings` Settings toggle and the `--disable-widths-warning` runtime flag so the startup guardrail stays consistent.
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
- **`--premium` filter lock-in**: premium now applies a resettable startup preset (S-tier + verdict sort) instead of hard-locking an extra hidden elite-only filter.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Changelog v0.3.22 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Hierarchical command palette navigation**: Ctrl+P now opens an improved command palette with expandable/collapsible categories and subcategories for better organization.
|
|
5
|
+
- **Arrow key navigation in command palette**: Use left/right arrows to expand and collapse categories, up/down to navigate, Enter to execute or toggle.
|
|
6
|
+
- **Rich color scheme for command palette**: Categories use bold blue headers, subcategories use bold text, commands show keyboard shortcuts.
|
|
7
|
+
- **Visual expand/collapse indicators**: ▼ shows expanded categories, ▶ shows collapsed, • marks individual commands.
|
|
8
|
+
- **Concise default view**: Categories are collapsed by default (except Filters) showing less detail on first open.
|
|
9
|
+
- **Colored tier filters**: Tier filters (S+, S, A+, A, A-, B+, B, C) now display with their corresponding TUI colors for quick identification.
|
|
10
|
+
- **Specific provider filters**: Added 13 individual provider filters (NVIDIA NIM, Groq, Cerebras, SambaNova, OpenRouter, Together AI, DeepInfra, Fireworks, Hyperbolic, Google AI, Hugging Face) with their signature provider colors.
|
|
11
|
+
- **Filter by model category**: New "Filter by model" category with autocomplete that dynamically shows top 20 visible models, complete with provider icons and colored model names.
|
|
12
|
+
- **Improved search cursor**: Cursor placement fixed to appear right after the `>` prompt instead of after placeholder text for natural typing flow.
|
|
13
|
+
- **Lightning bolt in title**: Command Palette title now shows ⚡ emoji for better visibility and visual appeal.
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
- **Footer layout cleanup**: Added consistent spacing before `F Toggle Favorite`, moved `N Changelog • Ctrl+C Exit` to a dedicated final footer line for better readability.
|
|
17
|
+
- **Removed Y key binding**: Install Endpoints is no longer a direct hotkey — accessible only via Settings (`P`) or Command Palette (`Ctrl+P`). The `Y` key is now free/unbound.
|
|
18
|
+
- **Removed proxy notice from footer**: The "Proxy is temporarily disabled" banner has been fully retired from the TUI footer and its backing constant removed.
|
|
19
|
+
- **Command palette fuzzy search fix**: `buildCommandPaletteEntries()` now expands all categories so child commands are visible to fuzzy search.
|
|
20
|
+
- **Flat Pages + Actions in ⚡️ Command Palette**: page entries and action entries are now listed directly at root level (no extra submenu depth) for faster access.
|
|
21
|
+
- **Command explanations after shortcuts**: command palette rows now show concise English hints after hotkeys (example: `(Z) — Change target AI Coding CLI Tool.`).
|
|
22
|
+
- **⚡️ emoji consistency**: user-facing Command Palette mentions now consistently render as `⚡️ Command Palette` in TUI and docs.
|
|
23
|
+
- **README Quick Start flow**: install section now explicitly adds “create a free account on one of the providers” with a direct anchor link.
|
|
24
|
+
- **Provider section renamed for clarity**: Quick Start provider table now lives under `List of Free AI Providers`.
|
|
25
|
+
- **Quick Start CTA highlight**: added a large green `USE ⚡️ COMMAND PALETTE / CTRL+P` badge right after the command palette instruction.
|
|
26
|
+
|
|
27
|
+
### Fixed
|
|
28
|
+
- **Double emoji display bug**: Fixed duplicate emoji icons in command palette entries (was showing `▶ 🔍 🔍 Filters` instead of `▶ 🔍 Filters`).
|
|
29
|
+
- **Provider cycle command behavior**: `Cycle provider` in ⚡️ Command Palette now correctly cycles providers again instead of resetting to `All`.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Changelog v0.3.23 - 2026-03-18
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Favorites display mode (`Y`)**: Added a global toggle to switch favorites between `pinned + always visible` and `normal rows` (starred only, fully obeying active filters/sort).
|
|
5
|
+
- **Favorites mode row in Settings**: Added a dedicated Settings row to inspect/toggle favorites display behavior without leaving the maintenance screen.
|
|
6
|
+
- **Expanded command palette action menus**: Added nested menus for Ping Mode (speed/normal/slow/forced with explanations), Target Tool (all supported tools with explanations), and Favorites Mode (including the new `Y` flow).
|
|
7
|
+
- **Active text-filter footer alert**: When a custom search filter is active (for example `deep`), the last TUI footer line now shows a high-visibility inline badge (between `N Changelog` and `Ctrl+C Exit`) with the exact query and an `X` shortcut to clear it instantly.
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- **Favorites sorting/filtering behavior**: Sort/filter logic now respects the selected favorites mode across the table refresh loop, hotkeys, and renderer so non-pinned mode behaves consistently everywhere.
|
|
11
|
+
- **Favorites default mode**: New/legacy configs now default to `Normal filter/sort` favorites mode (not pinned) until users press `Y` to opt into pinned+sticky behavior.
|
|
12
|
+
- **Footer/help/docs shortcut hints**: Surfaced `Y` in the TUI footer, Help overlay, and README so the new favorites mode is discoverable.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Changelog v0.3.24 - 2026-03-19
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- **Unique emoji per tool** — Every CLI tool now has a dedicated emoji shown in the Compatible column, Z-cycle badge, command palette, help overlay, and README (📦 OpenCode, 🦞 OpenClaw, 💘 Crush, 🪿 Goose, π Pi, 🛠 Aider, 🐉 Qwen, 🤲 OpenHands, ⚡ Amp, 🦘 Rovo, ♊ Gemini)
|
|
5
|
+
- **Merged compat column** — OpenCode CLI and Desktop share 📦 in a single slot (11 slots instead of 12 separate initials)
|
|
6
|
+
- **COMPAT_COLUMN_SLOTS** — New export in tool-metadata.js for merged compatible-column rendering
|
|
7
|
+
- **Width warning now always shows** - Terminal width warning displays every time terminal is resized below 80 columns (previously limited to 2 shows per session)
|
|
8
|
+
- **Gemini CLI integration** - New CLI-only tool provider with 3 models (Gemini 3 Pro 🆕, Gemini 2.5 Pro, Gemini 2.5 Flash)
|
|
9
|
+
- **Rovo Dev CLI integration** - New CLI-only tool provider with Claude Sonnet 4 🆕
|
|
10
|
+
- **Tool compatibility alerts** - When trying to launch Rovo/Gemini models with wrong tool, shows alert and offers to switch
|
|
11
|
+
- **Auto-install detection** - Prompt to install CLI tools when binary not found (Rovo/Gemini)
|
|
12
|
+
- **OpenAI-compatible API support for Gemini** - Gemini CLI can use custom providers via environment variables
|
|
13
|
+
- **New CLI flags** - Added `--rovo` and `--gemini` launch options
|
|
14
|
+
- **"🆕" badges** - Mark newly added models in the table (Claude Sonnet 4, Gemini 3 Pro)
|
|
15
|
+
- **OpenCode Zen free models** - 5 new free models (Big Pickle, GPT 5 Nano, MiMo V2 Flash Free, MiniMax M2.5 Free, Nemotron 3 Super Free) exclusive to OpenCode CLI/Desktop via `opencode-zen` provider
|
|
16
|
+
- **"Compatible with" column** - New TUI column showing colored emojis for each tool a model supports; incompatible tools show dim spaces
|
|
17
|
+
- **Tool color system** - Each of the 12 supported tools now has a unique RGB color and emoji used in the Z-cycle badge and compatibility column
|
|
18
|
+
- **Incompatible model highlighting** - When a tool mode is active (via Z), models that can't run with that tool get a dark red background for instant visibility — they stay in their normal sorted position (not pushed to the bottom)
|
|
19
|
+
- **Tool compatibility functions** - `getCompatibleTools()` and `isModelCompatibleWithTool()` in tool-metadata.js for programmatic compatibility checks
|
|
20
|
+
- **Incompatible model fallback overlay** - When pressing Enter on a model that can't run on the active tool (red-highlighted row), an in-TUI overlay appears with two options: (1) switch to a compatible tool, or (2) pick a similar model by SWE score that works with the current tool
|
|
21
|
+
- **findSimilarCompatibleModels()** - New function in tool-metadata.js that finds models with closest SWE scores compatible with the active tool
|
|
22
|
+
- **Updated provider/model counts** - Now 23 providers with 171 models (was 20/160)
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
- **Z key cycle** - Rovo and Gemini added to tool mode cycle (last in order)
|
|
26
|
+
- **Tool metadata** - Removed `initial` field (replaced by emojis), added `cliOnly` flag for CLI-only tools, `emoji` and `color` properties for all 12 tools
|
|
27
|
+
- **Provider metadata** - Added Rovo, Gemini, and OpenCode Zen provider information
|
|
28
|
+
- **Responsive column hiding** - Compatible column hides first (before Rank) on narrow terminals
|
|
29
|
+
- **Key handler** - Zen models auto-switch to OpenCode CLI on launch; API key warnings skip Zen models
|
|
30
|
+
- **Documentation** - Updated README with CLI-only tools section, Zen models, compatibility matrix
|
|
31
|
+
|
|
32
|
+
### Fixed
|
|
33
|
+
- **Missing import error** - Fixed `getToolMeta` not defined in key-handler.js
|
|
34
|
+
- **CLI-only tools API key requirement** - Gemini CLI and Rovo Dev CLI no longer require API keys to be configured before launching; these tools manage their own authentication
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Changelog v0.3.25 - 2026-03-19
|
|
2
|
+
|
|
3
|
+
### Changed
|
|
4
|
+
- **Removed "CLI Tools" column** — The compat emoji column has been removed from the TUI table, freeing ~22 characters of horizontal space for other columns
|
|
5
|
+
- **Cleaner table layout** — Responsive column hiding no longer needs to drop the compat column first on narrow terminals
|
|
6
|
+
|
|
7
|
+
## [0.3.24] - 2026-03-19
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- **Unique emoji per tool** — Every CLI tool now has a dedicated emoji shown in the Compatible column, Z-cycle badge, command palette, help overlay, and README (📦 OpenCode, 🦞 OpenClaw, 💘 Crush, 🪿 Goose, π Pi, 🛠 Aider, 🐉 Qwen, 🤲 OpenHands, ⚡ Amp, 🦘 Rovo, ♊ Gemini)
|
|
11
|
+
- **Merged compat column** — OpenCode CLI and Desktop share 📦 in a single slot (11 slots instead of 12 separate initials)
|
|
12
|
+
- **COMPAT_COLUMN_SLOTS** — New export in tool-metadata.js for merged compatible-column rendering
|
|
13
|
+
- **Width warning now always shows** - Terminal width warning displays every time terminal is resized below 80 columns (previously limited to 2 shows per session)
|
|
14
|
+
- **Gemini CLI integration** - New CLI-only tool provider with 3 models (Gemini 3 Pro 🆕, Gemini 2.5 Pro, Gemini 2.5 Flash)
|
|
15
|
+
- **Rovo Dev CLI integration** - New CLI-only tool provider with Claude Sonnet 4 🆕
|
|
16
|
+
- **Tool compatibility alerts** - When trying to launch Rovo/Gemini models with wrong tool, shows alert and offers to switch
|
|
17
|
+
- **Auto-install detection** - Prompt to install CLI tools when binary not found (Rovo/Gemini)
|
|
18
|
+
- **OpenAI-compatible API support for Gemini** - Gemini CLI can use custom providers via environment variables
|
|
19
|
+
- **New CLI flags** - Added `--rovo` and `--gemini` launch options
|
|
20
|
+
- **"🆕" badges** - Mark newly added models in the table (Claude Sonnet 4, Gemini 3 Pro)
|
|
21
|
+
- **OpenCode Zen free models** - 5 new free models (Big Pickle, GPT 5 Nano, MiMo V2 Flash Free, MiniMax M2.5 Free, Nemotron 3 Super Free) exclusive to OpenCode CLI/Desktop via `opencode-zen` provider
|
|
22
|
+
- **"Compatible with" column** - New TUI column showing colored emojis for each tool a model supports; incompatible tools show dim spaces
|
|
23
|
+
- **Tool color system** - Each of the 12 supported tools now has a unique RGB color and emoji used in the Z-cycle badge and compatibility column
|
|
24
|
+
- **Incompatible model highlighting** - When a tool mode is active (via Z), models that can't run with that tool get a dark red background for instant visibility — they stay in their normal sorted position (not pushed to the bottom)
|
|
25
|
+
- **Tool compatibility functions** - `getCompatibleTools()` and `isModelCompatibleWithTool()` in tool-metadata.js for programmatic compatibility checks
|
|
26
|
+
- **Incompatible model fallback overlay** - When pressing Enter on a model that can't run on the active tool (red-highlighted row), an in-TUI overlay appears with two options: (1) switch to a compatible tool, or (2) pick a similar model by SWE score that works with the current tool
|
|
27
|
+
- **findSimilarCompatibleModels()** - New function in tool-metadata.js that finds models with closest SWE scores compatible with the active tool
|
|
28
|
+
- **Updated provider/model counts** - Now 23 providers with 171 models (was 20/160)
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- **Z key cycle** - Rovo and Gemini added to tool mode cycle (last in order)
|
|
32
|
+
- **Tool metadata** - Removed `initial` field (replaced by emojis), added `cliOnly` flag for CLI-only tools, `emoji` and `color` properties for all 12 tools
|
|
33
|
+
- **Provider metadata** - Added Rovo, Gemini, and OpenCode Zen provider information
|
|
34
|
+
- **Responsive column hiding** - Compatible column hides first (before Rank) on narrow terminals
|
|
35
|
+
- **Key handler** - Zen models auto-switch to OpenCode CLI on launch; API key warnings skip Zen models
|
|
36
|
+
- **Documentation** - Updated README with CLI-only tools section, Zen models, compatibility matrix
|
|
37
|
+
|
|
38
|
+
### Fixed
|
|
39
|
+
- **Missing import error** - Fixed `getToolMeta` not defined in key-handler.js
|
|
40
|
+
- **CLI-only tools API key requirement** - Gemini CLI and Rovo Dev CLI no longer require API keys to be configured before launching; these tools manage their own authentication
|