Files
2026-09-15 02:14:08 +03:00

88 lines
4.0 KiB
Markdown

# Changelog
All notable changes to claude-mode. Versions follow [semver](https://semver.org):
a minor version adds behaviour, a patch fixes it. The version lives in `VERSION`
and in the bar widget's `omarchy/smoido.claude-mode/manifest.json`, and
`scripts/bump-version.sh` changes both.
## 1.13.0 — 2026-09-15
Maintainability; no change in what the tool does.
- **Tests.** `scripts/test.sh` (or `make test`) runs static checks, a Python
unit suite for `cm-json.py`, and sandboxed CLI suites against fake Ollama,
LM Studio, keyed-gateway and proxy servers. `--windows [host]` adds the
Windows suite on a remote host, in a `USERPROFILE` sandbox.
- **Docs.** A short README; the detail lives in `docs/` (providers, live
sessions, design, bar widget, architecture, development) and
`CONTRIBUTING.md`. MIT licence.
- **Modules.** The POSIX CLI is split into `linux/lib/*.sh`, the Windows script
into `lib\*.ps1`, and the bar panel into one QML file per stage. The
installers copy the modules and clear stale ones.
- `scripts/bump-version.sh` keeps `VERSION` and the widget manifest in step.
- Removed: the Arkylx Index packaging (`linux/bootstrap.sh`,
`scripts/build-package.ps1`).
- Fixed: the per-project session listing used `awk`, which minimal images lack.
## 1.12.0 — 2026-09-15
- **Providers are data.** Every gateway provider is an entry in `providers.json`:
its endpoint, auth, model-list format, pre-switch probe, setup, doctor checks
and presentation. The bash CLI, the Windows build and the bar widget all read
it, and a provider that reuses existing behaviour needs no code.
- **Ollama** mode: local server, one model for every tier, `doctor` reads the
context each loaded model actually runs with (Ollama defaults to 4096 tokens
and truncates silently).
- **Custom** mode: any Anthropic-compatible endpoint; refused until it has an
address; a proxy with no model list is not treated as broken.
- Preflight refuses a preset with no server address. The Windows build gains
the no-address and no-models guards it never had.
## 1.11.0 — 2026-09-15
- Preset editor in the bar panel: edit a tier from a searchable, cached model
list; create, duplicate, rename and delete presets.
- `claude-mode preset default <provider> <name>` chooses which preset
`claude-mode <provider>` picks (`defaults.json`).
- `models --preset/--refresh/--json`, and a model cache every fetch keeps fresh.
- A tier edit to the active preset re-applies without the running-sessions
prompt (it moves neither endpoint nor key).
- Preset names are validated (`preset show ../../etc/passwd` used to print it).
- The key helper reads the active preset in one open, so renaming it cannot
catch a running session mid-lookup.
- The panel moved to `KeyboardPanel`: no text field in the old popup could
ever receive typing.
## 1.10.0 — 2026-09-14
- Dismiss a broken session (`repair-session --ignore`), and hide broken ones
untouched for 7 days; hidden ones are always counted, never silently dropped.
- The panel offers Ignore beside Repair, with a collapsed hidden section.
## 1.9.3 — 2026-09-13
- `set-key [ref] [key]` takes the ref it was given, and a key inline; the
Windows build builds the SecureString for an inline key too.
## 1.9.2 — 2026-09-12
- Transcript lookup uses the project directory Claude Code actually uses: every
non-alphanumeric character becomes a dash, and the physical path is slugged.
## 1.9.1 — 2026-09-12
- Runs on macOS: bash 3.2, arrow keys, honest session reporting without `/proc`.
- The `apiKeyHelper` path is quoted, and the helper says why it failed.
## 1.9.0 — 2026-09-01
- One-line installs from the repository (`irm | iex`, `curl | bash`).
## 1.8.x and earlier — 2026-08-30 to 2026-08-31
- Linux port with a theme-aware TUI, switch preflight and session control.
- Omarchy bar widget: shows the active provider and switches from the bar.
- Asks before switching while sessions are live; repairs sessions a switch
broke, keeping the cut turns as Markdown and handing them back.
- One preset per mode, with a first-run setup that fills it in.