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.
Files changed (171) hide show
  1. package/changelog/v0.1.1.md +3 -0
  2. package/changelog/v0.1.10.md +3 -0
  3. package/changelog/v0.1.11.md +10 -0
  4. package/changelog/v0.1.12.md +16 -0
  5. package/changelog/v0.1.13.md +3 -0
  6. package/changelog/v0.1.14.md +3 -0
  7. package/changelog/v0.1.15.md +3 -0
  8. package/changelog/v0.1.16.md +13 -0
  9. package/changelog/v0.1.17.md +3 -0
  10. package/changelog/v0.1.18.md +3 -0
  11. package/changelog/v0.1.19.md +3 -0
  12. package/changelog/v0.1.2.md +3 -0
  13. package/changelog/v0.1.20.md +14 -0
  14. package/changelog/v0.1.21.md +12 -0
  15. package/changelog/v0.1.22.md +6 -0
  16. package/changelog/v0.1.23.md +16 -0
  17. package/changelog/v0.1.24.md +9 -0
  18. package/changelog/v0.1.25.md +13 -0
  19. package/changelog/v0.1.26.md +6 -0
  20. package/changelog/v0.1.27.md +6 -0
  21. package/changelog/v0.1.28.md +5 -0
  22. package/changelog/v0.1.29.md +5 -0
  23. package/changelog/v0.1.3.md +3 -0
  24. package/changelog/v0.1.31.md +10 -0
  25. package/changelog/v0.1.32.md +8 -0
  26. package/changelog/v0.1.33.md +5 -0
  27. package/changelog/v0.1.34.md +6 -0
  28. package/changelog/v0.1.35.md +5 -0
  29. package/changelog/v0.1.36.md +16 -0
  30. package/changelog/v0.1.37.md +5 -0
  31. package/changelog/v0.1.38.md +9 -0
  32. package/changelog/v0.1.39.md +3 -0
  33. package/changelog/v0.1.4.md +3 -0
  34. package/changelog/v0.1.40.md +3 -0
  35. package/changelog/v0.1.41.md +11 -0
  36. package/changelog/v0.1.42.md +3 -0
  37. package/changelog/v0.1.43.md +3 -0
  38. package/changelog/v0.1.44.md +17 -0
  39. package/changelog/v0.1.45.md +6 -0
  40. package/changelog/v0.1.46.md +9 -0
  41. package/changelog/v0.1.47.md +6 -0
  42. package/changelog/v0.1.48.md +11 -0
  43. package/changelog/v0.1.49.md +10 -0
  44. package/changelog/v0.1.5.md +3 -0
  45. package/changelog/v0.1.50.md +7 -0
  46. package/changelog/v0.1.51.md +4 -0
  47. package/changelog/v0.1.52.md +10 -0
  48. package/changelog/v0.1.54.md +41 -0
  49. package/changelog/v0.1.55.md +3 -0
  50. package/changelog/v0.1.56.md +11 -0
  51. package/changelog/v0.1.57.md +7 -0
  52. package/changelog/v0.1.58.md +7 -0
  53. package/changelog/v0.1.59.md +7 -0
  54. package/changelog/v0.1.6.md +3 -0
  55. package/changelog/v0.1.60.md +7 -0
  56. package/changelog/v0.1.61.md +9 -0
  57. package/changelog/v0.1.62.md +9 -0
  58. package/changelog/v0.1.63.md +15 -0
  59. package/changelog/v0.1.64.md +22 -0
  60. package/changelog/v0.1.65.md +15 -0
  61. package/changelog/v0.1.66.md +22 -0
  62. package/changelog/v0.1.67.md +40 -0
  63. package/changelog/v0.1.68.md +38 -0
  64. package/changelog/v0.1.69.md +3 -0
  65. package/changelog/v0.1.7.md +3 -0
  66. package/changelog/v0.1.70.md +7 -0
  67. package/changelog/v0.1.71.md +7 -0
  68. package/changelog/v0.1.72.md +7 -0
  69. package/changelog/v0.1.73.md +7 -0
  70. package/changelog/v0.1.74.md +3 -0
  71. package/changelog/v0.1.75.md +9 -0
  72. package/changelog/v0.1.76.md +13 -0
  73. package/changelog/v0.1.77.md +13 -0
  74. package/changelog/v0.1.78.md +7 -0
  75. package/changelog/v0.1.79.md +8 -0
  76. package/changelog/v0.1.8.md +3 -0
  77. package/changelog/v0.1.80.md +7 -0
  78. package/changelog/v0.1.81.md +19 -0
  79. package/changelog/v0.1.82.md +9 -0
  80. package/changelog/v0.1.83.md +22 -0
  81. package/changelog/v0.1.84.md +25 -0
  82. package/changelog/v0.1.85.md +19 -0
  83. package/changelog/v0.1.86.md +17 -0
  84. package/changelog/v0.1.87.md +7 -0
  85. package/changelog/v0.1.88.md +167 -0
  86. package/changelog/v0.1.89.md +22 -0
  87. package/changelog/v0.1.9.md +3 -0
  88. package/changelog/v0.2.0.md +30 -0
  89. package/changelog/v0.2.1.md +17 -0
  90. package/changelog/v0.2.10.md +7 -0
  91. package/changelog/v0.2.11.md +6 -0
  92. package/changelog/v0.2.12.md +16 -0
  93. package/changelog/v0.2.13.md +16 -0
  94. package/changelog/v0.2.14.md +6 -0
  95. package/changelog/v0.2.15.md +6 -0
  96. package/changelog/v0.2.17.md +14 -0
  97. package/changelog/v0.2.2.md +16 -0
  98. package/changelog/v0.2.3.md +7 -0
  99. package/changelog/v0.2.4.md +7 -0
  100. package/changelog/v0.2.5.md +12 -0
  101. package/changelog/v0.2.7.md +3 -0
  102. package/changelog/v0.2.8.md +107 -0
  103. package/changelog/v0.2.9.md +10 -0
  104. package/changelog/v0.3.0.md +30 -0
  105. package/changelog/v0.3.1.md +17 -0
  106. package/changelog/v0.3.11.md +20 -0
  107. package/changelog/v0.3.12.md +18 -0
  108. package/changelog/v0.3.13.md +4 -0
  109. package/changelog/v0.3.14.md +6 -0
  110. package/changelog/v0.3.15.md +4 -0
  111. package/changelog/v0.3.16.md +3 -0
  112. package/changelog/v0.3.17.md +4 -0
  113. package/changelog/v0.3.18.md +12 -0
  114. package/changelog/v0.3.19.md +12 -0
  115. package/changelog/v0.3.2.md +5 -0
  116. package/changelog/v0.3.21.md +13 -0
  117. package/changelog/v0.3.22.md +29 -0
  118. package/changelog/v0.3.23.md +12 -0
  119. package/changelog/v0.3.24.md +34 -0
  120. package/changelog/v0.3.25.md +40 -0
  121. package/changelog/v0.3.26.md +85 -0
  122. package/changelog/v0.3.28.md +3 -0
  123. package/changelog/v0.3.29.md +107 -0
  124. package/changelog/v0.3.3.md +11 -0
  125. package/changelog/v0.3.30.md +3 -0
  126. package/changelog/v0.3.31.md +113 -0
  127. package/changelog/v0.3.32.md +123 -0
  128. package/changelog/v0.3.33.md +129 -0
  129. package/changelog/v0.3.34.md +156 -0
  130. package/changelog/v0.3.35.md +173 -0
  131. package/changelog/v0.3.36.md +186 -0
  132. package/changelog/v0.3.37.md +182 -0
  133. package/changelog/v0.3.38.md +3 -0
  134. package/changelog/v0.3.39.md +3 -0
  135. package/changelog/v0.3.4.md +9 -0
  136. package/changelog/v0.3.40.md +18 -0
  137. package/changelog/v0.3.41.md +7 -0
  138. package/changelog/v0.3.42.md +9 -0
  139. package/changelog/v0.3.43.md +13 -0
  140. package/changelog/v0.3.44.md +10 -0
  141. package/changelog/v0.3.45.md +12 -0
  142. package/changelog/v0.3.46.md +5 -0
  143. package/changelog/v0.3.47.md +4 -0
  144. package/changelog/v0.3.48.md +10 -0
  145. package/changelog/v0.3.49.md +18 -0
  146. package/changelog/v0.3.5.md +5 -0
  147. package/changelog/v0.3.50.md +41 -0
  148. package/changelog/v0.3.51.md +37 -0
  149. package/changelog/v0.3.52.md +43 -0
  150. package/changelog/v0.3.54.md +55 -0
  151. package/changelog/v0.3.55.md +62 -0
  152. package/changelog/v0.3.56.md +53 -0
  153. package/changelog/v0.3.57.md +61 -0
  154. package/changelog/v0.3.58.md +10 -0
  155. package/changelog/v0.3.59.md +3 -0
  156. package/changelog/v0.3.6.md +12 -0
  157. package/changelog/v0.3.60.md +3 -0
  158. package/changelog/v0.3.61.md +3 -0
  159. package/changelog/v0.3.62.md +3 -0
  160. package/changelog/v0.3.63.md +20 -0
  161. package/changelog/v0.3.64.md +10 -0
  162. package/changelog/v0.3.65.md +10 -0
  163. package/changelog/v0.3.66.md +17 -0
  164. package/{CHANGELOG.md β†’ changelog/v0.3.67.md} +1 -1
  165. package/changelog/v0.3.68.md +18 -0
  166. package/changelog/v0.3.9.md +10 -0
  167. package/package.json +3 -3
  168. package/sources.js +6 -8
  169. package/src/changelog-loader.js +41 -41
  170. package/web/dist/assets/{index-DCwSuNgI.js β†’ index-Cfy_uz7_.js} +1 -1
  171. package/web/dist/index.html +1 -1
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.1 - 2026-02-21
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.10 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,10 @@
1
+ # Changelog v0.1.11 - 2026-02-22
2
+
3
+ Add unit tests (59 tests), extract pure logic to lib/utils.js, fix GitHub Actions release workflow.
4
+
5
+ - Extract getAvg, getVerdict, getUptime, sortResults, filterByTier, findBestModel, parseArgs to lib/utils.js
6
+ - Add comprehensive test suite using node:test (sources integrity, core logic, CLI parsing, package sanity)
7
+ - Fix release.yml: remove broken npm version patch, add version detection via git tags, add GitHub Release creation
8
+ - Update AGENTS.md with test-first workflow instructions
9
+
10
+ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@@ -0,0 +1,16 @@
1
+ # Changelog v0.1.12 - 2026-02-22
2
+
3
+ ### Added
4
+ - Unit test suite: 59 tests across 11 suites using `node:test` (zero dependencies)
5
+ - Tests cover: sources data integrity, core logic (getAvg, getVerdict, getUptime, filterByTier, sortResults, findBestModel), CLI arg parsing, package.json sanity
6
+ - `lib/utils.js`: extracted pure logic functions from the monolithic CLI for testability
7
+ - `pnpm test` script in package.json
8
+
9
+ ### Fixed
10
+ - GitHub Actions release workflow: removed broken `npm version patch` loop, added version detection via git tags
11
+ - GitHub Actions now creates a GitHub Release with auto-generated notes for each new version
12
+
13
+ ### Changed
14
+ - AGENTS.md updated with test-first workflow: agents must run `pnpm test` before `pnpm start`
15
+
16
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.13 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the unit test suite addition (see [v0.1.12](../v0.1.12))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.14 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the unit test suite addition (see [v0.1.12](../v0.1.12))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.15 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the unit test suite addition (see [v0.1.12](../v0.1.12))._
@@ -0,0 +1,13 @@
1
+ # Changelog v0.1.16 - 2026-02-22
2
+
3
+ ### Added
4
+ - OpenCode Desktop support: new `--opencode-desktop` flag and menu option to set model & open the Desktop app
5
+ - "Read Changelogs" menu option when an update is available (opens GitHub releases page)
6
+ - `startOpenCodeDesktop()` function β€” same config logic as CLI, launches via `open -a OpenCode`
7
+
8
+ ### Changed
9
+ - Startup menu: "OpenCode" renamed to "OpenCode CLI", new "OpenCode Desktop" entry added
10
+ - TUI mode badge: shows `[πŸ’» CLI]` or `[πŸ–₯ Desktop]` or `[🦞 OpenClaw]`
11
+ - Footer action hint adapts to desktop mode (`Enter→OpenDesktop`)
12
+
13
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.17 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the OpenCode Desktop iteration (see [v0.1.16](../v0.1.16))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.18 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the OpenCode Desktop iteration (see [v0.1.16](../v0.1.16))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.19 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the OpenCode Desktop iteration (see [v0.1.16](../v0.1.16))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.2 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,14 @@
1
+ # Changelog v0.1.20 - 2026-02-22
2
+
3
+ ### Added
4
+ - **Dynamic tier filtering**: Use E/D keys to filter models by tier during runtime
5
+ - Tier filter badge shown in header (e.g., `[Tier S]`)
6
+ - E key elevates filter (show fewer, higher-tier models)
7
+ - D key descends filter (show more, lower-tier models)
8
+ - Preserves ping history when changing filters
9
+
10
+ ### Fixed
11
+ - **Error 401 with --tier flag**: Fixed issue where using `--tier` alone would show selection menu instead of proceeding directly to TUI
12
+ - Improved flag combination handling for better user experience
13
+
14
+ ---
@@ -0,0 +1,12 @@
1
+ # Changelog v0.1.21 - 2026-02-22
2
+
3
+ ### Refactored
4
+ - **Simplified tier filtering architecture**: Replaced complex object recreation with simple `hidden` flag system
5
+ - **Flags as shortcuts**: `--tier S` now just sets initial state instead of blocking dynamic filtering
6
+ - **Dynamic filtering preserved**: E/D keys work seamlessly even when starting with `--tier` flag
7
+
8
+ ### Fixed
9
+ - **Ping loop bug**: Fixed issue where filtered models weren't pinged due to using wrong results array
10
+ - **Initial ping bug**: Fixed issue where initial ping used wrong results array
11
+
12
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.22 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Local changelogs**: "Read Changelogs" menu option now opens local `CHANGELOG.md` file instead of GitHub releases
5
+
6
+ ---
@@ -0,0 +1,16 @@
1
+ # Changelog v0.1.23 - 2026-02-22
2
+
3
+ ### Refactored
4
+ - **Removed startup menu**: No more blocking mode selection menu at startup
5
+ - **Default to OpenCode CLI**: App starts directly in CLI mode when no flags given
6
+ - **Mode toggle in TUI**: Added Z key to cycle between CLI β†’ Desktop β†’ OpenClaw β†’ CLI
7
+ - **GitHub changelogs**: "Read Changelogs" option now opens GitHub URL instead of local file
8
+ - **Auto-update by default**: When new version available without flags, auto-updates and relaunches
9
+ - **Centered update menu**: Update notification appears only when needed, with clean centered layout
10
+
11
+ ### Changed
12
+ - **Header display**: Shows `[πŸ’» CLI] (Z to toggle)` with mode toggle hint
13
+ - **Footer instructions**: Added "M Mode" to key bindings
14
+ - **Update workflow**: Flags (`--opencode` etc.) still show update menu for compatibility
15
+
16
+ ---
@@ -0,0 +1,9 @@
1
+ # Changelog v0.1.24 - 2026-02-22
2
+
3
+ ## What's Changed
4
+ * fix: TUI viewport scrolling for Ghostty and narrow terminals by @whit3rabbit in https://github.com/vava-nessa/free-coding-models/pull/10
5
+
6
+ ## New Contributors
7
+ * @whit3rabbit made their first contribution in https://github.com/vava-nessa/free-coding-models/pull/10
8
+
9
+ **Full Changelog**: https://github.com/vava-nessa/free-coding-models/compare/v0.1.23...v0.1.24
@@ -0,0 +1,13 @@
1
+ # Changelog v0.1.25 - 2026-02-22
2
+
3
+ ### Added
4
+ - **Discord community link**: Added Discord invite to README and TUI footer
5
+ - **Enhanced footer layout**: Improved footer with multi-line layout showing GitHub repo and Discord links
6
+ - **Clickable author name**: "vava-nessa" is now clickable in terminal (opens GitHub profile)
7
+ - **Release notes automation**: GitHub Actions now uses CHANGELOG.md content for release notes instead of auto-generated notes
8
+ ### Changed
9
+ - **Tier filtering system**: Replaced E/D keys with T key that cycles through tier filters: all β†’ S+/S β†’ A+/A/A- β†’ B+/B β†’ C β†’ all
10
+ - **Footer text**: "Made with love by vava-nessa" with clickable links
11
+ ### Fixed
12
+ - **Release workflow**: GitHub Releases now display proper changelog content instead of generic commit summaries
13
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.26 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Footer improvements**: Replaced "Repository GitHub" with "GitHub", "love" with πŸ’– emoji, and simplified Discord text
5
+ - **README enhancement**: Added GitHub link section below Discord invite
6
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.27 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Footer redesign**: All links now on one line with clickable text: "Join our Discord!" and "Read the docs on GitHub"
5
+ - **Improved UX**: Links use same clickable format as author name for consistent user experience
6
+ ---
@@ -0,0 +1,5 @@
1
+ # Changelog v0.1.28 - 2026-02-22
2
+
3
+ ### Added
4
+ - **Footer emojis**: Added πŸ’¬ emoji before Discord link and ⭐ emoji before GitHub link for better visual appeal
5
+ ---
@@ -0,0 +1,5 @@
1
+ # Changelog v0.1.29 - 2026-02-22
2
+
3
+ ### Fixed
4
+ - **Discord link correction**: Updated all Discord invite URLs to use permanent link https://discord.gg/WKA3TwYVuZ
5
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.3 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,10 @@
1
+ # Changelog v0.1.31 - 2026-02-22
2
+
3
+ ### Added
4
+ - **SWE-bench column**: Added new SWE-bench Verified score column showing coding performance for each model
5
+ - **Color-coded column headers**: First letter of each column header is now colored (yellow) to indicate keyboard shortcut for sorting
6
+ - **Keyboard shortcut improvements**: Changed P to L for latest ping sorting, added E for SWE-bench sorting
7
+ ### Changed
8
+ - **Source name simplification**: Renamed "NVIDIA NIM" to "NIM" throughout the codebase
9
+ - **Enhanced footer Discord link**: Discord link now displays in bright cyan color with "(link fixed)" indicator
10
+ ---
@@ -0,0 +1,8 @@
1
+ # Changelog v0.1.32 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Column header improvements**: Fixed column alignment issues for better visual appearance
5
+ - **Status renamed to Condition**: "Status" column renamed to "Condition" for clarity
6
+ - **Keyboard shortcut updates**: S key now sorts by SWE-bench score, C key sorts by Condition
7
+ - **Footer Discord text update**: Changed "Join our Discord!" to "Join Free-Coding-Models Discord!"
8
+ ---
@@ -0,0 +1,5 @@
1
+ # Changelog v0.1.33 - 2026-02-22
2
+
3
+ ### Fixed
4
+ - **Column header alignment**: Fixed column headers misalignment issue caused by ANSI color codes interfering with text padding
5
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.34 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Condition renamed to Health**: Renamed "Condition" column to "Health" for better clarity
5
+ - **Keyboard shortcut update**: H key now sorts by Health (instead of C for Condition)
6
+ ---
@@ -0,0 +1,5 @@
1
+ # Changelog v0.1.35 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **Column reorganization**: Reordered columns for better logical flow: Rank / Tier / SWE% / Model / Origin / Latest Ping / Avg Ping / Health / Verdict / Up%
5
+ ---
@@ -0,0 +1,16 @@
1
+ # Changelog v0.1.36 - 2026-02-22
2
+
3
+ ### Added
4
+ - **SWE-bench Verified column**: Shows real SWE-bench Verified scores for all 44 models from official benchmarks
5
+ - **Color-coded keyboard shortcuts**: First letter of each column header colored in yellow to indicate sorting key
6
+ - **Heart and Coffee in footer**: "Made with πŸ’– & β˜• by vava-nessa"
7
+ ### Changed
8
+ - **Column organization**: Reordered columns for better logical flow: Rank / Tier / SWE% / Model / Origin / Latest Ping / Avg Ping / Health / Verdict / Up%
9
+ - **Health column**: Renamed from "Status" to "Health" with H key for sorting
10
+ - **SWE-bench sorting**: S key now sorts by SWE-bench score
11
+ - **Latest ping shortcut**: L key (instead of P) for sorting by latest ping
12
+ - **Source name**: Simplified "NVIDIA NIM" to "NIM"
13
+ ### Fixed
14
+ - **Column header alignment**: Fixed misalignment caused by ANSI color codes in headers
15
+ - **Discord link**: Updated to permanent invite link https://discord.gg/WKA3TwYVuZ
16
+ ---
@@ -0,0 +1,5 @@
1
+ # Changelog v0.1.37 - 2026-02-22
2
+
3
+ ### Added
4
+ - **Auto-update with sudo fallback**: When npm update fails due to permissions, automatically retries with sudo to complete the update
5
+ ---
@@ -0,0 +1,9 @@
1
+ # Changelog v0.1.38 - 2026-02-22
2
+
3
+ ### Fixed
4
+ - **Cross-platform OpenCode integration**: Fixed OpenCode CLI and Desktop installation issues on Windows and Linux
5
+ - **Windows**: Fixed config path to use %APPDATA%\opencode\opencode.json with fallback to ~/.config
6
+ - **Linux**: Added support for snap, flatpak, and xdg-open to launch OpenCode Desktop
7
+ - **All platforms**: Properly detects OS and uses correct commands and paths
8
+ - **OpenCode Desktop**: Platform-specific launch commands (macOS: `open -a`, Windows: `start`, Linux: multiple methods)
9
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.39 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the cross-platform OpenCode fixes (see [v0.1.38](../v0.1.38))._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.4 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.40 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the cross-platform OpenCode fixes (see [v0.1.38](../v0.1.38))._
@@ -0,0 +1,11 @@
1
+ # Changelog v0.1.41 - 2026-02-22
2
+
3
+ ### Changed
4
+ - **sources.js data audit** β€” verified and corrected SWE-bench scores, tiers, and context windows across all NIM models:
5
+ - Devstral 2 123B: `S, 62.0%, 128k` β†’ `S+, 72.2%, 256k` (official Mistral announcement)
6
+ - Mistral Large 675B: ctx `128k` β†’ `256k`
7
+ - QwQ 32B: ctx `32k` β†’ `131k`
8
+ - Llama 4 Maverick: ctx `128k` β†’ `1M` (NVIDIA NIM confirmed)
9
+ - Llama 4 Scout: ctx `128k` β†’ `10M` (NVIDIA NIM confirmed)
10
+ - GPT OSS 20B: ctx `32k` β†’ `128k`
11
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.42 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the multi-provider iteration (see [v0.1.44](../v0.1.44) for full changelog)._
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.43 - 2026-02-22
2
+
3
+ _Intermediate patch release β€” part of the multi-provider iteration (see [v0.1.44](../v0.1.44) for full changelog)._
@@ -0,0 +1,17 @@
1
+ # Changelog v0.1.44 - 2026-02-22
2
+
3
+ ### Added
4
+ - **Multi-provider support** β€” Groq (6 models) and Cerebras (3 models) added alongside NVIDIA NIM, for 53 total models
5
+ - **Multi-provider first-run wizard** β€” Steps through all 3 providers (NIM, Groq, Cerebras) on first launch; each is optional, Enter to skip; requires at least one key
6
+ - **Settings screen (`P` key)** β€” New TUI overlay to manage API keys per provider, toggle providers on/off, and test keys with a live ping
7
+ - **`lib/config.js`** β€” New JSON config system (`~/.free-coding-models.json`) replacing the old plain-text file
8
+ - Auto-migrates old `~/.free-coding-models` (plain nvidia key) on first run
9
+ - Stores keys per provider + per-provider enabled/disabled state
10
+ - `NVIDIA_API_KEY`, `GROQ_API_KEY`, `CEREBRAS_API_KEY` env vars override config
11
+ - **Per-provider ping URLs** β€” `ping()` now accepts explicit endpoint URL; each provider has its own API endpoint in `sources.js`
12
+ - **Provider name in Origin column** β€” Shows `NIM` / `Groq` / `Cerebras` instead of always `NIM`
13
+ ### Changed
14
+ - `MODELS` flat array now includes `providerKey` as 6th element
15
+ - State init filters models from disabled providers; rebuilds on settings close
16
+ - Config file path changed from `~/.free-coding-models` to `~/.free-coding-models.json` (migration is automatic)
17
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.45 - 2026-02-22
2
+
3
+ ### Fixed
4
+ - **Discord notification**: Fixed GitHub Actions workflow crash (secrets context not allowed in step `if` conditions β€” now handled in the Node script directly)
5
+
6
+ ---
@@ -0,0 +1,9 @@
1
+ # Changelog v0.1.46 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **Discord notification**: Fixed ECONNRESET error β€” drain response body with `res.resume()` and call `process.exit(0)` immediately after success so the Node process closes cleanly
5
+
6
+ ### Changed
7
+ - **Discord link**: Updated invite URL to `https://discord.gg/5MbTnDC3Md` everywhere (README, TUI footer)
8
+
9
+ ---
@@ -0,0 +1,6 @@
1
+ # Changelog v0.1.47 - 2026-02-23
2
+
3
+ ### Changed
4
+ - Release test
5
+
6
+ ---
@@ -0,0 +1,11 @@
1
+ # Changelog v0.1.48 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **`--tier` CLI flag**: `parseArgs()` was never called in `main()`, so `--tier S` was silently ignored β€” now wired in and applied on TUI startup (thanks @whit3rabbit, PR #11)
5
+ - **`--tier` value leaking into `apiKey`**: `parseArgs()` for-loop was capturing the tier value as the API key β€” fixed by skipping the value arg after `--tier`
6
+ - **Ctrl+C not exiting**: sort key handler was intercepting all single-letter keypresses including ctrl-modified ones β€” added `!key.ctrl` guard so Ctrl+C reaches the exit handler (PR #11)
7
+
8
+ ### Added
9
+ - Test verifying `--tier` value does not leak into `apiKey` (63 tests total)
10
+
11
+ ---
@@ -0,0 +1,10 @@
1
+ # Changelog v0.1.49 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **Cerebras / Groq without API key**: models were being pinged with the fallback NVIDIA key, causing misleading `❌ 401` β€” now pings without auth header; 401 is treated as `πŸ”‘ NO KEY` (server reachable, latency shown dimly)
5
+ - **Settings: entering an API key had no immediate effect**: after saving a key and closing Settings (Escape), models previously in `noauth` state are now immediately re-pinged with the new key
6
+
7
+ ### Changed
8
+ - Ping without API key is now always attempted β€” a 401 response confirms the server is UP and shows real latency; `πŸ”‘ NO KEY` replaces the old `❌ 401` misleading error
9
+
10
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.5 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,7 @@
1
+ # Changelog v0.1.50 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **Groq/Cerebras models selected for OpenCode were launched as NVIDIA models**: `providerKey` was not passed in `userSelected` on Enter, causing all models to be prefixed with `nvidia/` regardless of their actual provider β€” now correctly uses `groq/model-id` and `cerebras/model-id`
5
+ - **`startOpenCode` and `startOpenCodeDesktop`**: both functions now handle all 3 providers; Groq and Cerebras use OpenCode's built-in provider support (no custom config block needed, just `GROQ_API_KEY`/`CEREBRAS_API_KEY` env vars); NVIDIA retains its existing custom provider config flow
6
+
7
+ ---
@@ -0,0 +1,4 @@
1
+ # Changelog v0.1.51 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **Groq/Cerebras models selected for OpenCode had no provider block**: even with the correct `groq/model-id` prefix, OpenCode couldn't use the model because no `provider.groq` block existed in `opencode.json` β€” now automatically creates the provider block (Groq: built-in with `apiKey: {env:GROQ_API_KEY}`; Cerebras: `@ai-sdk/openai-compatible` with baseURL) and registers the model in `provider.<key>.models`
@@ -0,0 +1,10 @@
1
+ # Changelog v0.1.52 - 2026-02-23
2
+
3
+ ### Fixed
4
+ - **OpenCode model handoff** (PR #14 by @whit3rabbit): API keys from `~/.free-coding-models.json` were not passed to the OpenCode child process, causing silent fallback to the previous model. Also fixes Groq model ID mismatches (e.g. `kimi-k2-instruct` β†’ `kimi-k2-instruct-0905`) via a new `OPENCODE_MODEL_MAP`
5
+ - **OpenClaw nvidia provider missing models array** (PR #13 by @whit3rabbit): `startOpenClaw()` created the nvidia provider block without a `models` property, causing Zod schema validation to reject the config
6
+
7
+ ### Improved
8
+ - **Discord link in TUI footer**: the invite URL is now displayed in plain text on a separate line so it's visible and copiable on terminals that don't support clickable links
9
+
10
+ ---
@@ -0,0 +1,41 @@
1
+ # Changelog v0.1.54 - 2026-02-23
2
+
3
+ ### Added β€” Providers & Models
4
+
5
+ **5 new providers** (9 total, 101 models):
6
+
7
+ - **OpenRouter** β€” 8 free coding models via the `:free` quota tier (20 req/min, 50 req/day shared). Includes Qwen3 Coder, Step 3.5 Flash, DeepSeek R1 0528, GPT OSS 120B/20B, Nemotron Nano 30B, Llama 3.3 70B. Key prefix: `sk-or-`
8
+ - **Mistral Codestral** β€” dedicated coding endpoint (`codestral.mistral.ai`), `codestral-latest` model, 30 req/min / 2 000 req/day. Separate API key from the main Mistral platform. Key prefix: `csk-`
9
+ - **Hyperbolic** β€” $1 free trial credits. 10 models: Qwen3 Coder 480B, DeepSeek R1 0528, Kimi K2, GPT OSS 120B, Qwen3 235B, Qwen3 80B Instruct, DeepSeek V3 0324, Qwen2.5 Coder 32B, Llama 3.3 70B, Llama 3.1 405B. Key prefix: `eyJ`
10
+ - **Scaleway** β€” 1 million free tokens. 7 models: Devstral 2 123B, Qwen3 235B, GPT OSS 120B, Qwen3 Coder 30B, Llama 3.3 70B, R1 Distill 70B, Mistral Small 3.2. Key prefix: `scw-`
11
+ - **Google AI Studio** β€” free Gemma 3 models (14 400 req/day, 30 req/min). Gemma 3 27B / 12B / 4B via the OpenAI-compatible `generativelanguage.googleapis.com/v1beta/openai` endpoint. Key prefix: `AIza`
12
+
13
+ **New models in existing providers:**
14
+
15
+ - **Groq**: GPT OSS 120B (`openai/gpt-oss-120b`), GPT OSS 20B (`openai/gpt-oss-20b`), Qwen3 32B (`qwen/qwen3-32b`)
16
+ - **Cerebras**: GLM 4.6 (`glm-4.6`) from Z.ai β€” 10 req/min, 100 req/day
17
+ - **SambaNova**: DeepSeek V3.1 Terminus (`deepseek-ai/DeepSeek-V3.1-Terminus`, S tier 68.4%)
18
+
19
+ ### Added β€” TUI Features
20
+
21
+ - **`N` key β€” Origin/provider filter**: cycles through All β†’ NIM β†’ Groq β†’ Cerebras β†’ SambaNova β†’ OpenRouter β†’ Codestral β†’ Hyperbolic β†’ Scaleway β†’ Google AI β†’ All, mirroring how `T` cycles tiers. The active provider is shown as a badge in the header. The Origin column header now reads `Origin(N)` and highlights in blue when a filter is active.
22
+ - **`C` key β€” Sort by context window**: the context-window sort was previously on `N`; moved to `C` (mnemonic: Context) to free up `N` for the origin filter.
23
+ - **`K` key β€” Help overlay**: press `K` (or `Esc`) to open/close a full keyboard shortcut reference listing every key and what it does, rendered in the alt-screen buffer without leaving the TUI.
24
+ - **`Esc` closes help and settings**: pressing Escape now dismisses both the `K` help overlay and the `P` settings screen. The help overlay intercepts Esc before the settings handler so there is no key conflict.
25
+
26
+ ### Changed β€” README & UI
27
+
28
+ - Provider count badge updated: **4 β†’ 9 providers**
29
+ - Model count badge updated: **67 β†’ 101 models**
30
+ - Requirements section lists all 9 providers with their signup URLs
31
+ - Discord header block replaced with a plain `πŸ’¬ Let's talk about the project on Discord` link
32
+ - Support section reformatted: GitHub issues link + Discord link on separate lines + docs link with inline BETA warning (`⚠️ free-coding-models is a BETA TUI β€” expect rough edges and occasional crashes`)
33
+ - Footer hint line updated: `T Tier β€’ N Origin β€’ … C` replaces old `N` in sort hint; `K Help` added
34
+
35
+ ### Technical
36
+
37
+ - `sources.js`: 5 new named exports; `sources` object extended to 9 entries; `@exports` JSDoc updated
38
+ - `lib/config.js`: `ENV_VARS` extended with `openrouter`, `codestral`, `hyperbolic`, `scaleway`, `googleai`; JSDoc config structure comment updated
39
+ - `bin/free-coding-models.js`: first-run wizard extended to 9 providers; `ENV_VAR_NAMES` extended; OpenCode/OpenCode-Desktop provider blocks added for all 5 new providers (all use `@ai-sdk/openai-compatible` + baseURL); `ORIGIN_CYCLE` + `originFilterMode` state; `renderTable` signature gains `originFilterMode` parameter; `renderHelp()` function added; all `renderTable` call sites updated
40
+
41
+ ---
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.55 - 2026-02-23
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,11 @@
1
+ # Changelog v0.1.56 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer
6
+
7
+ - **Footer cleaned up and restructured**: removed duplicate/messy lines; consolidated into two clean footer lines:
8
+ - Line 1: `Made with πŸ’– & β˜• by vava-nessa β€’ ⭐ Star on GitHub` (clickable links)
9
+ - Line 2: `πŸ’¬ Join our Discord β€’ ⚠ BETA TUI β€” might crash or have problems`
10
+ - **BETA warning added to TUI footer**: `⚠ BETA TUI` badge in yellow with a plain-text disclaimer, always visible at the bottom of the TUI app
11
+ - **Discord invite in TUI footer**: clickable OSC 8 hyperlink added directly in the footer (was only in README before)
@@ -0,0 +1,7 @@
1
+ # Changelog v0.1.57 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer
6
+
7
+ - **Discord link text shortened**: "Join our Discord" replaces the longer previous label β€” cleaner footer, same clickable OSC 8 hyperlink
@@ -0,0 +1,7 @@
1
+ # Changelog v0.1.58 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI
6
+
7
+ - **Timeout emoji updated**: replaced `⏱` with `⏳` everywhere in the TUI (ping timeout display)
@@ -0,0 +1,7 @@
1
+ # Changelog v0.1.59 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer
6
+
7
+ - **`K Help` badge in footer is now bright green**: previously plain text, now rendered as `chalk.bgGreen.black.bold(' K Help ')` so it's immediately visible in the footer hint line
@@ -0,0 +1,3 @@
1
+ # Changelog v0.1.6 - 2026-02-22
2
+
3
+ _No release notes available for this version._
@@ -0,0 +1,7 @@
1
+ # Changelog v0.1.60 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer
6
+
7
+ - **Discord URL now shown in plain text**: after the clickable "Join our Discord" hyperlink, the raw URL `https://discord.gg/5MbTnDC3Md` is now printed in cyan, separated by `β†’`. This helps users on terminals that don't support OSC 8 clickable links to still see and copy-paste the URL.
@@ -0,0 +1,9 @@
1
+ # Changelog v0.1.61 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer & UX
6
+
7
+ - **"Made with" line is now pink**: the entire "Made with πŸ’– & β˜• by vava-nessa" sentence is now rendered in soft pink, making it visually distinct from the rest of the footer
8
+ - **`K Help` badge is now ultra-visible**: changed from plain green background to bright green (`bgGreenBright`) with **yellow bold text** β€” stands out immediately at a glance in the footer hint line
9
+ - **`P` key closes Settings**: pressing `P` again while inside the Settings screen now closes it (same behavior as `Esc`). Both keys now trigger the same close + provider rebuild logic
@@ -0,0 +1,9 @@
1
+ # Changelog v0.1.62 - 2026-02-23
2
+
3
+ ## What's new
4
+
5
+ ### TUI Footer & UX
6
+
7
+ - **"Made with" line is now pink**: the entire "Made with πŸ’– & β˜• by vava-nessa" sentence is now rendered in soft pink, making it visually distinct from the rest of the footer
8
+ - **`K Help` badge is now ultra-visible**: changed to bright green background (`bgGreenBright`) with **black bold text** β€” high contrast, stands out immediately at a glance in the footer hint line
9
+ - **`P` key closes Settings**: pressing `P` again while inside the Settings screen now closes it (same behavior as `Esc`). Both keys now trigger the same close + provider rebuild logic
@@ -0,0 +1,15 @@
1
+ # Changelog v0.1.63 - 2026-02-24
2
+
3
+ ### Changed
4
+
5
+ - Replaced webhook telemetry with PostHog capture API (`/i/v0/e/`) and kept explicit consent + `--no-telemetry` opt-out.
6
+ - Added persistent anonymous telemetry identity in config (`telemetry.anonymousId`) for stable anonymous usage counts.
7
+ - Added telemetry consent screen UX: custom ASCII onboarding, explicit privacy messaging, and β€œAccept & Continue” default action.
8
+ - Added telemetry toggle in Settings (`P`) and documented env controls: `FREE_CODING_MODELS_TELEMETRY`, `FREE_CODING_MODELS_POSTHOG_KEY`, `FREE_CODING_MODELS_POSTHOG_HOST`.
9
+ - Added telemetry metadata fields: `app_version`, `system` (`macOS`/`Windows`/`Linux`), and `terminal` (Terminal.app/iTerm2/kitty/etc. with fallback).
10
+ - Added telemetry debug mode with `FREE_CODING_MODELS_TELEMETRY_DEBUG=1` (stderr traces for sent/skip/error states).
11
+ - Hardened telemetry safety behavior: analytics failures stay non-blocking and non-TTY runs no longer overwrite stored consent.
12
+ - Fixed consent renderer to avoid full-screen clear side effects and preserve header visibility across terminals.
13
+ - Updated TUI footer contributors link to point to the repository contributors graph.
14
+
15
+ ---
@@ -0,0 +1,22 @@
1
+ # Changelog v0.1.64 - 2026-02-24
2
+
3
+ ### Added
4
+
5
+ - Added 4 new free providers: Hugging Face Inference, Replicate, DeepInfra, and Fireworks AI (models, key handling, healthchecks, Settings integration).
6
+ - Added richer Settings (`P`) provider rows with inline rate-limit summary and live API key test status.
7
+
8
+ ### Changed
9
+
10
+ - OpenCode launch now detects `tmux` and auto-injects `--port` (`OPENCODE_PORT` if free, otherwise first available `4096-5095`) so sub-agent panes work reliably.
11
+ - Updated OpenRouter free model set to include `qwen/qwen3-coder:480b-free`, `mistralai/devstral-2-free`, and `mimo-v2-flash-free`.
12
+ - Added SambaNova `Llama3-Groq` coding-tuned entry.
13
+ - Updated setup/config docs and env var support for new providers (`HUGGINGFACE_API_KEY`/`HF_TOKEN`, `REPLICATE_API_TOKEN`, `DEEPINFRA_API_KEY`/`DEEPINFRA_TOKEN`).
14
+ - Replicate pings now use `/v1/predictions` request format; OpenCode launch for Replicate is guarded with a clear monitor-only message.
15
+ - Settings bottom panel now shows provider onboarding steps (signup URL + key creation/test flow) instead of model list details.
16
+ - Documented in `AGENTS.md` that top changelog entries must stay clean for direct reuse in GitHub Release notes.
17
+
18
+ ### Fixed
19
+
20
+ - Settings/onboarding disabled state now uses an explicit red cross (`❌`) instead of a gray square glyph for better terminal font compatibility.
21
+
22
+ ---
@@ -0,0 +1,15 @@
1
+ # Changelog v0.1.65 - 2026-02-25
2
+
3
+ ### Added
4
+
5
+ - Added persistent model favorites with `F` key toggle, star marker in Model column, dark-orange favorite highlighting, and pinned-at-top behavior.
6
+ - Added manual update maintenance flow in Settings (`P`): check npm updates on demand and install directly from the settings screen.
7
+ - Expanded `K` help overlay with complete keybindings (main TUI + settings) and CLI flags usage examples.
8
+
9
+ ### Changed
10
+
11
+ - Favorites now remain visible and pinned regardless of active sort or tier/origin filters.
12
+ - Extended config schema (`~/.free-coding-models.json`) with a persisted `favorites` array (`providerKey/modelId` entries).
13
+ - Updated README documentation for favorites, manual updates, settings shortcuts, and config structure.
14
+
15
+ ---