diff options
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 451092f..d3df977 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,39 @@ All notable changes to this project are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Added + +- External OpenAI-compatible providers. The local llama.cpp router stays the + default; adding a `[providers.*]` table brings cloud models into the picker + as `provider:model`. The generated config ships the provider block commented + out, so a fresh install never reaches an endpoint nobody configured. +- Three ways to supply a provider API key: `pass:name` reads from the password + store, `env:VAR` reads from the environment, and a literal `sk-...` string + is used as-is. `pass:` is preferred because it keeps secrets out of + `config.toml`. +- Lazy key resolution. The password store or environment is only consulted on + the first request to a provider, so a local-only session never triggers a + pinentry. +- Model filtering per provider. The `filter` key keeps only models whose id + contains one of the configured substrings, case-insensitively. Providers + list hundreds of models, and without a filter the picker is unusable. +- A per-model settings dialog for context size, vision support and input/output + prices. Values are saved to `models.ini` beside `config.toml`, so provider + defaults can be overridden per model. +- Per-conversation cost readout with projection. The top bar shows what has + been spent so far plus what the current draft would add, based on hand-entered + prices. This exists to make visible that a long conversation on a cloud + provider is billed for its whole history on every turn. +- Three new columns on `messages`: `prompt_tokens`, `completion_tokens` and + `model`. Token counts come from the stream's final usage chunk and power the + cost readout; the model column records which model actually replied, so a + switched conversation prices each turn correctly. + +Tool calling and reasoning output vary between providers. Web search on a +cloud model may not work as reliably as it does with a local router. + ## [0.3.0] - 2026-08-01 ### Changed |
