Files
claude-mode/CHANGELOG.md
T
smoidoandClaude Opus 5 51e42823d1 Tests, licence, and the tooling to keep the repo consistent
A test suite with no dependencies beyond bash and the Python standard
library, run by one command:

  scripts/test.sh                    (or: make test)
  scripts/test.sh --windows [host]   adds the PowerShell suite over SSH

- tests/static.sh: script syntax, JSON validity, VERSION against the widget
  manifest and CHANGELOG, providers.json against the kinds, probes and checks
  the code implements (and ids that would shadow a command), qmllint and
  shellcheck when installed.
- tests/python: unit tests for cm-json.py - providers and the column contract
  bash depends on, the original three scaffolds byte for byte, every
  catalogue parser and the cache, session scan/dismiss/repair, rename,
  defaults, health, the cost guard.
- tests/cli: the CLI in a sandbox with its own HOME, CM_ROOT,
  CLAUDE_CONFIG_DIR and a file-only vault, against fake Ollama, LM Studio,
  keyed-gateway and proxy servers - preflight, presets, models, doctor, a real
  switch, sessions, and the key helper under a rename race.
- tests/windows: the same idea on a Windows host, with USERPROFILE pointed at
  a temp folder so the real install is never touched.

Also: MIT licence, CHANGELOG.md reconstructed from history, .editorconfig and
.gitattributes pinning LF everywhere (what the tree already is), and
scripts/bump-version.sh, since the version lives in two files and drifted
once before.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 01:42:38 +03:00

69 lines
3.1 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.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.