# Changelog v0.3.35 - 2026-04-07

### Added
- **OVHcloud AI Endpoints** — new European sovereign AI provider (8 models: Qwen3 Coder 30B MoE, GPT OSS 120B, GPT OSS 20B, Llama 3.3 70B, Qwen3 32B, R1 Distill 70B, Mistral Small 3.2, Llama 3.1 8B)
- Free sandbox mode: 2 req/min per IP per model (no API key needed), 400 RPM with API key
- **Now 238 models across 25 providers** (was 230/24)

### SECURITY.md
- **SECURITY.md** — full security policy with vulnerability reporting, architecture, and supply chain docs
- **CODEOWNERS** — all changes require @vava-nessa review
- **Dependabot** — weekly automated dependency + GitHub Actions updates (`.github/dependabot.yml`)
- **Security Audit CI** — `npm audit` + lockfile lint on every push/PR + weekly schedule (`.github/workflows/security-audit.yml`)
- **npm Provenance** — release workflow now publishes with `--provenance` (Sigstore-signed)
- **SBOM generation** — Software Bill of Materials attached to every GitHub Release
- **README trust badges** — dependency count, provenance, supply chain badges
- **README 🛡️ Security section** — what the tool does/doesn't do, supply chain table

## [0.3.34] - 2026-04-06

### Added
- **Chutes AI** — new decentralized free provider (4 models: DeepSeek R1, Llama 3.1 70B, Qwen 2.5 72B, Qwen2.5 Coder 32B)
- **Google Gemini 3.1 Pro** — replaced dead Gemini 3 Pro (shut down March 9)
- **Google Gemma 4 family** — Gemma 4 31B, Gemma 4 26B MoE, Gemma 4 E4B added to Google AI Studio
- **Qwen3.6 Plus** and **Qwen3.5 Plus** added to Alibaba DashScope
- **NVIDIA NIM: Kimi K2 Instruct 0905** added
- **SambaNova: Qwen3-235B-A22B-Instruct-2507** added
- **OpenRouter: ~10 new free models** (arcee trinity, mimo-v2-flash, etc.) — 25 total
- **Together AI: expanded to 19 free models** (DeepSeek V3.2, MiniMax M2.1, etc.)
- **Cloudflare: 4 new models** (gemma-4-26b, mistral-small-3.1, qwq-32b, granite-4.0) — 15 total
- **Scaleway: gpt-oss-120b and holo2-30b-a3b** added
- **Hyperbolic: gpt-oss-20b and Qwen3-235B-Instruct-2507** added
- **Rovo: GPT-5.2, GPT-5.2-Codex, Claude Haiku 4.5** added
- **OpenCode Zen: mimo-v2-pro-free, mimo-v2-omni-free** added; fixed context windows (gpt-5-nano: 128k→400k, nemotron-3-super-free: 128k→1M)

### Changed
- **Groq scout model renamed** — `llama-4-scout-17b-16e-preview` → `llama-4-scout-17b-16e-instruct`
- **Now 230 models across 24 providers** (was 174/23)
- **README provider table fully updated** with accurate per-provider counts

### Fixed
- Removed 3 deprecated Cerebras models (llama3.3-70b, qwen-3-32b, llama-4-scout-17b-16e-instruct) — 4 remain
- Fixed missing comma in googleai array causing undefined model entry
- Replaced all `??%` placeholder SWE scores with reasonable estimates

## [0.3.33] - 2026-04-01

### Changed
- **X badge darker fuchsia background** (`rgb(140,0,80)`) for better readability
- **Updated text** → "Follow me on X: @vavanessadev to check my other projects! 💖"

## [0.3.32] - 2026-04-01

### Fixed
- **Corrected X/Twitter username to @vavanessadev** — link and display text now point to the right profile

### Changed
- **X support badge now on fuchsia background** — bold white-on-fuchsia with yellow username, impossible to miss
- **Discord moved to the very bottom line** of the TUI footer
- **X follow link added to top of README**

## [0.3.31] - 2026-04-01

### Changed
- **Footer layout reorganized** — Discord link moved to the very bottom line of the TUI for better visibility
- **X/Twitter support message** — added 🐦 "Support me on X: @vavanessadev 💖" with clickable link in the last release footer line

## [0.3.29] - 2026-03-27

### Added
- **Fluorescent green UPDATE AVAILABLE banner** — impossible-to-miss fluo green (🚀⬆️) banner at the bottom of the TUI when a new version is detected; click it to update instantly
- **Command Palette update entry** — `⬆️ UPDATE NOW` is always the first result in Ctrl+P when an update is available
- **Shift+U hotkey** — press Shift+U from the main table to trigger an immediate update
- **Mouse-clickable update banner** — click the fluo green banner to install the latest version and relaunch
- **Background version re-check every 5 minutes** — if a new version is published while the TUI is open, the banner appears live without restarting
- **Aggressive pre-TUI update prompt** — fluorescent green header, and "Continue without update" warns that reminders will follow
- **Last release date in footer** — light pink `Last release: Mar 27, 2026, 09:42 PM` shows when the package was last published to npm, so users know how fresh the model data is
- **Demo2 GIF** — added `demo2.gif` to README for visual showcase of the TUI

### Fixed
- **Auto-update now detects the correct package manager** — bun, pnpm, and yarn users no longer get duplicate npm installs (fixes #46)
- Update banner in footer shows the correct install command for your package manager

## [0.3.28] - 2026-03-27

_(Skipped — published as 0.3.28 without changelog in commit message, all changes are in 0.3.29)_

## [0.3.27] - 2026-03-27

## [0.3.26] - 2026-03-27

### Added
- **Groq**: Added Compound + Compound Mini; fixed Llama 4 Scout context (10M)
- **OpenRouter**: Added MiniMax M2.5, Nemotron 3 Super, Hermes 3 405B, Gemma 3n E4B
- **HuggingFace**: Replaced invalid DeepSeek-V3-Coder + outdated starcoder2-15b with DeepSeek V3 0324 + Qwen2.5 Coder 32B
- **Replicate**: Replaced CodeLlama 70B (2023) with DeepSeek V3 0324 + Llama 3.3 70B
- **Cloudflare**: Added Kimi K2.5, GLM-4.7-Flash, Llama 4 Scout, Nemotron 3 Super, Qwen3 30B MoE
- **Scaleway**: Added Qwen3.5 400B VLM + Mistral Large 675B
- **DeepInfra**: Replaced Mixtral Code with Nemotron 3 Super + DeepSeek V3 0324 + Qwen3 235B
- **Fireworks**: Added Llama 4 Maverick + Qwen3 235B
- **Hyperbolic**: Added Qwen3 80B Thinking variant
- **Together AI**: Added Qwen3.5 400B VLM, MiniMax M2.5, GLM-5

### Changed
- **Rovo Dev CLI**: Updated Sonnet 4 → Sonnet 4.6, added Opus 4.6
- **Groq**: Removed 4 deprecated models (R1 Distill 70B, QwQ 32B, Kimi K2, Maverick)
- **OpenRouter**: Updated context sizes for multiple models

## [0.3.25] - 2026-03-19

### Added
- **Installed Models Manager** — View, launch, and disable models configured in external tools (Goose, Crush, Aider, Qwen, Pi, OpenHands, Amp)
  - Access via Command Palette (Ctrl+P) → "Installed models"
  - Scans all supported tool configs automatically on opening
  - Displays all models per tool (e.g., Crush shows both large and small models)
  - Actions: Launch (Enter), Disable (D) with backup, Reinstall (R)
  - Soft delete: Comments out model entries and saves backups to ~/.free-coding-models-backups.json
- **Full mouse support for the TUI** — Click, right-click, double-click, and scroll work throughout the interface
  - **Click column headers** — Sort by any column (click Rank, Tier, SWE%, CTX, Model, Provider, etc.)
  - **Click model rows** — Move cursor to any model (left-click)
  - **Right-click model rows** — Toggle favorite (same as F key)
  - **Double-click model rows** — Select model and launch (same as Enter)
  - **Mouse wheel** — Scroll through the main table, overlays (Settings, Help, Changelog), and command palette results
  - **Click CLI Tools header** — Cycle through tool modes (same as Z key)
  - **Click Tier header** — Cycle through tier filters (same as T key)
  - **Click footer hotkeys** — Trigger any visible hotkey from the footer
  - **Command palette click** — Click inside to select items, double-click to confirm; click outside to close
  - **Recommend questionnaire click** — Click on option rows to select, double-click to confirm
- **Mouse unit tests** — 46 new tests covering SGR sequence parsing, double-click detection, modifiers, and COLUMN_SORT_MAP validation

### Changed
- **CLI Tools column redesigned** — Renamed from "Compatible with" to "CLI Tools", with left-aligned emoji display (compatible tools packed left instead of fixed slot positions)
- **Sort arrow overflow fixed** — SWE%, CTX, Stability, and Uptime columns now properly fit within their widths when sorted (arrow now `↑SWE%` instead of `↑ SWE%`)
- **Mouse sequence suppression** — SGR mouse sequences no longer leak into keypress handlers (prevents spurious sort/filter triggers when clicking)

### Fixed
- **Command palette scroll leak** — Mouse wheel no longer injects raw SGR sequence bytes into the command palette text input
- **Double-action on model click** — Clicking a model row now only moves the cursor; it no longer simultaneously triggers column sorting
- **Mouse event listener order** — Fixed race condition where readline emitted keypress events before mouse data was processed

## [0.3.24] - 2026-03-19

### Added
- **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)
- **Merged compat column** — OpenCode CLI and Desktop share 📦 in a single slot (11 slots instead of 12 separate initials)
- **COMPAT_COLUMN_SLOTS** — New export in tool-metadata.js for merged compatible-column rendering
- **Width warning now always shows** - Terminal width warning displays every time terminal is resized below 80 columns (previously limited to 2 shows per session)
- **Gemini CLI integration** - New CLI-only tool provider with 3 models (Gemini 3 Pro 🆕, Gemini 2.5 Pro, Gemini 2.5 Flash)
- **Rovo Dev CLI integration** - New CLI-only tool provider with Claude Sonnet 4 🆕
- **Tool compatibility alerts** - When trying to launch Rovo/Gemini models with wrong tool, shows alert and offers to switch
- **Auto-install detection** - Prompt to install CLI tools when binary not found (Rovo/Gemini)
- **OpenAI-compatible API support for Gemini** - Gemini CLI can use custom providers via environment variables
- **New CLI flags** - Added `--rovo` and `--gemini` launch options
- **"🆕" badges** - Mark newly added models in the table (Claude Sonnet 4, Gemini 3 Pro)
- **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
- **"Compatible with" column** - New TUI column showing colored emojis for each tool a model supports; incompatible tools show dim spaces
- **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
- **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)
- **Tool compatibility functions** - `getCompatibleTools()` and `isModelCompatibleWithTool()` in tool-metadata.js for programmatic compatibility checks
- **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
- **findSimilarCompatibleModels()** - New function in tool-metadata.js that finds models with closest SWE scores compatible with the active tool
- **Updated provider/model counts** - Now 23 providers with 171 models (was 20/160)

### Changed
- **Z key cycle** - Rovo and Gemini added to tool mode cycle (last in order)
- **Tool metadata** - Removed `initial` field (replaced by emojis), added `cliOnly` flag for CLI-only tools, `emoji` and `color` properties for all 12 tools
- **Provider metadata** - Added Rovo, Gemini, and OpenCode Zen provider information
- **Responsive column hiding** - Compatible column hides first (before Rank) on narrow terminals
- **Key handler** - Zen models auto-switch to OpenCode CLI on launch; API key warnings skip Zen models
- **Documentation** - Updated README with CLI-only tools section, Zen models, compatibility matrix

### Fixed
- **Missing import error** - Fixed `getToolMeta` not defined in key-handler.js
- **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
