From d9b9c8edabfc57bd91cad3327d70d6b6cbb6ea06 Mon Sep 17 00:00:00 2001 From: Bohdan Triapitsyn Date: Sat, 5 Sep 2026 15:58:23 +0300 Subject: [PATCH] feat(changelog): one source file per release, generated outputs Release notes now live in changelog/.md (front matter with version and date, then ## App and ## VS Code sections grouped into New, Improvements, Fixes, Misc) plus changelog/unreleased.md for what has not shipped. `bun run changelog:build` renders CHANGELOG.md, packages/vscode/CHANGELOG.md, and changelog/index.json from them; `changelog:check` fails when the outputs are behind and runs in CI and in release:prepare. `oc-dev create-release` promotes unreleased.md to the versioned file dated today and rebuilds. The existing history was split mechanically: every bullet kept, sorted into groups by keyword, five hand-typed headers with one-digit days normalised to YYYY-MM-DD (the update dialog matched none of them). The generated files keep today's release headers, which the update dialog, the release workflow, and the website match by regex. Claude-Session: https://claude.ai/code/session_01VqV56Hez25hTxXH4ipJfzH --- .agents/skills/changelog-authoring/SKILL.md | 21 +- .github/workflows/oc-review.yml | 3 + AGENTS.md | 2 +- CHANGELOG.md | 1767 +++++-- changelog/1.0.1.md | 11 + changelog/1.0.2.md | 9 + changelog/1.0.3.md | 10 + changelog/1.0.4.md | 9 + changelog/1.0.5.md | 13 + changelog/1.0.6.md | 9 + changelog/1.0.7.md | 10 + changelog/1.0.8.md | 13 + changelog/1.0.9.md | 14 + changelog/1.1.0.md | 23 + changelog/1.1.1.md | 12 + changelog/1.1.2.md | 24 + changelog/1.1.3.md | 12 + changelog/1.1.4.md | 19 + changelog/1.1.5.md | 22 + changelog/1.1.6.md | 16 + changelog/1.10.0.md | 38 + changelog/1.10.1.md | 39 + changelog/1.10.2.md | 27 + changelog/1.10.3.md | 35 + changelog/1.10.4.md | 32 + changelog/1.11.0.md | 38 + changelog/1.11.1.md | 34 + changelog/1.11.2.md | 27 + changelog/1.11.3.md | 39 + changelog/1.11.4.md | 33 + changelog/1.11.5.md | 34 + changelog/1.11.6.md | 23 + changelog/1.11.7.md | 29 + changelog/1.12.0.md | 34 + changelog/1.12.1.md | 46 + changelog/1.12.2.md | 23 + changelog/1.12.3.md | 18 + changelog/1.12.4.md | 57 + changelog/1.13.0.md | 64 + changelog/1.13.1.md | 45 + changelog/1.13.2.md | 25 + changelog/1.13.3.md | 50 + changelog/1.13.4.md | 39 + changelog/1.13.5.md | 16 + changelog/1.13.6.md | 22 + changelog/1.13.7.md | 26 + changelog/1.13.8.md | 26 + changelog/1.13.9.md | 33 + changelog/1.14.0.md | 39 + changelog/1.14.1.md | 34 + changelog/1.15.0.md | 51 + changelog/1.16.0.md | 51 + changelog/1.16.1.md | 26 + changelog/1.16.2.md | 33 + changelog/1.16.3.md | 42 + changelog/1.17.0.md | 50 + changelog/1.17.1.md | 40 + changelog/1.17.2.md | 42 + changelog/1.18.0.md | 60 + changelog/1.18.1.md | 34 + changelog/1.18.2.md | 61 + changelog/1.18.3.md | 47 + changelog/1.18.4.md | 19 + changelog/1.19.0.md | 61 + changelog/1.2.0.md | 20 + changelog/1.2.1.md | 16 + changelog/1.2.2.md | 18 + changelog/1.2.3.md | 14 + changelog/1.2.4.md | 12 + changelog/1.2.5.md | 22 + changelog/1.2.6.md | 21 + changelog/1.2.7.md | 14 + changelog/1.2.8.md | 13 + changelog/1.2.9.md | 17 + changelog/1.20.0.md | 71 + changelog/1.21.0.md | 75 + changelog/1.21.1.md | 80 + changelog/1.22.0.md | 34 + changelog/1.22.1.md | 53 + changelog/1.3.0.md | 33 + changelog/1.3.1.md | 14 + changelog/1.3.2.md | 12 + changelog/1.3.3.md | 33 + changelog/1.3.4.md | 18 + changelog/1.3.5.md | 33 + changelog/1.3.6.md | 20 + changelog/1.3.7.md | 27 + changelog/1.3.8.md | 31 + changelog/1.3.9.md | 18 + changelog/1.4.0.md | 33 + changelog/1.4.1.md | 33 + changelog/1.4.2.md | 25 + changelog/1.4.3.md | 24 + changelog/1.4.4.md | 42 + changelog/1.4.5.md | 29 + changelog/1.4.6.md | 24 + changelog/1.4.7.md | 17 + changelog/1.4.8.md | 33 + changelog/1.4.9.md | 26 + changelog/1.5.0.md | 39 + changelog/1.5.1.md | 15 + changelog/1.5.2.md | 25 + changelog/1.5.3.md | 30 + changelog/1.5.4.md | 25 + changelog/1.5.5.md | 21 + changelog/1.5.6.md | 22 + changelog/1.5.7.md | 18 + changelog/1.5.8.md | 36 + changelog/1.5.9.md | 27 + changelog/1.6.0.md | 31 + changelog/1.6.1.md | 33 + changelog/1.6.2.md | 28 + changelog/1.6.3.md | 22 + changelog/1.6.4.md | 33 + changelog/1.6.5.md | 29 + changelog/1.6.6.md | 30 + changelog/1.6.7.md | 30 + changelog/1.6.8.md | 33 + changelog/1.6.9.md | 34 + changelog/1.7.0.md | 24 + changelog/1.7.1.md | 32 + changelog/1.7.2.md | 32 + changelog/1.7.3.md | 32 + changelog/1.7.4.md | 43 + changelog/1.7.5.md | 28 + changelog/1.8.0.md | 51 + changelog/1.8.1.md | 14 + changelog/1.8.2.md | 31 + changelog/1.8.3.md | 33 + changelog/1.8.4.md | 45 + changelog/1.8.5.md | 31 + changelog/1.8.6.md | 38 + changelog/1.8.7.md | 19 + changelog/1.9.0.md | 39 + changelog/1.9.1.md | 32 + changelog/1.9.10.md | 34 + changelog/1.9.2.md | 28 + changelog/1.9.3.md | 43 + changelog/1.9.4.md | 34 + changelog/1.9.5.md | 36 + changelog/1.9.6.md | 33 + changelog/1.9.7.md | 36 + changelog/1.9.8.md | 34 + changelog/1.9.9.md | 35 + changelog/README.md | 38 + changelog/index.json | 5008 +++++++++++++++++++ changelog/unreleased.md | 25 + package.json | 4 +- packages/vscode/CHANGELOG.md | 1099 +++- scripts/changelog/build.mjs | 53 + scripts/changelog/lib.mjs | 241 + scripts/changelog/lib.test.mjs | 125 + scripts/oc-dev.mjs | 20 +- 153 files changed, 11977 insertions(+), 700 deletions(-) create mode 100644 changelog/1.0.1.md create mode 100644 changelog/1.0.2.md create mode 100644 changelog/1.0.3.md create mode 100644 changelog/1.0.4.md create mode 100644 changelog/1.0.5.md create mode 100644 changelog/1.0.6.md create mode 100644 changelog/1.0.7.md create mode 100644 changelog/1.0.8.md create mode 100644 changelog/1.0.9.md create mode 100644 changelog/1.1.0.md create mode 100644 changelog/1.1.1.md create mode 100644 changelog/1.1.2.md create mode 100644 changelog/1.1.3.md create mode 100644 changelog/1.1.4.md create mode 100644 changelog/1.1.5.md create mode 100644 changelog/1.1.6.md create mode 100644 changelog/1.10.0.md create mode 100644 changelog/1.10.1.md create mode 100644 changelog/1.10.2.md create mode 100644 changelog/1.10.3.md create mode 100644 changelog/1.10.4.md create mode 100644 changelog/1.11.0.md create mode 100644 changelog/1.11.1.md create mode 100644 changelog/1.11.2.md create mode 100644 changelog/1.11.3.md create mode 100644 changelog/1.11.4.md create mode 100644 changelog/1.11.5.md create mode 100644 changelog/1.11.6.md create mode 100644 changelog/1.11.7.md create mode 100644 changelog/1.12.0.md create mode 100644 changelog/1.12.1.md create mode 100644 changelog/1.12.2.md create mode 100644 changelog/1.12.3.md create mode 100644 changelog/1.12.4.md create mode 100644 changelog/1.13.0.md create mode 100644 changelog/1.13.1.md create mode 100644 changelog/1.13.2.md create mode 100644 changelog/1.13.3.md create mode 100644 changelog/1.13.4.md create mode 100644 changelog/1.13.5.md create mode 100644 changelog/1.13.6.md create mode 100644 changelog/1.13.7.md create mode 100644 changelog/1.13.8.md create mode 100644 changelog/1.13.9.md create mode 100644 changelog/1.14.0.md create mode 100644 changelog/1.14.1.md create mode 100644 changelog/1.15.0.md create mode 100644 changelog/1.16.0.md create mode 100644 changelog/1.16.1.md create mode 100644 changelog/1.16.2.md create mode 100644 changelog/1.16.3.md create mode 100644 changelog/1.17.0.md create mode 100644 changelog/1.17.1.md create mode 100644 changelog/1.17.2.md create mode 100644 changelog/1.18.0.md create mode 100644 changelog/1.18.1.md create mode 100644 changelog/1.18.2.md create mode 100644 changelog/1.18.3.md create mode 100644 changelog/1.18.4.md create mode 100644 changelog/1.19.0.md create mode 100644 changelog/1.2.0.md create mode 100644 changelog/1.2.1.md create mode 100644 changelog/1.2.2.md create mode 100644 changelog/1.2.3.md create mode 100644 changelog/1.2.4.md create mode 100644 changelog/1.2.5.md create mode 100644 changelog/1.2.6.md create mode 100644 changelog/1.2.7.md create mode 100644 changelog/1.2.8.md create mode 100644 changelog/1.2.9.md create mode 100644 changelog/1.20.0.md create mode 100644 changelog/1.21.0.md create mode 100644 changelog/1.21.1.md create mode 100644 changelog/1.22.0.md create mode 100644 changelog/1.22.1.md create mode 100644 changelog/1.3.0.md create mode 100644 changelog/1.3.1.md create mode 100644 changelog/1.3.2.md create mode 100644 changelog/1.3.3.md create mode 100644 changelog/1.3.4.md create mode 100644 changelog/1.3.5.md create mode 100644 changelog/1.3.6.md create mode 100644 changelog/1.3.7.md create mode 100644 changelog/1.3.8.md create mode 100644 changelog/1.3.9.md create mode 100644 changelog/1.4.0.md create mode 100644 changelog/1.4.1.md create mode 100644 changelog/1.4.2.md create mode 100644 changelog/1.4.3.md create mode 100644 changelog/1.4.4.md create mode 100644 changelog/1.4.5.md create mode 100644 changelog/1.4.6.md create mode 100644 changelog/1.4.7.md create mode 100644 changelog/1.4.8.md create mode 100644 changelog/1.4.9.md create mode 100644 changelog/1.5.0.md create mode 100644 changelog/1.5.1.md create mode 100644 changelog/1.5.2.md create mode 100644 changelog/1.5.3.md create mode 100644 changelog/1.5.4.md create mode 100644 changelog/1.5.5.md create mode 100644 changelog/1.5.6.md create mode 100644 changelog/1.5.7.md create mode 100644 changelog/1.5.8.md create mode 100644 changelog/1.5.9.md create mode 100644 changelog/1.6.0.md create mode 100644 changelog/1.6.1.md create mode 100644 changelog/1.6.2.md create mode 100644 changelog/1.6.3.md create mode 100644 changelog/1.6.4.md create mode 100644 changelog/1.6.5.md create mode 100644 changelog/1.6.6.md create mode 100644 changelog/1.6.7.md create mode 100644 changelog/1.6.8.md create mode 100644 changelog/1.6.9.md create mode 100644 changelog/1.7.0.md create mode 100644 changelog/1.7.1.md create mode 100644 changelog/1.7.2.md create mode 100644 changelog/1.7.3.md create mode 100644 changelog/1.7.4.md create mode 100644 changelog/1.7.5.md create mode 100644 changelog/1.8.0.md create mode 100644 changelog/1.8.1.md create mode 100644 changelog/1.8.2.md create mode 100644 changelog/1.8.3.md create mode 100644 changelog/1.8.4.md create mode 100644 changelog/1.8.5.md create mode 100644 changelog/1.8.6.md create mode 100644 changelog/1.8.7.md create mode 100644 changelog/1.9.0.md create mode 100644 changelog/1.9.1.md create mode 100644 changelog/1.9.10.md create mode 100644 changelog/1.9.2.md create mode 100644 changelog/1.9.3.md create mode 100644 changelog/1.9.4.md create mode 100644 changelog/1.9.5.md create mode 100644 changelog/1.9.6.md create mode 100644 changelog/1.9.7.md create mode 100644 changelog/1.9.8.md create mode 100644 changelog/1.9.9.md create mode 100644 changelog/README.md create mode 100644 changelog/index.json create mode 100644 changelog/unreleased.md create mode 100644 scripts/changelog/build.mjs create mode 100644 scripts/changelog/lib.mjs create mode 100644 scripts/changelog/lib.test.mjs diff --git a/.agents/skills/changelog-authoring/SKILL.md b/.agents/skills/changelog-authoring/SKILL.md index f734b432..a3c04ad0 100644 --- a/.agents/skills/changelog-authoring/SKILL.md +++ b/.agents/skills/changelog-authoring/SKILL.md @@ -9,10 +9,12 @@ compatibility: opencode The changelog is written once per release, by the maintainer, as one story. Both `CHANGELOG.md` files stay untouched by every other task; a fix or a merged PR lands without a changelog line. Proceed only when the current message asks to update the changelog. -Two files, `[Unreleased]` content only, never a new release header: +Write `changelog/unreleased.md` and nothing else. `CHANGELOG.md`, `packages/vscode/CHANGELOG.md`, and `changelog/index.json` are generated from `changelog/*.md`; after editing run `bun run changelog:build` and commit the source with the regenerated files (`changelog/README.md` describes the file format, `bun run changelog:check` verifies the outputs). The version header, date, and file promotion happen at release time through `oc-dev create-release`, never by hand. -- `CHANGELOG.md` — main app (Web, Desktop, Mobile/PWA, shared UI). -- `packages/vscode/CHANGELOG.md` — VS Code extension only. +`unreleased.md` holds two sections: + +- `## App` — Web, Desktop, Mobile/PWA, shared UI. +- `## VS Code` — the extension only, written separately (see below). ## The shape of a release @@ -40,7 +42,7 @@ Where a change goes: - **Fixes** — something was broken and showed a wrong result; the bullet names the symptom. - **Misc** — bundled tool versions, packaging, platform support, retirements. Rarely more than a few lines. -The `## [x.y.z] - YYYY-MM-DD` header line stays exactly that; the app's update dialog, the release workflow, and the release script match it by regex. The `###` group headings inside it render on GitHub and in the app, and the website flattens them to bullets until it learns to group. +The generator emits the groups in this order whatever order the source lists them, drops empty ones, and writes the `## [x.y.z] - YYYY-MM-DD` header that the update dialog, the release workflow, and the website match by regex. ## The bullet @@ -61,7 +63,7 @@ Worked example, same change: The weak version is accurate and lost the reader at the first comma. The good version keeps the three things a user notices and drops the mechanics that explain them. -Load `.agents/skills/communication-style/SKILL.md` and run its pattern scan over the finished lists; its rules on em dashes, hedging, and puffery apply here unchanged. +Load `.agents/skills/communication-style/SKILL.md` and run its pattern scan over the finished sections; its rules on em dashes, hedging, and puffery apply here unchanged. ## Gather @@ -86,9 +88,9 @@ Gathering is complete when every user-visible change has evidence, a known platf - A change that is both a feature and a fix (a reworked area) gets one bullet in the group that describes what the user gains most; a second bullet only when the two halves are things a user would look for separately. - Rank each changelog on its own; a main-app highlight is not automatically a VS Code highlight. -## VS Code changelog +## VS Code section -An entry belongs here only when the extension actually mounts the surface: trace from `packages/vscode/webview/main.tsx` → `VSCodeApp` → `VSCodeLayout`, which mounts a subset of the shared UI, and read the surface map in `packages/vscode/src/DOCUMENTATION.md`. Server-side changes have no entry here; the extension runs no OpenChamber server. Prefixes drop the `VS Code:` part. When reachability is uncertain, leave the entry out; a false entry becomes a bug report. +An entry belongs here only when the extension actually mounts the surface: trace from `packages/vscode/webview/main.tsx` → `VSCodeApp` → `VSCodeLayout`, which mounts a subset of the shared UI, and read the surface map in `packages/vscode/src/DOCUMENTATION.md`. Server-side changes have no entry here; the extension runs no OpenChamber server. Prefixes drop the `VS Code:` part. Bullets are written separately from the App section rather than tagged, so reachability is a decision made per bullet. When reachability is uncertain, leave the entry out; a false entry becomes a bug report. ## Credit @@ -96,11 +98,12 @@ End the bullet with `(thanks to @username)` using the GitHub login from the PR o ## Done when -Read each finished list top to bottom and check every bullet: +Read each finished section top to bottom and check every bullet: - A user could point at it in the app within five seconds of reading it. - It is one or two sentences (three for a highlight) in plain words, with no mechanism and no contrast against the old behaviour. - It sits in the group its wording claims (a Fix names a symptom, a New names a capability) and no higher than the bullets above it in impact. - Empty groups are absent; present groups appear in the order New, Improvements, Fixes, Misc. -- It appears only in the changelog whose runtime receives it. +- It appears only in the section whose runtime receives it. - Its contributor is credited. +- `bun run changelog:build` ran and the regenerated files are staged with the source. diff --git a/.github/workflows/oc-review.yml b/.github/workflows/oc-review.yml index 7fccf5ba..f4798d0b 100644 --- a/.github/workflows/oc-review.yml +++ b/.github/workflows/oc-review.yml @@ -32,6 +32,9 @@ jobs: - name: Lint run: bun run lint + - name: Changelog outputs match their sources + run: bun run changelog:check + - name: Tests run: bun run test diff --git a/AGENTS.md b/AGENTS.md index cae060a7..68e05236 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -42,7 +42,7 @@ Shared contracts must define intentional behavior for every applicable runtime: - Do not add dependencies unless explicitly requested. - Never add or log secrets, bearer tokens, pairing credentials, or sensitive user data. - Keep changes minimal and preserve unrelated worktree changes. -- `CHANGELOG.md` and `packages/vscode/CHANGELOG.md` are the maintainer's release-time work: they get written once, as one story, when the maintainer asks to update the changelog. Until that request, treat both files as read-only — a fix, feature, or merged PR lands without a changelog line. +- Release notes are the maintainer's release-time work: they get written once, as one story, in `changelog/unreleased.md` when the maintainer asks to update the changelog. Until that request, treat `changelog/` as read-only — a fix, feature, or merged PR lands without a changelog line. `CHANGELOG.md`, `packages/vscode/CHANGELOG.md`, and `changelog/index.json` are generated from `changelog/*.md` by `bun run changelog:build`; never edit them by hand. - Enforce security and correctness in core/runtime logic, not only UI visibility or prompts. - Keep entrypoints and bridges thin; place domain logic in focused owning modules. - Update owning documentation when module ownership, contracts, or invariants change. diff --git a/CHANGELOG.md b/CHANGELOG.md index f9249e90..bc08901a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog + + All notable changes to this project will be documented in this file. ## [Unreleased] @@ -33,25 +35,33 @@ All notable changes to this project will be documented in this file. ## [1.22.1] - 2026-09-04 -- **OpenCode Go:** every request OpenChamber sends to OpenCode Go on its own, such as commit messages and pull request text, reply recaps and suggested follow-ups, walkthroughs, Goal Mode checks, notes, and usage, now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. Update before that date if you use OpenCode Go. -- **Message queue:** messages queued while a session is busy are now sent by the OpenChamber server, so they go out even if the tab that queued them is closed, and every client shows the same queue. A queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer. -- **Git:** switching branches with uncommitted changes now stops at a commit-or-revert dialog with an optional push; a failed push cancels the switch. The branch picker lists recent branches with an unpushed-commit badge, the mobile Changes view gets a branch picker, and a draft over a dirty directory shows a warning on its branch selector (thanks to @yulia-ivashko). -- **Worktrees:** removing a worktree no longer freezes the interface. It runs in the background with a progress toast, and its sessions are archived in one request, which takes a 121-session worktree from about fifteen seconds to one; archiving several selected sessions from the sidebar uses the same request (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). -- **MCP:** an MCP server that failed to start or lost its connection is now reconnected automatically, with a delay growing up to thirty seconds. Disabled servers and ones waiting for a login are left alone. Applies where OpenChamber launches OpenCode itself: Web and Desktop. -- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). +### New + - Chat: a new session opens on the Chat or Project side you last used, and plus inside a chat opens a chat draft (thanks to @yulia-ivashko). -- Chat: starting an isolated-worktree session from an assistant answer now picks the right project when the visible session already lives in a worktree (thanks to @yulia-ivashko). -- Chat: resizing the window no longer snaps an idle reader back to the end of the conversation. -- Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko). - Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko). - Git: status stays hidden while a new worktree runs its setup commands instead of flashing mid-setup changes, and refreshes after a tool finishes a change or a worktree changes (thanks to @yulia-ivashko). -- Settings: the theme no longer flips when switching sessions across directories, and missing theme fields keep the current preference (thanks to @kydorn). - Settings: new installs default to the OpenChamber light and dark themes; an existing Flexoki choice is kept. + +### Improvements + +- **OpenCode Go:** every request OpenChamber sends to OpenCode Go on its own, such as commit messages and pull request text, reply recaps and suggested follow-ups, walkthroughs, Goal Mode checks, notes, and usage, now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. Update before that date if you use OpenCode Go. +- **Message queue:** messages queued while a session is busy are now sent by the OpenChamber server, so they go out even if the tab that queued them is closed, and every client shows the same queue. A queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer. +- Chat: starting an isolated-worktree session from an assistant answer now picks the right project when the visible session already lives in a worktree (thanks to @yulia-ivashko). +- Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko). - Settings: Fixel Text is available as an interface font. - Usage: exe.dev usage windows are tracked. - Settings: the Claude Code and Cursor plugin install cards are gone from Settings → Integrations, which now holds only GitHub and Linear. - Desktop: the instance switcher keeps its statuses between opens, never shows the connected instance as checking, retries a relay instance for up to fifteen seconds before calling it unreachable, and shows the full instance name. Switching instances clears the previous instance's Linear and GitHub logins, quotas, MCP status, skills, and memory. - Desktop: dev server previews work over the private relay. + +### Fixes + +- **Git:** switching branches with uncommitted changes now stops at a commit-or-revert dialog with an optional push; a failed push cancels the switch. The branch picker lists recent branches with an unpushed-commit badge, the mobile Changes view gets a branch picker, and a draft over a dirty directory shows a warning on its branch selector (thanks to @yulia-ivashko). +- **Worktrees:** removing a worktree no longer freezes the interface. It runs in the background with a progress toast, and its sessions are archived in one request, which takes a 121-session worktree from about fifteen seconds to one; archiving several selected sessions from the sidebar uses the same request (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). +- **MCP:** an MCP server that failed to start or lost its connection is now reconnected automatically, with a delay growing up to thirty seconds. Disabled servers and ones waiting for a login are left alone. Applies where OpenChamber launches OpenCode itself: Web and Desktop. +- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). +- Chat: resizing the window no longer snaps an idle reader back to the end of the conversation. +- Settings: the theme no longer flips when switching sessions across directories, and missing theme fields keep the current preference (thanks to @kydorn). - Terminal: the terminal waits for its font before measuring glyphs, so it no longer renders wrong until resized, and connects on servers running under Bun. - Server: a browser on https behind an HTTP proxy hop is no longer rejected as a mismatched origin. - Sidebar: the project label no longer shifts when its hover actions appear. @@ -59,69 +69,92 @@ All notable changes to this project will be documented in this file. ## [1.22.0] - 2026-08-30 +### New + +- **Git:** projects containing several repositories can now switch between them from the Git tab. Diff, pull request, walkthrough, mobile Changes, and work status follow the selected repository (thanks to @jaygupta17). + +### Improvements + - **Linear integration:** connect a workspace in Settings → Integrations, browse and filter issues, and start a session or worktree from an issue. OpenChamber reports session progress back to Linear and can attach an issue to the next chat message (thanks to @AlexKutas). - **Voice:** local text-to-speech and macOS say now choose a voice that matches the reply's language. Additional local models download on first use, and the voice picker lists voices from every installed model. -- **Git:** projects containing several repositories can now switch between them from the Git tab. Diff, pull request, walkthrough, mobile Changes, and work status follow the selected repository (thanks to @jaygupta17). -- **Chat:** sessions opened from the sidebar stay at the latest message, and switching sessions no longer causes jumps, partial rendering, crossfades, or tab-title shifts. -- Chat: command, skill, and file autocomplete in projectless chats no longer uses the previously selected project. -- Chat: reverting to a message, or forking from one, now brings its attached context back to the composer — review comments, chat and file quotes, terminal selections, and browser annotations are no longer lost. -- Chat: stopped and unanswered turns now explain what happened. The status report includes recent session, send, and managed OpenCode errors, plus log locations. - Files: Ctrl/Cmd+F opens search in the Markdown preview even when the preview is not focused. - GitHub: account connection has moved to Settings → Integrations. The pull-request panel includes account controls, and its context-rail icon appears only when connected. -- Git: the commit graph no longer leaves a lane gap when the same branch is merged twice (thanks to @Naputt1). - Settings: themes are now remembered per OpenChamber instance, so windows connected to different instances keep their own theme (thanks to @kydorn). - Scheduled tasks: Goal, Auto-accept, and other task settings are preserved when older OpenChamber builds share the same project config. - Desktop: on Windows and Linux, the close button reaches the top-right corner and follows the theme on hover (thanks to @kydorn). +### Fixes + +- **Chat:** sessions opened from the sidebar stay at the latest message, and switching sessions no longer causes jumps, partial rendering, crossfades, or tab-title shifts. +- Chat: command, skill, and file autocomplete in projectless chats no longer uses the previously selected project. +- Chat: reverting to a message, or forking from one, now brings its attached context back to the composer — review comments, chat and file quotes, terminal selections, and browser annotations are no longer lost. +- Chat: stopped and unanswered turns now explain what happened. The status report includes recent session, send, and managed OpenCode errors, plus log locations. +- Git: the commit graph no longer leaves a lane gap when the same branch is merged twice (thanks to @Naputt1). + ## [1.21.1] - 2026-08-29 +### New + - **Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt). -- **Git/Worktrees:** session menus can now move an idle session and its sub-sessions into an existing worktree. OpenChamber discovers worktrees created elsewhere when the target list opens, asks before transferring uncommitted changes, and keeps those changes safe if a move fails partway (thanks to @mattv8). +- Work status: the session cost now includes what its subagents spent, split under the context meter and shown per subagent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). +- Composer: pasting a large block of text (about 2,000 characters or 25 lines) now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a `[pasted-context-N.txt]` reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). +- Multi-Run: groups can now contain more than five models, including isolated runs that create one worktree per model (thanks to @tomzx). +- Projects: the folder picker can select several directories at once and add them together (thanks to @herjarsa). + +### Improvements + - `/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies). +- Chat: the text the model writes before asking a question is shown right away instead of staying hidden in the Activity group until the turn ends (thanks to @makeittech). +- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). +- Usage: GitHub Copilot now shows a single AI Credits window, matching Copilot's token-based quota, in place of the old Chat Requests and Completions windows (thanks to @jakoss). +- Files: the Markdown preview has an in-document search (Ctrl/Cmd+F) with highlighting and next/previous, and clicking a folder or file in the sidebar tree opens it reliably on macOS trackpads, where a tiny pointer move used to swallow the click (thanks to @makeittech); files up to 20,000 lines open in the full-file preview instead of being rejected at 5,000 (thanks to @gaojunran). +- Panels: right-click an editor, chat, or browser tab to close it, close others, close left/right, or close all (thanks to @adavila0703). +- Browser: when the agent captures a page while the browser panel is hidden, the panel is revealed first instead of the capture failing. +- Mobile: Chats — sessions that belong to no project — now appear in the sessions sheet above the project list; opening an already-open agent switches to its editor instead of duplicating it (thanks to @bashrusakh); Android connections can trust user-installed certificate authorities, such as a local proxy's (thanks to @Silvenga). +- Files: files reached through a symlink inside the workspace, or under a project root that is itself a symlink, open again instead of failing with an access error (thanks to @herjarsa). +- Sidebar: searching sessions now also finds Chats — sessions that belong to no project — which used to vanish from the list as soon as anything was typed (thanks to @yulia-ivashko). +- Projects: the folder picker can enter a directory that is already a project to browse from there (thanks to @weixiang1862), and sending, forking, and image attachments work in projects whose path has non-ASCII characters, such as `Masaüstü` (thanks to @fitzgpt). +- Web/PWA: notification clicks focus an existing window, and the installed app uses the shorter "OpenChamber" name (thanks to @bketelsen and @greghaynes). +- Themes: custom themes loaded through symlinks now work (thanks to @divyam234). +- Debug: the debug panel (Ctrl/Cmd+Shift+D) has a Requests tab showing in-flight requests and their age over the last five minutes (thanks to @tomzx). + +### Fixes + +- **Git/Worktrees:** session menus can now move an idle session and its sub-sessions into an existing worktree. OpenChamber discovers worktrees created elsewhere when the target list opens, asks before transferring uncommitted changes, and keeps those changes safe if a move fails partway (thanks to @mattv8). - Chat scrolling: with "Follow new content while streaming" off, sending from the middle of a conversation no longer jumps to the new message; a middle-button pan or Shift+Space stops auto-follow like the wheel does, and an upward wheel inside a tool output box scrolls that box instead of the chat (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole window up and hides the title bar. - Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings, which could send the syntax highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message containing Windows line endings, which threw "Selection points outside of document" on every visit (thanks to @yulia-ivashko). - Chat: a session no longer looks frozen after a page reload or a late second client — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh). -- Work status: the session cost now includes what its subagents spent, split under the context meter and shown per subagent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). - Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code and chips are readable in every theme (thanks to @difagume); a completed reasoning block shows in full instead of replaying as if still thinking, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the first lines of the reply (thanks to @makeittech). - Chat actions: tool cards with a file path get a quick-open button (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown paragraph, list, and code-block spacing (thanks to @ChangeHow); Ctrl/Cmd+digit is ignored while typing in a field, and a manually chosen model survives switching between Build and Plan (thanks to @makeittech). -- Composer: pasting a large block of text (about 2,000 characters or 25 lines) now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a `[pasted-context-N.txt]` reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). -- Chat: the text the model writes before asking a question is shown right away instead of staying hidden in the Activity group until the turn ends (thanks to @makeittech). - Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech). -- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). -- Usage: GitHub Copilot now shows a single AI Credits window, matching Copilot's token-based quota, in place of the old Chat Requests and Completions windows (thanks to @jakoss). -- Multi-Run: groups can now contain more than five models, including isolated runs that create one worktree per model (thanks to @tomzx). -- Files: the Markdown preview has an in-document search (Ctrl/Cmd+F) with highlighting and next/previous, and clicking a folder or file in the sidebar tree opens it reliably on macOS trackpads, where a tiny pointer move used to swallow the click (thanks to @makeittech); files up to 20,000 lines open in the full-file preview instead of being rejected at 5,000 (thanks to @gaojunran). -- Panels: right-click an editor, chat, or browser tab to close it, close others, close left/right, or close all (thanks to @adavila0703). - Plans: saved plans open with their content again for chats, worktrees outside the project path, and tabs restored after a reload, and an edit made right before closing is no longer lost. -- Browser: when the agent captures a page while the browser panel is hidden, the panel is revealed first instead of the capture failing. - Sidebar: Recent rows show a compact timestamp on web and desktop, and pending permission/question badges are no longer covered by the hover actions (thanks to @makeittech). -- Mobile: Chats — sessions that belong to no project — now appear in the sessions sheet above the project list; opening an already-open agent switches to its editor instead of duplicating it (thanks to @bashrusakh); Android connections can trust user-installed certificate authorities, such as a local proxy's (thanks to @Silvenga). - Settings: the editor font size survives a restart (thanks to @pascalandr); a change made right before closing the window is saved (thanks to @makeittech); number fields and selects no longer clip at large font sizes (thanks to @makeittech); refreshing GitHub account state no longer interrupts the page (thanks to @floze-the-genius); the Cloudflare Tunnel download link is fixed (thanks to @AyoubAchour); Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx). - Small model: requests send the provider's configured headers, such as an API-gateway subscription key (thanks to @dmitrii-galantsev); a configured Anthropic endpoint is used without a doubled `/v1`, and Google models without reasoning no longer receive a thinking option (thanks to @mpeter and @IngTian). -- Projects: the folder picker can select several directories at once and add them together (thanks to @herjarsa). -- Files: files reached through a symlink inside the workspace, or under a project root that is itself a symlink, open again instead of failing with an access error (thanks to @herjarsa). -- Sidebar: searching sessions now also finds Chats — sessions that belong to no project — which used to vanish from the list as soon as anything was typed (thanks to @yulia-ivashko). - Chat: a message made only of quoted context fragments now appears in the prompt navigator; opening or closing the context panel no longer leaves a blank tail under the last message. - Settings/Providers: after saving an API key or signing in, the provider no longer shows "Credentials missing" with its models hidden until you switch away and back (thanks to @herjarsa). -- Projects: the folder picker can enter a directory that is already a project to browse from there (thanks to @weixiang1862), and sending, forking, and image attachments work in projects whose path has non-ASCII characters, such as `Masaüstü` (thanks to @fitzgpt). - Git: the status panel refreshes from real repository state after checkout, branch, stash, merge, rebase, or reset, and remote branches that were never fetched appear in branch lists (thanks to @makeittech); the Branch diff scope no longer compares against the wrong base for branches created from the current branch (thanks to @gaojunran); picking `origin/main` in the branch selector checks out the local branch instead of a detached `HEAD` (thanks to @yulia-ivashko); branch search hides non-matching branches (thanks to @bashrusakh). - Updates: "Update OpenCode" no longer fails with a bare "Bad Request" — OpenChamber names the release to install and shows OpenCode's reason when refused — and the desktop "Restart to Update" button shows why an install failed, including an unsigned local build, and stays available to retry (thanks to @mdatsev and @yulia-ivashko). - Desktop: a crashed renderer window recovers automatically, with a visible failure page instead of a reload loop after repeated crashes (thanks to @wqpan); a slow or interactive shell startup file no longer stalls startup while OpenChamber looks for OpenCode — each probe gives up after five seconds, which is what left a Homebrew OpenCode looking undetected from a Dock launch (thanks to @mskadu). - Windows: managed OpenCode restarts clean up orphaned listeners and process trees, closing the app stops OpenCode, and scheduled startup no longer fails on Task Scheduler's command length limit (thanks to @sergiofspedro, @a0000001, and @HAHH9527). - Server: an `OPENCODE_BINARY` from the environment is no longer discarded when `settings.json` clears its own override (thanks to @bashrusakh); recovery through `OPENCODE_HOST` keeps the configured host and port (thanks to @colinmollenhour); `openchamber connect-url` no longer risks tearing `settings.json` while the desktop app runs, which could unpair every device (thanks to @shijie152). -- Web/PWA: notification clicks focus an existing window, and the installed app uses the shorter "OpenChamber" name (thanks to @bketelsen and @greghaynes). - VS Code: the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech). -- Themes: custom themes loaded through symlinks now work (thanks to @divyam234). -- Debug: the debug panel (Ctrl/Cmd+Shift+D) has a Requests tab showing in-flight requests and their age over the last five minutes (thanks to @tomzx). - Reliability: switching sessions quickly no longer saves the wrong scroll position, and the log no longer fills with worktree warnings for non-Git folders (thanks to @herjarsa); startup cleanup of leftover processes no longer blocks the server on Windows (thanks to @bashrusakh). ## [1.21.0] - 2026-08-26 +### New + +- Mobile: the chat comment input overlays the composer exactly and rides the keyboard; Enter makes a new line there, with attach on the button. +- Chat: a "Follow new content while streaming" checkbox (Settings → Chat → Streaming, on by default) turns automatic following off entirely; with it off, the scroll-to-bottom pill now appears as soon as the reply grows past the visible area. +- Mobile: narrowing a browser window past phone size switches into the mobile layout (and back when widened); the old/new mobile layout setting is gone. + +### Improvements + - **Chat scrolling rebuilt around your message.** Sending parks your message near the top and the reply streams in below it, gliding smoothly a paragraph at a time. Scrolling up immediately hands you the wheel; the scroll-to-bottom pill carries the model's working status while you're away. - **Keyboard shortcuts redesigned:** single chords for everyday actions, a Cmd/Ctrl+K leader for two-step open/go actions, held Cmd/Ctrl+digit for session tabs and Cmd/Ctrl+Option+digit for panel surfaces. Shortcuts work on non-English keyboard layouts now, tooltips show the binding you actually have set, and old custom bindings reset once. The full map lives in Settings → Shortcuts (registry contributed by @ChangeHow — thanks!). - **Chat context attachments:** diff comments, terminal selections, browser annotations, linked issues/PRs and the rest now appear in the conversation as compact context cards instead of walls of raw text. - **Session tabs (opt-in):** the web/desktop header can show open sessions as browser-style tabs (Settings → General → Navigation). A tab switches the whole workspace; closing one never touches the session itself. -- Sessions: switching is much faster in large workspaces — the sidebar no longer rebuilds on switch and recently viewed sessions restore their rendered messages; end-to-end switch time roughly halved with thousands of loaded sessions (thanks to @c-w-xiaohei). - Permission: cards answer to the keyboard Alt+Enter allows once, Alt+Shift+Enter allows always, Alt+Backspace denies — the keys are printed on the buttons. The auto-accept toggle got Cmd/Ctrl+K, A. - Sessions: Cmd/Ctrl+Alt+Left/Right steps back and forward through the sessions you opened in this window, browser-history style; with session tabs enabled it moves between neighbouring tabs instead. - Git: Cmd/Ctrl+Enter in the commit message box commits. Diff review moves between changed files with Alt+Down/Up, expanding a collapsed file on arrival. @@ -130,20 +163,23 @@ All notable changes to this project will be documented in this file. - Chat: comment on a reply — select text in a chat message (or a rendered markdown preview in Files) and choose Comment to attach exactly that quote, with a source line range when it can be located, plus your note. The selection stays highlighted while you type. - Diff: comment like a review — hovering a line shows a + in the gutter; clicking or dragging across lines opens the comment editor for that range, styled like the chat's comments. - Composer: hovering or tapping a context chip opens a stacked preview of everything attached, where a comment can be edited in place or an item removed before sending. -- Mobile: the chat comment input overlays the composer exactly and rides the keyboard; Enter makes a new line there, with attach on the button. -- Terminal: terminals no longer vanish behind your back — every tab and device shows the ones already running on the server, and background tabs survive the idle cleanup. - Search: every searchable picker uses one matcher now — best matches first, multi-word queries in any order, punctuation ignored ("gpt4o" finds "gpt-4o"). Ctrl/Cmd+P matches whole file paths. - Chat: @ file mentions rank files and directories together by match quality, and long paths keep the folder next to the file name visible. -- Chat: a "Follow new content while streaming" checkbox (Settings → Chat → Streaming, on by default) turns automatic following off entirely; with it off, the scroll-to-bottom pill now appears as soon as the reply grows past the visible area. - Command palette: rarely used commands (pin session, copy session ID, multi-run launcher, archived sessions, notes, todos, status, theme) are found by typing but stay off the first screen. -- Mobile: narrowing a browser window past phone size switches into the mobile layout (and back when widened); the old/new mobile layout setting is gone. +- Mobile: on Android browsers the composer now stays above the keyboard in the chat too — the keyboard could cover it with no way to scroll it into view; the draft screen's viewport pinning now covers the chat screen on Android. +- Chat: opening a session or resizing panels could strand the view in a large empty space below the last message; the list now returns to the real end, and a width resize keeps a reader who was at the bottom at the bottom. +- Devices: re-pairing a phone keeps the device's existing name instead of resetting it to "OpenChamber Mobile". +- Files: the editor toolbar is always docked under the file tabs; the floating hover toolbar and its setting were removed. + +### Fixes + +- Sessions: switching is much faster in large workspaces — the sidebar no longer rebuilds on switch and recently viewed sessions restore their rendered messages; end-to-end switch time roughly halved with thousands of loaded sessions (thanks to @c-w-xiaohei). +- Terminal: terminals no longer vanish behind your back — every tab and device shows the ones already running on the server, and background tabs survive the idle cleanup. - Browser: an agent opening a page with the browser tool no longer pops the browser panel open (or switches the surface you're on) — the page loads in the background and the rail is where you peek at it. - Usage: the Command Code tile is gone — their official API exposes no usage data, so the tile could only fail. - Desktop: a relay-paired default host no longer greets every restart with the "Remote Server Unreachable" screen — the stored direct address (often the pairing machine's own loopback) failing its probe now boots the app normally and connects over the relay, picking the direct route back up automatically when it answers again. -- Mobile: on Android browsers the composer now stays above the keyboard in the chat too — the keyboard could cover it with no way to scroll it into view; the draft screen's viewport pinning now covers the chat screen on Android. - Auth: an expired OpenChamber login is announced within seconds by a banner with a Log in button, instead of being discovered through failing actions. Sending pauses until login, and a conversation that failed to load reloads itself afterwards. - Chat: a failed send returns your typed prompt to the input — whatever the reason — instead of losing it to an error toast; a mid-send session switch lands it in that session's draft. -- Chat: opening a session or resizing panels could strand the view in a large empty space below the last message; the list now returns to the real end, and a width resize keeps a reader who was at the bottom at the bottom. - Chat: prompt-rail and message jumps land exactly on the target once the layout finishes measuring, and clicking the last rail item always works. - Desktop: two windows on different projects no longer hijack each other — one window's session switch could make the other adopt its project mid-typing. Notification clicks and openchamber:// links now open in one window instead of all of them. - Git: the branch's PR badge no longer picks up a stranger's pull request — with contributor forks added as remotes, a fork's closed PR sharing only the branch name could show up on the local branch. @@ -157,75 +193,89 @@ All notable changes to this project will be documented in this file. - VSCode: the chat view no longer sticks on its loading screen on slow or remote connections (thanks to @VinciYan). - Terminal: mobile keyboards no longer capitalize the first letter of every command. - Desktop: a freshly installed or updated build no longer loads the previous version's interface from cache. -- Devices: re-pairing a phone keeps the device's existing name instead of resetting it to "OpenChamber Mobile". - Relay: paired devices no longer get logged out when the app restarts while another local OpenChamber process is running. - Sessions: headers now find archived sessions too, so an archived session's title no longer goes missing. -- Files: the editor toolbar is always docked under the file tabs; the floating hover toolbar and its setting were removed. - UI: the chat's scroll fades are back, the first uncached session open fades in, the timeline dialog fits small screens (thanks to @gaojunran), OpenCode notices share one style, draft target menus stay inside the chat area, Linear and Cloudflare tools show their own icons, sidebar tooltips no longer appear on passing hover, and the btw panel's shadow matches the composer. ## [1.20.0] - 2026-08-23 +### New + +- Desktop/Remote instances: a managed remote server can now also be published to the remote machine's own network, so other devices there reach it without the SSH tunnel. It requires a UI password, and stays private to the tunnel otherwise. +- Diff: the context-panel diff can now show every change on the current branch against its base branch. OpenChamber detects the base when Git knows it, or lets you choose one once when it does not. +- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. Both sit in one Defaults for new chats group, laid out like the Sessions defaults. +- Chat: in the expanded composer, Enter now starts a new line and Cmd/Ctrl+Enter sends, so a long prompt is harder to send by accident. +- Providers: expanded support for custom providers. +- Small Model: summaries, goal audits, commit messages, and walkthroughs now support more providers. + +### Improvements + - **Session: /btw side questions.** Type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation, so it inherits the full context but leaves the chat itself untouched. The answer streams into a panel above the composer, which talks to that session while the panel is open; you can collapse it to a slim header bar, keep it as a full session, or discard it. The temporary session stays out of the sidebar and session lists until you keep it (thanks to @jaygupta17). - **Chat sessions:** start chats without choosing a project. They live in their own Chats section, rather than inheriting a project's repository and worktree context. -- **Desktop/Remote instances:** adding an SSH connection now starts from the hosts in your SSH config instead of a blank command field. Ports, install method and passwords moved behind Advanced settings, and each connection shows Connected, Connecting, or Needs attention with the failure text and a button that resolves it. -- Desktop/Remote instances: connecting to a remote machine now works when bun, OpenChamber or the opencode CLI live in your home directory rather than on the system path. Installing no longer fails with a permission error, and a missing opencode CLI is now reported before the connection starts instead of as a stack trace. -- Desktop/Remote instances: a managed remote server can now also be published to the remote machine's own network, so other devices there reach it without the SSH tunnel. It requires a UI password, and stays private to the tunnel otherwise. -- Desktop/Remote instances: disconnecting from a connection set to not keep the server running now actually stops that remote server. - Skills catalog: browse curated GitHub skill collections in a card-based catalog with cross-source search, skill counts, stars, recent updates, and links back to each skill's repository. -- Diff: the context-panel diff can now show every change on the current branch against its base branch. OpenChamber detects the base when Git knows it, or lets you choose one once when it does not. -- Dictation: speech is now transcribed after you stop recording. The composer shows a live waveform and timer, and long recordings split at pauses instead of cutting words. - Settings: the project selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show. It used to switch the whole app, so opening another project's configuration moved your chat, session list and file tree with it. -- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. Both sit in one Defaults for new chats group, laid out like the Sessions defaults. -- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. -- Settings/Providers: the provider you select no longer jumps to a different one on its own. Changing the chat's model or agent, and background provider refreshes, used to move the settings selection with them. - Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed. - Chat: file paths in messages now open from the session's project, even if you last browsed files in another project (thanks to @tomzx). - Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings. - Files/Desktop: files opened from outside the workspace remain readable after their temporary access expires instead of failing until you reopen them (thanks to @pascalandr). - Diff: creating an inline comment now opens the chat and focuses the composer for your follow-up. -- Chat: in the expanded composer, Enter now starts a new line and Cmd/Ctrl+Enter sends, so a long prompt is harder to send by accident. -- Providers: expanded support for custom providers. -- Small Model: summaries, goal audits, commit messages, and walkthroughs now support more providers. - Git: generated commit messages now match the repository's recent commit style and language. - Git: generating a pull request description now picks up the repository's own PR template when it has one, so the draft comes back in your project's sections and checklists instead of the built-in Summary/Why/Testing layout. - Sidebar: switch between the full project list and a focused view of one project. Sessions created outside OpenChamber now also appear in the sidebar and Recent list without a page refresh (thanks to @tomzx). -- Chat: if OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). - Chat: while a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes. -- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. - Chat: long user messages can be expanded even when their final layout finishes after they first appear. - Chat: in a chat without a project, the work status card again steps aside when the context panel is open, instead of sitting next to it. - Usage: Z.ai credit limits now appear alongside its other quota windows. - Git: pull-request checks in Work status stay current as their status changes. - UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer). - Desktop/Windows: the close button now aligns correctly with the rest of the window chrome. + +### Fixes + +- **Desktop/Remote instances:** adding an SSH connection now starts from the hosts in your SSH config instead of a blank command field. Ports, install method and passwords moved behind Advanced settings, and each connection shows Connected, Connecting, or Needs attention with the failure text and a button that resolves it. +- Desktop/Remote instances: connecting to a remote machine now works when bun, OpenChamber or the opencode CLI live in your home directory rather than on the system path. Installing no longer fails with a permission error, and a missing opencode CLI is now reported before the connection starts instead of as a stack trace. +- Desktop/Remote instances: disconnecting from a connection set to not keep the server running now actually stops that remote server. +- Dictation: speech is now transcribed after you stop recording. The composer shows a live waveform and timer, and long recordings split at pauses instead of cutting words. +- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. +- Settings/Providers: the provider you select no longer jumps to a different one on its own. Changing the chat's model or agent, and background provider refreshes, used to move the settings selection with them. +- Chat: if OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). +- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. - Session assist: recaps and suggested follow-ups now work when the Anthropic provider is configured to use a custom endpoint; they previously failed every time instead of using that configured connection. ## [1.19.0] - 2026-08-19 +### New + - **Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders. +- Usage/Claude: Claude plan limits now work when you are signed in through Claude Code, without also signing into Anthropic in OpenCode; the account is read from Claude Code's own login on macOS, Linux, and WSL. The page shows your session and weekly limits again, adds per-model weekly limits and extra usage spending, and names your plan. Limits are kept on screen instead of disappearing when Anthropic temporarily blocks refreshes. + +### Improvements + - **Project knowledge:** the Project notes panel is now Project knowledge, with notes, todos, plans and their search in a resizable sidebar. Notes are cards you expand by clicking anywhere on them, plans open and edit in the panel itself instead of a separate tab, and notes and plans can be pinned as context. - **Files:** drag files onto the Files sidebar to upload them into the project or a specific folder; existing files require confirmation before replacement, and open previews refresh after an upload (thanks to @makeittech, @alanzchen). -- Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech). -- Chat: an open conversation no longer keeps re-coloring the same code blocks in the background, so browsing files with a chat open stops pinning a CPU core and spinning up the fans (thanks to @makeittech). -- Stability/Proxy: the local server now reuses its connection to OpenCode instead of opening a new one for every API request. Under sustained traffic the old behavior could use up every outgoing network port on the machine, at which point nothing on the computer could open a new connection until the traffic stopped and the ports were released (thanks to @alohaninja). -- Usage/Claude: Claude plan limits now work when you are signed in through Claude Code, without also signing into Anthropic in OpenCode; the account is read from Claude Code's own login on macOS, Linux, and WSL. The page shows your session and weekly limits again, adds per-model weekly limits and extra usage spending, and names your plan. Limits are kept on screen instead of disappearing when Anthropic temporarily blocks refreshes. - Usage/Command Code: Command Code plan limits now appear in the Usage page and work status panel. - Git: the pull request panel now follows the branch's current open PR, and an open PR always wins over an older merged or closed one. After a PR is merged or closed the panel keeps showing it as the branch's last PR and offers creating the next one right below it (thanks to @makeittech). - Git/Worktrees: creating a worktree from a pull request now falls back to GitHub's pull-request reference when the source fork was deleted or cannot be reached, instead of failing before creating the worktree (thanks to @makeittech). -- Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting. -- Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech). - Chat: opening a busy subagent in the context panel now shows its history instead of only the working-status line (thanks to @makeittech). - Chat: saved chats in the context panel open again instead of staying blank. -- Chat: the context meter no longer climbs over 100% (330% readouts) after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds, everywhere the value appears — header, context sidebar, work status panel, mini chat, and mobile (thanks to @pocharlies). - Chat/Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context. -- Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude` in the sidebar, window title, settings and notifications; names you renamed yourself are kept. - Files: files reached through a symlink inside the workspace now open correctly instead of being rejected as outside the workspace. - Settings: the session retention action you pick is now saved instead of being dropped (thanks to @Gautam0507). - Mobile: connecting through an ngrok address now bypasses ngrok's browser warning page instead of failing the server check. - Mobile/iOS: text selection in the chat composer now uses native CodeMirror selection handles. - Desktop: browser pages served from a self-signed loopback HTTPS address now load instead of being blocked by the certificate warning. -- Browser: typing a comment on a page no longer triggers app shortcuts. - Skills Catalog: the source is now named ClawHub instead of "ClawdHub" (thanks to @makeittech). + +### Fixes + +- Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech). +- Chat: an open conversation no longer keeps re-coloring the same code blocks in the background, so browsing files with a chat open stops pinning a CPU core and spinning up the fans (thanks to @makeittech). +- Stability/Proxy: the local server now reuses its connection to OpenCode instead of opening a new one for every API request. Under sustained traffic the old behavior could use up every outgoing network port on the machine, at which point nothing on the computer could open a new connection until the traffic stopped and the ports were released (thanks to @alohaninja). +- Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting. +- Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech). +- Chat: the context meter no longer climbs over 100% (330% readouts) after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds, everywhere the value appears — header, context sidebar, work status panel, mini chat, and mobile (thanks to @pocharlies). +- Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude` in the sidebar, window title, settings and notifications; names you renamed yourself are kept. +- Browser: typing a comment on a page no longer triggers app shortcuts. - Chat: dismissing an agent's clarifying questions no longer leaves the session stuck on the question screen — the next task shows its thinking and final response again. - VSCode: Add Project now adds the chosen folder to the workspace instead of showing a "Failed to add project" toast. - UI: the model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh). @@ -233,51 +283,63 @@ All notable changes to this project will be documented in this file. ## [1.18.4] - 2026-08-14 +### New + - **Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order. + +### Fixes + - **Stability:** a single internal error no longer shuts down the local server, which made the instance unreachable until it was restarted; the error is logged and the server keeps running. - Mobile: connecting to a server that has authentication disabled now survives closing and reopening the app — auto-reconnect and the return-to-app check no longer treat the missing password token as a lost connection and kick back to the connect screen. - Browser: restoring or opening a dev server preview while connected to an instance over a relay or other non-standard address no longer crashes the app; the preview reports the tunnel as unavailable instead. ## [1.18.3] - 2026-08-14 -- **Browser panel:** the preview and browser panels are now one panel, backed by a real browser view on the desktop app. Pages that previously refused to load because they were being rewritten now open normally, logins persist, and developer tools are available. Point at an element or drag a region, write a comment, and it goes to chat with a screenshot of what you marked. +### New + - **Agent browser control:** agents can now open a page and work with it — read what is on screen, click, type, scroll, look at how an element renders, switch between mobile, tablet and desktop layouts, and save a screenshot into the project — so they can check their own work instead of describing what they expect. It is a separate OpenChamber Web tool, turned on or off in the new Settings → General → OpenChamber Tools section. -- **Chat images:** completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images and a horizontally scrollable mobile layout (thanks to @ChangeHow). - Sessions: switching projects now selects a session owned by the new project, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech). - Browser: dev servers are listed from what is actually listening, so one is offered no matter how it was started, and a server that is still starting is waited for instead of showing an error to retry by hand. The panel holds several pages at once, shows each page's own icon, suggests addresses already visited in this project, and adds a hard reload, page zoom, device sizes, a light/dark switch for the page, and clearing cookies or cached data for the panel alone. + +### Improvements + +- **Browser panel:** the preview and browser panels are now one panel, backed by a real browser view on the desktop app. Pages that previously refused to load because they were being rewritten now open normally, logins persist, and developer tools are available. Point at an element or drag a region, write a comment, and it goes to chat with a screenshot of what you marked. +- **Chat images:** completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images and a horizontally scrollable mobile layout (thanks to @ChangeHow). - Browser: when OpenChamber runs on another machine, the desktop app opens its dev servers through a local port, so pages load with working hot reload and developer tools; links and redirects to another local port stay on that machine. In a web browser tab, only dev servers on your own machine can be opened. - Remote access: pairing QR codes created while the app is open through a public domain (for example behind a reverse proxy) now include that domain as a connection address, so paired phones can reach the server over it instead of relying only on the local network address or the relay. -- Remote access: messages sent through the private relay no longer fail with a 400 error when request-body frames are lost during a connection drop; incomplete requests are retried instead (thanks to @claymor333). -- Mobile: a brief network hiccup when opening or returning to the app no longer bounces a working connection to the connect screen — the app retries in the background and reconnects on its own, while an unreachable server shows the connect screen within a few seconds. - Mobile: long-pressing the logo on the connect screen (or the instances list) opens a connection log with a copy button, for reporting connection problems. - Usage: quota limits enabled for display now refresh every three minutes on desktop, mobile, and VS Code, with a manual refresh action available at any time. - Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID. -- Scheduled Tasks: when two OpenChamber servers use the same project configuration, a scheduled occurrence now runs only once instead of both servers starting duplicate sessions (thanks to @makeittech). - Desktop/Windows/Linux: minimizing the window now always keeps it in the taskbar; the tray background setting, renamed "Close to the system tray", applies when you close the window. +- Desktop/Linux: frameless main and Mini Chat windows now use native rounded corners (thanks to @kydorn). + +### Fixes + +- Remote access: messages sent through the private relay no longer fail with a 400 error when request-body frames are lost during a connection drop; incomplete requests are retried instead (thanks to @claymor333). +- Mobile: a brief network hiccup when opening or returning to the app no longer bounces a working connection to the connect screen — the app retries in the background and reconnects on its own, while an unreachable server shows the connect screen within a few seconds. +- Scheduled Tasks: when two OpenChamber servers use the same project configuration, a scheduled occurrence now runs only once instead of both servers starting duplicate sessions (thanks to @makeittech). - Performance: closed context panels no longer keep embedded chats running, and an open panel mounts only its active chat instead of every saved chat tab (thanks to @karimodm). - Chat: opening subagent and code-review sessions in the context panel no longer steals focus from the main composer; subagent prompting is available immediately when enabled, and code-review sessions are no longer mistaken for read-only subagent sessions. - Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing). - Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow). - Work status: new-session drafts now show project, MCP, and usage details before a session exists, long subagent lists stay within the panel, and hiding every section leaves controls available to restore them (thanks to @alohaninja). -- Desktop/Linux: frameless main and Mini Chat windows now use native rounded corners (thanks to @kydorn). ## [1.18.2] - 2026-08-10 +### New + - **Observability panel:** a new panel near to the chat brings the active goal, tasks, subagents, pinned context, MCP servers, and context usage into one live view. The session list also shows how long an agent has been working. - **Scheduled Tasks:** projects can now define recurring tasks as Markdown files in `.agents/loops`; opening the task list discovers file changes without a restart, and loop tasks can be edited, enabled, disabled, deleted, or run from the app (thanks to @makeittech). -- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). -- Remote access: paired devices that use the private relay no longer lose relay access when no browser client is currently connected or device-state loading temporarily fails. - Performance: the initial web download is about 58% smaller and startup memory use is about 22% lower; heavy Settings and syntax-highlighting code now loads only when opened (thanks to @makeittech). - Git/Worktrees: prompts now wait for a new worktree to finish checkout before sending, and sessions resolve to the worktree that owns them instead of occasionally opening or sending against the parent repository (thanks to @ftzi). -- Git/Worktrees: setup now runs the repository's `post-checkout` hook after creating a worktree, and deeply nested worktrees no longer fail with “Filename too long” on Windows (thanks to @ftzi, @makeittech). - Projects: new project directories can now be created outside the current workspace, and adding, creating, or cloning a project opens a new-session draft targeted at that project instead of leaving the previous session context active. -- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different instance (thanks to @Wsyjq). -- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). -- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). -- Chat: fresh messages no longer replay their entry animation after they have already been shown, and iOS users can insert a newline with Shift+Enter again (thanks to @makeittech). -- Chat: the composer caret is now easier to see. -- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. - Usage: added xAI quota reporting (thanks to @iamhenry). + +### Improvements + +- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different instance (thanks to @Wsyjq). +- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). +- Chat: the composer caret is now easier to see. - Terminal: default tab names remain unique after tabs are closed, Escape reaches terminal applications instead of closing the context panel, and background connections send fewer keepalives (thanks to @makeittech). - Desktop/macOS: choosing a folder after denying filesystem access now recovers correctly instead of leaving the app unable to open the directory (thanks to @deatheros). - Desktop/Windows: minimizing from the taskbar now remains a native minimize while the app's own minimize action can still hide to the tray (thanks to @pascalandr). @@ -286,569 +348,847 @@ All notable changes to this project will be documented in this file. - Mobile: pending agent questions now reappear after a cold start instead of leaving the session waiting without an answer prompt. - Files: removing an attached Office or OpenDocument file also removes the images extracted from that document, and Linux reveal failures now surface as an error instead of escaping in the background (thanks to @chiamsun, @pascalandr). - VSCode: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB). -- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). - Walkthrough: branch comparisons now use the repository's actual remote default branch instead of assuming its name (thanks to @RyderAsKing). - Server: foreground installs managed by a user systemd service now update through a separate transient service instead of being interrupted by the server restart (thanks to @SYU8384). - Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame). - UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling; the macOS vibrancy option was removed to reduce rendering overhead. +### Fixes + +- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). +- Remote access: paired devices that use the private relay no longer lose relay access when no browser client is currently connected or device-state loading temporarily fails. +- Git/Worktrees: setup now runs the repository's `post-checkout` hook after creating a worktree, and deeply nested worktrees no longer fail with “Filename too long” on Windows (thanks to @ftzi, @makeittech). +- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). +- Chat: fresh messages no longer replay their entry animation after they have already been shown, and iOS users can insert a newline with Shift+Enter again (thanks to @makeittech). +- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. +- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). + ## [1.18.1] - 2026-08-04 +### New + +- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected; the toggle-sidebar shortcut moved to Ctrl/Cmd+Alt+L. + +### Improvements + - **Providers:** signing in to an OAuth-only provider now actually completes — the browser login is stored and the provider list updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in. +- Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button. +- Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model. + +### Fixes + - **Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar — instead of only offering permanent deletion (thanks to @makeittech). - Walkthrough: models without a working provider login no longer appear in the walkthrough picker, and Generate stays disabled until a usable model is selected instead of failing with a raw provider error. -- Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button. - Walkthrough: connecting to a server older than the app now says the server needs updating instead of showing a raw HTML parsing error, and the "Critical" tag is now "Key change" with a tooltip so it no longer reads as a problem found in your code. -- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected; the toggle-sidebar shortcut moved to Ctrl/Cmd+Alt+L. -- Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model. - Agents/CLI: sending a prompt that never reaches its session is now reported as failed, and an unavailable model, agent, or variant is rejected with a clear error before anything is created. - Desktop/Linux: "Open in Terminal" no longer launches a non-terminal app that is set as the terminal launcher (thanks to @kydorn). ## [1.18.0] - 2026-08-04 -- **Walkthrough:** a new guided walkthrough reorders a diff into a sequence of stops — the model groups related changes, explains what each one does, and orders them so each builds on the last. Start one from the Changes and pull-request views for uncommitted work, a branch against its base, or a pull request; nothing runs on its own. Walkthroughs are written in your interface language by default, and the panel can generate one in any other supported language. -- **Mobile/Tablet:** reworked the tablet and foldable layout around the phone's navigation — a persistent resizable sessions sidebar on the left, the workspace (Changes, Files, Terminal, Notes, MCP) as a resizable right sidebar, and app pages like settings and instances shown as centered dialogs. An open diff, edited file, or attached terminal now survives rotation. +### New + - **Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech). -- Performance: fixed Bun dependency chunking so the web app no longer downloads a single 18.5 MB vendor bundle at startup; heavy syntax highlighting, screenshot, diagram, editor, and image-conversion libraries now load only when needed (thanks to @makeittech). -- Performance: expanding projects with many worktrees no longer repeatedly reloads their session data. - UI/Localization: added German interface translations and German documentation (thanks to @SGD-DEV). - Mobile/Android: pairing QR codes can now be scanned on devices without Google Play Services; the camera closes as soon as a code is recognized, followed by a connection-in-progress screen. - Mobile/Android: left and right drawer swipes can now start farther from the screen edge, outside Android's system Back gesture area. +- Usage: added DeepSeek quota tracking (thanks to @airtaxi). + +### Improvements + +- **Mobile/Tablet:** reworked the tablet and foldable layout around the phone's navigation — a persistent resizable sessions sidebar on the left, the workspace (Changes, Files, Terminal, Notes, MCP) as a resizable right sidebar, and app pages like settings and instances shown as centered dialogs. An open diff, edited file, or attached terminal now survives rotation. +- Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271). +- Settings/Skills: repository-local `.agents/skills` now appear for the active project (thanks to @makeittech). +- Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech). +- Sessions: sessions in a newly created worktree now appear without restarting or refreshing the app. +- Sessions: archiving and unarchiving now stays scoped to the current instance and workspace (thanks to @alexandrereyes). +- Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech). +- VSCode: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui). + +### Fixes + +- **Walkthrough:** a new guided walkthrough reorders a diff into a sequence of stops — the model groups related changes, explains what each one does, and orders them so each builds on the last. Start one from the Changes and pull-request views for uncommitted work, a branch against its base, or a pull request; nothing runs on its own. Walkthroughs are written in your interface language by default, and the panel can generate one in any other supported language. +- Performance: fixed Bun dependency chunking so the web app no longer downloads a single 18.5 MB vendor bundle at startup; heavy syntax highlighting, screenshot, diagram, editor, and image-conversion libraries now load only when needed (thanks to @makeittech). +- Performance: expanding projects with many worktrees no longer repeatedly reloads their session data. - Sessions: launching OpenChamber from a directory other than your project (for example your home folder) no longer produces repeated "not a git repository" errors that could stop sessions and projects from loading (thanks to @makeittech). - Sidebar: a worktree shared by more than one project no longer appears twice (thanks to @makeittech). - Sidebar: session titles no longer clip at the ends of their rows. - Git/Diff: opening a changed file now jumps its header directly to the top, and live updates refresh only files that actually changed while preserving the current review position. Saves from the built-in file editor update the diff too. - Terminal: opening a terminal no longer waits for the terminal view to finish loading, and startup output is retained if it arrives before the view appears (thanks to @makeittech). -- Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271). - Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update. - Chat: prompts sent through the private relay no longer produce duplicate replies when the connection drops after OpenCode accepted the message, and a queued message already being sent is no longer included in another send. -- Settings/Skills: repository-local `.agents/skills` now appear for the active project (thanks to @makeittech). -- Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech). -- Sessions: sessions in a newly created worktree now appear without restarting or refreshing the app. - Agents/CLI: creating a session in a new worktree no longer reports a timeout while the worktree continues to be created in the background. -- Sessions: archiving and unarchiving now stays scoped to the current instance and workspace (thanks to @alexandrereyes). -- Usage: added DeepSeek quota tracking (thanks to @airtaxi). -- Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech). - Desktop/Linux: terminals and OpenCode now start with the correct shell arguments in AppImage installs, fixing broken zsh startup (thanks to @makeittech). - Files: browser clients now label file exports as downloads and no longer show the desktop-only reveal action (thanks to @makeittech). - Chat: assistant messages no longer render active HTML. -- VSCode: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui). ## [1.17.2] - 2026-08-01 -- **Mobile:** rebuilt the app navigation around two swipe drawers — a sessions drawer (left) with a cross-project tree, swipe actions to rename, archive, or delete sessions, and a workspace drawer (right) with Changes, Files, Terminal, Notes, and MCP tabs. Tapping the session title in the header switches recents from a compact overlay with live status indicators. Cold launches reopen the last active session and land on an explicit connect screen on failure instead of flashing an empty draft. +### New + - **Desktop/Windows:** added Windows ARM64 support (thanks to @airtaxi). - UI: a new OpenChamber theme (dark and light) is now the default, replacing the previous default theme. -- Desktop: the active session header now has a menu with rename, share, export, archive, delete, and copy-ID actions; share links copy to the clipboard automatically when created. -- Performance: opening the first session after startup is faster — background startup requests no longer queue ahead of the initial message load (thanks to @yulia-ivashko). - Sessions: a root session can now be moved with all its sub-sessions into a new worktree directly from the header menu. -- Git/Diff: symlinks now appear as link entries in the diff view instead of showing their file content. - Desktop/Linux: added a Window Controls Style setting to switch between classic rectangular buttons and macOS-style traffic lights (thanks to @kydorn). - Files: added a global Auto-save setting under Settings → General; binary, PDF, and Office files are excluded from auto-save (thanks to @makeittech). -- Terminal: switching terminal tabs no longer rebuilds the connection from scratch on each open or switch (thanks to @makeittech). + +### Improvements + +- Desktop: the active session header now has a menu with rename, share, export, archive, delete, and copy-ID actions; share links copy to the clipboard automatically when created. +- Git/Diff: symlinks now appear as link entries in the diff view instead of showing their file content. - Sidebar: sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr). - VSCode: per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on. - Usage: all Z.ai usage windows now appear in the usage view. - Chat: tool descriptions now show the glob pattern when a tool's input uses one. -- Desktop: sticky session headers in the sidebar no longer blink or shift position during page transitions (thanks to @ChangeHow). - Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12). + +### Fixes + +- **Mobile:** rebuilt the app navigation around two swipe drawers — a sessions drawer (left) with a cross-project tree, swipe actions to rename, archive, or delete sessions, and a workspace drawer (right) with Changes, Files, Terminal, Notes, and MCP tabs. Tapping the session title in the header switches recents from a compact overlay with live status indicators. Cold launches reopen the last active session and land on an explicit connect screen on failure instead of flashing an empty draft. +- Performance: opening the first session after startup is faster — background startup requests no longer queue ahead of the initial message load (thanks to @yulia-ivashko). +- Terminal: switching terminal tabs no longer rebuilds the connection from scratch on each open or switch (thanks to @makeittech). +- Desktop: sticky session headers in the sidebar no longer blink or shift position during page transitions (thanks to @ChangeHow). - Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12). ## [1.17.1] - 2026-07-29 -- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. +### New + - System prompt optimization: added an optional Behavior setting that reduces OpenCode's built-in system prompt by about 40% for the build and plan agents; it applies after restarting OpenCode and is unsuitable for custom build or plan definitions. -- OpenCode: chats now recover when OpenCode stops responding during a response, and managed OpenCode no longer restarts repeatedly during a temporary connectivity failure. -- Desktop: bundled OpenCode no longer offers a separate update; it updates with OpenChamber (thanks to @yulia-ivashko). -- Chat: fully loaded histories no longer show "Load older" again after a refresh. -- Chat: messages removed by reverting no longer reappear after you send another message. + +### Improvements + - Chat: slash-command starters now include text already entered in the draft as command arguments. - Session goals: goals started from slash commands, including scheduled tasks, now use the command's expanded instructions. - Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny). - Desktop/Linux: AppImage tray menus now include Show, Hide, and Close, and "Open in" shows system application icons (thanks to @makeittech). -- Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro). - Mobile: image previews load when connected through the private relay. +### Fixes + +- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. +- OpenCode: chats now recover when OpenCode stops responding during a response, and managed OpenCode no longer restarts repeatedly during a temporary connectivity failure. +- Desktop: bundled OpenCode no longer offers a separate update; it updates with OpenChamber (thanks to @yulia-ivashko). +- Chat: fully loaded histories no longer show "Load older" again after a refresh. +- Chat: messages removed by reverting no longer reappear after you send another message. +- Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro). + ## [1.17.0] - 2026-07-28 -- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. -- **Desktop/Linux:** official AppImage releases for x64 and arm64, with in-app updates, frameless window controls, system tray minimize, launch at login, multi-window support, and “Open in” for discovered installed apps. Missing update manifests are treated as “no update” instead of a hard failure, and updater errors surface in About/sidebar (thanks to @BestSithInEU, @jibanez-staticduo, @makeittech). -- **Sidebar:** sessions are organized into Recent and project zones with worktree-grouped or flat views. Scheduled tasks, archived sessions, multi-run, and worktree management now open as full-page views from the sidebar. +### New + - **Agents/CLI:** agents on managed local instances can now create, send to, fork, inspect, and wait for sessions; create isolated worktrees; and manage scheduled tasks through the OpenChamber tool. The CLI adds matching `session`, `schedule`, `projects`, and `models` commands, and a new Schedule a Task starter guides task setup from chat. -- Chat composer: prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place, and the mobile composer grows with its content instead of using a separate fullscreen gesture. -- Desktop/Linux: fixed an intermittent freeze or crash while chats were streaming with the system tray enabled (thanks to @kydorn). -- Small Model: GitHub Copilot models now use their supported API, fixing summaries, goal audits, commit messages, and other Small Model actions for models that do not support Chat Completions (thanks to @jakoss). - Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow). -- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). +- Settings: added an option to hide starter suggestions on the new-session screen. +- Usage: added Crof and NeuralWatt quota tracking with subscription kWh, independent key-allowance windows, and credits-balance fallback across the web server and VS Code extension (thanks to @kydorn). + +### Improvements + +- **Sidebar:** sessions are organized into Recent and project zones with worktree-grouped or flat views. Scheduled tasks, archived sessions, multi-run, and worktree management now open as full-page views from the sidebar. +- Chat composer: prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place, and the mobile composer grows with its content instead of using a separate fullscreen gesture. - Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx). - Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded. - Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet. -- Settings: added an option to hide starter suggestions on the new-session screen. -- Mobile/Android: terminal taps now open the keyboard, text and backspace input work with Android keyboards, and closing a focused terminal no longer leaves the app unresponsive. -- Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active. - Mobile/iOS: push notifications now use Apple’s production service by default (thanks to @natheihei). - Mobile/iOS: notifications now work for development builds installed from Xcode — the app detects its Apple push environment and the server delivers each device to the matching endpoint, so dev (sandbox) and TestFlight/App Store (production) installs both receive pushes. -- Usage: added Crof and NeuralWatt quota tracking with subscription kWh, independent key-allowance windows, and credits-balance fallback across the web server and VS Code extension (thanks to @kydorn). + +### Fixes + +- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. +- **Desktop/Linux:** official AppImage releases for x64 and arm64, with in-app updates, frameless window controls, system tray minimize, launch at login, multi-window support, and “Open in” for discovered installed apps. Missing update manifests are treated as “no update” instead of a hard failure, and updater errors surface in About/sidebar (thanks to @BestSithInEU, @jibanez-staticduo, @makeittech). +- Desktop/Linux: fixed an intermittent freeze or crash while chats were streaming with the system tray enabled (thanks to @kydorn). +- Small Model: GitHub Copilot models now use their supported API, fixing summaries, goal audits, commit messages, and other Small Model actions for models that do not support Chat Completions (thanks to @jakoss). +- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). +- Mobile/Android: terminal taps now open the keyboard, text and backspace input work with Android keyboards, and closing a focused terminal no longer leaves the app unresponsive. +- Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active. ## [1.16.3] - 2026-07-22 +### New + - **Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type. -- **Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between instances, projects, or worktrees. - **Sessions/Worktrees**: idle root sessions can now be moved with their sub-sessions and uncommitted changes into a new worktree. Worktree creation also recovers when an earlier Git operation left the repository locked. - Desktop: the app can now start directly with a saved remote instance, URL, or pairing link without requiring a local OpenCode installation or local server. - Scheduled Tasks: tasks can now start with permission auto-accept enabled, and the permission and Run as goal controls use the same compact toggles as the chat composer. -- Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place. +- Desktop/macOS: added a setting to hide the menu bar item. + +### Improvements + - Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks). - Sidebar: projects now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged. -- Desktop/macOS: added a setting to hide the menu bar item. - Desktop/Windows: SSH remote instances now connect through native Windows OpenSSH without relying on unsupported connection sharing. Password authentication and port forwarding work through hidden background processes, and connection failures now show the underlying SSH error instead of a generic message. +- Mobile/Terminal: opening the terminal in a mobile browser or PWA now focuses its input and opens the keyboard without an extra tap (thanks to @bashrusakh). + +### Fixes + +- **Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between instances, projects, or worktrees. +- Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place. - VSCode/Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech). - VSCode: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it. -- Mobile/Terminal: opening the terminal in a mobile browser or PWA now focuses its input and opens the keyboard without an extra tap (thanks to @bashrusakh). - Context Panel: delayed file-open requests no longer switch the panel back to a file after you select another tab. ## [1.16.2] - 2026-07-18 +### New + - **Terminal:** rebuilt terminal sessions across the Web, Desktop, and Mobile apps with faster rendering, retained scrollback after reconnecting, shell and login-shell selection, restart and selected-output attachment actions, live theme changes, and more accurate Unicode and full-screen app rendering. Mobile now includes a full-screen terminal workspace with touch scrolling and selection, quick keys, and Ctrl/Alt input. -- **Pinned messages:** pin important user or assistant messages to restore their text to the agent after conversation compaction. +- Sessions: new drafts and sessions now stay with the project selected in the sidebar, including workspaces with nested or sibling projects (thanks to @bashrusakh). + +### Improvements + - **Settings:** pages now use a consistent responsive layout, navigation is grouped into OpenChamber, Workspace, OpenCode, and Library sections, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech). - Session goals: audits now wait while direct subagents are still active, and goal details show the model used for the latest successful evaluation. -- Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it. -- Sessions: new drafts and sessions now stay with the project selected in the sidebar, including workspaces with nested or sibling projects (thanks to @bashrusakh). - Small Model: provider API keys referenced through environment variables or files now work for summaries, goal audits, and other Small Model features; Gemini 3 Flash models now use their supported thinking setting. - VSCode: per-session permission auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open. - Mobile/Android: update downloads now select an APK when a release also includes an Android App Bundle. +### Fixes + +- **Pinned messages:** pin important user or assistant messages to restore their text to the agent after conversation compaction. +- Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it. + ## [1.16.1] - 2026-07-14 -- **Performance:** large session sidebars stay responsive while chats stream, including setups with many projects, worktrees, and sessions. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. -- Chat: an optional Prompt Navigator adds a marker rail beside desktop chats; hover to preview prompts, click to jump between them, or assign a shortcut in Keyboard Shortcuts settings (thanks to @makeittech). +### Improvements + - Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output. - Chat/Subagents: task cards now track the correct subagent when several run at once, preventing one subagent's activity or "Open subtask" action from pointing to another session. - Chat/Subagents: "Open subtask" now works for nested subagents inside the side-panel chat, with a Parent action to return to the previous subagent (thanks to @ameshkov). -- Sessions: temporary project lookup failures no longer remove worktree groups from the sidebar. - Small Model: custom OpenAI-compatible providers now use the base URL and API key from OpenCode configuration (thanks to @ameshkov). +### Fixes + +- **Performance:** large session sidebars stay responsive while chats stream, including setups with many projects, worktrees, and sessions. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. +- Chat: an optional Prompt Navigator adds a marker rail beside desktop chats; hover to preview prompts, click to jump between them, or assign a shortcut in Keyboard Shortcuts settings (thanks to @makeittech). +- Sessions: temporary project lookup failures no longer remove worktree groups from the sidebar. + ## [1.16.0] - 2026-07-13 +### New + - **Session goals:** arm the new target button in the composer and your next prompt becomes a [goal](https://docs.openchamber.dev/session-goals/) — the session keeps working toward it on its own, with an independent small-model audit checking each finished turn, until the objective is verifiably complete, blocked, or over its optional token budget. The loop runs on the server, so it continues with the app closed and survives restarts. A goal strip above the composer shows progress with pause/resume; goals can also start from the plan-implement dialog, from scheduled tasks ("Run as goal"), or with the new "Craft a Goal" starter and `/craft-goal` command. While a goal runs, per-turn "ready" notifications are replaced by a single notification when it settles. -- **Usage:** OpenCode Go usage tracking is here, and Codex quota windows now show the correct reset times. -- **Remote access:** connecting over the relay got much faster — the app no longer waits for a stale local address to time out before trying the relay (previously up to ~20 seconds on a phone away from home). When your computer gets a new local IP, paired devices now learn the new address over the relay and quietly move back to the local network on their own — no re-pairing. The phone's launch screen shows which device it is connecting to. -- Remote access: running several OpenChamber instances on the same machine no longer makes paired devices land on a random one of them — only one process per machine serves the relay now. This was behind intermittent "Unable to reach server" errors on paired phones. -- Permissions: per-session auto-accept now lives on the server — sessions keep auto-accepting tool calls while the app is closed and after a server restart, subagent sessions inherit the setting, and it can be enabled on a draft before the first message (thanks to @bashrusakh for the draft fix). - Chat: subagent sessions can now be prompted directly — open a subagent from the context panel and send it follow-up messages (off by default, available in settings). -- Chat: queued messages now send when the session is already idle instead of waiting forever in some cases, pending agent questions stay answerable after a server restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh). +- Settings: chat visual settings are grouped into labeled sections, and a new editor font size setting for the code editor (thanks to @bashrusakh). + +### Improvements + +- **Usage:** OpenCode Go usage tracking is here, and Codex quota windows now show the correct reset times. - Files: the file viewer has a markdown preview toggle (thanks to @greghaynes). - Sidebar: projects can be sorted by different modes with a direction toggle, pinned sessions survive refreshes, and the file tree stays expanded while it refreshes (thanks to @bashrusakh). - Command palette: projects are included in the fuzzy search alongside sessions and files (thanks to @bashrusakh). -- Settings: chat visual settings are grouped into labeled sections, and a new editor font size setting for the code editor (thanks to @bashrusakh). - GitHub: PR and issue context now resolves against the source repository in fork workflows (thanks to @bashrusakh). -- Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh). - Notifications: session errors and subagent completions now notify reliably across desktop, web, and mobile. - Editor: "Open in" now recognizes VS Code Insiders. -- Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh). - Mobile: the sessions sidebar opens instantly instead of taking many seconds on some devices (thanks to @tomzx). -- Mobile: renaming a saved instance no longer breaks its connection — the stored access token was getting lost on edit. -- Mobile: on Android 15 the app no longer draws under the status bar. - Security: requests that spoof local host headers to look like same-machine traffic are rejected. +### Fixes + +- **Remote access:** connecting over the relay got much faster — the app no longer waits for a stale local address to time out before trying the relay (previously up to ~20 seconds on a phone away from home). When your computer gets a new local IP, paired devices now learn the new address over the relay and quietly move back to the local network on their own — no re-pairing. The phone's launch screen shows which device it is connecting to. +- Remote access: running several OpenChamber instances on the same machine no longer makes paired devices land on a random one of them — only one process per machine serves the relay now. This was behind intermittent "Unable to reach server" errors on paired phones. +- Permissions: per-session auto-accept now lives on the server — sessions keep auto-accepting tool calls while the app is closed and after a server restart, subagent sessions inherit the setting, and it can be enabled on a draft before the first message (thanks to @bashrusakh for the draft fix). +- Chat: queued messages now send when the session is already idle instead of waiting forever in some cases, pending agent questions stay answerable after a server restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh). +- Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh). +- Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh). +- Mobile: renaming a saved instance no longer breaks its connection — the stored access token was getting lost on edit. +- Mobile: on Android 15 the app no longer draws under the status bar. + ## [1.15.0] - 2026-07-10 +### New + - **Remote access:** a new [private relay](https://docs.openchamber.dev/private-relay/) lets you reach your instance from anywhere — no open ports and no third-party tunnel, over an end-to-end-encrypted tunnel. It turns on by itself when you pair a device over it and turns off once no paired device uses it (thanks to @yulia-ivashko). - **Mobile:** the native iOS and Android apps open for testing — join the [iOS public beta on TestFlight](https://testflight.apple.com/join/5ek6GU1E) or grab the Android APK from the [latest release](https://github.com/openchamber/openchamber/releases/latest). Connect by scanning a QR code from "Add a device" on your server; the app then moves between your local network and the private relay on its own — leaving home carries the open session onto the relay and coming back returns it to Wi-Fi, no re-pairing. Saved instances show a live Connected status with the active transport, iPad gets a split layout with a persistent sessions sidebar and a resizable Changes/Files sidebar, and the app checks for OpenChamber updates itself (Android shows a download toast). - **Pairing:** a redesigned ["Add a device"](https://docs.openchamber.dev/connect-devices/) dialog asks where you'll use the device — Anywhere (relay with local network preferred at home), Home network only, or This computer only — then shows a large scannable QR code with a copyable link, and closes itself once the device connects. Links are single-use expiring codes redeemed on connect instead of embedding a long-lived token in the QR (thanks to @yulia-ivashko). -- Devices: the "Connect to this server" list now shows each paired device with a live status — Connected · Local network or Relay — and a platform badge (iOS, Android, macOS, Windows, Linux). Re-pairing or re-entering the password on the same device updates its existing entry instead of adding a duplicate. -- Devices: a paired phone or desktop names the connection after the server's hostname; the name typed when creating the link labels the device in the server's list. - Desktop: saved servers keep every transport their pairing link carried — the app connects directly on your network and falls back to the relay away from it, including when opening a server in a new window and when restoring the connection after a restart. -- Desktop: the header dropdown (instance / usage / MCP) was restyled with cards — usage grouped per provider, hosts showing a colored status line with ping and the active host highlighted, and MCP servers in one card. Host statuses persist between openings instead of flashing "Unknown", and switching to an already-checked host is immediate. - Desktop: the servers list in Settings shows live per-server reachability, and importing a pairing link is the primary way to add a server. -- Desktop: Windows builds can launch at login and minimize to the system tray (thanks to @achcyano). - Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results open in a new navigable summary view with linked URLs and expandable nested data, alongside tree and raw JSON views. -- Chat/Tools: expanded file-edit and patch results now include per-file buttons to open the diff or jump to the first changed line in the file editor. -- Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments. - Projects: each project can now set its own default model (thanks to @makeittech). - Diff/Chat: added a Last turn mode to the Diff view, and latest-turn changed-file chips in chat now open that snapshot while older turn chips stay read-only. -- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). - Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting (Settings → Chat) controls long-line wrapping. -- Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations. -- Chat: if sending a message times out or loses the connection after OpenCode accepted it, the app now keeps the sent message instead of rolling it back as failed. + +### Improvements + +- Devices: a paired phone or desktop names the connection after the server's hostname; the name typed when creating the link labels the device in the server's list. +- Desktop: the header dropdown (instance / usage / MCP) was restyled with cards — usage grouped per provider, hosts showing a colored status line with ping and the active host highlighted, and MCP servers in one card. Host statuses persist between openings instead of flashing "Unknown", and switching to an already-checked host is immediate. +- Desktop: Windows builds can launch at login and minimize to the system tray (thanks to @achcyano). +- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). - Mobile: selecting local files from the composer now attaches the picked files even if the composer switches between compact and expanded layouts while the file picker is open. - Browser: links clicked inside an embedded browser tab now keep the tab on the navigated page instead of remounting the frame. - Context Panel: raw message rows now keep token and time columns aligned without showing shortened message IDs. -- UI: closing the right sidebar after resizing no longer leaves stale width constraints behind. - Server: remote clients with non-ASCII project paths connect again (thanks to @FanFan4204). +### Fixes + +- Devices: the "Connect to this server" list now shows each paired device with a live status — Connected · Local network or Relay — and a platform badge (iOS, Android, macOS, Windows, Linux). Re-pairing or re-entering the password on the same device updates its existing entry instead of adding a duplicate. +- Chat/Tools: expanded file-edit and patch results now include per-file buttons to open the diff or jump to the first changed line in the file editor. +- Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments. +- Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations. +- Chat: if sending a message times out or loses the connection after OpenCode accepted it, the app now keeps the sent message instead of rolling it back as failed. +- UI: closing the right sidebar after resizing no longer leaves stale width constraints behind. + ## [1.14.1] - 2026-07-07 +### New + - Chat: finished agent replies can now show a short recap and a suggested next message, with separate settings for each and a Small Model setting for choosing the utility model used for those helpers. -- Notes/Todos: adding selected chat text to notes now uses the Small Model to summarize it automatically. - Voice: read-aloud can now use the Small Model to summarize long text before speaking it. -- Git/GitHub: commit message and pull-request generation now use the Small Model from setting instead of sending message to chat. - Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet. + +### Improvements + +- Notes/Todos: adding selected chat text to notes now uses the Small Model to summarize it automatically. +- Git/GitHub: commit message and pull-request generation now use the Small Model from setting instead of sending message to chat. - Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan). -- Git/Diff: opening a changed file now jumps to the first changed line instead of the start of the diff hunk. - Mobile: the composer stays focused more reliably when the keyboard opens, and the dictation transcript grows the composer like typed text. - Mobile: iOS PWA safe areas, keyboard overlays, and app-resume connection checks were tightened up. -- Desktop: password-protected instances opened from desktop or a browser no longer take the mobile-only unlock path. - VSCode: favorite models now stay saved after restarting the extension (thanks to @Catan). - VSCode: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan). +### Fixes + +- Git/Diff: opening a changed file now jumps to the first changed line instead of the start of the diff hunk. +- Desktop: password-protected instances opened from desktop or a browser no longer take the mobile-only unlock path. + ## [1.14.0] - 2026-07-05 -- Voice: voice input was rebuilt around live streaming transcription — the composer mic shows a live transcript with a volume meter and timer while you speak, and a recording can be cancelled, inserted, or inserted and sent; failed transcriptions keep their audio so you can retry or accept the partial text. +### New + - Voice: local speech-to-text works out of the box — models (Parakeet for English and 25 European languages, Whisper for a lighter multilingual option) download on demand from a new picker in Settings → Voice, or any OpenAI-compatible Whisper endpoint can be used instead; a configurable shortcut (mod+alt+v by default) toggles dictation. - Voice: read-aloud can now use a local Kokoro voice (11 English voices), and long replies start speaking after roughly a sentence instead of waiting for the whole message. - Voice: the Voice settings page was simplified — a single read-aloud toggle owns the playback options, and a new "Enable voice input" toggle hides the composer mic entirely. - Mobile: the composer collapses into a compact input bar while the keyboard is closed, with a round new-session button beside it (hidden on the new-session screen); tapping the bar expands it and opens the keyboard, and the mic starts voice input straight from the compact bar. - Mobile: the model and agent selectors moved into a row above the message text, the attachment menu and the new-session project/branch pickers open as bottom sheets with search, and a drag handle above the composer swipes it into a fullscreen editor — swiping down shrinks it back or dismisses the keyboard. -- Mobile: long conversations now load older history with a button at the top of the chat, which disappears once everything is loaded; loading older messages keeps your scroll position steady on all platforms. - Mobile: the branch/worktree picker on the new-session screen lists all worktrees right after a cold start, and the GitHub connection status is recognized without re-running the connect flow. -- Mobile: opening the web app in a phone browser against a password-protected instance shows the password unlock page again (regressed in 1.13.9). -- Mobile: returning to the app no longer briefly flickers the session list. -- Mobile: continued polish ahead of the native app release — the chat and composer ride the keyboard in one smooth motion (including in long conversations), bottom sheets enter cleanly while the keyboard dismisses, the text cursor stays in place when the keyboard opens, starter suggestions on the new-session screen step aside while the keyboard is up, and switching instances no longer leaves the previous instance's sessions in the sessions list. -- UI: lists across the app were moved to one virtualization engine, so long lists scroll more consistently. -- Mobile: the slash-command, file/agent, skill, and snippet autocompletes were tuned for touch — they can grow up to the top of the chat area, the keyboard-hint footer and description lines are gone, row icons line up, list scrolling no longer bounces the page behind, and picking a command keeps the keyboard open. - Mobile: in phone browsers the composer now keeps itself above the keyboard on the new-session screen and in the fullscreen editor, and opening the app shows the logo while it connects instead of flashing an unreachable-server error. -- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. -- Desktop: a local instance with a UI password and LAN access no longer gets stuck on "Auth required" and an unreachable-server screen (the app's client tokens are now reliably recognized as local, including for 0.0.0.0-bound servers). + +### Improvements + +- Mobile: long conversations now load older history with a button at the top of the chat, which disappears once everything is loaded; loading older messages keeps your scroll position steady on all platforms. +- Mobile: opening the web app in a phone browser against a password-protected instance shows the password unlock page again (regressed in 1.13.9). +- UI: lists across the app were moved to one virtualization engine, so long lists scroll more consistently. - Desktop: the app prefers your own OpenCode install again — the bundled CLI is used only when no OpenCode is installed anywhere on the machine. - Windows: OpenCode installed via npm now launches from paths with spaces (such as C:\Program Files\nodejs), binary paths pasted with surrounding quotes work, and discovery also checks the system-wide npm prefix and Scoop's shims — in the web/desktop app and the VS Code extension. +### Fixes + +- Voice: voice input was rebuilt around live streaming transcription — the composer mic shows a live transcript with a volume meter and timer while you speak, and a recording can be cancelled, inserted, or inserted and sent; failed transcriptions keep their audio so you can retry or accept the partial text. +- Mobile: returning to the app no longer briefly flickers the session list. +- Mobile: continued polish ahead of the native app release — the chat and composer ride the keyboard in one smooth motion (including in long conversations), bottom sheets enter cleanly while the keyboard dismisses, the text cursor stays in place when the keyboard opens, starter suggestions on the new-session screen step aside while the keyboard is up, and switching instances no longer leaves the previous instance's sessions in the sessions list. +- Mobile: the slash-command, file/agent, skill, and snippet autocompletes were tuned for touch — they can grow up to the top of the chat area, the keyboard-hint footer and description lines are gone, row icons line up, list scrolling no longer bounces the page behind, and picking a command keeps the keyboard open. +- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. +- Desktop: a local instance with a UI password and LAN access no longer gets stuck on "Auth required" and an unreachable-server screen (the app's client tokens are now reliably recognized as local, including for 0.0.0.0-bound servers). + ## [1.13.9] - 2026-07-02 +### New + - Mobile: added the native iOS and Android app projects ahead of the mobile app release, with continued polish for saved connections, password unlock, QR-code connection scanning, push notifications, iOS widgets, app resume, and native layout details. - Desktop: the app can now use a bundled OpenCode CLI, or you can choose your own CLI path in settings. -- Desktop: added a Keep awake setting for the upcoming desktop app release to prevent the computer from sleeping while the app is running. - Desktop: you can now specify optional custom headers when adding a remote OpenChamber instance to the desktop app, including for Cloudflare Access-style setups; settings and environment variables can still override them, and the bundled CLI can be replaced by setting a direct OpenCode CLI path. + +### Improvements + - Desktop: SSH remote instances with a saved UI password now open directly after the tunnel connects instead of showing the unlock screen again. +- VSCode: clearing optional agent fields now removes them from agent config instead of saving `null` values. + +### Fixes + +- Desktop: added a Keep awake setting for the upcoming desktop app release to prevent the computer from sleeping while the app is running. - Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling. - Chat: embedded JSON examples in messages no longer render as generated-result cards. - Sync: chat state now recovers after idle reconnects instead of leaving sessions stuck in a stale busy state. -- VSCode: clearing optional agent fields now removes them from agent config instead of saving `null` values. - VSCode: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI. ## [1.13.8] - 2026-06-29 +### New + +- Chat: a new Follow-up behavior setting (Settings → Chat) controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh). + +### Improvements + +- Sessions: deleting a worktree group from the sidebar, or permanently deleting an archived session that has subagent sessions, now removes those subagent sessions too instead of leaving them behind (thanks to @bashrusakh). + +### Fixes + - Startup: launching the app no longer hangs for around 20 seconds before you can open a session, load a diff, or send a message — GitHub pull request status checks no longer tie up the connection to the server during startup. - OpenCode: when a separate OpenCode is already running (the TUI, `opencode serve`, or a daemon on the default port 4096), the app now starts its own server instead of attaching to it. This fixes the "OpenChamber could not finish initialization" error and stops the app from opening or closing your separate OpenCode when it starts and quits. Connecting to an external OpenCode now requires setting `OPENCODE_HOST`, `OPENCODE_PORT`, or `OPENCODE_SKIP_START`. -- Chat: a new Follow-up behavior setting (Settings → Chat) controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh). -- Sessions: deleting a worktree group from the sidebar, or permanently deleting an archived session that has subagent sessions, now removes those subagent sessions too instead of leaving them behind (thanks to @bashrusakh). - Sessions: clicking a session inside a worktree group no longer briefly jumps the selection to the project's first session while the sidebar data catches up (thanks to @bashrusakh). - Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx). ## [1.13.7] - 2026-06-28 -- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. -- Mobile: in long conversations, older messages now load before you reach the very top, and fast scrolling no longer leaves blank gaps where messages briefly disappear until you scroll back. +### New + +- Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider. + +### Improvements + - Mobile: the model and agent buttons in the composer are now borderless and cleaner, show the provider logo next to the model name, and shorten long names with an ellipsis; in the model picker the thinking-variant control is plain text with a chevron and each row's controls line up. - Mobile: interface labels (the model and agent selectors and other small labels) are back to their previous size after 1.13.6 shrank them too much. -- Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider. + +### Fixes + +- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. +- Mobile: in long conversations, older messages now load before you reach the very top, and fast scrolling no longer leaves blank gaps where messages briefly disappear until you scroll back. - CLI: `openchamber update` works again after a missing helper broke the command. ## [1.13.6] - 2026-06-28 +### New + +- Desktop/macOS: the Dock icon can now show a badge count for chats with unseen activity, with a new Appearance setting to turn it off. + +### Improvements + - Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages. - Chat: selecting a user-installed skill from the slash command menu now invokes the skill and injects its content, instead of inserting the skill name as plain text. - Context Panel: chat tabs now use the session title and mark the open chat as seen while you are viewing it. -- Desktop/macOS: the Dock icon can now show a badge count for chats with unseen activity, with a new Appearance setting to turn it off. + +### Fixes + - Context Panel: Browser and Preview tabs no longer accumulate duplicate auth tokens in their URLs after reloads or navigation. ## [1.13.5] - 2026-06-27 +### Fixes + - CLI: global web installs no longer crash on startup when tunnel commands load ngrok capabilities. - CLI: `openchamber update` works again, and tunnel start paths no longer fail when using managed-local config prompts, multi-instance port selection, or auto-started servers. - GitHub/Usage: fork upstream detection and Google quota checks no longer fail because of missing server helpers. ## [1.13.4] - 2026-06-27 +### New + - UI/Localization: added Japanese interface translations and Japanese documentation (thanks to @yuchi0531). - Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech). -- Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx). -- Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay. - Reviews: the Review changes dialog can now run an automatic review loop, with a chat banner for opening or stopping the linked review sessions. -- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). - Shortcuts: the model-selector shortcut can now be customized (thanks to @makeittech). -- Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech). -- Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12). - Worktrees: messages sent to new worktree sessions now wait until the worktree session is ready instead of racing ahead (thanks to @bashrusakh). + +### Improvements + +- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). - Git: commit and pull-request generation from a draft session now starts from the created chat session instead of a temporary draft (thanks to @bashrusakh). - CLI: startup and status commands now check the live server port before treating an existing process as the active OpenChamber server. +### Fixes + +- Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx). +- Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay. +- Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech). +- Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12). + ## [1.13.3] - 2026-06-24 +### New + +- Git: Git identities can now enable SSH commit signing. + +### Improvements + - Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12). -- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). - Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh). -- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). - Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer. -- Sessions: new sessions now stay attached to the selected project or current workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). -- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). - Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh). - Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz). - Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm). - Providers: disconnecting a provider from settings now works for the selected provider (thanks to @bashrusakh). -- Git: Git identities can now enable SSH commit signing. - Git: pushing from the Git view now syncs first, reducing rejected pushes when the branch needs to update. - Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino). - VSCode: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114). +- Files: downloads and file names with non-Latin characters now handle those characters correctly in headers (thanks to @FanFan4204). + +### Fixes + +- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). +- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). +- Sessions: new sessions now stay attached to the selected project or current workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). +- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). - Startup: managed OpenCode server processes left behind by a previous crash are cleaned up on the next start. - CLI: stale server PID files are checked more carefully so unrelated processes are not mistaken for an OpenChamber server. -- Files: downloads and file names with non-Latin characters now handle those characters correctly in headers (thanks to @FanFan4204). - Mobile: subagent chevrons no longer overlap long session titles, and session grouping now matches the exact workspace directory (thanks to @weixiang1862, @lilyzhaun). ## [1.13.2] - 2026-06-18 +### Improvements + - Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh). -- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). - Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven). + +### Fixes + +- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). - Files: HTML, image, and PDF previews no longer cycle to "authentication required" every ~50 seconds (thanks to @bashrusakh). - Startup: the app starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved. ## [1.13.1] - 2026-06-17 -- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions — only `$$...$$` display math and `\(...\)` inline math are recognized. +### New + - Chat: pinned welcome starters now appear immediately when a new draft session opens, without needing to open the add dialog. +- Scheduled Tasks: the task editor dialog now supports Cron expressions with inline validation, quick-example chips, and a preview of the next four upcoming runs (thanks to @tomzx). +- Startup: providers and agents now load faster by avoiding the full provider catalog on initial load. + +### Improvements + - Chat: clicking a Mermaid diagram in a chat message now opens a fullscreen pan/zoom preview. -- Chat: code-block highlighting now runs off the main thread, preventing UI freezes when rendering code-heavy responses. - Chat: the context usage indicator now shows as a circular progress ring with the same color thresholds, visible in all workspace headers. - Chat/UI: embedded chat views and context panel previews now consistently match the current theme. - Chat/Mobile: the session status button now responds more reliably to taps on Android. -- Scheduled Tasks: the task editor dialog now supports Cron expressions with inline validation, quick-example chips, and a preview of the next four upcoming runs (thanks to @tomzx). - Files: syntax highlighting in the file editor, Plan View, and Skills page now uses Shiki for broader language support. -- Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is and shows a clear explanation instead of silently disappearing. -- Agents: deleting an agent now shows an error toast when the definition is missing, instead of failing silently. -- Startup: providers and agents now load faster by avoiding the full provider catalog on initial load. - Right Sidebar: switching between sidebar tabs is less likely to re-render unrelated content (thanks to @bashrusakh). -- Sessions: the app no longer crashes on startup when there are many sessions in folders. -- Notifications: desktop notifications no longer show duplicate alerts, and reasoning text is excluded from notification bodies. - Security: self-hosted instances now include noindex headers and a robots.txt to block search engine crawlers. - CLI/Installer: the installer now requires Node.js 22 and handles version detection failures with clearer guidance. + +### Fixes + +- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions — only `$$...$$` display math and `\(...\)` inline math are recognized. +- Chat: code-block highlighting now runs off the main thread, preventing UI freezes when rendering code-heavy responses. +- Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is and shows a clear explanation instead of silently disappearing. +- Agents: deleting an agent now shows an error toast when the definition is missing, instead of failing silently. +- Sessions: the app no longer crashes on startup when there are many sessions in folders. +- Notifications: desktop notifications no longer show duplicate alerts, and reasoning text is excluded from notification bodies. - Reliability: session list loading handles Windows paths and concurrent requests more steadily, and duplicate health-check URLs are removed from diagnostics. ## [1.13.0] - 2026-06-15 +### New + +- Files: added dedicated PDF files previews mode. +- Files: added an optional docked files editor toolbar (thanks to @robertoberto). +- Git/Diff: individual diff hunks can now be staged, unstaged, or discarded directly from the Changes view via `git apply`. +- Git/Diff: added a review flow for starting a review from current changes. +- GitHub: GitHub settings can now use credentials from the `gh` CLI when available (thanks to @tomzx). +- Desktop: you can now open developer tools from the Help menu. +- Sessions: new draft sessions now start from the default model and agent instead of inheriting the previous session's selection, and fall back to OpenCode's own `default_agent` (and its model) when no OpenChamber default is set. +- Startup: the model and agent now appear faster on the initial draft — config loads under the project key up front (no reload when the draft opens) and the agent list is fetched once instead of per consumer. + +### Improvements + - Security: LAN and remote browser access now require a UI password before the server will start. - Desktop: if LAN access was enabled without a password, the app now starts locally and asks for a password before turning LAN access back on. - Chat: file paths inside fenced code blocks are now clickable, including line and column targets (thanks to @robertoberto). - Chat: context breakdowns now show message previews and cache hit rates (thanks to @robertoberto, @raz123). - Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive. - Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84). -- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). - Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history. -- Chat/Mobile: collapsed tool cards now keep their tool icon visible, and reasoning/tool text no longer clips descenders. -- Files: added dedicated PDF files previews mode. -- Files: added an optional docked files editor toolbar (thanks to @robertoberto). - Files: file operations now use the active workspace directory more consistently (thanks to @tomzx). - Sessions: session menus now include a delete action (thanks to @ShogunPanda). -- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). -- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). - Sessions: selected rows now highlight across the full sidebar gutter. - Comments: inline file/diff comment drafts now stay in place when focus changes. - Git/Diff: redesigned the Changes diff view with faster multi-file rendering, expandable hunk separators, a full-file loading toggle, compact responsive controls, and a unified changed/staged context panel workflow. -- Git/Diff: individual diff hunks can now be staged, unstaged, or discarded directly from the Changes view via `git apply`. -- Git/Diff: added a review flow for starting a review from current changes. -- GitHub: GitHub settings can now use credentials from the `gh` CLI when available (thanks to @tomzx). - Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini). - Notifications: notification streams now stay connected more reliably behind proxies (thanks to @kostazol). - Mobile: the empty Changes view keeps a close control visible (thanks to @lilyzhaun). - Security: file previews and downloads now reject paths outside the allowed workspace unless access has been granted. -- Sessions: fixed a bug where a running session would briefly flicker as idle (in the sidebar, the send/stop button, and the status row) when the app is protected by a password. -- Desktop: you can now open developer tools from the Help menu. -- Sessions: new draft sessions now start from the default model and agent instead of inheriting the previous session's selection, and fall back to OpenCode's own `default_agent` (and its model) when no OpenChamber default is set. - Startup: cached settings and session state now appear earlier while the live API finishes connecting. -- Startup: the model and agent now appear faster on the initial draft — config loads under the project key up front (no reload when the draft opens) and the agent list is fetched once instead of per consumer. - VSCode: the extension opens faster with cached sessions, models, providers, and projects, then refreshes in the background. - VSCode: sessions are now grouped under their workspace, with cleaner session rows and an archived-sessions toggle. +### Fixes + +- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). +- Chat/Mobile: collapsed tool cards now keep their tool icon visible, and reasoning/tool text no longer clips descenders. +- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). +- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). +- Sessions: fixed a bug where a running session would briefly flicker as idle (in the sidebar, the send/stop button, and the status row) when the app is protected by a password. + ## [1.12.4] - 2026-06-11 +### New + - Chat: added `/handoff-review` to open a linked review session for the current workspace changes, with actions to send review feedback and implementation replies between the sessions. - Chat/UI: added a setting to collapse long user messages. -- Chat: `@agent` mentions in rendered messages now use the primary accent color. -- Chat: table copy actions now include a Markdown format option (thanks to @kjhq). - Chat: Mermaid diagrams can now be opened in a dedicated diagram editor (thanks to @nerdosaurus). -- Models: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq). - Worktrees: creating a single new worktree session now opens the session immediately while worktree setup continues in the background. -- Multi-Run: creating isolated runs now opens sessions immediately while worktree setup continues in the background. -- Sessions: chat folder assignments now stay in place after reloads. -- Sessions: session, folder, project, and worktree rows now have right-click menus for their available actions. - Settings: added search across settings pages. -- Settings/Agents: agent prompt and permission edits now stay saved after changes. - Files: added an editor Vim mode setting (thanks to @Champii). -- Files: writes are now safer when saving through temporary files (thanks to @nerdosaurus). -- Git: changed-file folders now have a revert action (thanks to @kostazol). -- GitHub: issue and pull-request pickers now use server-side search for larger repositories (thanks to @tomzx). -- Preview: inline module scripts are now rewritten in proxied HTML responses, fixing more Vite preview pages (thanks to @mdbetancourt). -- Voice: Plan and file preview markdown now include text-to-speech buttons, with a setting for reading selected text or the full document (thanks to @yangyaofei). - Desktop/macOS: added a menu bar tray with live session status, Mini Chat access, and a provider usage submenu. - Desktop/macOS: added an optional vibrancy effect for the left sidebar. -- Desktop/macOS: startup no longer opens unnecessary folder prompts. - Mobile: refreshed session controls, worktree deletion flow, MCP controls, update flow, and usage tracking for new layout. -- Terminal/Mobile: touch scrolling in the terminal no longer conflicts with terminal input as often (thanks to @kostazol). - Usage: added Cursor quota tracking. - UI/Localization: added French interface translations and French documentation (thanks to @pascalandr). - VSCode: added an action to archive all sessions from the extension (thanks to @jjdubski). - VSCode: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko). +### Improvements + +- Chat: `@agent` mentions in rendered messages now use the primary accent color. +- Chat: table copy actions now include a Markdown format option (thanks to @kjhq). +- Models: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq). +- Multi-Run: creating isolated runs now opens sessions immediately while worktree setup continues in the background. +- Sessions: chat folder assignments now stay in place after reloads. +- Sessions: session, folder, project, and worktree rows now have right-click menus for their available actions. +- Settings/Agents: agent prompt and permission edits now stay saved after changes. +- Files: writes are now safer when saving through temporary files (thanks to @nerdosaurus). +- Git: changed-file folders now have a revert action (thanks to @kostazol). +- GitHub: issue and pull-request pickers now use server-side search for larger repositories (thanks to @tomzx). +- Voice: Plan and file preview markdown now include text-to-speech buttons, with a setting for reading selected text or the full document (thanks to @yangyaofei). + +### Fixes + +- Preview: inline module scripts are now rewritten in proxied HTML responses, fixing more Vite preview pages (thanks to @mdbetancourt). +- Desktop/macOS: startup no longer opens unnecessary folder prompts. +- Terminal/Mobile: touch scrolling in the terminal no longer conflicts with terminal input as often (thanks to @kostazol). + ## [1.12.3] - 2026-06-05 -- Windows/Startup: WSL OpenCode installs are no longer detected or launched; install OpenCode natively on Windows and configure `opencode.cmd` or `opencode.exe` instead. +### Improvements + - Startup: OpenCode health checks now work with OpenCode 1.15.x. + +### Fixes + +- Windows/Startup: WSL OpenCode installs are no longer detected or launched; install OpenCode natively on Windows and configure `opencode.cmd` or `opencode.exe` instead. - Files: file trees now show directory loading errors with a retry action instead of leaving the folder empty, and slow Git ignore checks no longer block directory listings indefinitely. ## [1.12.2] - 2026-06-05 +### New + - **Desktop/Windows: the Windows app is now available publicly, with full functionality parity across the app.** +- Projects: the Add Project directory picker now starts with hidden files off each time it opens. + +### Improvements + - Tunnels: switching between Cloudflare and ngrok quick tunnels now replaces the active quick tunnel instead of reusing the previous provider. - Tunnels: ngrok startup failures now show the ngrok or authtoken error returned during startup. -- Projects: the Add Project directory picker now starts with hidden files off each time it opens. - Chat: prompts sent while creating or switching target sessions now stay attached to the intended project directory. - VSCode: the extension now detects more Windows OpenCode installs from PATH, npm, Scoop, and Chocolatey. ## [1.12.1] - 2026-06-03 +### New + - Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting. +- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group on desktop, mobile, and VS Code. + +### Improvements + - Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied. - Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session. -- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. -- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. -- Chat: the first prompt in a new session no longer gets stuck before sending. - Chat/UI: sticky user-message headers are now off by default. - Sessions: session titles update from live session events, and the app now consistently loads all existing OpenCode sessions. -- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group on desktop, mobile, and VS Code. - Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes. - UI/Time: the 12-hour/24-hour time preference now applies to chat timestamps, usage reset times, scheduled tasks, tunnels, passkeys, Git history, and pull-request dates. - Settings/Files: the default file preview setting now lives with the Chat appearance settings and applies immediately to open file tabs. -- Preview: embedded previews now rewrite inline module imports, fixing Vite React preview pages that load root-relative modules. - Desktop: Desktop tunnels now serve the full app UI instead of the headless page. -- Desktop: quitting the Desktop app now stops managed OpenCode processes more reliably, reducing leftover OpenCode processes after exit. - Desktop: removed the legacy Tauri desktop path; Electron is now the only desktop runtime. +### Fixes + +- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. +- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. +- Chat: the first prompt in a new session no longer gets stuck before sending. +- Preview: embedded previews now rewrite inline module imports, fixing Vite React preview pages that load root-relative modules. +- Desktop: quitting the Desktop app now stops managed OpenCode processes more reliably, reducing leftover OpenCode processes after exit. + ## [1.12.0] - 2026-06-03 +### New + - Mobile: added a new mobile UI as the default, with an option in Settings to switch back to the previous layout; this is the foundation for the upcoming mobile app and is available to try now. - Chat: added customizable draft welcome starters from commands and skills, including guided commands for planning, catch-up, debugging, and exploration. - Chat: assistant answers now have a dialog for starting a new session from that answer. -- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. -- Chat/UI: markdown-rendered user messages now preserve line breaks. - Web/Browser: added a Browser feature for opening websites in the web app and sharing annotations with screenshots to agents. - Web/Remote Instances: added a headless web app mode, and remote instance switching now changes the OpenChamber API endpoint without loading the full remote UI. - UI/Themes: added JetBrains Light and JetBrains Dark themes, and VS Code chat colors now map more closely to the active editor theme. +### Improvements + +- Chat/UI: markdown-rendered user messages now preserve line breaks. + +### Fixes + +- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. + ## [1.11.7] - 2026-05-27 +### New + - Git: commit history now includes a branch graph and commit-row actions in the history modal (thanks to @ermanhavuc). - Desktop: added a launch-at-startup setting, and collapsed browser windows now keep their webview state. - UI/Localization: added Traditional Chinese interface translations (thanks to @Jia35). +- Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc). + +### Improvements + +- Notes/Todos: completed todos stay at the end of the list, and the send-to-session dialog has a cleaner model picker (thanks to @kostazol, @rghamilton3). + +### Fixes + - Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt). - Sessions: inline session renaming no longer exits immediately after focus changes (thanks to @youfch). -- Notes/Todos: completed todos stay at the end of the list, and the send-to-session dialog has a cleaner model picker (thanks to @kostazol, @rghamilton3). -- Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc). - VSCode: restored live streaming in the extension. ## [1.11.6] - 2026-05-25 +### New + - Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion). - Tunnels: added Ngrok as a quick tunnel provider in the CLI and Desktop tunnel settings, with readiness checks (requires Ngrok cli and auth). - Desktop: added optional password setting in OpenChamber sessions settings for the local Desktop server. - Multi-Run: new multi-run sessions now appear in the session list immediately, and slash-command prompts are sent to the created run sessions correctly. + +### Fixes + - Mobile: restored the new-session action in the session sidebar header. ## [1.11.5] - 2026-05-25 +### New + +- Sessions: session titles can now be renamed inline with a double-click (thanks to @robertoberto). +- Files: file search now shows the number of matches in the editor panel, and directory rows include a quick-add button (thanks to @attackonryan, @tomzx). +- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Improvements + - Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type. - Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent. -- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. -- Sessions: session titles can now be renamed inline with a double-click (thanks to @robertoberto). - Git: changed files are split into staged and unstaged sections, and Git operations work correctly from repository subdirectories (thanks to @ShogunPanda, @kostazol). -- Files: file search now shows the number of matches in the editor panel, and directory rows include a quick-add button (thanks to @attackonryan, @tomzx). - Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404). - Mobile/PWA: long-press tooltips work on touch screens, fullscreen panels keep the right header state, deleted or long-named files behave better in file lists, and Android PWA dialogs stay visible (thanks to @kostazol, @lilyzhaun). -- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Fixes + +- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. ## [1.11.4] - 2026-05-22 -- Desktop: Electron is now the desktop release target, with updated macOS menu actions for the right sidebar and terminal dock. +### New + - Chat: added reusable snippets with `#` autocomplete in the composer and a Snippets settings page for global and project snippets with [opencode-snippets](https://github.com/JosXa/opencode-snippets) plugin compatibility. - Multi-Run: runs can now be split into separate prompt/model groups, and Multi-Run prompts support command, file, agent, and snippet autocomplete (thanks to @tomzx). + +### Improvements + +- Desktop: Electron is now the desktop release target, with updated macOS menu actions for the right sidebar and terminal dock. - UI: refreshed the desktop workspace shell with a full-width header, framed chat area, and smooth left/right sidebar open and close states. - Chat: completed reasoning blocks stay collapsed without replaying the collapse animation when you reopen a session. - Files: file search and mention results avoid mixing entries from similar query/cache keys (thanks to @isanchez404). - VSCode: switching between chat sessions is less likely to stall on very large conversations. -- Voice: preview audio now stops and cleans up correctly when you stop playback or leave Voice settings (thanks to @isanchez404). - UI/Localization: refreshed Simplified Chinese terminology across the interface (thanks to @luojiyin). +### Fixes + +- Voice: preview audio now stops and cleans up correctly when you stop playback or leave Voice settings (thanks to @isanchez404). + ## [1.11.3] - 2026-05-19 -- Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto). +### New + - Chat: slash command autocomplete now includes skills and clearer command/type badges. +- Updates/PWA: OpenCode update and PWA install prompts can now be dismissed without reappearing repeatedly (thanks to @robertoberto). + +### Improvements + +- Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto). - Chat: slash, file, skill, and agent autocomplete selection now stays steadier when using the keyboard or mouse. - Chat: external links in messages now show favicons with better contrast, and skill links render correctly in user message rendered as markdown. - Chat: multi-file tool diffs now render safely, including files with mixed line endings. - Sessions: archived session lists handle large archives better, and sub-session expansion is kept separate between Recent and project sections (thanks to @vhqtvn). - Sessions: deleting or archiving a parent session now shows a descendant count that matches what will actually be removed (thanks to @vhqtvn). - Git: reverting a chat message now refreshes the Git changes view afterward. -- Updates/PWA: OpenCode update and PWA install prompts can now be dismissed without reappearing repeatedly (thanks to @robertoberto). -- Notifications: browser and VS Code notifications work without duplicate alerts. - Terminal/Mobile: the terminal viewport now stays above the mobile keyboard more consistently (thanks to @Dav1dch). + +### Fixes + +- Notifications: browser and VS Code notifications work without duplicate alerts. - Usage: added Wafer.ai quota tracking and removed the duplicate Zhipu usage provider entry (thanks to @bowber). ## [1.11.2] - 2026-05-18 +### New + - Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc). +- Git: commit history can now show file diffs inline (thanks to @ermanhavuc). + +### Improvements + - Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc). - Notes/Todos: context panel sizes are remembered, and todos can be reordered with drag and drop (thanks to @ermanhavuc). -- Git: commit history can now show file diffs inline (thanks to @ermanhavuc). - Git: branch history works better for local-only branches, and branch search fields accept typing again (thanks to @ermanhavuc). - Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404). - Skills: installed skills now match OpenCode's own skill list more closely. ## [1.11.1] - 2026-05-15 +### New + - Multi-Run: added fusion for multi-run sessions. - Multi-Run: added optional isolation and support for non-Git projects. - Chat/Sessions: added a header session switcher with project, branch, diff, active, unread, and sub-session context. +- Desktop/Mini Chat: added session switching and the new-session shortcut to Mini Chat, while preserving user-selected sessions during startup. +- Updates/Usage: added a setting to disable OpenCode update notifications, and quota reset times now display in your local timezone. + +### Improvements + - Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only. - Chat/Shortcuts: made the agent-switching shortcut configurable and usable from the chat input/model picker. -- Desktop/Mini Chat: added session switching and the new-session shortcut to Mini Chat, while preserving user-selected sessions during startup. - Preview: improved embedded preview proxying for absolute same-origin requests and WebSocket URLs, and avoided launching unrelated project actions when no dev-server action is detected. -- Updates/Usage: added a setting to disable OpenCode update notifications, and quota reset times now display in your local timezone. - Chat/UI: sorted-mode tool paths animate consistently, and tooltip rendering is guarded defensively. - Git: large change lists now display reliably, and branch selection stays hidden for non-Git draft sessions. - Settings/Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq). ## [1.11.0] - 2026-05-14 +### New + - Updates/OpenCode: added in-app OpenCode update checks and upgrade actions. - Voice: added local Whisper speech-to-text. -- Voice: synced speech recognition settings across devices and let server transcription finish processing audio when voice input stops (thanks to @kostazol). -- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. + +### Improvements + - Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic). - Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior. - VSCode: improved chat sidebar command handoff, active-editor context updates, SSE cleanup, Agent Manager settings sync, and archived-session bulk delete reliability in the extension (thanks to @isanchez404, @jjdubski). - Git: generalized repository provider handling beyond GitHub and made commit/PR generation more tolerant of JSON wrapped in assistant text. - Terminal: rejected file paths as terminal working directories, preserved UTF-8 replay chunks, and cleaned up WebSocket/SSE listeners reliably during shutdown and reconnects (thanks to @isanchez404). - Usage/Reliability: guarded quota percentages and reset timestamps defensively. + +### Fixes + +- Voice: synced speech recognition settings across devices and let server transcription finish processing audio when voice input stops (thanks to @kostazol). +- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. - UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, scheduled tasks, session folders, and accessible Git/session controls (thanks to @isanchez404). ## [1.10.4] - 2026-05-09 +### New + +- Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head. +- Settings/UI: improved keyboard and screen-reader support for resizable Settings navigation and collapsible sidebar groups (thanks to @isanchez404). + +### Improvements + - Desktop/Mini Chat: improved Mini Chat session controls with current context usage in the compact header and a single header action that opens either the active session or current draft in Mini Chat. - Chat/Input: model, variant, and agent labels collapse better on narrow widths. -- Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head. +- Terminal: cleaned up idle WebSocket connections and scoped SSE connection-open handling per retry attempt. +- Reliability/Sync: preserved message part update ordering (thanks to @isanchez404). + +### Fixes + - Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404). - Files: ignored stale file loads, guarded pending navigation, and stopped switching files when save fails. -- Terminal: cleaned up idle WebSocket connections and scoped SSE connection-open handling per retry attempt. -- Settings/UI: improved keyboard and screen-reader support for resizable Settings navigation and collapsible sidebar groups (thanks to @isanchez404). -- Reliability/Sync: preserved message part update ordering (thanks to @isanchez404). ## [1.10.3] - 2026-05-08 +### New + - Desktop/Electron: added Mini Chat windows for focused conversations without the full workspace shell, including session/draft handoff back to the main window, always-on-top pinning, and quick access from the header, session list, command palette, and keyboard shortcuts. + +### Improvements + - Desktop/Startup: show the splash window earlier while the local runtime starts. - Chat/Scrolling: rebuilt auto-follow behavior for active responses. -- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. - Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff. + +### Fixes + +- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. - Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404). - Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404). - Files/Skills: ignored stale directory refreshes and outdated skills catalog/repo scans. @@ -857,7 +1197,12 @@ All notable changes to this project will be documented in this file. ## [1.10.2] - 2026-05-07 +### New + - Projects: added repository cloning to the Add Project flow. + +### Improvements + - Chat/Reliability: stabilized live turn rendering and session sync caches. - Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch). - Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener). @@ -868,880 +1213,1434 @@ All notable changes to this project will be documented in this file. ## [1.10.1] - 2026-05-06 +### New + - Git: added one-click Sync and stash management, including stash access from a clean worktree. -- Git: improved sync safety and feedback with latest remote refs, clearer progress banners, less flicker during refresh, cleaner header controls, and better unavailable pull-request states. - UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52). - Sessions: added a quick archive action directly on session rows (thanks to @zoubenr). - Files: added a manual save mode to the file editor. - Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session. -- Chat/Reliability: pending questions now survive session switches and directory eviction. - Mobile/Terminal: added an opt-in keyboard resize mode and steady touch terminal input. -- Terminal: restored focus back to terminal input after Ghostty element blur events. + +### Improvements + +- Chat/Reliability: pending questions now survive session switches and directory eviction. - VSCode/Reliability: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn). + +### Fixes + +- Git: improved sync safety and feedback with latest remote refs, clearer progress banners, less flicker during refresh, cleaner header controls, and better unavailable pull-request states. +- Terminal: restored focus back to terminal input after Ghostty element blur events. - Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths. - Performance/Reliability: reduced duplicate app initialization, deferred heavier views, lowered local server status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise. ## [1.10.0] - 2026-05-05 +### New + - Preview: added an embedded dev-server Preview pane for loopback apps, with authenticated proxying, Vite/HMR support, same-origin API request handling, and safer local dev-server shutdown (thanks to @wpbiggs). - Preview: added preview console capture, DOM element inspection, annotation context, and Electron screenshot attachments. - Projects/Terminal: added Auto-discover for local dev servers, background terminal startup, action-linked Preview reopen controls, and cleaner terminal tab styling (thanks to @wpbiggs). - Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets. -- Chat/UI: added a wide layout option, steady scroll position across sessions and generated prompts, less flicker during streaming, and safer rendering for malformed message parts (thanks to @jwcrystal, @pasta-paul). - VSCode/Chat: added the currently open editor file to chat context (thanks to @daveotero). +- Onboarding/Updates/Mobile: added OpenCode CLI auto-detection during onboarding, cross-checks update prompts against npm, and improved iPad/tablet controls for fewer false update notices and smooth touch use (thanks to @IslamNofl). + +### Improvements + - UI/Settings: improved settings scrolling, empty states, and button/overlay polish (thanks to @Yabuku-xD). - GitHub/Git: improved fork-aware issue and pull-request listing, PR status handling, startup loading feedback, remote MCP headers, and long model ID handling (thanks to @corrm, @ricautomation, @yart). + +### Fixes + +- Chat/UI: added a wide layout option, steady scroll position across sessions and generated prompts, less flicker during streaming, and safer rendering for malformed message parts (thanks to @jwcrystal, @pasta-paul). - Reliability/Streaming: reconnects now recover immediately after OS wake-from-sleep, long agent sessions avoid streaming hangs, concurrent sessions sharing the same provider are throttled more safely, and model metadata refreshes after OpenCode restarts (thanks to @jwcrystal, @pasta-paul, @Yabuku-xD). -- Onboarding/Updates/Mobile: added OpenCode CLI auto-detection during onboarding, cross-checks update prompts against npm, and improved iPad/tablet controls for fewer false update notices and smooth touch use (thanks to @IslamNofl). ## [1.9.10] - 2026-04-28 +### New + - UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu). +- VSCode/Windows: normalized Windows drive-letter paths in extension webviews and added MiniMax/Ollama quota support. + +### Improvements + - Chat/Models: unified the model picker across desktop and mobile with a cleaner selection flow (thanks to @daveotero). - Projects: improved the project directory picker with expandable pinned folders and better file/path handling. - Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior. + +### Fixes + - Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD). -- VSCode/Windows: normalized Windows drive-letter paths in extension webviews and added MiniMax/Ollama quota support. - Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, ignored stale downgrade update prompts, and improved stream/proxy recovery with heartbeat support. ## [1.9.9] - 2026-04-26 +### New + - UI/Localization: added a localization foundation with translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese. - Settings/Appearance: added selectable interface and code fonts with 10 choices each. - Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced local workspace review and summarize slash commands. +- Files/Editor: added an "Open files in preview mode" setting and improved multi-file edit/diff safety (thanks to @daveotero). +- Desktop/Web/Mobile: improved Electron update restart behavior, PWA service-worker notifications, mobile keyboard handling, and the Add Project panel flow (thanks to @Jovines, @vhqtvn). + +### Improvements + - Chat/Mobile: improved mention and autocomplete behavior with complete results, clearer active-tab scoping, and less context-switching while drafting prompts. - Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD). -- Files/Editor: added an "Open files in preview mode" setting and improved multi-file edit/diff safety (thanks to @daveotero). - Reliability/Performance: improved cold start and streaming responsiveness with lazy-loaded heavy components, chunk-load recovery, lower re-render churn, and safer reconnect/local-stream recovery (thanks to @Yabuku-xD, @jwcrystal, @vhqtvn). -- Desktop/Web/Mobile: improved Electron update restart behavior, PWA service-worker notifications, mobile keyboard handling, and the Add Project panel flow (thanks to @Jovines, @vhqtvn). ## [1.9.8] - 2026-04-22 -- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). +### New + +- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. + +### Improvements + - Settings/Sync: settings updates now sync reliably across clients, and sidebar session pagination is steady in larger workspaces. - Sessions/Folders: folder changes now persist through server-backed endpoints. - Notifications: permission notifications are now suppressed when auto-accept is enabled. -- Chat/Files: improved changed-files handling in chat and restored quick file-open flows from pending changes (thanks to @jwcrystal). - UI: improved the bottom scroll shadow and hid the tasks row when there is no active work. - Reliability/Desktop: improved live event-stream recovery after transient stalls, wait briefly before failing chat actions during reconnects, and persist Electron server logs for easier disconnect debugging. + +### Fixes + +- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). +- Chat/Files: improved changed-files handling in chat and restored quick file-open flows from pending changes (thanks to @jwcrystal). - Desktop/macOS: System color mode now tracks OS theme changes, traffic-light controls stay visible after dock restore, and update restart/changelog handling is more reliable. -- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. ## [1.9.7] - 2026-04-22 +### New + - Desktop: added an Electron desktop runtime in parallel with the current Tauri app, with Electron planned to become the default path in an upcoming release. - Plans/Notes/Todos: added editable project plans from assistant messages, external plan upload, configurable planning magic prompts, and quicker note/todo handoff into new sessions or worktrees. - Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete (thanks to @youfch). -- Sessions/UI: added bulk session selection in the sidebar and fixed pinned sessions (thanks to @yart). - Files/Git: added a file-change summary bar and auto-refresh for open files changed outside the app. -- Git/Worktrees: improved branch/worktree reliability by allowing checkout with uncommitted changes, tightening worktree cache invalidation, and reducing incorrect remote prefetches (thanks to @jwcrystal, @jasonalsing). + +### Improvements + - Settings/MCP: improved MCP auth flow with better remote-config support and clearer diagnostics, and aligned config resolution with OpenCode behavior (thanks to @daveotero, @cyan). - Reliability/Chat: hardened bootstrap and stream-connection recovery, preserved session/connect state, and reduced streaming UI churn. + +### Fixes + +- Sessions/UI: added bulk session selection in the sidebar and fixed pinned sessions (thanks to @yart). +- Git/Worktrees: improved branch/worktree reliability by allowing checkout with uncommitted changes, tightening worktree cache invalidation, and reducing incorrect remote prefetches (thanks to @jwcrystal, @jasonalsing). - Web/PWA: added install orientation controls and fixed loopback-origin handling for web push notifications in local setups (thanks to @vhqtvn, @yart). ## [1.9.6] - 2026-04-17 +### New + - Reliability/Streaming: switched live message events to a WebSocket-first transport with SSE fallback, added response compression, and hardened proxy/compression handling (thanks to @geekifan, @jwcrystal). - Sessions/Scheduled Tasks: added scheduled task creation and management with locale-aware scheduling. -- Sessions/Worktrees: enforced session worktree isolation and tightened session-switch safety. - Files: added a full Go to Line workflow (toolbar + shortcut + dialog) and a new Copy Relative Path action (thanks to @coldbrow). -- Files: file trees now auto-refresh when files change outside the app (thanks to @jwcrystal). - Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow). -- Chat/Requests: restored blocking request visibility in sub-sessions, scoped auto-approve to the active session tree, and reduced noisy auto-approved notifications during multi-session work. - Desktop: added quick open and a LAN access toggle, plus safer quit behavior around scheduled tasks (thanks to @An-jinu). - Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in messages (thanks to @ricautomation). + +### Improvements + +- Sessions/Worktrees: enforced session worktree isolation and tightened session-switch safety. +- Files: file trees now auto-refresh when files change outside the app (thanks to @jwcrystal). - Settings/Skills: skills are now sorted within groups (thanks to @tomzx). +### Fixes + +- Chat/Requests: restored blocking request visibility in sub-sessions, scoped auto-approve to the active session tree, and reduced noisy auto-approved notifications during multi-session work. + ## [1.9.5] - 2026-04-14 +### New + - Security/Auth: added passkey sign-in for protected instances and new 1-week/30-day session expiration options (thanks to @daveotero, @pm0u). - Voice: added OpenAI-compatible custom server support for both text-to-speech and speech-to-text, including configurable TTS model/pitch/volume and stricter custom URL validation for safer setup (thanks to @ablepharus). -- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). -- Chat/Reliability: fixed question-tool content disappearing after refresh and hardened subagent/session recovery paths. + +### Improvements + - Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery to keep live updates smooth under heavy activity (thanks to @jwcrystal). - Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups when opening subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal). + +### Fixes + +- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). +- Chat/Reliability: fixed question-tool content disappearing after refresh and hardened subagent/session recovery paths. - Git/UI: restored Git changes panel visibility and sidebar sync (thanks to @jwcrystal). - Desktop/Startup: delivered a more guided first-launch and smart recovery flow, plus startup and remote-window interaction fixes to reduce early-session friction (thanks to @jwcrystal). - Usage: added Zhipu AI Coding Plan tracking and restored model-variant compatibility with older OpenCode runtimes (thanks to @cainiao1992, @Chi-square-test). ## [1.9.4] - 2026-04-07 -- Settings/Magic Prompts: added a dedicated Magic Prompts page with editable templates for commit/PR generation, PR and issue reviews, failed-check/comment analysis, and merge/cherry-pick conflict resolution. +### Improvements + - Chat/Performance: reduced streaming render churn across the app. +- Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko). +- Usage: refreshed MiniMax CN coding-plan quota data (thanks to @nzlov). + +### Fixes + +- Settings/Magic Prompts: added a dedicated Magic Prompts page with editable templates for commit/PR generation, PR and issue reviews, failed-check/comment analysis, and merge/cherry-pick conflict resolution. - Chat/Scrolling: fixed jumpy follow behavior and restored stable bottom-resume/live-compaction updates. - Reliability/Streaming: improved reconnect, retry, and directory-aware event routing to reduce stuck session/subagent states after transient disconnects (thanks to @jwcrystal, @daveotero). -- Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko). - Models: added defensive handling for missing model pricing/capability metadata (thanks to @Chi-square-test). - Desktop/Performance: removed costly window translucency and reduced duplicate notification triggers for a cooler, less noisy desktop experience. - Startup/Remote: restored remote provider startup behavior and tightened host/port detection to reduce false startup failures. -- Usage: refreshed MiniMax CN coding-plan quota data (thanks to @nzlov). ## [1.9.3] - 2026-03-01 +### New + +- VSCode/Files: added file stat support in the extension bridge (thanks to @geekifan). +- Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero). +- Files: added HTML preview support in the file viewer (thanks to @nguyenngothuong). +- Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong). + +### Improvements + - Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232). - Desktop/Performance: reduced Tauri shell CPU/GPU overhead during longer sessions. - Sessions/Drafts: draft chat config now stays synced with the selected draft target directory. -- VSCode/Files: added file stat support in the extension bridge (thanks to @geekifan). -- Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero). -- Files: added HTML preview support in the file viewer (thanks to @nguyenngothuong). - Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong). -- Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong). -- Mobile/Settings: fixed lingering settings drawers and removed extra top spacing for a cleaner, less obstructed mobile layout (thanks to @Jovines). -- Git/Worktrees: fixed worktree detection and reset stale integration state when switching contexts. - Desktop/Settings: window vibrancy now correctly controls macOS window transparency, and settings copy now clarifies when full transparency changes take effect. - Reliability/Proxy: hardened OpenCode proxy header handling (including identity-encoding normalization, compression-header cleanup, hop-by-hop response-header stripping) and suppressed expected SSE close noise. -- Reliability/Proxy: restored proxied chat event streaming. - Terminal/Reliability: switched terminal transport to a pure WebSocket path with fallback handling. + +### Fixes + +- Mobile/Settings: fixed lingering settings drawers and removed extra top spacing for a cleaner, less obstructed mobile layout (thanks to @Jovines). +- Git/Worktrees: fixed worktree detection and reset stale integration state when switching contexts. +- Reliability/Proxy: restored proxied chat event streaming. - Usage/Providers: added ZhipuAI quota tracking and fixed MiniMax coding-plan and GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte). ## [1.9.2] - 2026-03-31 -- Chat/Performance: rebuilt live session sync and streaming updates to cut render churn, reduce CPU spikes, and keep long-running chats smooth and more stable across runtimes. +### New + - Worktrees/Multi-Run: added instant draft-first worktree creation and redesigned the multi-run launcher with a cleaner, faster flow for parallel runs. +- CLI/Server: added `--foreground` for process-manager deployments, made managed server hostname configurable, and added an explicit `--host` option with safer localhost defaults (thanks to @colinmollenhour, @rapidrabbit76, @yulia-ivashko). + +### Improvements + +- Chat/Performance: rebuilt live session sync and streaming updates to cut render churn, reduce CPU spikes, and keep long-running chats smooth and more stable across runtimes. - VSCode/UI: polished the extension chat and sidebar with improved spacing, tooltips, a resizable sessions pane, and file-to-chat mention flows from Explorer. - Models/Providers: improved custom provider model metadata loading and caching (thanks to @ZeppLu). -- CLI/Server: added `--foreground` for process-manager deployments, made managed server hostname configurable, and added an explicit `--host` option with safer localhost defaults (thanks to @colinmollenhour, @rapidrabbit76, @yulia-ivashko). - Docker/Deployments: improved container defaults, including UID 1000 user behavior, non-fatal SSH key generation, and better localhost detection in container networking (thanks to @yulia-ivashko). + +### Fixes + - Web/PWA: fixed manifest behavior behind Cloudflare Access (thanks to @arthurfiorette). ## [1.9.1] - 2026-03-20 -- Sessions/UI: restored Project Notes access in the sidebar, polished notes/todo editing, and fixed project action overlap. +### New + +- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). + +### Improvements + - Chat/GitHub: linked issues and pull requests now appear as user-message attachments and open reliably across runtimes. - Settings/MCP: adding MCP servers now consistently respects user vs project scope, preventing user-scope entries from being written into project config files. - VSCode/Reliability: managed server startup now imports login-shell environment values and normalizes Windows workspace paths. - Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier discovery (thanks to @nguyenngothuong). - Files: file trees now refresh incrementally after create/rename/delete actions (thanks to @nguyenngothuong). - Sessions/Worktrees: draft sessions now resolve the correct project when opened from worktree paths (thanks to @yulia-ivashko). + +### Fixes + +- Sessions/UI: restored Project Notes access in the sidebar, polished notes/todo editing, and fixed project action overlap. - Desktop: improved stale server-process cleanup on startup and fixed external link opening behavior (thanks to @jwcrystal). -- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). ## [1.9.0] - 2026-03-20 -- UI/Navigation: delivered a major sidebar redesign with clearer hierarchy, unified action patterns, and improved session organization (thanks to @yulia-ivashko). -- Chat: reduced streaming CPU usage and background churn with steady turn rendering, debounced updates, and less storage thrash during long runs. -- Chat: fixed scroll-to-latest and timeline tracking behavior. +### New + - Chat/Permissions: added a session-based permission auto-accept toggle and polished permission-shield visuals for quicker, clearer approval workflows. - Git: refreshed history visuals and added clearer branch-boundary markers. - Git: added remote removal from sync workflows and stabilized polling to reduce noisy background refreshes (thanks to @yulia-ivashko). -- Settings/UI: fixed settings scrolling on mobile, made outside-click closing immediate, and reduced settings load churn/CPU spikes. -- Panels/UI: softened panel resize affordances and tightened service dropdown/layout spacing for a cleaner, less distracting workspace. - Files: added debounced editor auto-save (thanks to @nguyenngothuong). + +### Improvements + +- UI/Navigation: delivered a major sidebar redesign with clearer hierarchy, unified action patterns, and improved session organization (thanks to @yulia-ivashko). +- Chat: reduced streaming CPU usage and background churn with steady turn rendering, debounced updates, and less storage thrash during long runs. +- Panels/UI: softened panel resize affordances and tightened service dropdown/layout spacing for a cleaner, less distracting workspace. - Files: reworked search UI for searching in files. -- Reliability/Platform: improved Windows path/process behavior and restored macOS PTY/microphone compatibility. - Desktop/macOS: lowered the minimum supported macOS version to Ventura (13.0), expanding compatibility on older systems (thanks to @craigharman). - Updates/Reliability: unified update-check behavior across runtimes. +### Fixes + +- Chat: fixed scroll-to-latest and timeline tracking behavior. +- Settings/UI: fixed settings scrolling on mobile, made outside-click closing immediate, and reduced settings load churn/CPU spikes. +- Reliability/Platform: improved Windows path/process behavior and restored macOS PTY/microphone compatibility. + ## [1.8.7] - 2026-03-13 -- CLI: fixed a startup regression in global npm/bun installs where wrapper or symlinked `openchamber` entrypoints could exit without output on commands like `--version` or `status`. +### Improvements + - CLI: hardened entrypoint detection across direct, symlinked, and shim-based launches to keep startup behavior consistent across package managers (thanks to @shekohex). -- Windows/Web: daemon startup and Git operations no longer flash extra console windows (thanks to @SergioChan). - Deployment/Docker: improved `docker run` startup behavior and entrypoint handling (thanks to @nzlov). +### Fixes + +- CLI: fixed a startup regression in global npm/bun installs where wrapper or symlinked `openchamber` entrypoints could exit without output on commands like `--version` or `status`. +- Windows/Web: daemon startup and Git operations no longer flash extra console windows (thanks to @SergioChan). + ## [1.8.6] - 2026-03-13 -- Tunnel/CLI: rebuilt tunnel workflows around clearer managed modes and provider-aware lifecycle commands, with safer startup checks, improved diagnostics, and cleaner CLI output for everyday remote access (thanks to @yulia-ivashko). -- Chat: completed a turn-based rendering pipeline that keeps streaming, activity rows, and tool progress more stable in long runs, with smooth auto-follow and fewer jumpy updates. +### New + - Chat/Settings: added richer chat render controls, including sorted/live behavior, compact live Activity previews, and options to keep Bash/Edit outputs open by default. - Sessions/GitHub: overhauled sidebar session loading and GitHub PR tracking, and added a new minimal sidebar sessions mode on Desktop/Web. + +### Improvements + +- Tunnel/CLI: rebuilt tunnel workflows around clearer managed modes and provider-aware lifecycle commands, with safer startup checks, improved diagnostics, and cleaner CLI output for everyday remote access (thanks to @yulia-ivashko). +- Chat: completed a turn-based rendering pipeline that keeps streaming, activity rows, and tool progress more stable in long runs, with smooth auto-follow and fewer jumpy updates. - Sessions: worktrees with active sessions now surface earlier in the sidebar (thanks to @GhostFlying). -- Chat: fixed narrow-layout send behavior for modified Enter shortcuts (thanks to @eengad). -- Chat: fixed queue-button behavior and focus-mode composer sizing. - Projects/Desktop: project action inputs now submit with Enter, and Desktop settings now include a spell-check toggle for writing comfort (thanks to @DocterZed). - Mobile/PWA: install metadata now honors orientation lock consistently. +### Fixes + +- Chat: fixed narrow-layout send behavior for modified Enter shortcuts (thanks to @eengad). +- Chat: fixed queue-button behavior and focus-mode composer sizing. + ## [1.8.5] - 2026-03-04 +### Improvements + - Desktop: startup now opens the app shell much earlier while background services continue loading. -- Desktop/macOS: fixed early title updates that could shift traffic-light window controls on startup. - VSCode: edit-style tool results now open directly in a focused diff view. -- VSCode: cleaned up extension settings by removing duplicate display controls and hiding sections that do not apply in the editor environment. -- Chat: fixed focus-mode composer layout. - UI/Theming: unified loading logos and startup screens across runtimes, with visuals that better match your active theme. - Projects/UI: project icons now follow active theme foreground colors consistently. - Reliability: improved early startup recovery. -- Tunnel/CLI: fixed one-time Cloudflare tunnel connect links in CLI output for `--try-cf-tunnel` (thanks to @plfavreau). - Mobile/PWA: respected OS rotation lock by removing forced orientation behavior in the web app shell (thanks to @theluckystrike). +### Fixes + +- Desktop/macOS: fixed early title updates that could shift traffic-light window controls on startup. +- VSCode: cleaned up extension settings by removing duplicate display controls and hiding sections that do not apply in the editor environment. +- Chat: fixed focus-mode composer layout. +- Tunnel/CLI: fixed one-time Cloudflare tunnel connect links in CLI output for `--try-cf-tunnel` (thanks to @plfavreau). + ## [1.8.4] - 2026-03-04 +### New + - Chat: added clickable file-path links in assistant messages (including line targeting) (thanks to @yulia-ivashko). - Chat: added a new `Changes` tool-output mode that expands edits/patches by default while keeping activity readable (thanks to @iamhenry). +- Chat/GitHub: added Attach menu actions to link GitHub issues and PRs directly in any session. +- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). +- Sessions: added active-project session search in the sidebar, with clearer match behavior and easier clearing during filtering (thanks to @KJdotIO). +- Mobile/Projects: added long-press project editing with a bottom-sheet panel and drag-to-reorder support (thanks to @Jovines). +- Web/PWA/Android: added improved install UX with pre-install naming and manifest shortcut updates (thanks to @shekohex). + +### Improvements + - Chat: in-progress tools now appear immediately and stay live in collapsed activity view (thanks to @nelsonPires5). - Chat: improved long user-message behavior in sticky mode with bounded height, internal scrolling, and cleaner action hit targets. - Chat/Files: improved `@` file discovery and mention behavior with project-scoped search and more consistent matching. -- Chat/GitHub: added Attach menu actions to link GitHub issues and PRs directly in any session. -- Chat/Files: restored user image previews/fullscreen navigation and improved text-selection action placement on narrow layouts. -- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). -- Sessions: added active-project session search in the sidebar, with clearer match behavior and easier clearing during filtering (thanks to @KJdotIO). - Worktrees/GitHub: streamlined worktree creation with a unified flow for branches, issues, and PR-linked sessions, including cleaner validation and faster branch loading. -- Worktrees/Git: fixed branch/PR source resolution (including slash-named branches and fork PR heads). -- Git: fixed a PR panel refresh loop that could trigger repeated updates and unstable behavior in the PR section (thanks to @yulia-ivashko). - Files/Desktop: improved `Open In` actions from file views/editors, including app selection behavior and tighter integration for opening focused files (thanks to @yulia-ivashko). -- Mobile/Projects: added long-press project editing with a bottom-sheet panel and drag-to-reorder support (thanks to @Jovines). -- Web/PWA/Android: added improved install UX with pre-install naming and manifest shortcut updates (thanks to @shekohex). - UI: interactive controls now consistently show pointer cursors. - Security/Reliability: hardened terminal auth, tightened skill-file path protections, and reduced sensitive request logging exposure for safer day-to-day usage (thanks to @yulia-ivashko). +### Fixes + +- Chat/Files: restored user image previews/fullscreen navigation and improved text-selection action placement on narrow layouts. +- Worktrees/Git: fixed branch/PR source resolution (including slash-named branches and fork PR heads). +- Git: fixed a PR panel refresh loop that could trigger repeated updates and unstable behavior in the PR section (thanks to @yulia-ivashko). + ## [1.8.3] - 2026-03-02 +### New + - Chat: added user-message display controls for plain-text rendering and sticky headers. +- Chat: model picker now supports collapsible provider groups and remembers expanded state between sessions. + +### Improvements + - Chat/UI: overhauled the context panel with reusable tabs and embedded session chat (_beta_). +- Git: refined Git sidebar tab behavior and spacing, plus bulk-revert with confirmations for easier cleanup. +- Settings: reorganized chat display settings into a more compact two-column layout. + +### Fixes + - Chat: improved code block presentation with cleaner action alignment, restored horizontal scrolling, and polished themed highlighting across chat messages and tool output (thanks to @nelsonPires5). - Diff: added quick open-in-editor actions from diff views that jump to the first changed line. -- Git: refined Git sidebar tab behavior and spacing, plus bulk-revert with confirmations for easier cleanup. - Git: fixed commit staging edge cases by filtering stale deleted paths before staging. - Git/Worktrees: restored branch rename/edit controls in draft sessions when working in a worktree directory. -- Chat: model picker now supports collapsible provider groups and remembers expanded state between sessions. -- Settings: reorganized chat display settings into a more compact two-column layout. - Mobile/UI: fixed session-title overflow in compact headers (thanks to @iamhenry). ## [1.8.2] - 2026-03-01 -- Updates: hardened the self-update flow with safer release handling and fallback behavior. +### New + - Chat: added a new "Share as image" action (thanks to @Jovines). + +### Improvements + +- Updates: hardened the self-update flow with safer release handling and fallback behavior. - Chat: improved message readability with cleaner tool/reasoning rendering and less noisy activity timing in busy conversations (thanks to @nelsonPires5). - Desktop/Chat: permission toasts now include session context and a clearer permission preview (thanks to @nelsonPires5). +- Notifications/Voice: consolidated TTS and summarization service wiring for steady text-to-speech and summary flows (thanks to @nelsonPires5). + +### Fixes + - VSCode: fixed live streaming edge cases for event endpoints with query/trailing-slash variants. - Reliability: improved event-stream/session visibility handling when the app is hidden or restored. - Windows: fixed CLI/runtime path and spawn edge cases to reduce startup and command failures on Windows (thanks to @plfavreau). -- Notifications/Voice: consolidated TTS and summarization service wiring for steady text-to-speech and summary flows (thanks to @nelsonPires5). - Deployment: fixed Docker build/runtime issues (thanks to @nzlov). ## [1.8.1] - 2026-02-28 +### Fixes + - Web/Auth: fixed an issue where non-tunnel browser sessions could incorrectly show a tunnel-only lock screen; normal auth flow now appears unless a tunnel is actually active. ## [1.8.0] - 2026-02-28 +### New + - Desktop: added SSH remote instance support with dedicated lifecycle and UX flows (thanks to @shekohex). - Projects: added project icon customization with upload/remove and automatic favicon discovery from your repository (thanks to @shekohex). - Projects: added header project actions on Web and Mobile. -- Projects/Desktop: project actions can also open SSH-forwarded URLs. - Desktop: added dynamic window titles that reflect active project and remote context (thanks to @shekohex). - Remote Tunnel: added tunnel settings with quick/named modes, secure one-time connect links (with QR), and saved named-tunnel presets/tokens (thanks to @yulia-ivashko). -- UI: expanded sprite-based file and folder icons across Files, Diff, and Git views (thanks to @shekohex). - UI: added an expandable project rail with project names, a settings toggle, and saved expansion state for easier navigation in multi-project setups (thanks to @nguyenngothuong). - UI/Files: added file-type icons across file lists, tabs, and diffs (thanks to @shekohex). - Files: added a read-only highlighted view with a quick toggle back to edit mode (thanks to @shekohex). +- Deployment: added Docker deployment support with safer container defaults and terminal shell fallback (thanks to @nzlov). +- Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov). +- Usage: added Ollama Cloud quota provider support (thanks to @iamhenry). + +### Improvements + +- Projects/Desktop: project actions can also open SSH-forwarded URLs. +- UI: expanded sprite-based file and folder icons across Files, Diff, and Git views (thanks to @shekohex). - Files: markdown preview now handles frontmatter more cleanly. - Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex). - Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705). - Chat: edit tools now use the same diff style as the dedicated Diff view (thanks to @shekohex). - Chat: pasted absolute paths are now treated as normal messages. -- Chat: fixed queued sends for inactive sessions. - Chat: upgraded Mermaid rendering with a cleaner diagram view plus quick copy/download actions (thanks to @shekohex). - Notifications: improved child-session notification detection to reduce missed or misclassified subtask updates (thanks to @Jovines). -- Deployment: added Docker deployment support with safer container defaults and terminal shell fallback (thanks to @nzlov). - Reliability: improved Windows compatibility across git status checks, OpenCode startup, path normalization, and session merge behavior (thanks to @mmereu). -- Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov). -- Usage: added Ollama Cloud quota provider support (thanks to @iamhenry). + +### Fixes + +- Chat: fixed queued sends for inactive sessions. ## [1.7.5] - 2026-02-25 +### New + +- Web: added `OPENCODE_HOST` support (thanks to @colinmollenhour). + +### Improvements + - UI: moved projects into a dedicated sidebar rail and tightened the layout. -- Chat: fixed an issue where messages could occasionally duplicate or disappear during active conversations. - Sessions: reduced session-switching overhead to make chat context changes feel more immediate. - Reliability/Auth: migrated session auth storage to signed JWTs with a persistent secret. -- Mobile: pending permission prompts now recover after reconnect/resume instead of getting lost mid-run (thanks to @nelsonPires5). - Mobile/Chat: refined message spacing and removed the top scroll shadow for a cleaner small-screen reading experience (thanks to @Jovines). -- Web: added `OPENCODE_HOST` support (thanks to @colinmollenhour). + +### Fixes + +- Chat: fixed an issue where messages could occasionally duplicate or disappear during active conversations. +- Mobile: pending permission prompts now recover after reconnect/resume instead of getting lost mid-run (thanks to @nelsonPires5). - Web/Mobile: fixed in-app update flow in containerized setups. ## [1.7.4] - 2026-02-24 +### New + +- Chat: added fullscreen Mermaid preview, persisted default thinking variant selection, and hardened file-preview safety checks for a safer, more predictable message experience (thanks to @yulia-ivashko). +- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). +- Files: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). + +### Improvements + - Settings: redesigned the settings workspace with flatter, more consistent page layouts. - Settings: improved agents and skills navigation by grouping entries by subfolder for easier management at scale (thanks to @nguyenngothuong). -- Chat: improved streaming smoothness and stability with buffered updates and runtime fixes. -- Chat: added fullscreen Mermaid preview, persisted default thinking variant selection, and hardened file-preview safety checks for a safer, more predictable message experience (thanks to @yulia-ivashko). - Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong). - Sessions: expanded folder management with subfolders, cleaner organization actions, and clearer delete confirmations (thanks to @nguyenngothuong). -- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). - Git/PR: moved commit-message and PR-description generation to active-session structured output. - Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults. - Notifications/Voice: moved utility model controls into AI Summarization as a Zen-only Summarization Model setting. - Mobile: refreshed drawer and session-status layouts (thanks to @Jovines). - Desktop: improved remote instance URL handling (thanks to @shekohex). -- Files: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). + +### Fixes + +- Chat: improved streaming smoothness and stability with buffered updates and runtime fixes. ## [1.7.3] - 2026-02-21 +### New + - Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5). - Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong). + +### Improvements + - Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong). -- Diff/Plans/Files: restored GitHub-style inline comments (thanks to @nelsonPires5). -- Terminal: restored terminal text copy behavior (thanks to @shekohex). - UI: unified clipboard copy behavior across Desktop app, Web app, and VS Code extension. - Reliability: improved startup environment detection by capturing login-shell environment snapshots. - Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5). +### Fixes + +- Diff/Plans/Files: restored GitHub-style inline comments (thanks to @nelsonPires5). +- Terminal: restored terminal text copy behavior (thanks to @shekohex). + ## [1.7.2] - 2026-02-20 -- Chat: question prompts now guide you to unanswered items before submit. -- Chat: fixed auto-send queue to wait for the active session to be idle before sending. -- Chat: improved streaming activity rendering and session attention indicators. +### New + - UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5). -- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. + +### Improvements + +- Chat: question prompts now guide you to unanswered items before submit. +- Chat: improved streaming activity rendering and session attention indicators. - Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko). +### Fixes + +- Chat: fixed auto-send queue to wait for the active session to be idle before sending. +- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. + ## [1.7.1] - 2026-02-18 -- Chat: slash commands now follow server command semantics (including multiline arguments). +### New + - Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy. + +### Improvements + +- Chat: slash commands now follow server command semantics (including multiline arguments). - Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests. - Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering. - Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning. - Skills: upgraded editing/install UX with better code editing, syntax-aware related files, and clearer location targeting across user/project .opencode and .agents scopes. -- Mobile: fixed accidental abort right after tapping Send on touch devices. - Maintenance: removed deprecated GitHub Actions cloud runtime assets and docs to reduce setup confusion (thanks to @yulia-ivashko). +### Fixes + +- Mobile: fixed accidental abort right after tapping Send on touch devices. + ## [1.7.0] - 2026-02-17 +### New + +- UI: added a context overview panel with token usage, cost breakdown, and raw message inspection to make session debugging easier. + +### Improvements + - Chat: improved live streaming with part-delta updates and smarter auto-follow scrolling. - Chat: Mermaid diagrams now render inline in assistant messages, with quick copy/download actions for easier sharing. -- UI: added a context overview panel with token usage, cost breakdown, and raw message inspection to make session debugging easier. - Sessions: project icon and color customizations now persist reliably across restarts. - **- Reliability: managed local OpenCode runtimes now use rotated secure auth and tighter lifecycle control across runtimes.** +- Reliability: managed local OpenCode runtimes now use rotated secure auth and tighter lifecycle control across runtimes. - Git/GitHub: improved backend reliability for repository and auth operations (thanks to @nelsonPires5). ## [1.6.9] - 2026-02-16 -- **UI: redesigned the workspace shell with a context panel, tabbed sidebars, and quicker navigation across chat, files, and reviews.** -- UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5). -- Chat: fixed file attachment issues and added exceeded-quota information. -- Diff: improved large diff rendering and interaction performance for smooth reviews on heavy changesets. -- Worktrees: shipped an upstream-first flow across supported runtimes (thanks to @yulia-ivashko). -- Git: improved pull request branch normalization and base/remote resolution to reduce PR setup mismatches (thanks to @gsxdsm). +### New + - Sessions: added a persistent project notes and todos panel (thanks to @gsxdsm). - Sessions: introduced the ability to pin sessions within your groups for easy access. - Settings: added a configurable Zen model for commit messages generation and summarization of notifications (thanks to @gsxdsm). - Usage: added NanoGPT quota support and hardened provider handling (thanks to @nelsonPires5). + +### Improvements + +- **UI: redesigned the workspace shell with a context panel, tabbed sidebars, and quicker navigation across chat, files, and reviews.** +- UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5). +- Diff: improved large diff rendering and interaction performance for smooth reviews on heavy changesets. +- Worktrees: shipped an upstream-first flow across supported runtimes (thanks to @yulia-ivashko). +- Git: improved pull request branch normalization and base/remote resolution to reduce PR setup mismatches (thanks to @gsxdsm). - Reliability: startup now auto-detects and safely connects to an existing OpenCode server. + +### Fixes + +- Chat: fixed file attachment issues and added exceeded-quota information. - Desktop: restored desktop window geometry and position (thanks to @yulia-ivashko). - Mobile: fixes for small-screen editor, terminal, and layout overlap issues (thanks to @gsxdsm, @nelsonPires5). ## [1.6.8] - 2026-02-12 +### New + - Chat: added drag-and-drop attachments with inline image previews. -- Sessions: fixed a sidebar issue where draft input could carry over when switching projects. -- Chat: improved quick navigation from the sessions list by adding double-click to jump into chat and auto-focus the draft input; also fixed mobile session return behavior (thanks to @gsxdsm). + +### Improvements + - Chat: improved agent/model picking with fuzzy search across names and descriptions. - Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm). - Usage: when using remaining-quota mode, usage markers now invert direction to better match how remaining capacity is interpreted (thanks to @gsxdsm). + +### Fixes + +- Sessions: fixed a sidebar issue where draft input could carry over when switching projects. +- Chat: improved quick navigation from the sessions list by adding double-click to jump into chat and auto-focus the draft input; also fixed mobile session return behavior (thanks to @gsxdsm). - Desktop: fixed project selection in opened remote instances. - Desktop: fixed opened remote instances that use HTTP (helpful for instances under tunneling). ## [1.6.7] - 2026-02-10 +### New + - Voice: added built-in voice input and read-aloud responses with multiple providers (thanks to @gsxdsm). - Git: added multi-remote push selection and smarter fork-aware pull request creation to reduce manual branch/remote setup (thanks to @gsxdsm). - Usage: added usage pace and prediction indicators in the header and settings (thanks to @gsxdsm). +- Desktop: added multi-window support with a dedicated "New Window" action for parallel work across projects (thanks to @yulia-ivashko). + +### Improvements + +- UI: refreshed header and settings layout, improved host switching, and upgraded the editor for smooth day-to-day navigation and editing. + +### Fixes + - Diff/Plans: fixed comment draft collisions and improved multi-line comment editing in plan and file workflows (thanks to @nelsonPires5). - Notifications: stopped firing completion notifications for comment draft edits to reduce noisy alerts during review-heavy sessions (thanks to @nelsonPires5). - Settings: added confirmation dialogs for destructive delete/reset actions to prevent accidental data loss. -- UI: refreshed header and settings layout, improved host switching, and upgraded the editor for smooth day-to-day navigation and editing. -- Desktop: added multi-window support with a dedicated "New Window" action for parallel work across projects (thanks to @yulia-ivashko). - Reliability: fixed message loading edge cases, stabilized voice-mode persistence across restarts, and improved update flow behavior across platforms. -## [1.6.6] - 2026-02-9 +## [1.6.6] - 2026-02-09 + +### New + +- Desktop: added an `Open In` button to open the current workspace in Finder, Terminal, and supported editors with remembered app preference (thanks to @yulia-ivashko). +- Git: added push/pull with remote selection, plus in-app rebase/merge flows with improved remote inference and clearer conflict handling (thanks to @gsxdsm). +- Notifications: added smarter templates with concise summaries (thanks to @gsxdsm). + +### Improvements - Desktop: redesigned the main workspace with a dedicated Git sidebar and bottom terminal dock. -- Desktop: added an `Open In` button to open the current workspace in Finder, Terminal, and supported editors with remembered app preference (thanks to @yulia-ivashko). - Header: combined Instance, Usage, and MCP into one services menu. -- Git: added push/pull with remote selection, plus in-app rebase/merge flows with improved remote inference and clearer conflict handling (thanks to @gsxdsm). - Git: reorganized the Git workspace with improved in-app PR workflows. - Files: improved editing with breadcrumbs, better draft handling, smooth editor interactions, and more reliable directory navigation from file context (thanks to @nelsonPires5). - Sessions: improved status behavior, faster mobile session switching with running/unread indicators, and clearer worktree labels when branch name differs (thanks to @Jovines, @gsxdsm). -- Notifications: added smarter templates with concise summaries (thanks to @gsxdsm). -- Usage: added per-model quota breakdowns with collapsible groups, and fixed provider dropdown scrolling (thanks to @nelsonPires5, @gsxdsm). - Terminal: improved input responsiveness with a persistent low-latency transport for steady typing (thanks to @shekohex). + +### Fixes + +- Usage: added per-model quota breakdowns with collapsible groups, and fixed provider dropdown scrolling (thanks to @nelsonPires5, @gsxdsm). - Mobile: fixed chat input layout issues on small screens (thanks to @nelsonPires5). - Reliability: fixed OpenCode auth pass-through and proxy env handling to reduce intermittent connection/auth issues (thanks to @gsxdsm). -## [1.6.5] - 2026-02-6 +## [1.6.5] - 2026-02-06 + +### New - Settings: added an OpenCode CLI path override. - Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm). -- Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm). - Diff/Plans: added inline comment drafts (thanks to @nelsonPires5). - Sessions: you can now rename projects directly from the sidebar, and issue/PR pickers are easier to scan when starting from GitHub context (thanks to @shekohex, @gsxdsm). +- UI: added Vitesse Dark and Vitesse Light theme presets. + +### Improvements + +- Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm). - Worktrees: improved worktree flow reliability, including cleaner handling when a worktree was already removed outside the app (thanks to @gsxdsm). - Terminal: improved Android keyboard behavior and removed distracting native caret blink in terminal inputs (thanks to @shekohex). -- UI: added Vitesse Dark and Vitesse Light theme presets. - Reliability: improved OpenCode binary resolution and HOME-path handling across runtimes for steady local startup. -## [1.6.4] - 2026-02-5 +## [1.6.4] - 2026-02-05 + +### New -- Desktop: switch between local and remote OpenChamber instances, plus a thinner runtime. -- VSCode: improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" for sessions/models/agents. -- Mobile: split Agent/Model controls and a quick commands button with autocomplete (Commands/Agents/Files) for easier input (thanks to @Jovines, @gsxdsm). - Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm). - Diff/Plans: add inline comment drafts (thanks to @nelsonPires5). +- Git: improved macOS SSH agent support for smooth private-repo auth (thanks to @shekohex). + +### Improvements + +- Desktop: switch between local and remote OpenChamber instances, plus a thinner runtime. +- Mobile: split Agent/Model controls and a quick commands button with autocomplete (Commands/Agents/Files) for easier input (thanks to @Jovines, @gsxdsm). - Terminal/Syntax: font size controls and Phoenix file extension support (thanks to @shekohex). - Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5). -- Git: improved macOS SSH agent support for smooth private-repo auth (thanks to @shekohex). -- Web: fixed missing icon when installing the Android PWA (thanks to @nelsonPires5). - GitHub: PR description generation supports optional extra context (thanks to @nelsonPires5). -## [1.6.3] - 2026-02-2 +### Fixes + +- VSCode: improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" for sessions/models/agents. +- Web: fixed missing icon when installing the Android PWA (thanks to @nelsonPires5). + +## [1.6.3] - 2026-02-02 + +### Improvements - Web: improved server readiness check to use the `/global/health` endpoint. -- Web: added login rate limit protection to prevent brute-force attempts on the authentication endpoint (thanks to @Jovines). - VSCode: improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans). + +### Fixes + +- Web: added login rate limit protection to prevent brute-force attempts on the authentication endpoint (thanks to @Jovines). - Settings: dialog no longer persists open/closed state across app restarts. -## [1.6.2] - 2026-02-1 +## [1.6.2] - 2026-02-01 + +### New - Usage: new multi-provider quota dashboard to monitor API usage across OpenAI, Google, and z.ai (thanks to @nelsonPires5). -- Settings: now opens in a windowed dialog on desktop with backdrop blur. - Terminal: added tabbed interface to manage multiple terminal sessions per directory. - Files: added multi-file tabs on desktop and dropdown selector on mobile (thanks to @nelsonPires5). - UI: introduced a token-based theming system, 18 themes with light/dark variants, and custom user themes from `~/.config/openchamber/themes`. + +### Improvements + +- Settings: now opens in a windowed dialog on desktop with backdrop blur. - Diff: optimized stacked view with worker-pool processing and lazy DOM rendering for smooth scrolling. - Worktrees: workspace path now resolves correctly when using git worktrees (thanks to @nelsonPires5). + +### Fixes + - Projects: fixed directory creation outside workspace in the Add Project modal (thanks to @nelsonPires5). ## [1.6.1] - 2026-01-30 -- Chat: added Stop button to cancel generation mid-response. -- Mobile: revamped chat controls on small screens with a unified controls drawer (thanks to @nelsonPires5). +### New + - UI: update dialog now includes the changelog. - Terminal: added optional on-screen key bar (Esc/Ctrl/arrows/Enter) for easier terminal navigation. - Notifications: added "Notify for subtasks" toggle to silence child-session notifications during multi-run (thanks to @Jovines). -- Reliability: improved event-stream reconnection when the app becomes visible again. - Worktrees: starting new worktree sessions now defaults to HEAD when no start point is provided. - Git: commit message generation now includes untracked files and handles `git diff --no-index` comparisons reliably (thanks to @MrLYC). + +### Improvements + +- Mobile: revamped chat controls on small screens with a unified controls drawer (thanks to @nelsonPires5). +- Reliability: improved event-stream reconnection when the app becomes visible again. - Desktop: improved macOS window chrome and header spacing, including steady traffic lights on older macOS versions (thanks to @yulia-ivashko). +### Fixes + +- Chat: added Stop button to cancel generation mid-response. + ## [1.6.0] - 2026-01-29 +### New + - Chat: added message stall detection with automatic soft resync. -- Chat: fixed "Load older" button behavior in chat with proper pagination implementation. + +### Improvements + - Git: PR picker now validates local branch existence and includes a refresh action. - Git: worktree integration now syncs clean target directories before merging. -- Diff: fixed memory leak when viewing many modified files; large changesets now lazy-load for smooth performance. - VSCode: session activity status now updates reliably even when the webview is hidden. - Web: session activity tracking now works consistently across browser tabs. + +### Fixes + +- Chat: fixed "Load older" button behavior in chat with proper pagination implementation. +- Diff: fixed memory leak when viewing many modified files; large changesets now lazy-load for smooth performance. - Reliability: plans directory no longer errors when missing. ## [1.5.9] - 2026-01-28 +### New + +- UI: Files, Diff, Git, and Terminal now follow the active session/worktree directory, including new-session drafts. + +### Improvements + - Worktrees: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated. - Git: integrate worktree commits back to a target branch with commit previews and guided conflict handling. - Files: toggle markdown preview when viewing files (thanks to @Jovines). - Files: open the file viewer in fullscreen for focused review and editing (thanks to @TaylorBeeston). - Plans: switch between markdown preview and edit mode in the Plan view. -- UI: Files, Diff, Git, and Terminal now follow the active session/worktree directory, including new-session drafts. + +### Fixes + - Web: plan lists no longer error when the plans directory is missing. ## [1.5.8] - 2026-01-26 +### New + - Plans: new Plan/Build mode switching support with dedicated Plan content view with per-session context. +- Web: iOS safe-area support for the PWA header. +- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). + +### Improvements + - GitHub: sign in with multiple accounts and smooth auth flow. - Chat/UI: linkable mentions, better wrapping, and markdown/scroll polish in messages. - Skills: ClawdHub catalog now pages results and retries transient failures. -- Diff: fixed Chrome scrolling in All Files layout. - Mobile: improved layout for attachments, git, and permissions on small screens (thanks to @nelsonPires5). -- Web: iOS safe-area support for the PWA header. -- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). + +### Fixes + +- Diff: fixed Chrome scrolling in All Files layout. - Reliability: file lists and message sends handle missing directories and transient errors better. ## [1.5.7] - 2026-01-24 +### Improvements + - GitHub: PR panel supports fork PR detection by branch name. + +### Fixes + - GitHub: Git tab PR panel can send failed checks/comments to chat with hidden context; added check details dialog with Actions step breakdown. - Web: GitHub auth flow fixes. ## [1.5.6] - 2026-01-24 -- GitHub: connect your account in Settings with device-flow auth to enable GitHub tools. +### New + - Sessions: start new sessions from GitHub issues with seeded context (title, body, labels, comments). - Sessions: start new sessions from GitHub pull requests with PR context baked in (including diffs). + +### Improvements + +- GitHub: connect your account in Settings with device-flow auth to enable GitHub tools. - Git: manage pull requests in the Git view with AI-generated descriptions, status checks, ready-for-review, and merge actions. + +### Fixes + - Mobile: fixed CommandAutocomplete dropdown scrolling (thanks to @nelsonPires5). ## [1.5.5] - 2026-01-23 +### Improvements + - Navigation: URLs now sync the active session, tab, settings, and diff state for shareable links and reliable back/forward (thanks to @TaylorBeeston). - Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders. - Skills: installs now target plural directories while still recognizing legacy singular folders. -- Web: push notifications no longer fire when a window is visible, avoiding duplicate alerts. - Web: improved push subscription handling across multiple windows. +### Fixes + +- Web: push notifications no longer fire when a window is visible, avoiding duplicate alerts. + ## [1.5.4] - 2026-01-22 +### New + - Chat: new Apply Patch tool UI with diff preview for patch-based edits. +- Web: added Background notifications for PWA. + +### Improvements + - Files: refreshed attachment cards and related file views for clearer context. - Settings: manage provider configuration files directly from the UI. - UI: updated header and sidebar layout for a cleaner, tighter workspace fit (thanks to @TheRealAshik). + +### Fixes + - Diff: large diffs now lazy-load to avoid freezes (thanks to @Jovines). -- Web: added Background notifications for PWA. - Reliability: connect to external OpenCode servers without auto-start and fixed subagent crashes (thanks to @TaylorBeeston). ## [1.5.3] - 2026-01-20 +### New + +- Settings: new memory limits controls for session message history. +- Chat: new Activity view in collapsed state, now shows latest 6 tools by default. + +### Improvements + - Files: edit files inline with syntax highlighting, draft protection, and save/discard flow. - Files: toggles to show hidden/dotfiles and gitignored entries in file browsers and pickers (thanks to @syntext). -- Settings: new memory limits controls for session message history. - Chat: smooth session switching with more stable scroll anchoring. -- Chat: new Activity view in collapsed state, now shows latest 6 tools by default. -- Chat: fixed message copy on Firefox for macOS (thanks to @syntext). -- Appearance: new corner radius control and restored input bar offset setting (thanks to @TheRealAshik). - Git: generated commit messages now auto-pick a gitmoji when enabled (thanks to @TheRealAshik). - Performance: faster filesystem/search operations and general stability improvements (thanks to @TheRealAshik). +### Fixes + +- Chat: fixed message copy on Firefox for macOS (thanks to @syntext). +- Appearance: new corner radius control and restored input bar offset setting (thanks to @TheRealAshik). + ## [1.5.2] - 2026-01-17 +### New + - Sessions: added branch picker dialog to start new worktree sessions from local branches (thanks to @nilskroe). - Sessions: added project header worktree button, active-session loader, and right-click context menu in the sessions sidebar (thanks to @nilskroe). -- Sessions: improved worktree delete dialog with linked session details, dirty-change warnings, and optional remote branch removal. - Git: added gitmoji picker in commit message composer with cached emoji list (thanks to @TaylorBeeston). -- Chat: optimized message loading for opening sessions. - UI: added one-click diagnostics copy in the About dialog. + +### Improvements + +- Sessions: improved worktree delete dialog with linked session details, dirty-change warnings, and optional remote branch removal. +- Chat: optimized message loading for opening sessions. - VSCode: tuned layout breakpoint and server readiness timeout for steady startup. - Reliability: improved OpenCode process cleanup to reduce orphaned servers. ## [1.5.1] - 2026-01-16 +### Fixes + - Desktop: fixed orphaned OpenCode processes not being cleaned up on restart or exit. - OpenCode: fixed a crash when reloading configuration. ## [1.5.0] - 2026-01-16 +### New + - UI: added a new Files tab to browse workspace files directly from the interface. -- Diff: enhanced the diff viewer with mobile support and the ability to ask the agent for comments on changes. - Git Identities: added "default identity" setting with one-click set/unset and automatic local identity detection. -- VSCode: improved server management to ensure it initializes within the workspace directory with context-aware readiness checks. - VSCode: added responsive layout with sessions sidebar + chat side-by-side when wide, compact header, and streamlined settings. -- Web/VSCode: fixed orphaned OpenCode processes not being cleaned up on restart or exit. + +### Improvements + +- Diff: enhanced the diff viewer with mobile support and the ability to ask the agent for comments on changes. +- VSCode: improved server management to ensure it initializes within the workspace directory with context-aware readiness checks. - Web: the server now automatically resolves and uses an available port if the default is occupied. + +### Fixes + +- Web/VSCode: fixed orphaned OpenCode processes not being cleaned up on restart or exit. - Stability: fixed heartbeat race condition causing session stalls during long tasks (thanks to @tybradle). - Desktop: fixed commands for worktree setup access to PATH. ## [1.4.9] - 2026-01-14 +### New + - VSCode: added session editor panel to view sessions alongside files. -- VSCode: improved server connection reliability with multiple URL candidate support. - Diff: added stacked/inline diff mode toggle in settings with sidebar file navigation (thanks to @nelsonPires5). -- Mobile: fixed iOS keyboard safe area padding for home indicator bar (thanks to @Jovines). + +### Improvements + +- VSCode: improved server connection reliability with multiple URL candidate support. - Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files. +### Fixes + +- Mobile: fixed iOS keyboard safe area padding for home indicator bar (thanks to @Jovines). + ## [1.4.8] - 2026-01-14 +### New + - Git Identities: added token-based authentication support with ~/.git-credentials discovery and import. - Settings: consolidated Git settings and added opencode zen model selection for commit generation (thanks to @nelsonPires5). - Web Notifications: added configurable native web notifications for assistant completion (thanks to @vio1ator). +- Stability: added graceful shutdown handling for the server process (thanks to @vio1ator). + +### Improvements + - Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator). -- Chat: fixed edit tool output and added turn duration. - UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator). - Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring. -- Stability: added graceful shutdown handling for the server process (thanks to @vio1ator). + +### Fixes + +- Chat: fixed edit tool output and added turn duration. ## [1.4.7] - 2026-01-10 +### New + - Skills: added ClawdHub integration as built-in market for skills. + +### Fixes + - Web: fixed issues in terminal. ## [1.4.6] - 2026-01-09 +### New + +- Chat: added question tool support with a rich UI for interaction. + +### Improvements + - VSCode/Web: switched OpenCode CLI management to the SDK. - Input: removed auto-complete and auto-correction. - Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab. -- Chat: added question tool support with a rich UI for interaction. ## [1.4.5] - 2026-01-08 +### New + - Chat: added support for model variants (thinking effort). -- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. - Skills: added autocomplete for skills on "/" when it is not the first character in input. - Autocomplete: added scope badges for commands/agents/skills. -- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. - MCP: added the ability to dynamically enable or disable configured MCP servers. - Web: refactored the Add Project UI with autocomplete. +### Improvements + +- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. +- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. + ## [1.4.4] - 2026-01-08 +### New + +- Agent Manager: added "Copy Worktree Path" action in the more menu (thanks to @wienans). +- Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management. +- Settings: added the ability to create new sessions in worktrees by default. +- Git view: added branch rename for worktree. +- Projects: added multi-project support with per-project settings for agents/commands/skills. +- Tunnel: added QR code and password URL for Cloudflare tunnel (thanks to @martindonadieu). + +### Improvements + - Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans). - Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans). -- Agent Manager: added "Copy Worktree Path" action in the more menu (thanks to @wienans). -- Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management. - Session sidebar: refactored the unified view for sessions in worktrees. -- Settings: added the ability to create new sessions in worktrees by default. -- Git view: added branch rename for worktree. -- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). -- Projects: added multi-project support with per-project settings for agents/commands/skills. - Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic. -- Tunnel: added QR code and password URL for Cloudflare tunnel (thanks to @martindonadieu). + +### Fixes + +- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). - Model selector: fixed dropdowns not responding to viewport size. ## [1.4.3] - 2026-01-04 +### New + - VS Code extension: added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans). - Added permission prompt UI for tools configured with "ask" in opencode.json, showing requested patterns and "Always Allow" options (thanks to @aptdnfapt). - Added "Open subAgent session" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt). + +### Improvements + - VS Code extension: improved activation reliability and error handling. ## [1.4.2] - 2026-01-02 +### New + - Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt). - Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt). - Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt). + +### Improvements + - Desktop app: keyboard shortcuts now use Cmd on macOS and Ctrl on web/other platforms (thanks to @sakhnyuk). - Migrated to OpenCode SDK v2 with improved API types and streaming. ## [1.4.1] - 2026-01-02 +### New + - Added the ability to select the same model multiple times in multi-agent runs for response comparison. - Model selector now includes search and keyboard navigation. - Added revert button to all user messages (including first one). - Added HEIC image support for file attachments with automatic MIME type normalization for text format files. - VS Code extension: added Git backend integration for UI access (thanks to @wienans). -- VS Code extension: only shows the main Worktree in the Chat Sidebar (thanks to @wienans). - Web app: terminal backend now supports a faster Bun-based PTY when Bun is available, with automatic fallback for existing Node-only setups. + +### Improvements + +- VS Code extension: only shows the main Worktree in the Chat Sidebar (thanks to @wienans). - Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer, while keeping the existing terminal UX and per-directory sessions. + +### Fixes + - Terminal: fixed several issues with terminal session restore and rendering under heavy output, including switching directories and long-running TUI apps. ## [1.4.0] - 2026-01-01 +### New + - Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree. -- Git view: improved branch publishing by detecting unpublished commits and automatically setting the upstream on first push. - Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push. -- VS Code extension: default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans). - Web app: added Cloudflare Quick Tunnel support for simpler remote access (thanks to @wojons and @aptdnfapt). -- Mobile: improved keyboard/input bar behavior (including Android fixes and better keyboard avoidance) and added an offset setting for curved-screen devices (thanks to @auroraflux). -- Chat: now shows clearer error messages when agent messages fail. + +### Improvements + +- Git view: improved branch publishing by detecting unpublished commits and automatically setting the upstream on first push. +- VS Code extension: default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans). - Sidebar: improved readability for sticky headers with a dynamic background. +### Fixes + +- Mobile: improved keyboard/input bar behavior (including Android fixes and better keyboard avoidance) and added an offset setting for curved-screen devices (thanks to @auroraflux). +- Chat: now shows clearer error messages when agent messages fail. + ## [1.3.9] - 2025-12-30 +### New + - Added skills management to settings with the ability to create, edit, and delete skills (make sure you have the latest OpenCode version for skills support). - Added Skills catalog functionality for discovering and installing skills from external sources. - VS Code extension: added right-click context menu with "Add to Context," "Explain," and "Improve Code" actions (thanks to @wienans). ## [1.3.8] - 2025-12-29 +### New + - Added Intel Mac (x86_64) support for the desktop application (thanks to @rothnic). -- Build workflow now generates separate builds for Apple Silicon (arm64) and Intel (x86_64) Macs (thanks to @rothnic). -- Improved dev server HMR by reusing a healthy OpenCode process to avoid zombie instances. - Added queued message mode with chips, batching, and idle auto‑send (including attachments). - Added queue mode toggle to OpenChamber settings (chat section) with persistence across runtimes. -- Fixed scroll position persistence for active conversation turns across session switches. + +### Improvements + +- Build workflow now generates separate builds for Apple Silicon (arm64) and Intel (x86_64) Macs (thanks to @rothnic). +- Improved dev server HMR by reusing a healthy OpenCode process to avoid zombie instances. - Refactored Agents/Commands management with ability to configure project/user scopes. +### Fixes + +- Fixed scroll position persistence for active conversation turns across session switches. + ## [1.3.7] - 2025-12-28 -- Redesigned Settings as a full-screen view with tabbed navigation. +### New + - Added mobile-friendly drill-down navigation for settings. -- ESC key now closes settings; double-ESC abort only works on chat tab without overlays. - Added responsive tab labels in settings header (icons only at narrow widths). -- Improved session activity status handling and message step completion logic. - Introduced enhanced VSCode extension settings with dynamic layout based on width. +### Improvements + +- Redesigned Settings as a full-screen view with tabbed navigation. +- ESC key now closes settings; double-ESC abort only works on chat tab without overlays. +- Improved session activity status handling and message step completion logic. + ## [1.3.6] - 2025-12-27 +### New + - Added the ability to manage (connect/disconnect) providers in settings. + +### Improvements + - Adjusted auto-summarization visuals in chat. ## [1.3.5] - 2025-12-26 +### New + - Added Nushell support for OpenCode CLI operations. -- Improved file search with fuzzy matching capabilities. -- Enhanced mobile responsiveness in chat controls. -- Fixed workspace switching performance and API health checks. -- Improved provider loading reliability during workspace switching. -- Fixed session handling for non-existent worktree directories. - Added Discord links in the about section. - Added settings for choosing the default model/agent to start with in a new session. +### Improvements + +- Improved file search with fuzzy matching capabilities. +- Enhanced mobile responsiveness in chat controls. +- Improved provider loading reliability during workspace switching. + +### Fixes + +- Fixed workspace switching performance and API health checks. +- Fixed session handling for non-existent worktree directories. + ## [1.3.4] - 2025-12-25 +### Improvements + - Diff view now loads reliably even with large files and slow networks. -- Fixed getting diffs for worktree files. - VS Code extension: improved type checking and editor integration. +### Fixes + +- Fixed getting diffs for worktree files. + ## [1.3.3] - 2025-12-25 -- Updated OpenCode SDK to 1.0.185 across all app versions. -- VS Code extension: fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. +### New + - VS Code extension: added an animated loading screen and introduced command for status/debug output. + +### Improvements + +- Updated OpenCode SDK to 1.0.185 across all app versions. +- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. + +### Fixes + +- VS Code extension: fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. - Fixed session activity tracking. - Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors. - Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation. -- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. ## [1.3.2] - 2025-12-22 -- Fixed new bug session when switching directories. +### Improvements + - Updated OpenCode SDK to the latest version. +### Fixes + +- Fixed new bug session when switching directories. + ## [1.3.1] - 2025-12-22 -- New chats no longer create a session until you send your first message. +### New + - The app opens to a new chat by default. -- Fixed mobile and VSCode sessions handling. - Updated app identity with new logo and icons across all platforms. +### Fixes + +- New chats no longer create a session until you send your first message. +- Fixed mobile and VSCode sessions handling. + ## [1.3.0] - 2025-12-21 +### New + - Added revert functionality in chat for user messages. + +### Improvements + - Polished mobile controls in chat view. - Updated user message layout/styling. - Improved header tab responsiveness. -- Fixed bugs with new session creation when the VSCode extension initialized for the first time. - Adjusted VSCode extension theme mapping and model selection view. - Polished file autocomplete experience. +### Fixes + +- Fixed bugs with new session creation when the VSCode extension initialized for the first time. + ## [1.2.9] - 2025-12-20 +### New + - Added session auto-cleanup with configurable retention across app versions, including the VSCode extension. - Added web package updates from the mobile/PWA settings view. - Added several optimizations for long sessions. ## [1.2.8] - 2025-12-19 +### New + - Added a web update flow that does not require CLI interaction. - Added a web install script with package manager detection. + +### Improvements + - Web server update/restart now reuses previously set parameters like port or password. ## [1.2.7] - 2025-12-19 +### New + +- Introduced keyboard shortcuts help menu and quick actions menu. + +### Improvements + - Comprehensive macOS native menu bar entries. - Redesigned directory selection view for web/mobile with improved layout. - Improved theme consistency across dropdown menus, selects, and command palette. -- Introduced keyboard shortcuts help menu and quick actions menu. ## [1.2.6] - 2025-12-19 +### New + - Added write/create tool preview in permission cards with syntax highlighting. + +### Improvements + - More descriptive assistant status messages with tool-specific and varied idle phrases. - Polished Git view layout. ## [1.2.5] - 2025-12-19 +### Improvements + - Polished the chat experience for longer sessions. -- Fixed file links from Git view to Diff. - Improved inactive-state handling in the Desktop app. - Redesigned Git tab layout with improved organization. -- Fixed untracked files in new directories not showing individually. - Smoother session rename experience. +### Fixes + +- Fixed file links from Git view to Diff. +- Fixed untracked files in new directories not showing individually. + ## [1.2.4] - 2025-12-18 +### New + - Added macOS app menu entries for Check for Update and bug/request reports in Help. + +### Fixes + - Mobile: added settings, improved terminal scrolling, and fixed app layout positioning. ## [1.2.3] - 2025-12-17 +### New + - Added image preview support in Diff tab (shows original/modified images instead of base64 code). + +### Improvements + - Improved diff view visuals and aligned styling across widgets. - Optimized Git polling and background diff/syntax pre-warming for faster Diff tab opening. - Optimized reloading unaffected diffs. ## [1.2.2] - 2025-12-17 +### Improvements + - Agent Task tool now renders progressively with live duration and completed sub-tools summary. - Unified markdown rendering between assistant messages and tool outputs. - Reduced markdown header sizes. ## [1.2.1] - 2025-12-16 +### Improvements + - Todo task tracking: collapsible status row showing AI's current task and progress. - Switched "Detailed" tool output mode to only open the 'task', 'edit', 'multiedit', 'write', 'bash' tools. ## [1.2.0] - 2025-12-15 +### Improvements + - Favorite & recent models for quick access in model selection. -- Tool call expansion settings: collapsed, activity, or detailed modes. -- Font size & spacing controls (50-200% scaling) in Appearance Settings. -- Settings page access within VSCode extension. - Thanks to @theblazehen for contributing these features! +- Tool call expansion settings: collapsed, activity, or detailed modes (thanks to @theblazehen). +- Font size & spacing controls (50-200% scaling) in Appearance Settings (thanks to @theblazehen). +- Settings page access within VSCode extension (thanks to @theblazehen). ## [1.1.6] - 2025-12-15 +### Improvements + - Optimized diff view layout with smaller fonts and compact hunk separators. - Improved mobile experience: simplified header, better diff file selector. - Redesigned password-protected session unlock screen. ## [1.1.5] - 2025-12-15 -- Improved file attachment performance. +### New + - Added fuzzy search for file mentions with `@` in chat. + +### Improvements + +- Improved file attachment performance. - Optimized input area layout. ## [1.1.4] - 2025-12-15 +### Improvements + - Flexoki themes for Shiki syntax highlighting for consistency with the app color schema. - Enhanced VSCode extension theming with editor themes. + +### Fixes + - Fixed mobile view model/agent selection. ## [1.1.3] - 2025-12-14 -- Replaced Monaco diff editor with Pierre/diffs. +### New + - Added line wrap toggle in diff view with dynamic layout switching (auto-inline when narrow). +### Improvements + +- Replaced Monaco diff editor with Pierre/diffs. + ## [1.1.2] - 2025-12-13 -- Moved VS Code extension to activity bar (left sidebar). +### New + - Added feedback messages for "Restart API Connection" command. + +### Improvements + +- Moved VS Code extension to activity bar (left sidebar). - Removed redundant VS Code commands. - Enhanced UserTextPart styling. ## [1.1.1] - 2025-12-13 +### Improvements + - Adjusted model/agent selection alignment. + +### Fixes + - Fixed user message rendering issues. ## [1.1.0] - 2025-12-13 +### New + - Added assistant answer fork flow. - Added OpenChamber VS Code extension with editor integration: file picker, click-to-open in tool parts. -- Improved scroll performance with force flag and RAF placeholder. - Added git polling backoff optimization. +### Improvements + +- Improved scroll performance with force flag and RAF placeholder. + ## [1.0.9] - 2025-12-08 +### New + - Added directory picker on first launch to reduce macOS permission prompts. - Show changelog in update dialog from current to new version. -- Improved update dialog UI with inline version display. - Added macOS folder access usage descriptions. +### Improvements + +- Improved update dialog UI with inline version display. + ## [1.0.8] - 2025-12-08 +### New + - Added fallback detection for OpenCode CLI in `~/.opencode/bin`. - Added window focus after app restart/update. + +### Improvements + - Adapted traffic lights position and corner radius for older macOS versions. ## [1.0.7] - 2025-12-08 +### Improvements + - Optimized OpenCode binary detection. - Adjusted app update experience. ## [1.0.6] - 2025-12-08 +### Improvements + - Enhanced shell environment detection. ## [1.0.5] - 2025-12-07 -- Fixed "Load older messages" incorrectly scrolling to bottom. -- Fixed page refresh getting stuck on splash screen. +### Improvements + - Disabled devtools and page refresh in production builds. +### Fixes + +- Fixed "Load older messages" incorrectly scrolling to bottom. +- Fixed page refresh getting stuck on splash screen. + ## [1.0.4] - 2025-12-07 +### Improvements + - Optimized desktop app start time. ## [1.0.3] - 2025-12-07 +### Improvements + - Updated onboarding UI. - Updated sidebar styles. ## [1.0.2] - 2025-12-07 +### Improvements + - Updated macOS window design. ## [1.0.1] - 2025-12-07 +### New + - Initial public release of OpenChamber web and desktop packages in a unified monorepo. - Added GitHub Actions release pipeline with macOS signing/notarization, npm publish, and release asset uploads. - Introduced OpenCode agent chat experience with section-based navigation, theming, and session persistence. diff --git a/changelog/1.0.1.md b/changelog/1.0.1.md new file mode 100644 index 00000000..f44b103a --- /dev/null +++ b/changelog/1.0.1.md @@ -0,0 +1,11 @@ +--- +version: 1.0.1 +date: 2025-12-07 +--- + +## App + +### New +- Initial public release of OpenChamber web and desktop packages in a unified monorepo. +- Added GitHub Actions release pipeline with macOS signing/notarization, npm publish, and release asset uploads. +- Introduced OpenCode agent chat experience with section-based navigation, theming, and session persistence. diff --git a/changelog/1.0.2.md b/changelog/1.0.2.md new file mode 100644 index 00000000..1a68e458 --- /dev/null +++ b/changelog/1.0.2.md @@ -0,0 +1,9 @@ +--- +version: 1.0.2 +date: 2025-12-07 +--- + +## App + +### Improvements +- Updated macOS window design. diff --git a/changelog/1.0.3.md b/changelog/1.0.3.md new file mode 100644 index 00000000..6b05302a --- /dev/null +++ b/changelog/1.0.3.md @@ -0,0 +1,10 @@ +--- +version: 1.0.3 +date: 2025-12-07 +--- + +## App + +### Improvements +- Updated onboarding UI. +- Updated sidebar styles. diff --git a/changelog/1.0.4.md b/changelog/1.0.4.md new file mode 100644 index 00000000..ed8fc451 --- /dev/null +++ b/changelog/1.0.4.md @@ -0,0 +1,9 @@ +--- +version: 1.0.4 +date: 2025-12-07 +--- + +## App + +### Improvements +- Optimized desktop app start time. diff --git a/changelog/1.0.5.md b/changelog/1.0.5.md new file mode 100644 index 00000000..9743380c --- /dev/null +++ b/changelog/1.0.5.md @@ -0,0 +1,13 @@ +--- +version: 1.0.5 +date: 2025-12-07 +--- + +## App + +### Improvements +- Disabled devtools and page refresh in production builds. + +### Fixes +- Fixed "Load older messages" incorrectly scrolling to bottom. +- Fixed page refresh getting stuck on splash screen. diff --git a/changelog/1.0.6.md b/changelog/1.0.6.md new file mode 100644 index 00000000..4ba05235 --- /dev/null +++ b/changelog/1.0.6.md @@ -0,0 +1,9 @@ +--- +version: 1.0.6 +date: 2025-12-08 +--- + +## App + +### Improvements +- Enhanced shell environment detection. diff --git a/changelog/1.0.7.md b/changelog/1.0.7.md new file mode 100644 index 00000000..c70a26d9 --- /dev/null +++ b/changelog/1.0.7.md @@ -0,0 +1,10 @@ +--- +version: 1.0.7 +date: 2025-12-08 +--- + +## App + +### Improvements +- Optimized OpenCode binary detection. +- Adjusted app update experience. diff --git a/changelog/1.0.8.md b/changelog/1.0.8.md new file mode 100644 index 00000000..528bc1c7 --- /dev/null +++ b/changelog/1.0.8.md @@ -0,0 +1,13 @@ +--- +version: 1.0.8 +date: 2025-12-08 +--- + +## App + +### New +- Added fallback detection for OpenCode CLI in `~/.opencode/bin`. +- Added window focus after app restart/update. + +### Improvements +- Adapted traffic lights position and corner radius for older macOS versions. diff --git a/changelog/1.0.9.md b/changelog/1.0.9.md new file mode 100644 index 00000000..120ac0f1 --- /dev/null +++ b/changelog/1.0.9.md @@ -0,0 +1,14 @@ +--- +version: 1.0.9 +date: 2025-12-08 +--- + +## App + +### New +- Added directory picker on first launch to reduce macOS permission prompts. +- Show changelog in update dialog from current to new version. +- Added macOS folder access usage descriptions. + +### Improvements +- Improved update dialog UI with inline version display. diff --git a/changelog/1.1.0.md b/changelog/1.1.0.md new file mode 100644 index 00000000..0902cf6f --- /dev/null +++ b/changelog/1.1.0.md @@ -0,0 +1,23 @@ +--- +version: 1.1.0 +date: 2025-12-13 +--- + +## App + +### New +- Added assistant answer fork flow. +- Added OpenChamber VS Code extension with editor integration: file picker, click-to-open in tool parts. +- Added git polling backoff optimization. + +### Improvements +- Improved scroll performance with force flag and RAF placeholder. + +## VS Code + +### New +- Added assistant answer fork flow to start new sessions with inherited context. +- Initial VS Code extension release with editor integration: file picker, click-to-open in tool parts. + +### Improvements +- Improved scroll performance. diff --git a/changelog/1.1.1.md b/changelog/1.1.1.md new file mode 100644 index 00000000..223b07da --- /dev/null +++ b/changelog/1.1.1.md @@ -0,0 +1,12 @@ +--- +version: 1.1.1 +date: 2025-12-13 +--- + +## App + +### Improvements +- Adjusted model/agent selection alignment. + +### Fixes +- Fixed user message rendering issues. diff --git a/changelog/1.1.2.md b/changelog/1.1.2.md new file mode 100644 index 00000000..0166c7b3 --- /dev/null +++ b/changelog/1.1.2.md @@ -0,0 +1,24 @@ +--- +version: 1.1.2 +date: 2025-12-13 +--- + +## App + +### New +- Added feedback messages for "Restart API Connection" command. + +### Improvements +- Moved VS Code extension to activity bar (left sidebar). +- Removed redundant VS Code commands. +- Enhanced UserTextPart styling. + +## VS Code + +### New +- Added feedback messages for "Restart API Connection" command. + +### Improvements +- Moved extension to activity bar (left sidebar). +- Removed redundant commands. +- Enhanced UserTextPart styling. diff --git a/changelog/1.1.3.md b/changelog/1.1.3.md new file mode 100644 index 00000000..20942e4d --- /dev/null +++ b/changelog/1.1.3.md @@ -0,0 +1,12 @@ +--- +version: 1.1.3 +date: 2025-12-14 +--- + +## App + +### New +- Added line wrap toggle in diff view with dynamic layout switching (auto-inline when narrow). + +### Improvements +- Replaced Monaco diff editor with Pierre/diffs. diff --git a/changelog/1.1.4.md b/changelog/1.1.4.md new file mode 100644 index 00000000..91f9f033 --- /dev/null +++ b/changelog/1.1.4.md @@ -0,0 +1,19 @@ +--- +version: 1.1.4 +date: 2025-12-15 +--- + +## App + +### Improvements +- Flexoki themes for Shiki syntax highlighting for consistency with the app color schema. +- Enhanced VSCode extension theming with editor themes. + +### Fixes +- Fixed mobile view model/agent selection. + +## VS Code + +### Improvements +- Flexoki themes for Shiki syntax highlighting for consistency with the app color schema. +- Enhanced extension theming with editor themes. diff --git a/changelog/1.1.5.md b/changelog/1.1.5.md new file mode 100644 index 00000000..4009c9fe --- /dev/null +++ b/changelog/1.1.5.md @@ -0,0 +1,22 @@ +--- +version: 1.1.5 +date: 2025-12-15 +--- + +## App + +### New +- Added fuzzy search for file mentions with `@` in chat. + +### Improvements +- Improved file attachment performance. +- Optimized input area layout. + +## VS Code + +### New +- Added fuzzy search for file mentions with `@` in chat. + +### Improvements +- Improved file attachment performance. +- Optimized input area layout. diff --git a/changelog/1.1.6.md b/changelog/1.1.6.md new file mode 100644 index 00000000..de6a1f99 --- /dev/null +++ b/changelog/1.1.6.md @@ -0,0 +1,16 @@ +--- +version: 1.1.6 +date: 2025-12-15 +--- + +## App + +### Improvements +- Optimized diff view layout with smaller fonts and compact hunk separators. +- Improved mobile experience: simplified header, better diff file selector. +- Redesigned password-protected session unlock screen. + +## VS Code + +### Improvements +- Redesigned password-protected session unlock screen. diff --git a/changelog/1.10.0.md b/changelog/1.10.0.md new file mode 100644 index 00000000..93b9c86b --- /dev/null +++ b/changelog/1.10.0.md @@ -0,0 +1,38 @@ +--- +version: 1.10.0 +date: 2026-05-05 +--- + +## App + +### New +- Preview: added an embedded dev-server Preview pane for loopback apps, with authenticated proxying, Vite/HMR support, same-origin API request handling, and safer local dev-server shutdown (thanks to @wpbiggs). +- Preview: added preview console capture, DOM element inspection, annotation context, and Electron screenshot attachments. +- Projects/Terminal: added Auto-discover for local dev servers, background terminal startup, action-linked Preview reopen controls, and cleaner terminal tab styling (thanks to @wpbiggs). +- Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets. +- VSCode/Chat: added the currently open editor file to chat context (thanks to @daveotero). +- Onboarding/Updates/Mobile: added OpenCode CLI auto-detection during onboarding, cross-checks update prompts against npm, and improved iPad/tablet controls for fewer false update notices and smooth touch use (thanks to @IslamNofl). + +### Improvements +- UI/Settings: improved settings scrolling, empty states, and button/overlay polish (thanks to @Yabuku-xD). +- GitHub/Git: improved fork-aware issue and pull-request listing, PR status handling, startup loading feedback, remote MCP headers, and long model ID handling (thanks to @corrm, @ricautomation, @yart). + +### Fixes +- Chat/UI: added a wide layout option, steady scroll position across sessions and generated prompts, less flicker during streaming, and safer rendering for malformed message parts (thanks to @jwcrystal, @pasta-paul). +- Reliability/Streaming: reconnects now recover immediately after OS wake-from-sleep, long agent sessions avoid streaming hangs, concurrent sessions sharing the same provider are throttled more safely, and model metadata refreshes after OpenCode restarts (thanks to @jwcrystal, @pasta-paul, @Yabuku-xD). + +## VS Code + +### New +- Chat/UI: added the currently open editor file to chat context (thanks to @daveotero). +- Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets. +- Chat/UI: added a wide layout option. + +### Improvements +- Chat/Scrolling: preserved per-session scroll position and kept generated prompts scrolled into view (thanks to @jwcrystal). +- Settings/UI: improved settings scrolling and empty states (thanks to @Yabuku-xD). +- GitHub/MCP: improved fork-aware issue and pull-request listing, PR status handling, and remote MCP header handling (thanks to @corrm, @ricautomation). + +### Fixes +- Chat/Streaming: reduced text flicker, preserved first chunks reliably, and kept long agent sessions from hanging during active responses (thanks to @pasta-paul). +- Models/Providers: fixed slash-containing model IDs, refreshed model metadata after OpenCode restarts, and added safer concurrency controls for sessions sharing the same provider (thanks to @yart, @Yabuku-xD). diff --git a/changelog/1.10.1.md b/changelog/1.10.1.md new file mode 100644 index 00000000..599eae29 --- /dev/null +++ b/changelog/1.10.1.md @@ -0,0 +1,39 @@ +--- +version: 1.10.1 +date: 2026-05-06 +--- + +## App + +### New +- Git: added one-click Sync and stash management, including stash access from a clean worktree. +- UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52). +- Sessions: added a quick archive action directly on session rows (thanks to @zoubenr). +- Files: added a manual save mode to the file editor. +- Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session. +- Mobile/Terminal: added an opt-in keyboard resize mode and steady touch terminal input. + +### Improvements +- Chat/Reliability: pending questions now survive session switches and directory eviction. +- VSCode/Reliability: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn). + +### Fixes +- Git: improved sync safety and feedback with latest remote refs, clearer progress banners, less flicker during refresh, cleaner header controls, and better unavailable pull-request states. +- Terminal: restored focus back to terminal input after Ghostty element blur events. +- Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths. +- Performance/Reliability: reduced duplicate app initialization, deferred heavier views, lowered local server status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise. + +## VS Code + +### New +- UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52). +- Sessions: added a quick archive action directly on session rows (thanks to @zoubenr). +- Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session. + +### Improvements +- Chat/Reliability: pending questions now survive session switches and directory eviction. +- Reliability/Sync: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn). + +### Fixes +- Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths. +- Performance/Reliability: reduced duplicate extension initialization, deferred heavier views, lowered managed runtime status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise. diff --git a/changelog/1.10.2.md b/changelog/1.10.2.md new file mode 100644 index 00000000..07a0c179 --- /dev/null +++ b/changelog/1.10.2.md @@ -0,0 +1,27 @@ +--- +version: 1.10.2 +date: 2026-05-07 +--- + +## App + +### New +- Projects: added repository cloning to the Add Project flow. + +### Improvements +- Chat/Reliability: stabilized live turn rendering and session sync caches. +- Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch). +- Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener). +- Usage: OpenRouter credit balances now avoid misleading percentage displays and use clearer labels across usage views (thanks to @zerone0x). +- Preview: improved embedded preview proxying with cleaner URL rewriting, fewer false-positive dev-server errors, steady navigation, and theme-aware preview frames. +- Notifications: suppressed inherited subagent completion notifications. +- VSCode: split the extension into a dedicated app root. + +## VS Code + +### Improvements +- Chat/Reliability: stabilized live turn rendering and session sync caches. +- Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch). +- Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener). +- Usage: OpenRouter credit balances now avoid misleading percentage displays and use clearer labels across usage views (thanks to @zerone0x). +- Reliability: split the extension into a dedicated app root. diff --git a/changelog/1.10.3.md b/changelog/1.10.3.md new file mode 100644 index 00000000..dd9848c8 --- /dev/null +++ b/changelog/1.10.3.md @@ -0,0 +1,35 @@ +--- +version: 1.10.3 +date: 2026-05-08 +--- + +## App + +### New +- Desktop/Electron: added Mini Chat windows for focused conversations without the full workspace shell, including session/draft handoff back to the main window, always-on-top pinning, and quick access from the header, session list, command palette, and keyboard shortcuts. + +### Improvements +- Desktop/Startup: show the splash window earlier while the local runtime starts. +- Chat/Scrolling: rebuilt auto-follow behavior for active responses. +- Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff. + +### Fixes +- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. +- Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404). +- Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404). +- Files/Skills: ignored stale directory refreshes and outdated skills catalog/repo scans. +- Git/Terminal/Desktop: fixed sandbox database loading in ESM, forwarded lightweight Git status mode across runtimes, preserved Electron SSH desktop hosts when saving instances, and made terminal UTF-8 locale fallbacks platform-aware (thanks to @isanchez404, @liyiopener). +- UI/Reliability: added smaller polish fixes for mobile Settings Escape handling, Multirun model limits, text-selection cleanup, and upstream event-stream cancellation (thanks to @isanchez404). + +## VS Code + +### Improvements +- Chat/Scrolling: rebuilt auto-follow behavior for active responses. +- Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff. +- Skills/Reliability: ignored outdated skills catalog and repo scans. + +### Fixes +- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. +- Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404). +- Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404). +- Chat/Reliability: added smaller polish fixes for text-selection cleanup (thanks to @isanchez404). diff --git a/changelog/1.10.4.md b/changelog/1.10.4.md new file mode 100644 index 00000000..78d004e2 --- /dev/null +++ b/changelog/1.10.4.md @@ -0,0 +1,32 @@ +--- +version: 1.10.4 +date: 2026-05-09 +--- + +## App + +### New +- Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head. +- Settings/UI: improved keyboard and screen-reader support for resizable Settings navigation and collapsible sidebar groups (thanks to @isanchez404). + +### Improvements +- Desktop/Mini Chat: improved Mini Chat session controls with current context usage in the compact header and a single header action that opens either the active session or current draft in Mini Chat. +- Chat/Input: model, variant, and agent labels collapse better on narrow widths. +- Terminal: cleaned up idle WebSocket connections and scoped SSE connection-open handling per retry attempt. +- Reliability/Sync: preserved message part update ordering (thanks to @isanchez404). + +### Fixes +- Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404). +- Files: ignored stale file loads, guarded pending navigation, and stopped switching files when save fails. + +## VS Code + +### New +- Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head. + +### Improvements +- Chat/Input: model, variant, and agent labels collapse better on narrow widths. +- Reliability/Sync: preserved message part update ordering (thanks to @isanchez404). + +### Fixes +- Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404). diff --git a/changelog/1.11.0.md b/changelog/1.11.0.md new file mode 100644 index 00000000..3950222c --- /dev/null +++ b/changelog/1.11.0.md @@ -0,0 +1,38 @@ +--- +version: 1.11.0 +date: 2026-05-14 +--- + +## App + +### New +- Updates/OpenCode: added in-app OpenCode update checks and upgrade actions. +- Voice: added local Whisper speech-to-text. + +### Improvements +- Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic). +- Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior. +- VSCode: improved chat sidebar command handoff, active-editor context updates, SSE cleanup, Agent Manager settings sync, and archived-session bulk delete reliability in the extension (thanks to @isanchez404, @jjdubski). +- Git: generalized repository provider handling beyond GitHub and made commit/PR generation more tolerant of JSON wrapped in assistant text. +- Terminal: rejected file paths as terminal working directories, preserved UTF-8 replay chunks, and cleaned up WebSocket/SSE listeners reliably during shutdown and reconnects (thanks to @isanchez404). +- Usage/Reliability: guarded quota percentages and reset timestamps defensively. + +### Fixes +- Voice: synced speech recognition settings across devices and let server transcription finish processing audio when voice input stops (thanks to @kostazol). +- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. +- UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, scheduled tasks, session folders, and accessible Git/session controls (thanks to @isanchez404). + +## VS Code + +### Improvements +- Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic). +- Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior. +- Editor Integration: chat commands now wait for the sidebar webview before sending selections, file mentions, explain prompts, or improve prompts. +- Reliability/Streaming: extension SSE reconnect delays now abort cleanly and disposed chat webviews clean up their live streams. +- Agent Manager: settings changes now sync into Agent Manager views immediately. +- Sessions: archived-session bulk delete now works reliably from the extension sidebar (thanks to @jjdubski). + +### Fixes +- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. +- Editor Integration: active-editor context updates now ignore stale broadcasts. +- UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, and accessible session controls (thanks to @isanchez404). diff --git a/changelog/1.11.1.md b/changelog/1.11.1.md new file mode 100644 index 00000000..c346de9c --- /dev/null +++ b/changelog/1.11.1.md @@ -0,0 +1,34 @@ +--- +version: 1.11.1 +date: 2026-05-15 +--- + +## App + +### New +- Multi-Run: added fusion for multi-run sessions. +- Multi-Run: added optional isolation and support for non-Git projects. +- Chat/Sessions: added a header session switcher with project, branch, diff, active, unread, and sub-session context. +- Desktop/Mini Chat: added session switching and the new-session shortcut to Mini Chat, while preserving user-selected sessions during startup. +- Updates/Usage: added a setting to disable OpenCode update notifications, and quota reset times now display in your local timezone. + +### Improvements +- Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only. +- Chat/Shortcuts: made the agent-switching shortcut configurable and usable from the chat input/model picker. +- Preview: improved embedded preview proxying for absolute same-origin requests and WebSocket URLs, and avoided launching unrelated project actions when no dev-server action is detected. +- Chat/UI: sorted-mode tool paths animate consistently, and tooltip rendering is guarded defensively. +- Git: large change lists now display reliably, and branch selection stays hidden for non-Git draft sessions. +- Settings/Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq). + +## VS Code + +### New +- Chat/Sessions: added a session switcher to the chat header. + +### Improvements +- Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only. +- Usage: quota reset times now display in your local timezone. +- Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq). + +### Fixes +- Chat/UI: sorted-mode tool paths animate consistently, and tooltip crashes are guarded defensively. diff --git a/changelog/1.11.2.md b/changelog/1.11.2.md new file mode 100644 index 00000000..62ae1265 --- /dev/null +++ b/changelog/1.11.2.md @@ -0,0 +1,27 @@ +--- +version: 1.11.2 +date: 2026-05-18 +--- + +## App + +### New +- Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc). +- Git: commit history can now show file diffs inline (thanks to @ermanhavuc). + +### Improvements +- Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc). +- Notes/Todos: context panel sizes are remembered, and todos can be reordered with drag and drop (thanks to @ermanhavuc). +- Git: branch history works better for local-only branches, and branch search fields accept typing again (thanks to @ermanhavuc). +- Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404). +- Skills: installed skills now match OpenCode's own skill list more closely. + +## VS Code + +### New +- Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc). + +### Improvements +- Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc). +- Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404). +- Skills: installed skills now match OpenCode's own skill list more closely. diff --git a/changelog/1.11.3.md b/changelog/1.11.3.md new file mode 100644 index 00000000..e209c479 --- /dev/null +++ b/changelog/1.11.3.md @@ -0,0 +1,39 @@ +--- +version: 1.11.3 +date: 2026-05-19 +--- + +## App + +### New +- Chat: slash command autocomplete now includes skills and clearer command/type badges. +- Updates/PWA: OpenCode update and PWA install prompts can now be dismissed without reappearing repeatedly (thanks to @robertoberto). + +### Improvements +- Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto). +- Chat: slash, file, skill, and agent autocomplete selection now stays steadier when using the keyboard or mouse. +- Chat: external links in messages now show favicons with better contrast, and skill links render correctly in user message rendered as markdown. +- Chat: multi-file tool diffs now render safely, including files with mixed line endings. +- Sessions: archived session lists handle large archives better, and sub-session expansion is kept separate between Recent and project sections (thanks to @vhqtvn). +- Sessions: deleting or archiving a parent session now shows a descendant count that matches what will actually be removed (thanks to @vhqtvn). +- Git: reverting a chat message now refreshes the Git changes view afterward. +- Terminal/Mobile: the terminal viewport now stays above the mobile keyboard more consistently (thanks to @Dav1dch). + +### Fixes +- Notifications: browser and VS Code notifications work without duplicate alerts. +- Usage: added Wafer.ai quota tracking and removed the duplicate Zhipu usage provider entry (thanks to @bowber). + +## VS Code + +### New +- Editor Integration: Add to Context now attaches the selected code as context instead of pasting a formatted block into the input. +- Editor Integration: Add File to Chat now attaches selected files instead of inserting file mentions. +- Editor Integration: Add to Context, Add File to Chat, Explain, and Improve Code now target the active session editor when one is open. +- Chat: slash command autocomplete now includes skills and clearer command/type badges. +- Usage: added Wafer.ai quota tracking (thanks to @bowber). + +### Improvements +- Chat: session editor tabs now update their title to match the session title. +- Sessions: session rows now include an action to open a chat as editor tab. +- Notifications: completion, question, and permission notifications now use the extension notification settings and shows as multi-platforn native notifications. +- Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto). diff --git a/changelog/1.11.4.md b/changelog/1.11.4.md new file mode 100644 index 00000000..935008ce --- /dev/null +++ b/changelog/1.11.4.md @@ -0,0 +1,33 @@ +--- +version: 1.11.4 +date: 2026-05-22 +--- + +## App + +### New +- Chat: added reusable snippets with `#` autocomplete in the composer and a Snippets settings page for global and project snippets with [opencode-snippets](https://github.com/JosXa/opencode-snippets) plugin compatibility. +- Multi-Run: runs can now be split into separate prompt/model groups, and Multi-Run prompts support command, file, agent, and snippet autocomplete (thanks to @tomzx). + +### Improvements +- Desktop: Electron is now the desktop release target, with updated macOS menu actions for the right sidebar and terminal dock. +- UI: refreshed the desktop workspace shell with a full-width header, framed chat area, and smooth left/right sidebar open and close states. +- Chat: completed reasoning blocks stay collapsed without replaying the collapse animation when you reopen a session. +- Files: file search and mention results avoid mixing entries from similar query/cache keys (thanks to @isanchez404). +- VSCode: switching between chat sessions is less likely to stall on very large conversations. +- UI/Localization: refreshed Simplified Chinese terminology across the interface (thanks to @luojiyin). + +### Fixes +- Voice: preview audio now stops and cleans up correctly when you stop playback or leave Voice settings (thanks to @isanchez404). + +## VS Code + +### New +- Sessions: opening a session now fetches a smaller initial message page, while still expanding enough to show the latest user turn when needed. + +### Improvements +- Sessions: switching between chat sessions now keeps less inactive message history in the webview, especially after opening large conversations. +- Chat: task tool results use final task summaries when available instead of repeatedly loading child-session messages. +- Chat: task tool polling in the extension now uses smaller message fetches while subtasks are active or idle. +- Chat: markdown file links now cap path checks in the extension, reducing stalls in messages with many inline paths. +- Chat: the extension header reads only the active session title and latest usage data instead of reacting to the full session list. diff --git a/changelog/1.11.5.md b/changelog/1.11.5.md new file mode 100644 index 00000000..5a7194e9 --- /dev/null +++ b/changelog/1.11.5.md @@ -0,0 +1,34 @@ +--- +version: 1.11.5 +date: 2026-05-25 +--- + +## App + +### New +- Sessions: session titles can now be renamed inline with a double-click (thanks to @robertoberto). +- Files: file search now shows the number of matches in the editor panel, and directory rows include a quick-add button (thanks to @attackonryan, @tomzx). +- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Improvements +- Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type. +- Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent. +- Git: changed files are split into staged and unstaged sections, and Git operations work correctly from repository subdirectories (thanks to @ShogunPanda, @kostazol). +- Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404). +- Mobile/PWA: long-press tooltips work on touch screens, fullscreen panels keep the right header state, deleted or long-named files behave better in file lists, and Android PWA dialogs stay visible (thanks to @kostazol, @lilyzhaun). + +### Fixes +- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. + +## VS Code + +### New +- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Improvements +- Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type. +- Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent. +- Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404). + +### Fixes +- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. diff --git a/changelog/1.11.6.md b/changelog/1.11.6.md new file mode 100644 index 00000000..8d8fe307 --- /dev/null +++ b/changelog/1.11.6.md @@ -0,0 +1,23 @@ +--- +version: 1.11.6 +date: 2026-05-25 +--- + +## App + +### New +- Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion). +- Tunnels: added Ngrok as a quick tunnel provider in the CLI and Desktop tunnel settings, with readiness checks (requires Ngrok cli and auth). +- Desktop: added optional password setting in OpenChamber sessions settings for the local Desktop server. +- Multi-Run: new multi-run sessions now appear in the session list immediately, and slash-command prompts are sent to the created run sessions correctly. + +### Fixes +- Mobile: restored the new-session action in the session sidebar header. + +## VS Code + +### New +- Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion). + +### Improvements +- Perf: Git repository lookups in the extension now avoid repeating the same Git read commands during refreshes. diff --git a/changelog/1.11.7.md b/changelog/1.11.7.md new file mode 100644 index 00000000..be848d91 --- /dev/null +++ b/changelog/1.11.7.md @@ -0,0 +1,29 @@ +--- +version: 1.11.7 +date: 2026-05-27 +--- + +## App + +### New +- Git: commit history now includes a branch graph and commit-row actions in the history modal (thanks to @ermanhavuc). +- Desktop: added a launch-at-startup setting, and collapsed browser windows now keep their webview state. +- UI/Localization: added Traditional Chinese interface translations (thanks to @Jia35). +- Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc). + +### Improvements +- Notes/Todos: completed todos stay at the end of the list, and the send-to-session dialog has a cleaner model picker (thanks to @kostazol, @rghamilton3). + +### Fixes +- Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt). +- Sessions: inline session renaming no longer exits immediately after focus changes (thanks to @youfch). +- VSCode: restored live streaming in the extension. + +## VS Code + +### New +- Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc). + +### Fixes +- Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt). +- Reliability/Streaming: restored live streaming in the extension. diff --git a/changelog/1.12.0.md b/changelog/1.12.0.md new file mode 100644 index 00000000..a69b2367 --- /dev/null +++ b/changelog/1.12.0.md @@ -0,0 +1,34 @@ +--- +version: 1.12.0 +date: 2026-06-03 +--- + +## App + +### New +- Mobile: added a new mobile UI as the default, with an option in Settings to switch back to the previous layout; this is the foundation for the upcoming mobile app and is available to try now. +- Chat: added customizable draft welcome starters from commands and skills, including guided commands for planning, catch-up, debugging, and exploration. +- Chat: assistant answers now have a dialog for starting a new session from that answer. +- Web/Browser: added a Browser feature for opening websites in the web app and sharing annotations with screenshots to agents. +- Web/Remote Instances: added a headless web app mode, and remote instance switching now changes the OpenChamber API endpoint without loading the full remote UI. +- UI/Themes: added JetBrains Light and JetBrains Dark themes, and VS Code chat colors now map more closely to the active editor theme. + +### Improvements +- Chat/UI: markdown-rendered user messages now preserve line breaks. + +### Fixes +- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. + +## VS Code + +### New +- Chat: added customizable draft welcome starters from commands and skills, including guided commands for catch-up, debugging, exploration, and approach comparison. +- Chat: assistant answers now have a dialog for starting a new session from that answer. + +### Improvements +- Chat/UI: markdown-rendered user messages now preserve line breaks. +- UI/Theming: chat colors now map more closely to the active editor theme, and the session UI has been refined. +- Reliability/Startup: Restart API Connection now uses the same loading and reload flow as startup. + +### Fixes +- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. diff --git a/changelog/1.12.1.md b/changelog/1.12.1.md new file mode 100644 index 00000000..006d6052 --- /dev/null +++ b/changelog/1.12.1.md @@ -0,0 +1,46 @@ +--- +version: 1.12.1 +date: 2026-06-03 +--- + +## App + +### New +- Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting. +- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group on desktop, mobile, and VS Code. + +### Improvements +- Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied. +- Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session. +- Chat/UI: sticky user-message headers are now off by default. +- Sessions: session titles update from live session events, and the app now consistently loads all existing OpenCode sessions. +- Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes. +- UI/Time: the 12-hour/24-hour time preference now applies to chat timestamps, usage reset times, scheduled tasks, tunnels, passkeys, Git history, and pull-request dates. +- Settings/Files: the default file preview setting now lives with the Chat appearance settings and applies immediately to open file tabs. +- Desktop: Desktop tunnels now serve the full app UI instead of the headless page. +- Desktop: removed the legacy Tauri desktop path; Electron is now the only desktop runtime. + +### Fixes +- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. +- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. +- Chat: the first prompt in a new session no longer gets stuck before sending. +- Preview: embedded previews now rewrite inline module imports, fixing Vite React preview pages that load root-relative modules. +- Desktop: quitting the Desktop app now stops managed OpenCode processes more reliably, reducing leftover OpenCode processes after exit. + +## VS Code + +### New +- Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting. +- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group. + +### Improvements +- Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied. +- Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session. +- Sessions: session titles update from live session events, and the extension now consistently loads all existing OpenCode sessions. +- Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes. +- UI/Time: the time-format preference now applies to chat timestamps, usage reset times, scheduled tasks, passkeys, and usage last-updated times. + +### Fixes +- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. +- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. +- Chat: the first prompt in a new session no longer gets stuck before sending. diff --git a/changelog/1.12.2.md b/changelog/1.12.2.md new file mode 100644 index 00000000..299fdd79 --- /dev/null +++ b/changelog/1.12.2.md @@ -0,0 +1,23 @@ +--- +version: 1.12.2 +date: 2026-06-05 +--- + +## App + +### New +- **Desktop/Windows: the Windows app is now available publicly, with full functionality parity across the app.** +- Projects: the Add Project directory picker now starts with hidden files off each time it opens. + +### Improvements +- Tunnels: switching between Cloudflare and ngrok quick tunnels now replaces the active quick tunnel instead of reusing the previous provider. +- Tunnels: ngrok startup failures now show the ngrok or authtoken error returned during startup. +- Chat: prompts sent while creating or switching target sessions now stay attached to the intended project directory. +- VSCode: the extension now detects more Windows OpenCode installs from PATH, npm, Scoop, and Chocolatey. + +## VS Code + +### Improvements +- Startup/Windows: the extension now detects more OpenCode installs from PATH, npm, Scoop, and Chocolatey. +- Chat: prompts sent while creating or switching target sessions now stay attached to the intended workspace directory. +- Files: chat and tool links now handle Windows drive-letter and backslash paths. diff --git a/changelog/1.12.3.md b/changelog/1.12.3.md new file mode 100644 index 00000000..7f54dc77 --- /dev/null +++ b/changelog/1.12.3.md @@ -0,0 +1,18 @@ +--- +version: 1.12.3 +date: 2026-06-05 +--- + +## App + +### Improvements +- Startup: OpenCode health checks now work with OpenCode 1.15.x. + +### Fixes +- Windows/Startup: WSL OpenCode installs are no longer detected or launched; install OpenCode natively on Windows and configure `opencode.cmd` or `opencode.exe` instead. +- Files: file trees now show directory loading errors with a retry action instead of leaving the folder empty, and slow Git ignore checks no longer block directory listings indefinitely. + +## VS Code + +### Improvements +- Startup: OpenCode health checks now work with OpenCode 1.15.x. diff --git a/changelog/1.12.4.md b/changelog/1.12.4.md new file mode 100644 index 00000000..c86a21db --- /dev/null +++ b/changelog/1.12.4.md @@ -0,0 +1,57 @@ +--- +version: 1.12.4 +date: 2026-06-11 +--- + +## App + +### New +- Chat: added `/handoff-review` to open a linked review session for the current workspace changes, with actions to send review feedback and implementation replies between the sessions. +- Chat/UI: added a setting to collapse long user messages. +- Chat: Mermaid diagrams can now be opened in a dedicated diagram editor (thanks to @nerdosaurus). +- Worktrees: creating a single new worktree session now opens the session immediately while worktree setup continues in the background. +- Settings: added search across settings pages. +- Files: added an editor Vim mode setting (thanks to @Champii). +- Desktop/macOS: added a menu bar tray with live session status, Mini Chat access, and a provider usage submenu. +- Desktop/macOS: added an optional vibrancy effect for the left sidebar. +- Mobile: refreshed session controls, worktree deletion flow, MCP controls, update flow, and usage tracking for new layout. +- Usage: added Cursor quota tracking. +- UI/Localization: added French interface translations and French documentation (thanks to @pascalandr). +- VSCode: added an action to archive all sessions from the extension (thanks to @jjdubski). +- VSCode: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko). + +### Improvements +- Chat: `@agent` mentions in rendered messages now use the primary accent color. +- Chat: table copy actions now include a Markdown format option (thanks to @kjhq). +- Models: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq). +- Multi-Run: creating isolated runs now opens sessions immediately while worktree setup continues in the background. +- Sessions: chat folder assignments now stay in place after reloads. +- Sessions: session, folder, project, and worktree rows now have right-click menus for their available actions. +- Settings/Agents: agent prompt and permission edits now stay saved after changes. +- Files: writes are now safer when saving through temporary files (thanks to @nerdosaurus). +- Git: changed-file folders now have a revert action (thanks to @kostazol). +- GitHub: issue and pull-request pickers now use server-side search for larger repositories (thanks to @tomzx). +- Voice: Plan and file preview markdown now include text-to-speech buttons, with a setting for reading selected text or the full document (thanks to @yangyaofei). + +### Fixes +- Preview: inline module scripts are now rewritten in proxied HTML responses, fixing more Vite preview pages (thanks to @mdbetancourt). +- Desktop/macOS: startup no longer opens unnecessary folder prompts. +- Terminal/Mobile: touch scrolling in the terminal no longer conflicts with terminal input as often (thanks to @kostazol). + +## VS Code + +### New +- Sessions: added an action to archive all sessions (thanks to @jjdubski). +- Workspaces: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko). +- Settings: added search across settings pages. +- Chat/UI: added a setting to collapse long user messages. +- Usage: added Cursor quota tracking. +- UI/Localization: added French extension translations (thanks to @pascalandr). + +### Improvements +- Agent Manager: creating isolated runs now opens sessions immediately while worktree setup continues in the background. +- Agent Manager: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq). +- Sessions: chat folder assignments now stay in place after reloads. +- Sessions: session and folder rows now have right-click menus for their available actions. +- Chat: table copy actions now include a Markdown format option (thanks to @kjhq). +- Chat: `@agent` mentions in rendered messages now use the primary accent color. diff --git a/changelog/1.13.0.md b/changelog/1.13.0.md new file mode 100644 index 00000000..48170396 --- /dev/null +++ b/changelog/1.13.0.md @@ -0,0 +1,64 @@ +--- +version: 1.13.0 +date: 2026-06-15 +--- + +## App + +### New +- Files: added dedicated PDF files previews mode. +- Files: added an optional docked files editor toolbar (thanks to @robertoberto). +- Git/Diff: individual diff hunks can now be staged, unstaged, or discarded directly from the Changes view via `git apply`. +- Git/Diff: added a review flow for starting a review from current changes. +- GitHub: GitHub settings can now use credentials from the `gh` CLI when available (thanks to @tomzx). +- Desktop: you can now open developer tools from the Help menu. +- Sessions: new draft sessions now start from the default model and agent instead of inheriting the previous session's selection, and fall back to OpenCode's own `default_agent` (and its model) when no OpenChamber default is set. +- Startup: the model and agent now appear faster on the initial draft — config loads under the project key up front (no reload when the draft opens) and the agent list is fetched once instead of per consumer. + +### Improvements +- Security: LAN and remote browser access now require a UI password before the server will start. +- Desktop: if LAN access was enabled without a password, the app now starts locally and asks for a password before turning LAN access back on. +- Chat: file paths inside fenced code blocks are now clickable, including line and column targets (thanks to @robertoberto). +- Chat: context breakdowns now show message previews and cache hit rates (thanks to @robertoberto, @raz123). +- Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive. +- Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84). +- Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history. +- Files: file operations now use the active workspace directory more consistently (thanks to @tomzx). +- Sessions: session menus now include a delete action (thanks to @ShogunPanda). +- Sessions: selected rows now highlight across the full sidebar gutter. +- Comments: inline file/diff comment drafts now stay in place when focus changes. +- Git/Diff: redesigned the Changes diff view with faster multi-file rendering, expandable hunk separators, a full-file loading toggle, compact responsive controls, and a unified changed/staged context panel workflow. +- Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini). +- Notifications: notification streams now stay connected more reliably behind proxies (thanks to @kostazol). +- Mobile: the empty Changes view keeps a close control visible (thanks to @lilyzhaun). +- Security: file previews and downloads now reject paths outside the allowed workspace unless access has been granted. +- Startup: cached settings and session state now appear earlier while the live API finishes connecting. +- VSCode: the extension opens faster with cached sessions, models, providers, and projects, then refreshes in the background. +- VSCode: sessions are now grouped under their workspace, with cleaner session rows and an archived-sessions toggle. + +### Fixes +- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). +- Chat/Mobile: collapsed tool cards now keep their tool icon visible, and reasoning/tool text no longer clips descenders. +- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). +- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). +- Sessions: fixed a bug where a running session would briefly flicker as idle (in the sidebar, the send/stop button, and the status row) when the app is protected by a password. + +## VS Code + +### New +- Sessions: session rows now use a cleaner single-line layout, and a new control next to "archive all" toggles archived sessions on or off. + +### Improvements +- Sessions: the list now groups sessions under their workspace, so pinning sessions and moving them into folders work as expected. +- Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84). +- Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive. +- Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history. +- Sessions: session menus now include a delete action (thanks to @ShogunPanda). +- Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini). + +### Fixes +- Startup: the extension opens faster — recent sessions, models, providers, and projects appear instantly from cache and refresh in the background, and the loading screen no longer lingers after the interface is ready. +- Startup: requests made while OpenCode is still starting now wait briefly for it to become ready instead of failing, and if OpenCode fails to start the error now includes what it reported. +- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). +- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). +- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). diff --git a/changelog/1.13.1.md b/changelog/1.13.1.md new file mode 100644 index 00000000..f1bb50fe --- /dev/null +++ b/changelog/1.13.1.md @@ -0,0 +1,45 @@ +--- +version: 1.13.1 +date: 2026-06-17 +--- + +## App + +### New +- Chat: pinned welcome starters now appear immediately when a new draft session opens, without needing to open the add dialog. +- Scheduled Tasks: the task editor dialog now supports Cron expressions with inline validation, quick-example chips, and a preview of the next four upcoming runs (thanks to @tomzx). +- Startup: providers and agents now load faster by avoiding the full provider catalog on initial load. + +### Improvements +- Chat: clicking a Mermaid diagram in a chat message now opens a fullscreen pan/zoom preview. +- Chat: the context usage indicator now shows as a circular progress ring with the same color thresholds, visible in all workspace headers. +- Chat/UI: embedded chat views and context panel previews now consistently match the current theme. +- Chat/Mobile: the session status button now responds more reliably to taps on Android. +- Files: syntax highlighting in the file editor, Plan View, and Skills page now uses Shiki for broader language support. +- Right Sidebar: switching between sidebar tabs is less likely to re-render unrelated content (thanks to @bashrusakh). +- Security: self-hosted instances now include noindex headers and a robots.txt to block search engine crawlers. +- CLI/Installer: the installer now requires Node.js 22 and handles version detection failures with clearer guidance. + +### Fixes +- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions — only `$$...$$` display math and `\(...\)` inline math are recognized. +- Chat: code-block highlighting now runs off the main thread, preventing UI freezes when rendering code-heavy responses. +- Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is and shows a clear explanation instead of silently disappearing. +- Agents: deleting an agent now shows an error toast when the definition is missing, instead of failing silently. +- Sessions: the app no longer crashes on startup when there are many sessions in folders. +- Notifications: desktop notifications no longer show duplicate alerts, and reasoning text is excluded from notification bodies. +- Reliability: session list loading handles Windows paths and concurrent requests more steadily, and duplicate health-check URLs are removed from diagnostics. + +## VS Code + +### New +- Chat: pinned welcome starters now appear immediately when a new draft session opens. + +### Improvements +- Startup: providers and agents now load faster at startup. +- Chat: code-block highlighting now runs off the main thread, keeping the UI responsive during code-heavy responses. +- Chat: the context usage indicator now shows as a circular progress ring. + +### Fixes +- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions. +- Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is instead of being silently disabled. +- Agents: deleting an agent now shows an error toast when the definition is missing. diff --git a/changelog/1.13.2.md b/changelog/1.13.2.md new file mode 100644 index 00000000..9750d86a --- /dev/null +++ b/changelog/1.13.2.md @@ -0,0 +1,25 @@ +--- +version: 1.13.2 +date: 2026-06-18 +--- + +## App + +### Improvements +- Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh). +- Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven). + +### Fixes +- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). +- Files: HTML, image, and PDF previews no longer cycle to "authentication required" every ~50 seconds (thanks to @bashrusakh). +- Startup: the app starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved. + +## VS Code + +### Improvements +- Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh). +- Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven). + +### Fixes +- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). +- Startup: the extension starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved. diff --git a/changelog/1.13.3.md b/changelog/1.13.3.md new file mode 100644 index 00000000..a9c31ff5 --- /dev/null +++ b/changelog/1.13.3.md @@ -0,0 +1,50 @@ +--- +version: 1.13.3 +date: 2026-06-24 +--- + +## App + +### New +- Git: Git identities can now enable SSH commit signing. + +### Improvements +- Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12). +- Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh). +- Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer. +- Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh). +- Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz). +- Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm). +- Providers: disconnecting a provider from settings now works for the selected provider (thanks to @bashrusakh). +- Git: pushing from the Git view now syncs first, reducing rejected pushes when the branch needs to update. +- Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino). +- VSCode: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114). +- Files: downloads and file names with non-Latin characters now handle those characters correctly in headers (thanks to @FanFan4204). + +### Fixes +- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). +- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). +- Sessions: new sessions now stay attached to the selected project or current workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). +- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). +- Startup: managed OpenCode server processes left behind by a previous crash are cleaned up on the next start. +- CLI: stale server PID files are checked more carefully so unrelated processes are not mistaken for an OpenChamber server. +- Mobile: subagent chevrons no longer overlap long session titles, and session grouping now matches the exact workspace directory (thanks to @weixiang1862, @lilyzhaun). + +## VS Code + +### Improvements +- Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12). +- Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh). +- Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer. +- Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh). +- Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz). +- Settings: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114). +- Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm). +- Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino). + +### Fixes +- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). +- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). +- Sessions: new sessions now stay attached to the selected workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). +- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). +- Startup: managed OpenCode server processes left behind by a previous extension crash are cleaned up on the next start. diff --git a/changelog/1.13.4.md b/changelog/1.13.4.md new file mode 100644 index 00000000..b4a08e6c --- /dev/null +++ b/changelog/1.13.4.md @@ -0,0 +1,39 @@ +--- +version: 1.13.4 +date: 2026-06-27 +--- + +## App + +### New +- UI/Localization: added Japanese interface translations and Japanese documentation (thanks to @yuchi0531). +- Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech). +- Reviews: the Review changes dialog can now run an automatic review loop, with a chat banner for opening or stopping the linked review sessions. +- Shortcuts: the model-selector shortcut can now be customized (thanks to @makeittech). +- Worktrees: messages sent to new worktree sessions now wait until the worktree session is ready instead of racing ahead (thanks to @bashrusakh). + +### Improvements +- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). +- Git: commit and pull-request generation from a draft session now starts from the created chat session instead of a temporary draft (thanks to @bashrusakh). +- CLI: startup and status commands now check the live server port before treating an existing process as the active OpenChamber server. + +### Fixes +- Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx). +- Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay. +- Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech). +- Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12). + +## VS Code + +### New +- UI/Localization: added Japanese interface translations (thanks to @yuchi0531). +- Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech). + +### Improvements +- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). + +### Fixes +- Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx). +- Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay. +- Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech). +- Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12). diff --git a/changelog/1.13.5.md b/changelog/1.13.5.md new file mode 100644 index 00000000..35c33dd2 --- /dev/null +++ b/changelog/1.13.5.md @@ -0,0 +1,16 @@ +--- +version: 1.13.5 +date: 2026-06-27 +--- + +## App + +### Fixes +- CLI: global web installs no longer crash on startup when tunnel commands load ngrok capabilities. +- CLI: `openchamber update` works again, and tunnel start paths no longer fail when using managed-local config prompts, multi-instance port selection, or auto-started servers. +- GitHub/Usage: fork upstream detection and Google quota checks no longer fail because of missing server helpers. + +## VS Code + +### Improvements +- No notable changes. diff --git a/changelog/1.13.6.md b/changelog/1.13.6.md new file mode 100644 index 00000000..38620e3c --- /dev/null +++ b/changelog/1.13.6.md @@ -0,0 +1,22 @@ +--- +version: 1.13.6 +date: 2026-06-28 +--- + +## App + +### New +- Desktop/macOS: the Dock icon can now show a badge count for chats with unseen activity, with a new Appearance setting to turn it off. + +### Improvements +- Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages. +- Chat: selecting a user-installed skill from the slash command menu now invokes the skill and injects its content, instead of inserting the skill name as plain text. +- Context Panel: chat tabs now use the session title and mark the open chat as seen while you are viewing it. + +### Fixes +- Context Panel: Browser and Preview tabs no longer accumulate duplicate auth tokens in their URLs after reloads or navigation. + +## VS Code + +### Improvements +- Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages. diff --git a/changelog/1.13.7.md b/changelog/1.13.7.md new file mode 100644 index 00000000..f5bf67a0 --- /dev/null +++ b/changelog/1.13.7.md @@ -0,0 +1,26 @@ +--- +version: 1.13.7 +date: 2026-06-28 +--- + +## App + +### New +- Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider. + +### Improvements +- Mobile: the model and agent buttons in the composer are now borderless and cleaner, show the provider logo next to the model name, and shorten long names with an ellipsis; in the model picker the thinking-variant control is plain text with a chevron and each row's controls line up. +- Mobile: interface labels (the model and agent selectors and other small labels) are back to their previous size after 1.13.6 shrank them too much. + +### Fixes +- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. +- Mobile: in long conversations, older messages now load before you reach the very top, and fast scrolling no longer leaves blank gaps where messages briefly disappear until you scroll back. +- CLI: `openchamber update` works again after a missing helper broke the command. + +## VS Code + +### New +- Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider. + +### Fixes +- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. diff --git a/changelog/1.13.8.md b/changelog/1.13.8.md new file mode 100644 index 00000000..1a4498d8 --- /dev/null +++ b/changelog/1.13.8.md @@ -0,0 +1,26 @@ +--- +version: 1.13.8 +date: 2026-06-29 +--- + +## App + +### New +- Chat: a new Follow-up behavior setting (Settings → Chat) controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh). + +### Improvements +- Sessions: deleting a worktree group from the sidebar, or permanently deleting an archived session that has subagent sessions, now removes those subagent sessions too instead of leaving them behind (thanks to @bashrusakh). + +### Fixes +- Startup: launching the app no longer hangs for around 20 seconds before you can open a session, load a diff, or send a message — GitHub pull request status checks no longer tie up the connection to the server during startup. +- OpenCode: when a separate OpenCode is already running (the TUI, `opencode serve`, or a daemon on the default port 4096), the app now starts its own server instead of attaching to it. This fixes the "OpenChamber could not finish initialization" error and stops the app from opening or closing your separate OpenCode when it starts and quits. Connecting to an external OpenCode now requires setting `OPENCODE_HOST`, `OPENCODE_PORT`, or `OPENCODE_SKIP_START`. +- Sessions: clicking a session inside a worktree group no longer briefly jumps the selection to the project's first session while the sidebar data catches up (thanks to @bashrusakh). +- Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx). + +## VS Code + +### New +- Chat: a new Follow-up behavior setting controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh). + +### Fixes +- Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx). diff --git a/changelog/1.13.9.md b/changelog/1.13.9.md new file mode 100644 index 00000000..01c0e11a --- /dev/null +++ b/changelog/1.13.9.md @@ -0,0 +1,33 @@ +--- +version: 1.13.9 +date: 2026-07-02 +--- + +## App + +### New +- Mobile: added the native iOS and Android app projects ahead of the mobile app release, with continued polish for saved connections, password unlock, QR-code connection scanning, push notifications, iOS widgets, app resume, and native layout details. +- Desktop: the app can now use a bundled OpenCode CLI, or you can choose your own CLI path in settings. +- Desktop: you can now specify optional custom headers when adding a remote OpenChamber instance to the desktop app, including for Cloudflare Access-style setups; settings and environment variables can still override them, and the bundled CLI can be replaced by setting a direct OpenCode CLI path. + +### Improvements +- Desktop: SSH remote instances with a saved UI password now open directly after the tunnel connects instead of showing the unlock screen again. +- VSCode: clearing optional agent fields now removes them from agent config instead of saving `null` values. + +### Fixes +- Desktop: added a Keep awake setting for the upcoming desktop app release to prevent the computer from sleeping while the app is running. +- Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling. +- Chat: embedded JSON examples in messages no longer render as generated-result cards. +- Sync: chat state now recovers after idle reconnects instead of leaving sessions stuck in a stale busy state. +- VSCode: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI. + +## VS Code + +### Improvements +- Agents: clearing optional agent fields now removes them from agent config instead of saving `null` values. + +### Fixes +- Startup: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI. +- Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling. +- Chat: embedded JSON examples in messages no longer render as generated-result cards. +- Sync: chat state now recovers after idle reconnects instead of leaving sessions stuck in a stale busy state. diff --git a/changelog/1.14.0.md b/changelog/1.14.0.md new file mode 100644 index 00000000..36cb95d8 --- /dev/null +++ b/changelog/1.14.0.md @@ -0,0 +1,39 @@ +--- +version: 1.14.0 +date: 2026-07-05 +--- + +## App + +### New +- Voice: local speech-to-text works out of the box — models (Parakeet for English and 25 European languages, Whisper for a lighter multilingual option) download on demand from a new picker in Settings → Voice, or any OpenAI-compatible Whisper endpoint can be used instead; a configurable shortcut (mod+alt+v by default) toggles dictation. +- Voice: read-aloud can now use a local Kokoro voice (11 English voices), and long replies start speaking after roughly a sentence instead of waiting for the whole message. +- Voice: the Voice settings page was simplified — a single read-aloud toggle owns the playback options, and a new "Enable voice input" toggle hides the composer mic entirely. +- Mobile: the composer collapses into a compact input bar while the keyboard is closed, with a round new-session button beside it (hidden on the new-session screen); tapping the bar expands it and opens the keyboard, and the mic starts voice input straight from the compact bar. +- Mobile: the model and agent selectors moved into a row above the message text, the attachment menu and the new-session project/branch pickers open as bottom sheets with search, and a drag handle above the composer swipes it into a fullscreen editor — swiping down shrinks it back or dismisses the keyboard. +- Mobile: the branch/worktree picker on the new-session screen lists all worktrees right after a cold start, and the GitHub connection status is recognized without re-running the connect flow. +- Mobile: in phone browsers the composer now keeps itself above the keyboard on the new-session screen and in the fullscreen editor, and opening the app shows the logo while it connects instead of flashing an unreachable-server error. + +### Improvements +- Mobile: long conversations now load older history with a button at the top of the chat, which disappears once everything is loaded; loading older messages keeps your scroll position steady on all platforms. +- Mobile: opening the web app in a phone browser against a password-protected instance shows the password unlock page again (regressed in 1.13.9). +- UI: lists across the app were moved to one virtualization engine, so long lists scroll more consistently. +- Desktop: the app prefers your own OpenCode install again — the bundled CLI is used only when no OpenCode is installed anywhere on the machine. +- Windows: OpenCode installed via npm now launches from paths with spaces (such as C:\Program Files\nodejs), binary paths pasted with surrounding quotes work, and discovery also checks the system-wide npm prefix and Scoop's shims — in the web/desktop app and the VS Code extension. + +### Fixes +- Voice: voice input was rebuilt around live streaming transcription — the composer mic shows a live transcript with a volume meter and timer while you speak, and a recording can be cancelled, inserted, or inserted and sent; failed transcriptions keep their audio so you can retry or accept the partial text. +- Mobile: returning to the app no longer briefly flickers the session list. +- Mobile: continued polish ahead of the native app release — the chat and composer ride the keyboard in one smooth motion (including in long conversations), bottom sheets enter cleanly while the keyboard dismisses, the text cursor stays in place when the keyboard opens, starter suggestions on the new-session screen step aside while the keyboard is up, and switching instances no longer leaves the previous instance's sessions in the sessions list. +- Mobile: the slash-command, file/agent, skill, and snippet autocompletes were tuned for touch — they can grow up to the top of the chat area, the keyboard-hint footer and description lines are gone, row icons line up, list scrolling no longer bounces the page behind, and picking a command keeps the keyboard open. +- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. +- Desktop: a local instance with a UI password and LAN access no longer gets stuck on "Auth required" and an unreachable-server screen (the app's client tokens are now reliably recognized as local, including for 0.0.0.0-bound servers). + +## VS Code + +### Improvements +- Chat: loading older messages keeps your scroll position steady. +- Startup: on Windows, OpenCode installed via npm now launches from paths with spaces (such as C:\Program Files\nodejs), a binary path pasted with surrounding quotes into the Opencode Binary setting works, and discovery also checks the system-wide npm prefix and Scoop's shims. + +### Fixes +- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. diff --git a/changelog/1.14.1.md b/changelog/1.14.1.md new file mode 100644 index 00000000..40d030b3 --- /dev/null +++ b/changelog/1.14.1.md @@ -0,0 +1,34 @@ +--- +version: 1.14.1 +date: 2026-07-07 +--- + +## App + +### New +- Chat: finished agent replies can now show a short recap and a suggested next message, with separate settings for each and a Small Model setting for choosing the utility model used for those helpers. +- Voice: read-aloud can now use the Small Model to summarize long text before speaking it. +- Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet. + +### Improvements +- Notes/Todos: adding selected chat text to notes now uses the Small Model to summarize it automatically. +- Git/GitHub: commit message and pull-request generation now use the Small Model from setting instead of sending message to chat. +- Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan). +- Mobile: the composer stays focused more reliably when the keyboard opens, and the dictation transcript grows the composer like typed text. +- Mobile: iOS PWA safe areas, keyboard overlays, and app-resume connection checks were tightened up. +- VSCode: favorite models now stay saved after restarting the extension (thanks to @Catan). +- VSCode: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan). + +### Fixes +- Git/Diff: opening a changed file now jumps to the first changed line instead of the start of the diff hunk. +- Desktop: password-protected instances opened from desktop or a browser no longer take the mobile-only unlock path. + +## VS Code + +### New +- Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet. + +### Improvements +- Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan). +- Chat: favorite models now stay saved after restarting the extension (thanks to @Catan). +- Settings: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan). diff --git a/changelog/1.15.0.md b/changelog/1.15.0.md new file mode 100644 index 00000000..f1337b03 --- /dev/null +++ b/changelog/1.15.0.md @@ -0,0 +1,51 @@ +--- +version: 1.15.0 +date: 2026-07-10 +--- + +## App + +### New +- **Remote access:** a new [private relay](https://docs.openchamber.dev/private-relay/) lets you reach your instance from anywhere — no open ports and no third-party tunnel, over an end-to-end-encrypted tunnel. It turns on by itself when you pair a device over it and turns off once no paired device uses it (thanks to @yulia-ivashko). +- **Mobile:** the native iOS and Android apps open for testing — join the [iOS public beta on TestFlight](https://testflight.apple.com/join/5ek6GU1E) or grab the Android APK from the [latest release](https://github.com/openchamber/openchamber/releases/latest). Connect by scanning a QR code from "Add a device" on your server; the app then moves between your local network and the private relay on its own — leaving home carries the open session onto the relay and coming back returns it to Wi-Fi, no re-pairing. Saved instances show a live Connected status with the active transport, iPad gets a split layout with a persistent sessions sidebar and a resizable Changes/Files sidebar, and the app checks for OpenChamber updates itself (Android shows a download toast). +- **Pairing:** a redesigned ["Add a device"](https://docs.openchamber.dev/connect-devices/) dialog asks where you'll use the device — Anywhere (relay with local network preferred at home), Home network only, or This computer only — then shows a large scannable QR code with a copyable link, and closes itself once the device connects. Links are single-use expiring codes redeemed on connect instead of embedding a long-lived token in the QR (thanks to @yulia-ivashko). +- Desktop: saved servers keep every transport their pairing link carried — the app connects directly on your network and falls back to the relay away from it, including when opening a server in a new window and when restoring the connection after a restart. +- Desktop: the servers list in Settings shows live per-server reachability, and importing a pairing link is the primary way to add a server. +- Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results open in a new navigable summary view with linked URLs and expandable nested data, alongside tree and raw JSON views. +- Projects: each project can now set its own default model (thanks to @makeittech). +- Diff/Chat: added a Last turn mode to the Diff view, and latest-turn changed-file chips in chat now open that snapshot while older turn chips stay read-only. +- Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting (Settings → Chat) controls long-line wrapping. + +### Improvements +- Devices: a paired phone or desktop names the connection after the server's hostname; the name typed when creating the link labels the device in the server's list. +- Desktop: the header dropdown (instance / usage / MCP) was restyled with cards — usage grouped per provider, hosts showing a colored status line with ping and the active host highlighted, and MCP servers in one card. Host statuses persist between openings instead of flashing "Unknown", and switching to an already-checked host is immediate. +- Desktop: Windows builds can launch at login and minimize to the system tray (thanks to @achcyano). +- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). +- Mobile: selecting local files from the composer now attaches the picked files even if the composer switches between compact and expanded layouts while the file picker is open. +- Browser: links clicked inside an embedded browser tab now keep the tab on the navigated page instead of remounting the frame. +- Context Panel: raw message rows now keep token and time columns aligned without showing shortened message IDs. +- Server: remote clients with non-ASCII project paths connect again (thanks to @FanFan4204). + +### Fixes +- Devices: the "Connect to this server" list now shows each paired device with a live status — Connected · Local network or Relay — and a platform badge (iOS, Android, macOS, Windows, Linux). Re-pairing or re-entering the password on the same device updates its existing entry instead of adding a duplicate. +- Chat/Tools: expanded file-edit and patch results now include per-file buttons to open the diff or jump to the first changed line in the file editor. +- Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments. +- Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations. +- Chat: if sending a message times out or loses the connection after OpenCode accepted it, the app now keeps the sent message instead of rolling it back as failed. +- UI: closing the right sidebar after resizing no longer leaves stale width constraints behind. + +## VS Code + +### New +- Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting controls long-line wrapping. +- Editor Integration: the "Add to Context" command and active-editor pin-selection now use workspace-relative filenames so the model reads the correct file when names collide (thanks to @Catan). + +### Improvements +- Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results now offer navigable summary, tree, and raw views. +- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). + +### Fixes +- Chat/Tools: expanded file-edit and patch results include per-file buttons to open the diff or jump to the first changed line in the editor. +- Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments. +- Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations. +- Chat: if sending a message times out or loses the connection after OpenCode accepted it, the extension now keeps the sent message instead of rolling it back as failed. diff --git a/changelog/1.16.0.md b/changelog/1.16.0.md new file mode 100644 index 00000000..b55b1d94 --- /dev/null +++ b/changelog/1.16.0.md @@ -0,0 +1,51 @@ +--- +version: 1.16.0 +date: 2026-07-13 +--- + +## App + +### New +- **Session goals:** arm the new target button in the composer and your next prompt becomes a [goal](https://docs.openchamber.dev/session-goals/) — the session keeps working toward it on its own, with an independent small-model audit checking each finished turn, until the objective is verifiably complete, blocked, or over its optional token budget. The loop runs on the server, so it continues with the app closed and survives restarts. A goal strip above the composer shows progress with pause/resume; goals can also start from the plan-implement dialog, from scheduled tasks ("Run as goal"), or with the new "Craft a Goal" starter and `/craft-goal` command. While a goal runs, per-turn "ready" notifications are replaced by a single notification when it settles. +- Chat: subagent sessions can now be prompted directly — open a subagent from the context panel and send it follow-up messages (off by default, available in settings). +- Settings: chat visual settings are grouped into labeled sections, and a new editor font size setting for the code editor (thanks to @bashrusakh). + +### Improvements +- **Usage:** OpenCode Go usage tracking is here, and Codex quota windows now show the correct reset times. +- Files: the file viewer has a markdown preview toggle (thanks to @greghaynes). +- Sidebar: projects can be sorted by different modes with a direction toggle, pinned sessions survive refreshes, and the file tree stays expanded while it refreshes (thanks to @bashrusakh). +- Command palette: projects are included in the fuzzy search alongside sessions and files (thanks to @bashrusakh). +- GitHub: PR and issue context now resolves against the source repository in fork workflows (thanks to @bashrusakh). +- Notifications: session errors and subagent completions now notify reliably across desktop, web, and mobile. +- Editor: "Open in" now recognizes VS Code Insiders. +- Mobile: the sessions sidebar opens instantly instead of taking many seconds on some devices (thanks to @tomzx). +- Security: requests that spoof local host headers to look like same-machine traffic are rejected. + +### Fixes +- **Remote access:** connecting over the relay got much faster — the app no longer waits for a stale local address to time out before trying the relay (previously up to ~20 seconds on a phone away from home). When your computer gets a new local IP, paired devices now learn the new address over the relay and quietly move back to the local network on their own — no re-pairing. The phone's launch screen shows which device it is connecting to. +- Remote access: running several OpenChamber instances on the same machine no longer makes paired devices land on a random one of them — only one process per machine serves the relay now. This was behind intermittent "Unable to reach server" errors on paired phones. +- Permissions: per-session auto-accept now lives on the server — sessions keep auto-accepting tool calls while the app is closed and after a server restart, subagent sessions inherit the setting, and it can be enabled on a draft before the first message (thanks to @bashrusakh for the draft fix). +- Chat: queued messages now send when the session is already idle instead of waiting forever in some cases, pending agent questions stay answerable after a server restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh). +- Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh). +- Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh). +- Mobile: renaming a saved instance no longer breaks its connection — the stored access token was getting lost on edit. +- Mobile: on Android 15 the app no longer draws under the status bar. + +## VS Code + +### New +- Settings: a new editor font size setting for the code editor (thanks to @bashrusakh). +- Usage: OpenCode Go usage tracking was added. + +### Improvements +- Chat: sessions with an active [goal](https://docs.openchamber.dev/session-goals/) (started from the web or desktop app) show the goal strip with its live status above the composer. +- Chat: code blocks highlight correctly again — the webview's security policy was blocking the syntax highlighter (thanks to @bashrusakh). +- Chat: queued messages now send when the session is already idle instead of waiting forever (thanks to @bashrusakh). +- Sessions: pinned sessions survive refreshes (thanks to @bashrusakh). +- Notifications: subagent completion notifications now follow the same settings as the main app. + +### Fixes +- Chat: pending agent questions stay answerable after a restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh). +- Chat: tool output rendering no longer breaks on tools that return non-text results (thanks to @bashrusakh). +- Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh). +- Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh). diff --git a/changelog/1.16.1.md b/changelog/1.16.1.md new file mode 100644 index 00000000..5f5724aa --- /dev/null +++ b/changelog/1.16.1.md @@ -0,0 +1,26 @@ +--- +version: 1.16.1 +date: 2026-07-14 +--- + +## App + +### Improvements +- Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output. +- Chat/Subagents: task cards now track the correct subagent when several run at once, preventing one subagent's activity or "Open subtask" action from pointing to another session. +- Chat/Subagents: "Open subtask" now works for nested subagents inside the side-panel chat, with a Parent action to return to the previous subagent (thanks to @ameshkov). +- Small Model: custom OpenAI-compatible providers now use the base URL and API key from OpenCode configuration (thanks to @ameshkov). + +### Fixes +- **Performance:** large session sidebars stay responsive while chats stream, including setups with many projects, worktrees, and sessions. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. +- Chat: an optional Prompt Navigator adds a marker rail beside desktop chats; hover to preview prompts, click to jump between them, or assign a shortcut in Keyboard Shortcuts settings (thanks to @makeittech). +- Sessions: temporary project lookup failures no longer remove worktree groups from the sidebar. + +## VS Code + +### Improvements +- Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output. +- Chat: task (subagents) now track the correct subagent when several run at once, preventing one subagent's activity or "Open subtask" action from pointing to another session. + +### Fixes +- **Performance:** large workspace session lists no longer regroup every session while chats stream. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. diff --git a/changelog/1.16.2.md b/changelog/1.16.2.md new file mode 100644 index 00000000..06ac8325 --- /dev/null +++ b/changelog/1.16.2.md @@ -0,0 +1,33 @@ +--- +version: 1.16.2 +date: 2026-07-18 +--- + +## App + +### New +- **Terminal:** rebuilt terminal sessions across the Web, Desktop, and Mobile apps with faster rendering, retained scrollback after reconnecting, shell and login-shell selection, restart and selected-output attachment actions, live theme changes, and more accurate Unicode and full-screen app rendering. Mobile now includes a full-screen terminal workspace with touch scrolling and selection, quick keys, and Ctrl/Alt input. +- Sessions: new drafts and sessions now stay with the project selected in the sidebar, including workspaces with nested or sibling projects (thanks to @bashrusakh). + +### Improvements +- **Settings:** pages now use a consistent responsive layout, navigation is grouped into OpenChamber, Workspace, OpenCode, and Library sections, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech). +- Session goals: audits now wait while direct subagents are still active, and goal details show the model used for the latest successful evaluation. +- Small Model: provider API keys referenced through environment variables or files now work for summaries, goal audits, and other Small Model features; Gemini 3 Flash models now use their supported thinking setting. +- VSCode: per-session permission auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open. +- Mobile/Android: update downloads now select an APK when a release also includes an Android App Bundle. + +### Fixes +- **Pinned messages:** pin important user or assistant messages to restore their text to the agent after conversation compaction. +- Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it. + +## VS Code + +### New +- Sessions: new drafts and sessions now stay with the workspace selected in the sidebar, including multi-root and nested workspace setups (thanks to @bashrusakh). + +### Improvements +- **Settings:** pages now use a consistent responsive layout, navigation is grouped by area, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech). +- Permissions: per-session auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open. + +### Fixes +- Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it. diff --git a/changelog/1.16.3.md b/changelog/1.16.3.md new file mode 100644 index 00000000..353311f2 --- /dev/null +++ b/changelog/1.16.3.md @@ -0,0 +1,42 @@ +--- +version: 1.16.3 +date: 2026-07-22 +--- + +## App + +### New +- **Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type. +- **Sessions/Worktrees**: idle root sessions can now be moved with their sub-sessions and uncommitted changes into a new worktree. Worktree creation also recovers when an earlier Git operation left the repository locked. +- Desktop: the app can now start directly with a saved remote instance, URL, or pairing link without requiring a local OpenCode installation or local server. +- Scheduled Tasks: tasks can now start with permission auto-accept enabled, and the permission and Run as goal controls use the same compact toggles as the chat composer. +- Desktop/macOS: added a setting to hide the menu bar item. + +### Improvements +- Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks). +- Sidebar: projects now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged. +- Desktop/Windows: SSH remote instances now connect through native Windows OpenSSH without relying on unsupported connection sharing. Password authentication and port forwarding work through hidden background processes, and connection failures now show the underlying SSH error instead of a generic message. +- Mobile/Terminal: opening the terminal in a mobile browser or PWA now focuses its input and opens the keyboard without an extra tap (thanks to @bashrusakh). + +### Fixes +- **Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between instances, projects, or worktrees. +- Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place. +- VSCode/Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech). +- VSCode: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it. +- Context Panel: delayed file-open requests no longer switch the panel back to a file after you select another tab. + +## VS Code + +### New +- **Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type. + +### Improvements +- Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks). +- Sessions: workspace groups now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged. + +### Fixes +- **Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between workspaces or extension views. +- Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place. +- Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech). +- Startup: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it. +- Agent Manager: worktree creation now recovers when an earlier Git operation left the repository locked, and removing a worktree while setup is still running no longer brings it back. diff --git a/changelog/1.17.0.md b/changelog/1.17.0.md new file mode 100644 index 00000000..b74512dc --- /dev/null +++ b/changelog/1.17.0.md @@ -0,0 +1,50 @@ +--- +version: 1.17.0 +date: 2026-07-28 +--- + +## App + +### New +- **Agents/CLI:** agents on managed local instances can now create, send to, fork, inspect, and wait for sessions; create isolated worktrees; and manage scheduled tasks through the OpenChamber tool. The CLI adds matching `session`, `schedule`, `projects`, and `models` commands, and a new Schedule a Task starter guides task setup from chat. +- Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow). +- Settings: added an option to hide starter suggestions on the new-session screen. +- Usage: added Crof and NeuralWatt quota tracking with subscription kWh, independent key-allowance windows, and credits-balance fallback across the web server and VS Code extension (thanks to @kydorn). + +### Improvements +- **Sidebar:** sessions are organized into Recent and project zones with worktree-grouped or flat views. Scheduled tasks, archived sessions, multi-run, and worktree management now open as full-page views from the sidebar. +- Chat composer: prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place, and the mobile composer grows with its content instead of using a separate fullscreen gesture. +- Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx). +- Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded. +- Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet. +- Mobile/iOS: push notifications now use Apple’s production service by default (thanks to @natheihei). +- Mobile/iOS: notifications now work for development builds installed from Xcode — the app detects its Apple push environment and the server delivers each device to the matching endpoint, so dev (sandbox) and TestFlight/App Store (production) installs both receive pushes. + +### Fixes +- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. +- **Desktop/Linux:** official AppImage releases for x64 and arm64, with in-app updates, frameless window controls, system tray minimize, launch at login, multi-window support, and “Open in” for discovered installed apps. Missing update manifests are treated as “no update” instead of a hard failure, and updater errors surface in About/sidebar (thanks to @BestSithInEU, @jibanez-staticduo, @makeittech). +- Desktop/Linux: fixed an intermittent freeze or crash while chats were streaming with the system tray enabled (thanks to @kydorn). +- Small Model: GitHub Copilot models now use their supported API, fixing summaries, goal audits, commit messages, and other Small Model actions for models that do not support Chat Completions (thanks to @jakoss). +- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). +- Mobile/Android: terminal taps now open the keyboard, text and backspace input work with Android keyboards, and closing a focused terminal no longer leaves the app unresponsive. +- Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active. + +## VS Code + +### New +- Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow). +- Settings: added an option to hide starter suggestions on the new-session screen. + +### Improvements +- **Chat composer:** prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place. +- Sessions: the sidebar now uses clearer project zones and single-line session rows, with folders shown after ungrouped sessions and archived sessions kept in their existing workspace sections. +- Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx). +- Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded. +- Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet. + +### Fixes +- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. +- Sessions: fixed missing activity-based sorting; chats now move in the list when they start or finish instead of repeatedly reordering while a response streams. +- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). +- Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active. +- Usage: added Crof and NeuralWatt quota tracking, including the missing Crof switch arm that previously fell back to "Unsupported provider" (thanks to @kydorn). diff --git a/changelog/1.17.1.md b/changelog/1.17.1.md new file mode 100644 index 00000000..0e078460 --- /dev/null +++ b/changelog/1.17.1.md @@ -0,0 +1,40 @@ +--- +version: 1.17.1 +date: 2026-07-29 +--- + +## App + +### New +- System prompt optimization: added an optional Behavior setting that reduces OpenCode's built-in system prompt by about 40% for the build and plan agents; it applies after restarting OpenCode and is unsuitable for custom build or plan definitions. + +### Improvements +- Chat: slash-command starters now include text already entered in the draft as command arguments. +- Session goals: goals started from slash commands, including scheduled tasks, now use the command's expanded instructions. +- Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny). +- Desktop/Linux: AppImage tray menus now include Show, Hide, and Close, and "Open in" shows system application icons (thanks to @makeittech). +- Mobile: image previews load when connected through the private relay. + +### Fixes +- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. +- OpenCode: chats now recover when OpenCode stops responding during a response, and managed OpenCode no longer restarts repeatedly during a temporary connectivity failure. +- Desktop: bundled OpenCode no longer offers a separate update; it updates with OpenChamber (thanks to @yulia-ivashko). +- Chat: fully loaded histories no longer show "Load older" again after a refresh. +- Chat: messages removed by reverting no longer reappear after you send another message. +- Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro). + +## VS Code + +### New +- **OpenCode updates:** the extension can now update a managed OpenCode installation and restart it automatically; externally managed servers are left unchanged (thanks to @yulia-ivashko). + +### Improvements +- Chat: slash-command starters now include text already entered in the draft as command arguments. +- Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny). + +### Fixes +- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. +- Chat: a stalled response now reconnects instead of remaining stuck in the extension. +- Chat: fully loaded histories no longer show "Load older" again after a refresh. +- Chat: messages removed by reverting no longer reappear after you send another message. +- Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro). diff --git a/changelog/1.17.2.md b/changelog/1.17.2.md new file mode 100644 index 00000000..1d426c7d --- /dev/null +++ b/changelog/1.17.2.md @@ -0,0 +1,42 @@ +--- +version: 1.17.2 +date: 2026-08-01 +--- + +## App + +### New +- **Desktop/Windows:** added Windows ARM64 support (thanks to @airtaxi). +- UI: a new OpenChamber theme (dark and light) is now the default, replacing the previous default theme. +- Sessions: a root session can now be moved with all its sub-sessions into a new worktree directly from the header menu. +- Desktop/Linux: added a Window Controls Style setting to switch between classic rectangular buttons and macOS-style traffic lights (thanks to @kydorn). +- Files: added a global Auto-save setting under Settings → General; binary, PDF, and Office files are excluded from auto-save (thanks to @makeittech). + +### Improvements +- Desktop: the active session header now has a menu with rename, share, export, archive, delete, and copy-ID actions; share links copy to the clipboard automatically when created. +- Git/Diff: symlinks now appear as link entries in the diff view instead of showing their file content. +- Sidebar: sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr). +- VSCode: per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on. +- Usage: all Z.ai usage windows now appear in the usage view. +- Chat: tool descriptions now show the glob pattern when a tool's input uses one. +- Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12). + +### Fixes +- **Mobile:** rebuilt the app navigation around two swipe drawers — a sessions drawer (left) with a cross-project tree, swipe actions to rename, archive, or delete sessions, and a workspace drawer (right) with Changes, Files, Terminal, Notes, and MCP tabs. Tapping the session title in the header switches recents from a compact overlay with live status indicators. Cold launches reopen the last active session and land on an explicit connect screen on failure instead of flashing an empty draft. +- Performance: opening the first session after startup is faster — background startup requests no longer queue ahead of the initial message load (thanks to @yulia-ivashko). +- Terminal: switching terminal tabs no longer rebuilds the connection from scratch on each open or switch (thanks to @makeittech). +- Desktop: sticky session headers in the sidebar no longer blink or shift position during page transitions (thanks to @ChangeHow). +- Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12). + +## VS Code + +### Improvements +- Per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on. +- Sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr). +- Usage: all Z.ai usage windows now appear in the usage view. +- Chat: tool descriptions now show the glob pattern when a tool's input uses one. +- Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12). + +### Fixes +- Chat: messages arriving at the start of the SSE stream no longer drop silently after initial connection. +- Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12). diff --git a/changelog/1.18.0.md b/changelog/1.18.0.md new file mode 100644 index 00000000..23998b8f --- /dev/null +++ b/changelog/1.18.0.md @@ -0,0 +1,60 @@ +--- +version: 1.18.0 +date: 2026-08-04 +--- + +## App + +### New +- **Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech). +- UI/Localization: added German interface translations and German documentation (thanks to @SGD-DEV). +- Mobile/Android: pairing QR codes can now be scanned on devices without Google Play Services; the camera closes as soon as a code is recognized, followed by a connection-in-progress screen. +- Mobile/Android: left and right drawer swipes can now start farther from the screen edge, outside Android's system Back gesture area. +- Usage: added DeepSeek quota tracking (thanks to @airtaxi). + +### Improvements +- **Mobile/Tablet:** reworked the tablet and foldable layout around the phone's navigation — a persistent resizable sessions sidebar on the left, the workspace (Changes, Files, Terminal, Notes, MCP) as a resizable right sidebar, and app pages like settings and instances shown as centered dialogs. An open diff, edited file, or attached terminal now survives rotation. +- Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271). +- Settings/Skills: repository-local `.agents/skills` now appear for the active project (thanks to @makeittech). +- Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech). +- Sessions: sessions in a newly created worktree now appear without restarting or refreshing the app. +- Sessions: archiving and unarchiving now stays scoped to the current instance and workspace (thanks to @alexandrereyes). +- Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech). +- VSCode: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui). + +### Fixes +- **Walkthrough:** a new guided walkthrough reorders a diff into a sequence of stops — the model groups related changes, explains what each one does, and orders them so each builds on the last. Start one from the Changes and pull-request views for uncommitted work, a branch against its base, or a pull request; nothing runs on its own. Walkthroughs are written in your interface language by default, and the panel can generate one in any other supported language. +- Performance: fixed Bun dependency chunking so the web app no longer downloads a single 18.5 MB vendor bundle at startup; heavy syntax highlighting, screenshot, diagram, editor, and image-conversion libraries now load only when needed (thanks to @makeittech). +- Performance: expanding projects with many worktrees no longer repeatedly reloads their session data. +- Sessions: launching OpenChamber from a directory other than your project (for example your home folder) no longer produces repeated "not a git repository" errors that could stop sessions and projects from loading (thanks to @makeittech). +- Sidebar: a worktree shared by more than one project no longer appears twice (thanks to @makeittech). +- Sidebar: session titles no longer clip at the ends of their rows. +- Git/Diff: opening a changed file now jumps its header directly to the top, and live updates refresh only files that actually changed while preserving the current review position. Saves from the built-in file editor update the diff too. +- Terminal: opening a terminal no longer waits for the terminal view to finish loading, and startup output is retained if it arrives before the view appears (thanks to @makeittech). +- Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update. +- Chat: prompts sent through the private relay no longer produce duplicate replies when the connection drops after OpenCode accepted the message, and a queued message already being sent is no longer included in another send. +- Agents/CLI: creating a session in a new worktree no longer reports a timeout while the worktree continues to be created in the background. +- Desktop/Linux: terminals and OpenCode now start with the correct shell arguments in AppImage installs, fixing broken zsh startup (thanks to @makeittech). +- Files: browser clients now label file exports as downloads and no longer show the desktop-only reveal action (thanks to @makeittech). +- Chat: assistant messages no longer render active HTML. + +## VS Code + +### New +- **Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech). +- UI/Localization: added German interface translations (thanks to @SGD-DEV). +- Usage: added DeepSeek quota tracking (thanks to @airtaxi). + +### Improvements +- Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271). +- Settings/Skills: repository-local `.agents/skills` now appear for the active workspace (thanks to @makeittech). +- Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech). +- Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech). +- Chat: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui). +- Sessions: archiving and unarchiving now stays scoped to the current workspace. + +### Fixes +- Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update. +- Chat: assistant messages no longer render active HTML. +- Sidebar: a worktree shared by more than one project no longer appears twice. +- Sidebar: session titles no longer clip at the ends of their rows. diff --git a/changelog/1.18.1.md b/changelog/1.18.1.md new file mode 100644 index 00000000..639f0392 --- /dev/null +++ b/changelog/1.18.1.md @@ -0,0 +1,34 @@ +--- +version: 1.18.1 +date: 2026-08-04 +--- + +## App + +### New +- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected; the toggle-sidebar shortcut moved to Ctrl/Cmd+Alt+L. + +### Improvements +- **Providers:** signing in to an OAuth-only provider now actually completes — the browser login is stored and the provider list updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in. +- Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button. +- Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model. + +### Fixes +- **Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar — instead of only offering permanent deletion (thanks to @makeittech). +- Walkthrough: models without a working provider login no longer appear in the walkthrough picker, and Generate stays disabled until a usable model is selected instead of failing with a raw provider error. +- Walkthrough: connecting to a server older than the app now says the server needs updating instead of showing a raw HTML parsing error, and the "Critical" tag is now "Key change" with a tooltip so it no longer reads as a problem found in your code. +- Agents/CLI: sending a prompt that never reaches its session is now reported as failed, and an unavailable model, agent, or variant is rejected with a clear error before anything is created. +- Desktop/Linux: "Open in Terminal" no longer launches a non-terminal app that is set as the terminal launcher (thanks to @kydorn). + +## VS Code + +### New +- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected. + +### Improvements +- **Providers:** signing in to an OAuth-only provider (such as Cursor) now completes in the browser — the login is stored and the provider updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in. +- Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button. +- Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model. + +### Fixes +- **Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar (thanks to @makeittech). diff --git a/changelog/1.18.2.md b/changelog/1.18.2.md new file mode 100644 index 00000000..c6067189 --- /dev/null +++ b/changelog/1.18.2.md @@ -0,0 +1,61 @@ +--- +version: 1.18.2 +date: 2026-08-10 +--- + +## App + +### New +- **Observability panel:** a new panel near to the chat brings the active goal, tasks, subagents, pinned context, MCP servers, and context usage into one live view. The session list also shows how long an agent has been working. +- **Scheduled Tasks:** projects can now define recurring tasks as Markdown files in `.agents/loops`; opening the task list discovers file changes without a restart, and loop tasks can be edited, enabled, disabled, deleted, or run from the app (thanks to @makeittech). +- Performance: the initial web download is about 58% smaller and startup memory use is about 22% lower; heavy Settings and syntax-highlighting code now loads only when opened (thanks to @makeittech). +- Git/Worktrees: prompts now wait for a new worktree to finish checkout before sending, and sessions resolve to the worktree that owns them instead of occasionally opening or sending against the parent repository (thanks to @ftzi). +- Projects: new project directories can now be created outside the current workspace, and adding, creating, or cloning a project opens a new-session draft targeted at that project instead of leaving the previous session context active. +- Usage: added xAI quota reporting (thanks to @iamhenry). + +### Improvements +- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different instance (thanks to @Wsyjq). +- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). +- Chat: the composer caret is now easier to see. +- Terminal: default tab names remain unique after tabs are closed, Escape reaches terminal applications instead of closing the context panel, and background connections send fewer keepalives (thanks to @makeittech). +- Desktop/macOS: choosing a folder after denying filesystem access now recovers correctly instead of leaving the app unable to open the directory (thanks to @deatheros). +- Desktop/Windows: minimizing from the taskbar now remains a native minimize while the app's own minimize action can still hide to the tray (thanks to @pascalandr). +- Desktop: overlay scrollbars auto-hide again after scrolling instead of remaining permanently visible. +- Mobile/Android: pairing QR codes now work in older WebViews that misread `openchamber://` links (thanks to @CMBill). +- Mobile: pending agent questions now reappear after a cold start instead of leaving the session waiting without an answer prompt. +- Files: removing an attached Office or OpenDocument file also removes the images extracted from that document, and Linux reveal failures now surface as an error instead of escaping in the background (thanks to @chiamsun, @pascalandr). +- VSCode: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB). +- Walkthrough: branch comparisons now use the repository's actual remote default branch instead of assuming its name (thanks to @RyderAsKing). +- Server: foreground installs managed by a user systemd service now update through a separate transient service instead of being interrupted by the server restart (thanks to @SYU8384). +- Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame). +- UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling; the macOS vibrancy option was removed to reduce rendering overhead. + +### Fixes +- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). +- Remote access: paired devices that use the private relay no longer lose relay access when no browser client is currently connected or device-state loading temporarily fails. +- Git/Worktrees: setup now runs the repository's `post-checkout` hook after creating a worktree, and deeply nested worktrees no longer fail with “Filename too long” on Windows (thanks to @ftzi, @makeittech). +- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). +- Chat: fresh messages no longer replay their entry animation after they have already been shown, and iOS users can insert a newline with Shift+Enter again (thanks to @makeittech). +- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. +- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). + +## VS Code + +### New +- Usage: added xAI quota reporting (thanks to @iamhenry). + +### Improvements +- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different runtime (thanks to @Wsyjq). +- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). +- Chat: the composer caret is now easier to see. +- Attachments: removing an attached Office or OpenDocument file also removes the images extracted from that document (thanks to @chiamsun). +- Notebooks: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB). +- Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame). +- UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling. + +### Fixes +- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). +- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). +- Chat: fresh messages no longer replay their entry animation after they have already been shown (thanks to @makeittech). +- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. +- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). diff --git a/changelog/1.18.3.md b/changelog/1.18.3.md new file mode 100644 index 00000000..66c64c5b --- /dev/null +++ b/changelog/1.18.3.md @@ -0,0 +1,47 @@ +--- +version: 1.18.3 +date: 2026-08-14 +--- + +## App + +### New +- **Agent browser control:** agents can now open a page and work with it — read what is on screen, click, type, scroll, look at how an element renders, switch between mobile, tablet and desktop layouts, and save a screenshot into the project — so they can check their own work instead of describing what they expect. It is a separate OpenChamber Web tool, turned on or off in the new Settings → General → OpenChamber Tools section. +- Sessions: switching projects now selects a session owned by the new project, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech). +- Browser: dev servers are listed from what is actually listening, so one is offered no matter how it was started, and a server that is still starting is waited for instead of showing an error to retry by hand. The panel holds several pages at once, shows each page's own icon, suggests addresses already visited in this project, and adds a hard reload, page zoom, device sizes, a light/dark switch for the page, and clearing cookies or cached data for the panel alone. + +### Improvements +- **Browser panel:** the preview and browser panels are now one panel, backed by a real browser view on the desktop app. Pages that previously refused to load because they were being rewritten now open normally, logins persist, and developer tools are available. Point at an element or drag a region, write a comment, and it goes to chat with a screenshot of what you marked. +- **Chat images:** completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images and a horizontally scrollable mobile layout (thanks to @ChangeHow). +- Browser: when OpenChamber runs on another machine, the desktop app opens its dev servers through a local port, so pages load with working hot reload and developer tools; links and redirects to another local port stay on that machine. In a web browser tab, only dev servers on your own machine can be opened. +- Remote access: pairing QR codes created while the app is open through a public domain (for example behind a reverse proxy) now include that domain as a connection address, so paired phones can reach the server over it instead of relying only on the local network address or the relay. +- Mobile: long-pressing the logo on the connect screen (or the instances list) opens a connection log with a copy button, for reporting connection problems. +- Usage: quota limits enabled for display now refresh every three minutes on desktop, mobile, and VS Code, with a manual refresh action available at any time. +- Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID. +- Desktop/Windows/Linux: minimizing the window now always keeps it in the taskbar; the tray background setting, renamed "Close to the system tray", applies when you close the window. +- Desktop/Linux: frameless main and Mini Chat windows now use native rounded corners (thanks to @kydorn). + +### Fixes +- Remote access: messages sent through the private relay no longer fail with a 400 error when request-body frames are lost during a connection drop; incomplete requests are retried instead (thanks to @claymor333). +- Mobile: a brief network hiccup when opening or returning to the app no longer bounces a working connection to the connect screen — the app retries in the background and reconnects on its own, while an unreachable server shows the connect screen within a few seconds. +- Scheduled Tasks: when two OpenChamber servers use the same project configuration, a scheduled occurrence now runs only once instead of both servers starting duplicate sessions (thanks to @makeittech). +- Performance: closed context panels no longer keep embedded chats running, and an open panel mounts only its active chat instead of every saved chat tab (thanks to @karimodm). +- Chat: opening subagent and code-review sessions in the context panel no longer steals focus from the main composer; subagent prompting is available immediately when enabled, and code-review sessions are no longer mistaken for read-only subagent sessions. +- Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing). +- Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow). +- Work status: new-session drafts now show project, MCP, and usage details before a session exists, long subagent lists stay within the panel, and hiding every section leaves controls available to restore them (thanks to @alohaninja). + +## VS Code + +### New +- Sessions: switching projects now selects a session owned by the new workspace, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech). +- Chat: the Focus Chat command and Add to Context action now place the cursor in the chat input so typing can continue immediately. + +### Improvements +- Chat images: completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images across multi-root workspaces (thanks to @ChangeHow). +- Usage: quota limits enabled for display now refresh every three minutes, with a manual refresh action available at any time. +- Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID. + +### Fixes +- Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing). +- Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow). diff --git a/changelog/1.18.4.md b/changelog/1.18.4.md new file mode 100644 index 00000000..9cb7903a --- /dev/null +++ b/changelog/1.18.4.md @@ -0,0 +1,19 @@ +--- +version: 1.18.4 +date: 2026-08-14 +--- + +## App + +### New +- **Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order. + +### Fixes +- **Stability:** a single internal error no longer shuts down the local server, which made the instance unreachable until it was restarted; the error is logged and the server keeps running. +- Mobile: connecting to a server that has authentication disabled now survives closing and reopening the app — auto-reconnect and the return-to-app check no longer treat the missing password token as a lost connection and kick back to the connect screen. +- Browser: restoring or opening a dev server preview while connected to an instance over a relay or other non-standard address no longer crashes the app; the preview reports the tunnel as unavailable instead. + +## VS Code + +### New +- **Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order. diff --git a/changelog/1.19.0.md b/changelog/1.19.0.md new file mode 100644 index 00000000..3b25988c --- /dev/null +++ b/changelog/1.19.0.md @@ -0,0 +1,61 @@ +--- +version: 1.19.0 +date: 2026-08-19 +--- + +## App + +### New +- **Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders. +- Usage/Claude: Claude plan limits now work when you are signed in through Claude Code, without also signing into Anthropic in OpenCode; the account is read from Claude Code's own login on macOS, Linux, and WSL. The page shows your session and weekly limits again, adds per-model weekly limits and extra usage spending, and names your plan. Limits are kept on screen instead of disappearing when Anthropic temporarily blocks refreshes. + +### Improvements +- **Project knowledge:** the Project notes panel is now Project knowledge, with notes, todos, plans and their search in a resizable sidebar. Notes are cards you expand by clicking anywhere on them, plans open and edit in the panel itself instead of a separate tab, and notes and plans can be pinned as context. +- **Files:** drag files onto the Files sidebar to upload them into the project or a specific folder; existing files require confirmation before replacement, and open previews refresh after an upload (thanks to @makeittech, @alanzchen). +- Usage/Command Code: Command Code plan limits now appear in the Usage page and work status panel. +- Git: the pull request panel now follows the branch's current open PR, and an open PR always wins over an older merged or closed one. After a PR is merged or closed the panel keeps showing it as the branch's last PR and offers creating the next one right below it (thanks to @makeittech). +- Git/Worktrees: creating a worktree from a pull request now falls back to GitHub's pull-request reference when the source fork was deleted or cannot be reached, instead of failing before creating the worktree (thanks to @makeittech). +- Chat: opening a busy subagent in the context panel now shows its history instead of only the working-status line (thanks to @makeittech). +- Chat: saved chats in the context panel open again instead of staying blank. +- Chat/Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context. +- Files: files reached through a symlink inside the workspace now open correctly instead of being rejected as outside the workspace. +- Settings: the session retention action you pick is now saved instead of being dropped (thanks to @Gautam0507). +- Mobile: connecting through an ngrok address now bypasses ngrok's browser warning page instead of failing the server check. +- Mobile/iOS: text selection in the chat composer now uses native CodeMirror selection handles. +- Desktop: browser pages served from a self-signed loopback HTTPS address now load instead of being blocked by the certificate warning. +- Skills Catalog: the source is now named ClawHub instead of "ClawdHub" (thanks to @makeittech). + +### Fixes +- Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech). +- Chat: an open conversation no longer keeps re-coloring the same code blocks in the background, so browsing files with a chat open stops pinning a CPU core and spinning up the fans (thanks to @makeittech). +- Stability/Proxy: the local server now reuses its connection to OpenCode instead of opening a new one for every API request. Under sustained traffic the old behavior could use up every outgoing network port on the machine, at which point nothing on the computer could open a new connection until the traffic stopped and the ports were released (thanks to @alohaninja). +- Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting. +- Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech). +- Chat: the context meter no longer climbs over 100% (330% readouts) after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds, everywhere the value appears — header, context sidebar, work status panel, mini chat, and mobile (thanks to @pocharlies). +- Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude` in the sidebar, window title, settings and notifications; names you renamed yourself are kept. +- Browser: typing a comment on a page no longer triggers app shortcuts. +- Chat: dismissing an agent's clarifying questions no longer leaves the session stuck on the question screen — the next task shows its thinking and final response again. +- VSCode: Add Project now adds the chosen folder to the workspace instead of showing a "Failed to add project" toast. +- UI: the model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh). +- Settings: an explicitly set `OPENCODE_BINARY` environment variable is no longer discarded when settings contain an empty opencodeBinary value; the environment variable keeps pointing the managed OpenCode server at the binary you chose. + +## VS Code + +### New +- **Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders. + +### Improvements +- Usage: Command Code plan limits now appear in the Usage page and work status panel. +- Usage: the context usage readout in the chat header now also shows the session's cost in its tooltip (thanks to @YunFeng0817). +- Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context. +- Skills Catalog: the source is now named ClawHub instead of "ClawdHub" (thanks to @makeittech). + +### Fixes +- **Chat:** an open conversation no longer keeps re-coloring the same code blocks in the background, preventing high CPU use while the chat is idle (thanks to @makeittech). +- Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech). +- Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting. +- Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech). +- The context usage readout no longer climbs over 100% after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds (thanks to @pocharlies). +- Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude`; names you renamed yourself are kept. +- Add Project now adds the chosen folder to the workspace instead of showing a "Failed to add project" toast. +- The model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh). diff --git a/changelog/1.2.0.md b/changelog/1.2.0.md new file mode 100644 index 00000000..c63fafd4 --- /dev/null +++ b/changelog/1.2.0.md @@ -0,0 +1,20 @@ +--- +version: 1.2.0 +date: 2025-12-15 +--- + +## App + +### Improvements +- Favorite & recent models for quick access in model selection. +- Tool call expansion settings: collapsed, activity, or detailed modes (thanks to @theblazehen). +- Font size & spacing controls (50-200% scaling) in Appearance Settings (thanks to @theblazehen). +- Settings page access within VSCode extension (thanks to @theblazehen). + +## VS Code + +### Improvements +- Favorite & recent models for quick access in model selection. +- Tool call expansion settings: collapsed, activity, or detailed modes. +- Font size & spacing controls (50-200% scaling) in Appearance Settings. +- Settings page access within extension. diff --git a/changelog/1.2.1.md b/changelog/1.2.1.md new file mode 100644 index 00000000..907a1a40 --- /dev/null +++ b/changelog/1.2.1.md @@ -0,0 +1,16 @@ +--- +version: 1.2.1 +date: 2025-12-16 +--- + +## App + +### Improvements +- Todo task tracking: collapsible status row showing AI's current task and progress. +- Switched "Detailed" tool output mode to only open the 'task', 'edit', 'multiedit', 'write', 'bash' tools. + +## VS Code + +### Improvements +- Todo task tracking: collapsible status row showing AI's current task and progress. +- Switched "Detailed" tool output mode to only open critical tools (task, edit, write, etc.). diff --git a/changelog/1.2.2.md b/changelog/1.2.2.md new file mode 100644 index 00000000..0b9e7b06 --- /dev/null +++ b/changelog/1.2.2.md @@ -0,0 +1,18 @@ +--- +version: 1.2.2 +date: 2025-12-17 +--- + +## App + +### Improvements +- Agent Task tool now renders progressively with live duration and completed sub-tools summary. +- Unified markdown rendering between assistant messages and tool outputs. +- Reduced markdown header sizes. + +## VS Code + +### Improvements +- Agent Task tool now renders progressively with live duration and completed sub-tools summary. +- Unified markdown rendering between assistant messages and tool outputs. +- Reduced markdown header sizes. diff --git a/changelog/1.2.3.md b/changelog/1.2.3.md new file mode 100644 index 00000000..63db0321 --- /dev/null +++ b/changelog/1.2.3.md @@ -0,0 +1,14 @@ +--- +version: 1.2.3 +date: 2025-12-17 +--- + +## App + +### New +- Added image preview support in Diff tab (shows original/modified images instead of base64 code). + +### Improvements +- Improved diff view visuals and aligned styling across widgets. +- Optimized Git polling and background diff/syntax pre-warming for faster Diff tab opening. +- Optimized reloading unaffected diffs. diff --git a/changelog/1.2.4.md b/changelog/1.2.4.md new file mode 100644 index 00000000..7e9813df --- /dev/null +++ b/changelog/1.2.4.md @@ -0,0 +1,12 @@ +--- +version: 1.2.4 +date: 2025-12-18 +--- + +## App + +### New +- Added macOS app menu entries for Check for Update and bug/request reports in Help. + +### Fixes +- Mobile: added settings, improved terminal scrolling, and fixed app layout positioning. diff --git a/changelog/1.2.5.md b/changelog/1.2.5.md new file mode 100644 index 00000000..8006533c --- /dev/null +++ b/changelog/1.2.5.md @@ -0,0 +1,22 @@ +--- +version: 1.2.5 +date: 2025-12-19 +--- + +## App + +### Improvements +- Polished the chat experience for longer sessions. +- Improved inactive-state handling in the Desktop app. +- Redesigned Git tab layout with improved organization. +- Smoother session rename experience. + +### Fixes +- Fixed file links from Git view to Diff. +- Fixed untracked files in new directories not showing individually. + +## VS Code + +### Improvements +- Polished chat experience for longer sessions. +- Smoother session rename experience. diff --git a/changelog/1.2.6.md b/changelog/1.2.6.md new file mode 100644 index 00000000..ea750364 --- /dev/null +++ b/changelog/1.2.6.md @@ -0,0 +1,21 @@ +--- +version: 1.2.6 +date: 2025-12-19 +--- + +## App + +### New +- Added write/create tool preview in permission cards with syntax highlighting. + +### Improvements +- More descriptive assistant status messages with tool-specific and varied idle phrases. +- Polished Git view layout. + +## VS Code + +### New +- Added write/create tool preview in permission cards with syntax highlighting. + +### Improvements +- More descriptive assistant status messages with tool-specific and varied idle phrases. diff --git a/changelog/1.2.7.md b/changelog/1.2.7.md new file mode 100644 index 00000000..f209ed44 --- /dev/null +++ b/changelog/1.2.7.md @@ -0,0 +1,14 @@ +--- +version: 1.2.7 +date: 2025-12-19 +--- + +## App + +### New +- Introduced keyboard shortcuts help menu and quick actions menu. + +### Improvements +- Comprehensive macOS native menu bar entries. +- Redesigned directory selection view for web/mobile with improved layout. +- Improved theme consistency across dropdown menus, selects, and command palette. diff --git a/changelog/1.2.8.md b/changelog/1.2.8.md new file mode 100644 index 00000000..ea03c573 --- /dev/null +++ b/changelog/1.2.8.md @@ -0,0 +1,13 @@ +--- +version: 1.2.8 +date: 2025-12-19 +--- + +## App + +### New +- Added a web update flow that does not require CLI interaction. +- Added a web install script with package manager detection. + +### Improvements +- Web server update/restart now reuses previously set parameters like port or password. diff --git a/changelog/1.2.9.md b/changelog/1.2.9.md new file mode 100644 index 00000000..9ab04d31 --- /dev/null +++ b/changelog/1.2.9.md @@ -0,0 +1,17 @@ +--- +version: 1.2.9 +date: 2025-12-20 +--- + +## App + +### New +- Added session auto-cleanup with configurable retention across app versions, including the VSCode extension. +- Added web package updates from the mobile/PWA settings view. +- Added several optimizations for long sessions. + +## VS Code + +### Improvements +- Session auto‑cleanup feature with configurable retention. +- Optimization for long sessions. diff --git a/changelog/1.20.0.md b/changelog/1.20.0.md new file mode 100644 index 00000000..2ec8b662 --- /dev/null +++ b/changelog/1.20.0.md @@ -0,0 +1,71 @@ +--- +version: 1.20.0 +date: 2026-08-23 +--- + +## App + +### New +- Desktop/Remote instances: a managed remote server can now also be published to the remote machine's own network, so other devices there reach it without the SSH tunnel. It requires a UI password, and stays private to the tunnel otherwise. +- Diff: the context-panel diff can now show every change on the current branch against its base branch. OpenChamber detects the base when Git knows it, or lets you choose one once when it does not. +- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. Both sit in one Defaults for new chats group, laid out like the Sessions defaults. +- Chat: in the expanded composer, Enter now starts a new line and Cmd/Ctrl+Enter sends, so a long prompt is harder to send by accident. +- Providers: expanded support for custom providers. +- Small Model: summaries, goal audits, commit messages, and walkthroughs now support more providers. + +### Improvements +- **Session: /btw side questions.** Type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation, so it inherits the full context but leaves the chat itself untouched. The answer streams into a panel above the composer, which talks to that session while the panel is open; you can collapse it to a slim header bar, keep it as a full session, or discard it. The temporary session stays out of the sidebar and session lists until you keep it (thanks to @jaygupta17). +- **Chat sessions:** start chats without choosing a project. They live in their own Chats section, rather than inheriting a project's repository and worktree context. +- Skills catalog: browse curated GitHub skill collections in a card-based catalog with cross-source search, skill counts, stars, recent updates, and links back to each skill's repository. +- Settings: the project selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show. It used to switch the whole app, so opening another project's configuration moved your chat, session list and file tree with it. +- Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed. +- Chat: file paths in messages now open from the session's project, even if you last browsed files in another project (thanks to @tomzx). +- Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings. +- Files/Desktop: files opened from outside the workspace remain readable after their temporary access expires instead of failing until you reopen them (thanks to @pascalandr). +- Diff: creating an inline comment now opens the chat and focuses the composer for your follow-up. +- Git: generated commit messages now match the repository's recent commit style and language. +- Git: generating a pull request description now picks up the repository's own PR template when it has one, so the draft comes back in your project's sections and checklists instead of the built-in Summary/Why/Testing layout. +- Sidebar: switch between the full project list and a focused view of one project. Sessions created outside OpenChamber now also appear in the sidebar and Recent list without a page refresh (thanks to @tomzx). +- Chat: while a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes. +- Chat: long user messages can be expanded even when their final layout finishes after they first appear. +- Chat: in a chat without a project, the work status card again steps aside when the context panel is open, instead of sitting next to it. +- Usage: Z.ai credit limits now appear alongside its other quota windows. +- Git: pull-request checks in Work status stay current as their status changes. +- UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer). +- Desktop/Windows: the close button now aligns correctly with the rest of the window chrome. + +### Fixes +- **Desktop/Remote instances:** adding an SSH connection now starts from the hosts in your SSH config instead of a blank command field. Ports, install method and passwords moved behind Advanced settings, and each connection shows Connected, Connecting, or Needs attention with the failure text and a button that resolves it. +- Desktop/Remote instances: connecting to a remote machine now works when bun, OpenChamber or the opencode CLI live in your home directory rather than on the system path. Installing no longer fails with a permission error, and a missing opencode CLI is now reported before the connection starts instead of as a stack trace. +- Desktop/Remote instances: disconnecting from a connection set to not keep the server running now actually stops that remote server. +- Dictation: speech is now transcribed after you stop recording. The composer shows a live waveform and timer, and long recordings split at pauses instead of cutting words. +- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. +- Settings/Providers: the provider you select no longer jumps to a different one on its own. Changing the chat's model or agent, and background provider refreshes, used to move the settings selection with them. +- Chat: if OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). +- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. +- Session assist: recaps and suggested follow-ups now work when the Anthropic provider is configured to use a custom endpoint; they previously failed every time instead of using that configured connection. + +## VS Code + +### New +- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. +- Providers: expanded support for custom providers. + +### Improvements +- **/btw side questions:** type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation. The answer streams into a panel above the composer; collapse it, keep it as a full session, or discard it without touching the chat (thanks to @jaygupta17). +- **Skills catalog:** browse curated GitHub skill collections in a card-based catalog with cross-source search and direct links to each skill's repository. +- Settings: the workspace selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show instead of moving the chat, session list and file tree to another workspace. +- Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed. +- Sessions created outside OpenChamber now appear in the sidebar and Recent list without a page refresh (thanks to @tomzx). +- Usage: Z.ai credit limits now appear alongside its other quota windows. +- Chat: file paths in messages now open from the session's workspace, even if you last browsed files in another workspace (thanks to @tomzx). +- Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings. +- While a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes. +- Chat: long user messages can be expanded even when their final layout finishes after they first appear. +- UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer). + +### Fixes +- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. +- Settings/Providers: the provider you select no longer jumps to a different one when the chat selection or provider data changes. +- If OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). +- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. diff --git a/changelog/1.21.0.md b/changelog/1.21.0.md new file mode 100644 index 00000000..c580cd43 --- /dev/null +++ b/changelog/1.21.0.md @@ -0,0 +1,75 @@ +--- +version: 1.21.0 +date: 2026-08-26 +--- + +## App + +### New +- Mobile: the chat comment input overlays the composer exactly and rides the keyboard; Enter makes a new line there, with attach on the button. +- Chat: a "Follow new content while streaming" checkbox (Settings → Chat → Streaming, on by default) turns automatic following off entirely; with it off, the scroll-to-bottom pill now appears as soon as the reply grows past the visible area. +- Mobile: narrowing a browser window past phone size switches into the mobile layout (and back when widened); the old/new mobile layout setting is gone. + +### Improvements +- **Chat scrolling rebuilt around your message.** Sending parks your message near the top and the reply streams in below it, gliding smoothly a paragraph at a time. Scrolling up immediately hands you the wheel; the scroll-to-bottom pill carries the model's working status while you're away. +- **Keyboard shortcuts redesigned:** single chords for everyday actions, a Cmd/Ctrl+K leader for two-step open/go actions, held Cmd/Ctrl+digit for session tabs and Cmd/Ctrl+Option+digit for panel surfaces. Shortcuts work on non-English keyboard layouts now, tooltips show the binding you actually have set, and old custom bindings reset once. The full map lives in Settings → Shortcuts (registry contributed by @ChangeHow — thanks!). +- **Chat context attachments:** diff comments, terminal selections, browser annotations, linked issues/PRs and the rest now appear in the conversation as compact context cards instead of walls of raw text. +- **Session tabs (opt-in):** the web/desktop header can show open sessions as browser-style tabs (Settings → General → Navigation). A tab switches the whole workspace; closing one never touches the session itself. +- Permission: cards answer to the keyboard Alt+Enter allows once, Alt+Shift+Enter allows always, Alt+Backspace denies — the keys are printed on the buttons. The auto-accept toggle got Cmd/Ctrl+K, A. +- Sessions: Cmd/Ctrl+Alt+Left/Right steps back and forward through the sessions you opened in this window, browser-history style; with session tabs enabled it moves between neighbouring tabs instead. +- Git: Cmd/Ctrl+Enter in the commit message box commits. Diff review moves between changed files with Alt+Down/Up, expanding a collapsed file on arrival. +- Chat: Cmd/Ctrl+Shift+T now cycles through every thinking level offered by the selected model instead of skipping levels after reaching the end (thanks to @nimobeeren). +- Panels: the context rail got a configure button — a dialog chooses which panels the rail shows. Hidden panels keep their data, stay reachable from the command palette, and leave the digit switcher, so digits always match the icons you see. +- Chat: comment on a reply — select text in a chat message (or a rendered markdown preview in Files) and choose Comment to attach exactly that quote, with a source line range when it can be located, plus your note. The selection stays highlighted while you type. +- Diff: comment like a review — hovering a line shows a + in the gutter; clicking or dragging across lines opens the comment editor for that range, styled like the chat's comments. +- Composer: hovering or tapping a context chip opens a stacked preview of everything attached, where a comment can be edited in place or an item removed before sending. +- Search: every searchable picker uses one matcher now — best matches first, multi-word queries in any order, punctuation ignored ("gpt4o" finds "gpt-4o"). Ctrl/Cmd+P matches whole file paths. +- Chat: @ file mentions rank files and directories together by match quality, and long paths keep the folder next to the file name visible. +- Command palette: rarely used commands (pin session, copy session ID, multi-run launcher, archived sessions, notes, todos, status, theme) are found by typing but stay off the first screen. +- Mobile: on Android browsers the composer now stays above the keyboard in the chat too — the keyboard could cover it with no way to scroll it into view; the draft screen's viewport pinning now covers the chat screen on Android. +- Chat: opening a session or resizing panels could strand the view in a large empty space below the last message; the list now returns to the real end, and a width resize keeps a reader who was at the bottom at the bottom. +- Devices: re-pairing a phone keeps the device's existing name instead of resetting it to "OpenChamber Mobile". +- Files: the editor toolbar is always docked under the file tabs; the floating hover toolbar and its setting were removed. + +### Fixes +- Sessions: switching is much faster in large workspaces — the sidebar no longer rebuilds on switch and recently viewed sessions restore their rendered messages; end-to-end switch time roughly halved with thousands of loaded sessions (thanks to @c-w-xiaohei). +- Terminal: terminals no longer vanish behind your back — every tab and device shows the ones already running on the server, and background tabs survive the idle cleanup. +- Browser: an agent opening a page with the browser tool no longer pops the browser panel open (or switches the surface you're on) — the page loads in the background and the rail is where you peek at it. +- Usage: the Command Code tile is gone — their official API exposes no usage data, so the tile could only fail. +- Desktop: a relay-paired default host no longer greets every restart with the "Remote Server Unreachable" screen — the stored direct address (often the pairing machine's own loopback) failing its probe now boots the app normally and connects over the relay, picking the direct route back up automatically when it answers again. +- Auth: an expired OpenChamber login is announced within seconds by a banner with a Log in button, instead of being discovered through failing actions. Sending pauses until login, and a conversation that failed to load reloads itself afterwards. +- Chat: a failed send returns your typed prompt to the input — whatever the reason — instead of losing it to an error toast; a mid-send session switch lands it in that session's draft. +- Chat: prompt-rail and message jumps land exactly on the target once the layout finishes measuring, and clicking the last rail item always works. +- Desktop: two windows on different projects no longer hijack each other — one window's session switch could make the other adopt its project mid-typing. Notification clicks and openchamber:// links now open in one window instead of all of them. +- Git: the branch's PR badge no longer picks up a stranger's pull request — with contributor forks added as remotes, a fork's closed PR sharing only the branch name could show up on the local branch. +- Chat: streamed code blocks are syntax-highlighted while streaming, and finished messages no longer jump when line numbers fill in. +- Chat: finished replies no longer flicker — tool cards stopped replaying their reveal animation on completion, and window resizing no longer throws the conversation around at the bottom. +- Mobile: scrolling during a streaming reply works again — a drag immediately takes over, the pill shows up, and load-older no longer throws you to the bottom. +- Fixed file links in messages being checked twice, and against the wrong project directory on the first pass. +- Fixed the selected project or session briefly jumping back to a previous choice when settings responses arrived out of order. +- Fixed sessions staying on "loading sessions" forever after a half-open connection to OpenCode — stalled reads now time out and retry (thanks to @herjarsa). +- Files: previews above the editable size cap show the whole file, virtualized so huge files no longer freeze the app (thanks to @gaojunran). +- VSCode: the chat view no longer sticks on its loading screen on slow or remote connections (thanks to @VinciYan). +- Terminal: mobile keyboards no longer capitalize the first letter of every command. +- Desktop: a freshly installed or updated build no longer loads the previous version's interface from cache. +- Relay: paired devices no longer get logged out when the app restarts while another local OpenChamber process is running. +- Sessions: headers now find archived sessions too, so an archived session's title no longer goes missing. +- UI: the chat's scroll fades are back, the first uncached session open fades in, the timeline dialog fits small screens (thanks to @gaojunran), OpenCode notices share one style, draft target menus stay inside the chat area, Linear and Cloudflare tools show their own icons, sidebar tooltips no longer appear on passing hover, and the btw panel's shadow matches the composer. + +## VS Code + +### Improvements +- **Chat context attachments:** diff and file comments, terminal selections, and linked issues/PRs now show in the conversation as compact context cards — source header, captured content behind an expander, your comment below — instead of raw text inside the message. +- **Chat: comment on a reply.** Select text in a chat message and choose Comment to attach that quote with your note to the next message; the selection stays highlighted while you type. +- Composer: hovering a context chip above the input opens a stacked preview of everything attached, where comments can be edited in place or items removed before sending. +- Chat: @ file mentions now rank files and directories together by how well they match, so the file you typed is at the top instead of below unrelated directories. Multi-word queries match in any order, and long paths keep the folder next to the file name visible. +- Search: Ctrl/Cmd+P now matches the whole file path, not just the file name — searching a folder name finds the files inside it. +- Search in dropdowns: searchable pickers (agents, models, providers, branches) now put the best matches first, match multi-word queries in any order, and ignore punctuation (so "gpt4o" finds "gpt-4o"). +- Permissions: cards answer to the keyboard with Alt+Enter to allow once, Alt+Shift+Enter to allow always, and Alt+Backspace to deny; the keys are printed on the buttons. +- Keyboard: dropdown menus and pickers answer Ctrl+N/Ctrl+P for down/up, the session switcher opens focused on your current session, and shortcut labels in tooltips and menus show the binding you actually have set (thanks to @ChangeHow). +- Chat: Cmd/Ctrl+Shift+T now cycles through every thinking level offered by the selected model instead of skipping levels after reaching the end (thanks to @nimobeeren). +- Chat: OpenCode notices now share one style. +- Chat: the timeline dialog now fits small windows instead of squeezing the message list to a couple of rows (thanks to @gaojunran). + +### Fixes +- Chat: the view no longer stays stuck on its loading screen on slow or remote connections, including code-server behind a reverse proxy (thanks to @VinciYan). diff --git a/changelog/1.21.1.md b/changelog/1.21.1.md new file mode 100644 index 00000000..8f16e268 --- /dev/null +++ b/changelog/1.21.1.md @@ -0,0 +1,80 @@ +--- +version: 1.21.1 +date: 2026-08-29 +--- + +## App + +### New +- **Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt). +- Work status: the session cost now includes what its subagents spent, split under the context meter and shown per subagent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). +- Composer: pasting a large block of text (about 2,000 characters or 25 lines) now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a `[pasted-context-N.txt]` reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). +- Multi-Run: groups can now contain more than five models, including isolated runs that create one worktree per model (thanks to @tomzx). +- Projects: the folder picker can select several directories at once and add them together (thanks to @herjarsa). + +### Improvements +- `/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies). +- Chat: the text the model writes before asking a question is shown right away instead of staying hidden in the Activity group until the turn ends (thanks to @makeittech). +- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). +- Usage: GitHub Copilot now shows a single AI Credits window, matching Copilot's token-based quota, in place of the old Chat Requests and Completions windows (thanks to @jakoss). +- Files: the Markdown preview has an in-document search (Ctrl/Cmd+F) with highlighting and next/previous, and clicking a folder or file in the sidebar tree opens it reliably on macOS trackpads, where a tiny pointer move used to swallow the click (thanks to @makeittech); files up to 20,000 lines open in the full-file preview instead of being rejected at 5,000 (thanks to @gaojunran). +- Panels: right-click an editor, chat, or browser tab to close it, close others, close left/right, or close all (thanks to @adavila0703). +- Browser: when the agent captures a page while the browser panel is hidden, the panel is revealed first instead of the capture failing. +- Mobile: Chats — sessions that belong to no project — now appear in the sessions sheet above the project list; opening an already-open agent switches to its editor instead of duplicating it (thanks to @bashrusakh); Android connections can trust user-installed certificate authorities, such as a local proxy's (thanks to @Silvenga). +- Files: files reached through a symlink inside the workspace, or under a project root that is itself a symlink, open again instead of failing with an access error (thanks to @herjarsa). +- Sidebar: searching sessions now also finds Chats — sessions that belong to no project — which used to vanish from the list as soon as anything was typed (thanks to @yulia-ivashko). +- Projects: the folder picker can enter a directory that is already a project to browse from there (thanks to @weixiang1862), and sending, forking, and image attachments work in projects whose path has non-ASCII characters, such as `Masaüstü` (thanks to @fitzgpt). +- Web/PWA: notification clicks focus an existing window, and the installed app uses the shorter "OpenChamber" name (thanks to @bketelsen and @greghaynes). +- Themes: custom themes loaded through symlinks now work (thanks to @divyam234). +- Debug: the debug panel (Ctrl/Cmd+Shift+D) has a Requests tab showing in-flight requests and their age over the last five minutes (thanks to @tomzx). + +### Fixes +- **Git/Worktrees:** session menus can now move an idle session and its sub-sessions into an existing worktree. OpenChamber discovers worktrees created elsewhere when the target list opens, asks before transferring uncommitted changes, and keeps those changes safe if a move fails partway (thanks to @mattv8). +- Chat scrolling: with "Follow new content while streaming" off, sending from the middle of a conversation no longer jumps to the new message; a middle-button pan or Shift+Space stops auto-follow like the wheel does, and an upward wheel inside a tool output box scrolls that box instead of the chat (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole window up and hides the title bar. +- Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings, which could send the syntax highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message containing Windows line endings, which threw "Selection points outside of document" on every visit (thanks to @yulia-ivashko). +- Chat: a session no longer looks frozen after a page reload or a late second client — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh). +- Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code and chips are readable in every theme (thanks to @difagume); a completed reasoning block shows in full instead of replaying as if still thinking, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the first lines of the reply (thanks to @makeittech). +- Chat actions: tool cards with a file path get a quick-open button (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown paragraph, list, and code-block spacing (thanks to @ChangeHow); Ctrl/Cmd+digit is ignored while typing in a field, and a manually chosen model survives switching between Build and Plan (thanks to @makeittech). +- Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech). +- Plans: saved plans open with their content again for chats, worktrees outside the project path, and tabs restored after a reload, and an edit made right before closing is no longer lost. +- Sidebar: Recent rows show a compact timestamp on web and desktop, and pending permission/question badges are no longer covered by the hover actions (thanks to @makeittech). +- Settings: the editor font size survives a restart (thanks to @pascalandr); a change made right before closing the window is saved (thanks to @makeittech); number fields and selects no longer clip at large font sizes (thanks to @makeittech); refreshing GitHub account state no longer interrupts the page (thanks to @floze-the-genius); the Cloudflare Tunnel download link is fixed (thanks to @AyoubAchour); Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx). +- Small model: requests send the provider's configured headers, such as an API-gateway subscription key (thanks to @dmitrii-galantsev); a configured Anthropic endpoint is used without a doubled `/v1`, and Google models without reasoning no longer receive a thinking option (thanks to @mpeter and @IngTian). +- Chat: a message made only of quoted context fragments now appears in the prompt navigator; opening or closing the context panel no longer leaves a blank tail under the last message. +- Settings/Providers: after saving an API key or signing in, the provider no longer shows "Credentials missing" with its models hidden until you switch away and back (thanks to @herjarsa). +- Git: the status panel refreshes from real repository state after checkout, branch, stash, merge, rebase, or reset, and remote branches that were never fetched appear in branch lists (thanks to @makeittech); the Branch diff scope no longer compares against the wrong base for branches created from the current branch (thanks to @gaojunran); picking `origin/main` in the branch selector checks out the local branch instead of a detached `HEAD` (thanks to @yulia-ivashko); branch search hides non-matching branches (thanks to @bashrusakh). +- Updates: "Update OpenCode" no longer fails with a bare "Bad Request" — OpenChamber names the release to install and shows OpenCode's reason when refused — and the desktop "Restart to Update" button shows why an install failed, including an unsigned local build, and stays available to retry (thanks to @mdatsev and @yulia-ivashko). +- Desktop: a crashed renderer window recovers automatically, with a visible failure page instead of a reload loop after repeated crashes (thanks to @wqpan); a slow or interactive shell startup file no longer stalls startup while OpenChamber looks for OpenCode — each probe gives up after five seconds, which is what left a Homebrew OpenCode looking undetected from a Dock launch (thanks to @mskadu). +- Windows: managed OpenCode restarts clean up orphaned listeners and process trees, closing the app stops OpenCode, and scheduled startup no longer fails on Task Scheduler's command length limit (thanks to @sergiofspedro, @a0000001, and @HAHH9527). +- Server: an `OPENCODE_BINARY` from the environment is no longer discarded when `settings.json` clears its own override (thanks to @bashrusakh); recovery through `OPENCODE_HOST` keeps the configured host and port (thanks to @colinmollenhour); `openchamber connect-url` no longer risks tearing `settings.json` while the desktop app runs, which could unpair every device (thanks to @shijie152). +- VS Code: the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech). +- Reliability: switching sessions quickly no longer saves the wrong scroll position, and the log no longer fills with worktree warnings for non-Git folders (thanks to @herjarsa); startup cleanup of leftover processes no longer blocks the server on Windows (thanks to @bashrusakh). + +## VS Code + +### New +- **Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt). +- Composer: pasting a large block of text now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). +- Multi-Run groups can now contain more than five models (thanks to @tomzx). + +### Improvements +- `/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies). +- Context usage now reports the session cost including everything its subagents spent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). +- Chat: the text the model writes before asking a question is shown right away instead of staying hidden until the turn ends (thanks to @makeittech). +- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). +- GitHub Copilot usage now shows a single AI Credits window, matching Copilot's token-based quota (thanks to @jakoss). +- The extension reuses its OpenCode output channel across managed-server restarts instead of creating duplicates (thanks to @TTTPOB). + +### Fixes +- Chat scrolling: with "Follow new content while streaming" off, sending while scrolled up leaves the view where it is; a middle-button pan or Shift+Space stops auto-follow like the wheel does (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole panel up. +- Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings that sent the highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message with Windows line endings, which threw "Selection points outside of document" on every visit (thanks to @yulia-ivashko). +- Chat: a session no longer looks frozen after the webview reloads or is opened late — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh). +- Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code, chips, and model-picker highlights stay readable in high-contrast themes (thanks to @difagume and @bashrusakh); a completed reasoning block shows in full instead of replaying, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the reply (thanks to @makeittech). +- Chat actions: tool cards with a file path get a quick-open button that opens the file in the editor (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown spacing (thanks to @ChangeHow); a manually chosen model survives switching between Build and Plan (thanks to @makeittech). +- Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech). +- Updating OpenCode no longer fails with a bare "Bad Request": the extension names the release to install and shows OpenCode's own reason when an update is refused (thanks to @mdatsev and @yulia-ivashko). +- "Add Project" now adds the chosen folder to the workspace instead of failing (thanks to @bashrusakh), and the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech). +- Sidebar: pending permission and question badges are no longer covered by the hover actions (thanks to @makeittech); worktree branch search hides non-matching branches (thanks to @bashrusakh). +- Settings/Providers: after saving an API key or signing in, the provider no longer shows "Credentials missing" with its models hidden until you switch away and back (thanks to @herjarsa). +- Settings: number fields and selects no longer clip at large font sizes (thanks to @makeittech), and Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx). +- Windows: closing VS Code now stops the managed OpenCode process instead of leaving it running (thanks to @a0000001). diff --git a/changelog/1.22.0.md b/changelog/1.22.0.md new file mode 100644 index 00000000..1cca6853 --- /dev/null +++ b/changelog/1.22.0.md @@ -0,0 +1,34 @@ +--- +version: 1.22.0 +date: 2026-08-30 +--- + +## App + +### New +- **Git:** projects containing several repositories can now switch between them from the Git tab. Diff, pull request, walkthrough, mobile Changes, and work status follow the selected repository (thanks to @jaygupta17). + +### Improvements +- **Linear integration:** connect a workspace in Settings → Integrations, browse and filter issues, and start a session or worktree from an issue. OpenChamber reports session progress back to Linear and can attach an issue to the next chat message (thanks to @AlexKutas). +- **Voice:** local text-to-speech and macOS say now choose a voice that matches the reply's language. Additional local models download on first use, and the voice picker lists voices from every installed model. +- Files: Ctrl/Cmd+F opens search in the Markdown preview even when the preview is not focused. +- GitHub: account connection has moved to Settings → Integrations. The pull-request panel includes account controls, and its context-rail icon appears only when connected. +- Settings: themes are now remembered per OpenChamber instance, so windows connected to different instances keep their own theme (thanks to @kydorn). +- Scheduled tasks: Goal, Auto-accept, and other task settings are preserved when older OpenChamber builds share the same project config. +- Desktop: on Windows and Linux, the close button reaches the top-right corner and follows the theme on hover (thanks to @kydorn). + +### Fixes +- **Chat:** sessions opened from the sidebar stay at the latest message, and switching sessions no longer causes jumps, partial rendering, crossfades, or tab-title shifts. +- Chat: command, skill, and file autocomplete in projectless chats no longer uses the previously selected project. +- Chat: reverting to a message, or forking from one, now brings its attached context back to the composer — review comments, chat and file quotes, terminal selections, and browser annotations are no longer lost. +- Chat: stopped and unanswered turns now explain what happened. The status report includes recent session, send, and managed OpenCode errors, plus log locations. +- Git: the commit graph no longer leaves a lane gap when the same branch is merged twice (thanks to @Naputt1). + +## VS Code + +### Improvements +- Chat: a session opened from the sidebar lands at its end and stays there, instead of landing above the bottom or snapping up a moment later. + +### Fixes +- Switching sessions is now visually stable, without conversation jumps or partial rendering. +- Chat: a turn that OpenCode stopped no longer ends with nothing on screen — what OpenCode reported shows under the last message, and a message an idle session has left unanswered is named as such. The status report (Ctrl/Cmd+Shift+L) now lists the last session errors and rejected sends. diff --git a/changelog/1.22.1.md b/changelog/1.22.1.md new file mode 100644 index 00000000..f7040744 --- /dev/null +++ b/changelog/1.22.1.md @@ -0,0 +1,53 @@ +--- +version: 1.22.1 +date: 2026-09-04 +--- + +## App + +### New +- Chat: a new session opens on the Chat or Project side you last used, and plus inside a chat opens a chat draft (thanks to @yulia-ivashko). +- Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko). +- Git: status stays hidden while a new worktree runs its setup commands instead of flashing mid-setup changes, and refreshes after a tool finishes a change or a worktree changes (thanks to @yulia-ivashko). +- Settings: new installs default to the OpenChamber light and dark themes; an existing Flexoki choice is kept. + +### Improvements +- **OpenCode Go:** every request OpenChamber sends to OpenCode Go on its own, such as commit messages and pull request text, reply recaps and suggested follow-ups, walkthroughs, Goal Mode checks, notes, and usage, now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. Update before that date if you use OpenCode Go. +- **Message queue:** messages queued while a session is busy are now sent by the OpenChamber server, so they go out even if the tab that queued them is closed, and every client shows the same queue. A queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer. +- Chat: starting an isolated-worktree session from an assistant answer now picks the right project when the visible session already lives in a worktree (thanks to @yulia-ivashko). +- Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko). +- Settings: Fixel Text is available as an interface font. +- Usage: exe.dev usage windows are tracked. +- Settings: the Claude Code and Cursor plugin install cards are gone from Settings → Integrations, which now holds only GitHub and Linear. +- Desktop: the instance switcher keeps its statuses between opens, never shows the connected instance as checking, retries a relay instance for up to fifteen seconds before calling it unreachable, and shows the full instance name. Switching instances clears the previous instance's Linear and GitHub logins, quotas, MCP status, skills, and memory. +- Desktop: dev server previews work over the private relay. + +### Fixes +- **Git:** switching branches with uncommitted changes now stops at a commit-or-revert dialog with an optional push; a failed push cancels the switch. The branch picker lists recent branches with an unpushed-commit badge, the mobile Changes view gets a branch picker, and a draft over a dirty directory shows a warning on its branch selector (thanks to @yulia-ivashko). +- **Worktrees:** removing a worktree no longer freezes the interface. It runs in the background with a progress toast, and its sessions are archived in one request, which takes a 121-session worktree from about fifteen seconds to one; archiving several selected sessions from the sidebar uses the same request (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). +- **MCP:** an MCP server that failed to start or lost its connection is now reconnected automatically, with a delay growing up to thirty seconds. Disabled servers and ones waiting for a login are left alone. Applies where OpenChamber launches OpenCode itself: Web and Desktop. +- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). +- Chat: resizing the window no longer snaps an idle reader back to the end of the conversation. +- Settings: the theme no longer flips when switching sessions across directories, and missing theme fields keep the current preference (thanks to @kydorn). +- Terminal: the terminal waits for its font before measuring glyphs, so it no longer renders wrong until resized, and connects on servers running under Bun. +- Server: a browser on https behind an HTTP proxy hop is no longer rejected as a mismatched origin. +- Sidebar: the project label no longer shifts when its hover actions appear. +- Turkish interface: the missing Git repository discovery labels are back (thanks to @kydorn). + +## VS Code + +### New +- Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko). + +### Improvements +- **OpenCode Go:** the usage request the extension sends to OpenCode Go now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. +- Message queue: a queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer. +- Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko). +- Settings: Fixel Text is available as an interface font. +- Usage: exe.dev usage windows are tracked. +- Settings: the Integrations page, which offered the Claude Code and Cursor plugin installs, is gone. + +### Fixes +- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). +- Worktrees: removing a worktree no longer freezes the interface; it runs in the background with a progress toast (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). +- Settings: the theme no longer flips when switching sessions across directories, and a theme the extension cannot fully report keeps the current preference (thanks to @kydorn). diff --git a/changelog/1.3.0.md b/changelog/1.3.0.md new file mode 100644 index 00000000..b10dcc09 --- /dev/null +++ b/changelog/1.3.0.md @@ -0,0 +1,33 @@ +--- +version: 1.3.0 +date: 2025-12-21 +--- + +## App + +### New +- Added revert functionality in chat for user messages. + +### Improvements +- Polished mobile controls in chat view. +- Updated user message layout/styling. +- Improved header tab responsiveness. +- Adjusted VSCode extension theme mapping and model selection view. +- Polished file autocomplete experience. + +### Fixes +- Fixed bugs with new session creation when the VSCode extension initialized for the first time. + +## VS Code + +### New +- Added revert functionality in chat for user messages. + +### Improvements +- Updated user message layout/styling. +- Improved header tab responsiveness. +- Adjusted extension theme mapping and model selection view. +- Polished file autocomplete experience. + +### Fixes +- Fixed bugs with new session creation when the extension initialized for the first time. diff --git a/changelog/1.3.1.md b/changelog/1.3.1.md new file mode 100644 index 00000000..26ca2227 --- /dev/null +++ b/changelog/1.3.1.md @@ -0,0 +1,14 @@ +--- +version: 1.3.1 +date: 2025-12-22 +--- + +## App + +### New +- The app opens to a new chat by default. +- Updated app identity with new logo and icons across all platforms. + +### Fixes +- New chats no longer create a session until you send your first message. +- Fixed mobile and VSCode sessions handling. diff --git a/changelog/1.3.2.md b/changelog/1.3.2.md new file mode 100644 index 00000000..a29c44df --- /dev/null +++ b/changelog/1.3.2.md @@ -0,0 +1,12 @@ +--- +version: 1.3.2 +date: 2025-12-22 +--- + +## App + +### Improvements +- Updated OpenCode SDK to the latest version. + +### Fixes +- Fixed new bug session when switching directories. diff --git a/changelog/1.3.3.md b/changelog/1.3.3.md new file mode 100644 index 00000000..39c3d297 --- /dev/null +++ b/changelog/1.3.3.md @@ -0,0 +1,33 @@ +--- +version: 1.3.3 +date: 2025-12-25 +--- + +## App + +### New +- VS Code extension: added an animated loading screen and introduced command for status/debug output. + +### Improvements +- Updated OpenCode SDK to 1.0.185 across all app versions. +- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. + +### Fixes +- VS Code extension: fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. +- Fixed session activity tracking. +- Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors. +- Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation. + +## VS Code + +### New +- Added an animated loading screen and introduced command for status/debug output. + +### Improvements +- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. + +### Fixes +- Fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. +- Fixed session activity tracking. +- Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors. +- Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation. diff --git a/changelog/1.3.4.md b/changelog/1.3.4.md new file mode 100644 index 00000000..7c42ed2b --- /dev/null +++ b/changelog/1.3.4.md @@ -0,0 +1,18 @@ +--- +version: 1.3.4 +date: 2025-12-25 +--- + +## App + +### Improvements +- Diff view now loads reliably even with large files and slow networks. +- VS Code extension: improved type checking and editor integration. + +### Fixes +- Fixed getting diffs for worktree files. + +## VS Code + +### Improvements +- Improved type checking and editor integration. diff --git a/changelog/1.3.5.md b/changelog/1.3.5.md new file mode 100644 index 00000000..014e6182 --- /dev/null +++ b/changelog/1.3.5.md @@ -0,0 +1,33 @@ +--- +version: 1.3.5 +date: 2025-12-26 +--- + +## App + +### New +- Added Nushell support for OpenCode CLI operations. +- Added Discord links in the about section. +- Added settings for choosing the default model/agent to start with in a new session. + +### Improvements +- Improved file search with fuzzy matching capabilities. +- Enhanced mobile responsiveness in chat controls. +- Improved provider loading reliability during workspace switching. + +### Fixes +- Fixed workspace switching performance and API health checks. +- Fixed session handling for non-existent worktree directories. + +## VS Code + +### New +- Added settings for choosing the default model/agent to start with in a new session. + +### Improvements +- Improved file search with fuzzy matching capabilities. +- Improved provider loading reliability during workspace switching. + +### Fixes +- Fixed workspace switching performance and API health checks. +- Fixed session handling for non-existent worktree directories. diff --git a/changelog/1.3.6.md b/changelog/1.3.6.md new file mode 100644 index 00000000..bdc19e8c --- /dev/null +++ b/changelog/1.3.6.md @@ -0,0 +1,20 @@ +--- +version: 1.3.6 +date: 2025-12-27 +--- + +## App + +### New +- Added the ability to manage (connect/disconnect) providers in settings. + +### Improvements +- Adjusted auto-summarization visuals in chat. + +## VS Code + +### New +- Added the ability to manage (connect/disconnect) providers in settings. + +### Improvements +- Adjusted auto-summarization visuals in chat. diff --git a/changelog/1.3.7.md b/changelog/1.3.7.md new file mode 100644 index 00000000..e790efb7 --- /dev/null +++ b/changelog/1.3.7.md @@ -0,0 +1,27 @@ +--- +version: 1.3.7 +date: 2025-12-28 +--- + +## App + +### New +- Added mobile-friendly drill-down navigation for settings. +- Added responsive tab labels in settings header (icons only at narrow widths). +- Introduced enhanced VSCode extension settings with dynamic layout based on width. + +### Improvements +- Redesigned Settings as a full-screen view with tabbed navigation. +- ESC key now closes settings; double-ESC abort only works on chat tab without overlays. +- Improved session activity status handling and message step completion logic. + +## VS Code + +### New +- Added responsive tab labels in settings header (icons only at narrow widths). +- Introduced enhanced extension settings with dynamic layout based on width. + +### Improvements +- Redesigned Settings as a full-screen view with tabbed navigation. +- ESC key now closes settings. +- Improved session activity status handling and message step completion logic. diff --git a/changelog/1.3.8.md b/changelog/1.3.8.md new file mode 100644 index 00000000..6936b5ab --- /dev/null +++ b/changelog/1.3.8.md @@ -0,0 +1,31 @@ +--- +version: 1.3.8 +date: 2025-12-29 +--- + +## App + +### New +- Added Intel Mac (x86_64) support for the desktop application (thanks to @rothnic). +- Added queued message mode with chips, batching, and idle auto‑send (including attachments). +- Added queue mode toggle to OpenChamber settings (chat section) with persistence across runtimes. + +### Improvements +- Build workflow now generates separate builds for Apple Silicon (arm64) and Intel (x86_64) Macs (thanks to @rothnic). +- Improved dev server HMR by reusing a healthy OpenCode process to avoid zombie instances. +- Refactored Agents/Commands management with ability to configure project/user scopes. + +### Fixes +- Fixed scroll position persistence for active conversation turns across session switches. + +## VS Code + +### New +- Added queued message mode with chips, batching, and idle auto‑send (including attachments). +- Added queue mode toggle to settings (chat section). + +### Improvements +- Refactored Agents/Commands management with ability to configure project/user scopes. + +### Fixes +- Fixed scroll position persistence for active conversation turns across session switches. diff --git a/changelog/1.3.9.md b/changelog/1.3.9.md new file mode 100644 index 00000000..ad80b95a --- /dev/null +++ b/changelog/1.3.9.md @@ -0,0 +1,18 @@ +--- +version: 1.3.9 +date: 2025-12-30 +--- + +## App + +### New +- Added skills management to settings with the ability to create, edit, and delete skills (make sure you have the latest OpenCode version for skills support). +- Added Skills catalog functionality for discovering and installing skills from external sources. +- VS Code extension: added right-click context menu with "Add to Context," "Explain," and "Improve Code" actions (thanks to @wienans). + +## VS Code + +### New +- Added skills management to settings with the ability to create, edit, and delete skills. +- Added Skills catalog functionality for discovering and installing skills from external sources. +- Added right-click context menu with "Add to Context," "Explain," and "Improve Code" actions (thanks to @wienans). diff --git a/changelog/1.4.0.md b/changelog/1.4.0.md new file mode 100644 index 00000000..1a30cc7d --- /dev/null +++ b/changelog/1.4.0.md @@ -0,0 +1,33 @@ +--- +version: 1.4.0 +date: 2026-01-01 +--- + +## App + +### New +- Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree. +- Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push. +- Web app: added Cloudflare Quick Tunnel support for simpler remote access (thanks to @wojons and @aptdnfapt). + +### Improvements +- Git view: improved branch publishing by detecting unpublished commits and automatically setting the upstream on first push. +- VS Code extension: default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans). +- Sidebar: improved readability for sticky headers with a dynamic background. + +### Fixes +- Mobile: improved keyboard/input bar behavior (including Android fixes and better keyboard avoidance) and added an offset setting for curved-screen devices (thanks to @auroraflux). +- Chat: now shows clearer error messages when agent messages fail. + +## VS Code + +### New +- Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree. +- Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push. + +### Improvements +- Default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans). +- Sidebar: improved readability for sticky headers with a dynamic background. + +### Fixes +- Chat: now shows clearer error messages when agent messages fail. diff --git a/changelog/1.4.1.md b/changelog/1.4.1.md new file mode 100644 index 00000000..90ec09a6 --- /dev/null +++ b/changelog/1.4.1.md @@ -0,0 +1,33 @@ +--- +version: 1.4.1 +date: 2026-01-02 +--- + +## App + +### New +- Added the ability to select the same model multiple times in multi-agent runs for response comparison. +- Model selector now includes search and keyboard navigation. +- Added revert button to all user messages (including first one). +- Added HEIC image support for file attachments with automatic MIME type normalization for text format files. +- VS Code extension: added Git backend integration for UI access (thanks to @wienans). +- Web app: terminal backend now supports a faster Bun-based PTY when Bun is available, with automatic fallback for existing Node-only setups. + +### Improvements +- VS Code extension: only shows the main Worktree in the Chat Sidebar (thanks to @wienans). +- Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer, while keeping the existing terminal UX and per-directory sessions. + +### Fixes +- Terminal: fixed several issues with terminal session restore and rendering under heavy output, including switching directories and long-running TUI apps. + +## VS Code + +### New +- Added the ability to select the same model multiple times in multi-agent runs for response comparison. +- Model selector now includes search and keyboard navigation. +- Added revert button to all user messages (including first one). +- Added HEIC image support for file attachments with automatic MIME type normalization for text format files. + +### Improvements +- Only show the main Worktree in the Chat Sidebar (thanks to @wienans). +- Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer. diff --git a/changelog/1.4.2.md b/changelog/1.4.2.md new file mode 100644 index 00000000..a6b65d2a --- /dev/null +++ b/changelog/1.4.2.md @@ -0,0 +1,25 @@ +--- +version: 1.4.2 +date: 2026-01-02 +--- + +## App + +### New +- Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt). +- Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt). +- Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt). + +### Improvements +- Desktop app: keyboard shortcuts now use Cmd on macOS and Ctrl on web/other platforms (thanks to @sakhnyuk). +- Migrated to OpenCode SDK v2 with improved API types and streaming. + +## VS Code + +### New +- Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt). +- Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt). +- Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt). + +### Improvements +- Migrated to OpenCode SDK v2 with improved API types and streaming. diff --git a/changelog/1.4.3.md b/changelog/1.4.3.md new file mode 100644 index 00000000..40ee4de2 --- /dev/null +++ b/changelog/1.4.3.md @@ -0,0 +1,24 @@ +--- +version: 1.4.3 +date: 2026-01-04 +--- + +## App + +### New +- VS Code extension: added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans). +- Added permission prompt UI for tools configured with "ask" in opencode.json, showing requested patterns and "Always Allow" options (thanks to @aptdnfapt). +- Added "Open subAgent session" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt). + +### Improvements +- VS Code extension: improved activation reliability and error handling. + +## VS Code + +### New +- Added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans). +- Added permission prompt UI for tools configured with "ask" in opencode.json, showing requested patterns and "Always Allow" options (thanks to @aptdnfapt). +- Added "Open subAgent session" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt). + +### Improvements +- Improved activation reliability and error handling. diff --git a/changelog/1.4.4.md b/changelog/1.4.4.md new file mode 100644 index 00000000..22931701 --- /dev/null +++ b/changelog/1.4.4.md @@ -0,0 +1,42 @@ +--- +version: 1.4.4 +date: 2026-01-08 +--- + +## App + +### New +- Agent Manager: added "Copy Worktree Path" action in the more menu (thanks to @wienans). +- Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management. +- Settings: added the ability to create new sessions in worktrees by default. +- Git view: added branch rename for worktree. +- Projects: added multi-project support with per-project settings for agents/commands/skills. +- Tunnel: added QR code and password URL for Cloudflare tunnel (thanks to @martindonadieu). + +### Improvements +- Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans). +- Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans). +- Session sidebar: refactored the unified view for sessions in worktrees. +- Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic. + +### Fixes +- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). +- Model selector: fixed dropdowns not responding to viewport size. + +## VS Code + +### New +- Agent Manager: added "Copy Worktree Path" action in the more menu (thanks to @wienans). +- Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management. +- Settings: added ability to create new session in worktree by default. +- Projects: added multi-project support with per-project settings for agents/commands/skills. + +### Improvements +- Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans). +- Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans). +- Session sidebar: refactoring with unified view for sessions in worktrees. +- Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic. + +### Fixes +- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). +- Model selector: fixed dropdowns not responding to viewport size. diff --git a/changelog/1.4.5.md b/changelog/1.4.5.md new file mode 100644 index 00000000..c2c8e5db --- /dev/null +++ b/changelog/1.4.5.md @@ -0,0 +1,29 @@ +--- +version: 1.4.5 +date: 2026-01-08 +--- + +## App + +### New +- Chat: added support for model variants (thinking effort). +- Skills: added autocomplete for skills on "/" when it is not the first character in input. +- Autocomplete: added scope badges for commands/agents/skills. +- MCP: added the ability to dynamically enable or disable configured MCP servers. +- Web: refactored the Add Project UI with autocomplete. + +### Improvements +- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. +- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. + +## VS Code + +### New +- Chat: added support for model variants (thinking effort). +- Skills: added autocomplete for skills on "/" when it is not the first character in input. +- Autocomplete: added scope badges for commands/agents/skills. +- MCP: added the ability to dynamically enable or disable configured MCP servers. + +### Improvements +- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. +- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. diff --git a/changelog/1.4.6.md b/changelog/1.4.6.md new file mode 100644 index 00000000..5703a5be --- /dev/null +++ b/changelog/1.4.6.md @@ -0,0 +1,24 @@ +--- +version: 1.4.6 +date: 2026-01-09 +--- + +## App + +### New +- Chat: added question tool support with a rich UI for interaction. + +### Improvements +- VSCode/Web: switched OpenCode CLI management to the SDK. +- Input: removed auto-complete and auto-correction. +- Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab. + +## VS Code + +### New +- Chat: added question tool support with a rich UI for interaction. + +### Improvements +- Switched OpenCode CLI management to the SDK. +- Input: removed auto-complete and auto-correction. +- Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab. diff --git a/changelog/1.4.7.md b/changelog/1.4.7.md new file mode 100644 index 00000000..1950bfd2 --- /dev/null +++ b/changelog/1.4.7.md @@ -0,0 +1,17 @@ +--- +version: 1.4.7 +date: 2026-01-10 +--- + +## App + +### New +- Skills: added ClawdHub integration as built-in market for skills. + +### Fixes +- Web: fixed issues in terminal. + +## VS Code + +### New +- Skills: added ClawdHub integration as built-in market for skills. diff --git a/changelog/1.4.8.md b/changelog/1.4.8.md new file mode 100644 index 00000000..48849d6a --- /dev/null +++ b/changelog/1.4.8.md @@ -0,0 +1,33 @@ +--- +version: 1.4.8 +date: 2026-01-14 +--- + +## App + +### New +- Git Identities: added token-based authentication support with ~/.git-credentials discovery and import. +- Settings: consolidated Git settings and added opencode zen model selection for commit generation (thanks to @nelsonPires5). +- Web Notifications: added configurable native web notifications for assistant completion (thanks to @vio1ator). +- Stability: added graceful shutdown handling for the server process (thanks to @vio1ator). + +### Improvements +- Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator). +- UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator). +- Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring. + +### Fixes +- Chat: fixed edit tool output and added turn duration. + +## VS Code + +### New +- Stability: added graceful shutdown handling for the server process (thanks to @vio1ator). + +### Improvements +- Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator). +- UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator). +- Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring. + +### Fixes +- Chat: fixed edit tool output and added turn duration. diff --git a/changelog/1.4.9.md b/changelog/1.4.9.md new file mode 100644 index 00000000..55e9d79b --- /dev/null +++ b/changelog/1.4.9.md @@ -0,0 +1,26 @@ +--- +version: 1.4.9 +date: 2026-01-14 +--- + +## App + +### New +- VSCode: added session editor panel to view sessions alongside files. +- Diff: added stacked/inline diff mode toggle in settings with sidebar file navigation (thanks to @nelsonPires5). + +### Improvements +- VSCode: improved server connection reliability with multiple URL candidate support. +- Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files. + +### Fixes +- Mobile: fixed iOS keyboard safe area padding for home indicator bar (thanks to @Jovines). + +## VS Code + +### New +- Added session editor panel to view sessions alongside files. + +### Improvements +- Improved server connection reliability with multiple URL candidate support. +- Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files. diff --git a/changelog/1.5.0.md b/changelog/1.5.0.md new file mode 100644 index 00000000..829837ba --- /dev/null +++ b/changelog/1.5.0.md @@ -0,0 +1,39 @@ +--- +version: 1.5.0 +date: 2026-01-16 +--- + +## App + +### New +- UI: added a new Files tab to browse workspace files directly from the interface. +- Git Identities: added "default identity" setting with one-click set/unset and automatic local identity detection. +- VSCode: added responsive layout with sessions sidebar + chat side-by-side when wide, compact header, and streamlined settings. + +### Improvements +- Diff: enhanced the diff viewer with mobile support and the ability to ask the agent for comments on changes. +- VSCode: improved server management to ensure it initializes within the workspace directory with context-aware readiness checks. +- Web: the server now automatically resolves and uses an available port if the default is occupied. + +### Fixes +- Web/VSCode: fixed orphaned OpenCode processes not being cleaned up on restart or exit. +- Stability: fixed heartbeat race condition causing session stalls during long tasks (thanks to @tybradle). +- Desktop: fixed commands for worktree setup access to PATH. + +## VS Code + +### New +- Layout: added responsive expanded layout showing sessions sidebar + chat side-by-side when extension is wide enough (≥700px). +- Layout: extension now opens to sessions list instead of new session draft. + +### Improvements +- Improved OpenCode server management to ensure it initializes within the workspace directory. +- Enhanced extension startup with context-aware readiness checks for the current workspace. +- Layout: compact header with reduced padding. +- Settings: hidden Git Identities tab, Git section, and Diff view settings (not applicable to VS Code). +- Settings: hidden project switcher dropdown (VS Code uses workspace). +- Shortcuts: disabled worktree session creation with shortcuts (Ctrl+Shift+N now opens standard session). + +### Fixes +- Fixed orphaned OpenCode processes not being cleaned up on restart or exit. +- Session tabs: fixed opening new session in editor tab; title bar button now opens new session tab, sidebar button opens current or new session. diff --git a/changelog/1.5.1.md b/changelog/1.5.1.md new file mode 100644 index 00000000..aa22b21f --- /dev/null +++ b/changelog/1.5.1.md @@ -0,0 +1,15 @@ +--- +version: 1.5.1 +date: 2026-01-16 +--- + +## App + +### Fixes +- Desktop: fixed orphaned OpenCode processes not being cleaned up on restart or exit. +- OpenCode: fixed a crash when reloading configuration. + +## VS Code + +### Improvements +- No notable changes. diff --git a/changelog/1.5.2.md b/changelog/1.5.2.md new file mode 100644 index 00000000..899feae6 --- /dev/null +++ b/changelog/1.5.2.md @@ -0,0 +1,25 @@ +--- +version: 1.5.2 +date: 2026-01-17 +--- + +## App + +### New +- Sessions: added branch picker dialog to start new worktree sessions from local branches (thanks to @nilskroe). +- Sessions: added project header worktree button, active-session loader, and right-click context menu in the sessions sidebar (thanks to @nilskroe). +- Git: added gitmoji picker in commit message composer with cached emoji list (thanks to @TaylorBeeston). +- UI: added one-click diagnostics copy in the About dialog. + +### Improvements +- Sessions: improved worktree delete dialog with linked session details, dirty-change warnings, and optional remote branch removal. +- Chat: optimized message loading for opening sessions. +- VSCode: tuned layout breakpoint and server readiness timeout for steady startup. +- Reliability: improved OpenCode process cleanup to reduce orphaned servers. + +## VS Code + +### Improvements +- Chat: optimized message loading for opening sessions. +- Layout: tuned responsive breakpoint and server readiness timeout for steady startup. +- Reliability: improved OpenCode process cleanup to reduce orphaned servers. diff --git a/changelog/1.5.3.md b/changelog/1.5.3.md new file mode 100644 index 00000000..e50b8b46 --- /dev/null +++ b/changelog/1.5.3.md @@ -0,0 +1,30 @@ +--- +version: 1.5.3 +date: 2026-01-20 +--- + +## App + +### New +- Settings: new memory limits controls for session message history. +- Chat: new Activity view in collapsed state, now shows latest 6 tools by default. + +### Improvements +- Files: edit files inline with syntax highlighting, draft protection, and save/discard flow. +- Files: toggles to show hidden/dotfiles and gitignored entries in file browsers and pickers (thanks to @syntext). +- Chat: smooth session switching with more stable scroll anchoring. +- Git: generated commit messages now auto-pick a gitmoji when enabled (thanks to @TheRealAshik). +- Performance: faster filesystem/search operations and general stability improvements (thanks to @TheRealAshik). + +### Fixes +- Chat: fixed message copy on Firefox for macOS (thanks to @syntext). +- Appearance: new corner radius control and restored input bar offset setting (thanks to @TheRealAshik). + +## VS Code + +### Improvements +- Chat: improved session switching with more stable scroll anchoring. +- Chat: the collapsed Activity view now shows the latest 6 tools by default. +- Chat: updated accent color derivation to better match editor themes. +- Performance: improved filesystem/search speed and general stability (thanks to @TheRealAshik). +- Files: adjusted default visibility for hidden/dotfiles to be visible and gitignored entries to be hidden. diff --git a/changelog/1.5.4.md b/changelog/1.5.4.md new file mode 100644 index 00000000..00f26a63 --- /dev/null +++ b/changelog/1.5.4.md @@ -0,0 +1,25 @@ +--- +version: 1.5.4 +date: 2026-01-22 +--- + +## App + +### New +- Chat: new Apply Patch tool UI with diff preview for patch-based edits. +- Web: added Background notifications for PWA. + +### Improvements +- Files: refreshed attachment cards and related file views for clearer context. +- Settings: manage provider configuration files directly from the UI. +- UI: updated header and sidebar layout for a cleaner, tighter workspace fit (thanks to @TheRealAshik). + +### Fixes +- Diff: large diffs now lazy-load to avoid freezes (thanks to @Jovines). +- Reliability: connect to external OpenCode servers without auto-start and fixed subagent crashes (thanks to @TaylorBeeston). + +## VS Code + +### Improvements +- Apply Patch tool now shows a diff preview. +- Settings: manage provider configuration files directly from the extension. diff --git a/changelog/1.5.5.md b/changelog/1.5.5.md new file mode 100644 index 00000000..b9c16d05 --- /dev/null +++ b/changelog/1.5.5.md @@ -0,0 +1,21 @@ +--- +version: 1.5.5 +date: 2026-01-23 +--- + +## App + +### Improvements +- Navigation: URLs now sync the active session, tab, settings, and diff state for shareable links and reliable back/forward (thanks to @TaylorBeeston). +- Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders. +- Skills: installs now target plural directories while still recognizing legacy singular folders. +- Web: improved push subscription handling across multiple windows. + +### Fixes +- Web: push notifications no longer fire when a window is visible, avoiding duplicate alerts. + +## VS Code + +### Improvements +- Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders. +- Skills: installs now target plural directories while still recognizing legacy singular folders. diff --git a/changelog/1.5.6.md b/changelog/1.5.6.md new file mode 100644 index 00000000..b35c3466 --- /dev/null +++ b/changelog/1.5.6.md @@ -0,0 +1,22 @@ +--- +version: 1.5.6 +date: 2026-01-24 +--- + +## App + +### New +- Sessions: start new sessions from GitHub issues with seeded context (title, body, labels, comments). +- Sessions: start new sessions from GitHub pull requests with PR context baked in (including diffs). + +### Improvements +- GitHub: connect your account in Settings with device-flow auth to enable GitHub tools. +- Git: manage pull requests in the Git view with AI-generated descriptions, status checks, ready-for-review, and merge actions. + +### Fixes +- Mobile: fixed CommandAutocomplete dropdown scrolling (thanks to @nelsonPires5). + +## VS Code + +### New +- GitHub: added backend support for PRs/issues workflows; UI comes later. diff --git a/changelog/1.5.7.md b/changelog/1.5.7.md new file mode 100644 index 00000000..874dcff9 --- /dev/null +++ b/changelog/1.5.7.md @@ -0,0 +1,18 @@ +--- +version: 1.5.7 +date: 2026-01-24 +--- + +## App + +### Improvements +- GitHub: PR panel supports fork PR detection by branch name. + +### Fixes +- GitHub: Git tab PR panel can send failed checks/comments to chat with hidden context; added check details dialog with Actions step breakdown. +- Web: GitHub auth flow fixes. + +## VS Code + +### Improvements +- No notable changes. diff --git a/changelog/1.5.8.md b/changelog/1.5.8.md new file mode 100644 index 00000000..feacc963 --- /dev/null +++ b/changelog/1.5.8.md @@ -0,0 +1,36 @@ +--- +version: 1.5.8 +date: 2026-01-26 +--- + +## App + +### New +- Plans: new Plan/Build mode switching support with dedicated Plan content view with per-session context. +- Web: iOS safe-area support for the PWA header. +- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). + +### Improvements +- GitHub: sign in with multiple accounts and smooth auth flow. +- Chat/UI: linkable mentions, better wrapping, and markdown/scroll polish in messages. +- Skills: ClawdHub catalog now pages results and retries transient failures. +- Mobile: improved layout for attachments, git, and permissions on small screens (thanks to @nelsonPires5). + +### Fixes +- Diff: fixed Chrome scrolling in All Files layout. +- Reliability: file lists and message sends handle missing directories and transient errors better. + +## VS Code + +### New +- Plans: added new Plan/Build mode switching support. +- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). + +### Improvements +- Chat: linkable mentions, better wrapping, and markdown/scroll polish in messages. +- Skills: ClawdHub catalog now pages results and retries transient failures. +- Performance: faster chat rendering for busy sessions. + +### Fixes +- Diff: fixed Chrome scrolling in All Files layout. +- Reliability: file lists and message sends handle missing directories and transient errors better. diff --git a/changelog/1.5.9.md b/changelog/1.5.9.md new file mode 100644 index 00000000..89e9b11c --- /dev/null +++ b/changelog/1.5.9.md @@ -0,0 +1,27 @@ +--- +version: 1.5.9 +date: 2026-01-28 +--- + +## App + +### New +- UI: Files, Diff, Git, and Terminal now follow the active session/worktree directory, including new-session drafts. + +### Improvements +- Worktrees: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated. +- Git: integrate worktree commits back to a target branch with commit previews and guided conflict handling. +- Files: toggle markdown preview when viewing files (thanks to @Jovines). +- Files: open the file viewer in fullscreen for focused review and editing (thanks to @TaylorBeeston). +- Plans: switch between markdown preview and edit mode in the Plan view. + +### Fixes +- Web: plan lists no longer error when the plans directory is missing. + +## VS Code + +### Improvements +- Agent Manager: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated. + +### Fixes +- Agent Manager: worktree setup commands are now persistent per project and automatically saved/restored. diff --git a/changelog/1.6.0.md b/changelog/1.6.0.md new file mode 100644 index 00000000..55c21e1c --- /dev/null +++ b/changelog/1.6.0.md @@ -0,0 +1,31 @@ +--- +version: 1.6.0 +date: 2026-01-29 +--- + +## App + +### New +- Chat: added message stall detection with automatic soft resync. + +### Improvements +- Git: PR picker now validates local branch existence and includes a refresh action. +- Git: worktree integration now syncs clean target directories before merging. +- VSCode: session activity status now updates reliably even when the webview is hidden. +- Web: session activity tracking now works consistently across browser tabs. + +### Fixes +- Chat: fixed "Load older" button behavior in chat with proper pagination implementation. +- Diff: fixed memory leak when viewing many modified files; large changesets now lazy-load for smooth performance. +- Reliability: plans directory no longer errors when missing. + +## VS Code + +### New +- Added message stall detection with automatic soft resync. + +### Improvements +- Session activity status now updates reliably even when the extension panel is hidden or collapsed. + +### Fixes +- Fixed "Load older" button in long sessions with proper progressive pagination. diff --git a/changelog/1.6.1.md b/changelog/1.6.1.md new file mode 100644 index 00000000..5f3279ce --- /dev/null +++ b/changelog/1.6.1.md @@ -0,0 +1,33 @@ +--- +version: 1.6.1 +date: 2026-01-30 +--- + +## App + +### New +- UI: update dialog now includes the changelog. +- Terminal: added optional on-screen key bar (Esc/Ctrl/arrows/Enter) for easier terminal navigation. +- Notifications: added "Notify for subtasks" toggle to silence child-session notifications during multi-run (thanks to @Jovines). +- Worktrees: starting new worktree sessions now defaults to HEAD when no start point is provided. +- Git: commit message generation now includes untracked files and handles `git diff --no-index` comparisons reliably (thanks to @MrLYC). + +### Improvements +- Mobile: revamped chat controls on small screens with a unified controls drawer (thanks to @nelsonPires5). +- Reliability: improved event-stream reconnection when the app becomes visible again. +- Desktop: improved macOS window chrome and header spacing, including steady traffic lights on older macOS versions (thanks to @yulia-ivashko). + +### Fixes +- Chat: added Stop button to cancel generation mid-response. + +## VS Code + +### New +- Chat: added Apply Patch tool support for opening files in editor. + +### Improvements +- Chat: improved compact controls on narrow panels with a unified drawer for model and tool options. +- Reliability: improved event stream reconnection when the panel is hidden/shown or VS Code regains focus. + +### Fixes +- Chat: added Stop button to cancel generation mid-response. diff --git a/changelog/1.6.2.md b/changelog/1.6.2.md new file mode 100644 index 00000000..35436283 --- /dev/null +++ b/changelog/1.6.2.md @@ -0,0 +1,28 @@ +--- +version: 1.6.2 +date: 2026-02-01 +--- + +## App + +### New +- Usage: new multi-provider quota dashboard to monitor API usage across OpenAI, Google, and z.ai (thanks to @nelsonPires5). +- Terminal: added tabbed interface to manage multiple terminal sessions per directory. +- Files: added multi-file tabs on desktop and dropdown selector on mobile (thanks to @nelsonPires5). +- UI: introduced a token-based theming system, 18 themes with light/dark variants, and custom user themes from `~/.config/openchamber/themes`. + +### Improvements +- Settings: now opens in a windowed dialog on desktop with backdrop blur. +- Diff: optimized stacked view with worker-pool processing and lazy DOM rendering for smooth scrolling. +- Worktrees: workspace path now resolves correctly when using git worktrees (thanks to @nelsonPires5). + +### Fixes +- Projects: fixed directory creation outside workspace in the Add Project modal (thanks to @nelsonPires5). + +## VS Code + +### New +- Added multi-provider quota dashboard in settings to monitor API usage across OpenAI, Google, and z.ai with auto-refresh support (thanks to @nelsonPires5). + +### Improvements +- Enhanced token-based theming system. diff --git a/changelog/1.6.3.md b/changelog/1.6.3.md new file mode 100644 index 00000000..e053163c --- /dev/null +++ b/changelog/1.6.3.md @@ -0,0 +1,22 @@ +--- +version: 1.6.3 +date: 2026-02-02 +--- + +## App + +### Improvements +- Web: improved server readiness check to use the `/global/health` endpoint. +- VSCode: improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans). + +### Fixes +- Web: added login rate limit protection to prevent brute-force attempts on the authentication endpoint (thanks to @Jovines). +- Settings: dialog no longer persists open/closed state across app restarts. + +## VS Code + +### Improvements +- Improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans). + +### Fixes +- Settings dialog no longer persists open/closed state across extension restarts. diff --git a/changelog/1.6.4.md b/changelog/1.6.4.md new file mode 100644 index 00000000..6692e59a --- /dev/null +++ b/changelog/1.6.4.md @@ -0,0 +1,33 @@ +--- +version: 1.6.4 +date: 2026-02-05 +--- + +## App + +### New +- Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm). +- Diff/Plans: add inline comment drafts (thanks to @nelsonPires5). +- Git: improved macOS SSH agent support for smooth private-repo auth (thanks to @shekohex). + +### Improvements +- Desktop: switch between local and remote OpenChamber instances, plus a thinner runtime. +- Mobile: split Agent/Model controls and a quick commands button with autocomplete (Commands/Agents/Files) for easier input (thanks to @Jovines, @gsxdsm). +- Terminal/Syntax: font size controls and Phoenix file extension support (thanks to @shekohex). +- Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5). +- GitHub: PR description generation supports optional extra context (thanks to @nelsonPires5). + +### Fixes +- VSCode: improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" for sessions/models/agents. +- Web: fixed missing icon when installing the Android PWA (thanks to @nelsonPires5). + +## VS Code + +### New +- Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm). + +### Improvements +- Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5). + +### Fixes +- Improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" sessions. diff --git a/changelog/1.6.5.md b/changelog/1.6.5.md new file mode 100644 index 00000000..6dc14b6b --- /dev/null +++ b/changelog/1.6.5.md @@ -0,0 +1,29 @@ +--- +version: 1.6.5 +date: 2026-02-06 +--- + +## App + +### New +- Settings: added an OpenCode CLI path override. +- Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm). +- Diff/Plans: added inline comment drafts (thanks to @nelsonPires5). +- Sessions: you can now rename projects directly from the sidebar, and issue/PR pickers are easier to scan when starting from GitHub context (thanks to @shekohex, @gsxdsm). +- UI: added Vitesse Dark and Vitesse Light theme presets. + +### Improvements +- Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm). +- Worktrees: improved worktree flow reliability, including cleaner handling when a worktree was already removed outside the app (thanks to @gsxdsm). +- Terminal: improved Android keyboard behavior and removed distracting native caret blink in terminal inputs (thanks to @shekohex). +- Reliability: improved OpenCode binary resolution and HOME-path handling across runtimes for steady local startup. + +## VS Code + +### New +- Settings: added an OpenCode CLI path override. +- Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm). + +### Improvements +- Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm). +- Reliability: improved OpenCode binary resolution and HOME-path handling for steady local startup. diff --git a/changelog/1.6.6.md b/changelog/1.6.6.md new file mode 100644 index 00000000..082c6b90 --- /dev/null +++ b/changelog/1.6.6.md @@ -0,0 +1,30 @@ +--- +version: 1.6.6 +date: 2026-02-09 +--- + +## App + +### New +- Desktop: added an `Open In` button to open the current workspace in Finder, Terminal, and supported editors with remembered app preference (thanks to @yulia-ivashko). +- Git: added push/pull with remote selection, plus in-app rebase/merge flows with improved remote inference and clearer conflict handling (thanks to @gsxdsm). +- Notifications: added smarter templates with concise summaries (thanks to @gsxdsm). + +### Improvements +- Desktop: redesigned the main workspace with a dedicated Git sidebar and bottom terminal dock. +- Header: combined Instance, Usage, and MCP into one services menu. +- Git: reorganized the Git workspace with improved in-app PR workflows. +- Files: improved editing with breadcrumbs, better draft handling, smooth editor interactions, and more reliable directory navigation from file context (thanks to @nelsonPires5). +- Sessions: improved status behavior, faster mobile session switching with running/unread indicators, and clearer worktree labels when branch name differs (thanks to @Jovines, @gsxdsm). +- Terminal: improved input responsiveness with a persistent low-latency transport for steady typing (thanks to @shekohex). + +### Fixes +- Usage: added per-model quota breakdowns with collapsible groups, and fixed provider dropdown scrolling (thanks to @nelsonPires5, @gsxdsm). +- Mobile: fixed chat input layout issues on small screens (thanks to @nelsonPires5). +- Reliability: fixed OpenCode auth pass-through and proxy env handling to reduce intermittent connection/auth issues (thanks to @gsxdsm). + +## VS Code + +### Fixes +- Usage: added per-model quota groups in the header and fixed provider dropdown scrolling for easier usage tracking (thanks to @nelsonPires5, @gsxdsm). +- Reliability: fixed OpenCode auth pass-through/proxy behavior to reduce failed extension requests (thanks to @gsxdsm). diff --git a/changelog/1.6.7.md b/changelog/1.6.7.md new file mode 100644 index 00000000..58fbfaa4 --- /dev/null +++ b/changelog/1.6.7.md @@ -0,0 +1,30 @@ +--- +version: 1.6.7 +date: 2026-02-10 +--- + +## App + +### New +- Voice: added built-in voice input and read-aloud responses with multiple providers (thanks to @gsxdsm). +- Git: added multi-remote push selection and smarter fork-aware pull request creation to reduce manual branch/remote setup (thanks to @gsxdsm). +- Usage: added usage pace and prediction indicators in the header and settings (thanks to @gsxdsm). +- Desktop: added multi-window support with a dedicated "New Window" action for parallel work across projects (thanks to @yulia-ivashko). + +### Improvements +- UI: refreshed header and settings layout, improved host switching, and upgraded the editor for smooth day-to-day navigation and editing. + +### Fixes +- Diff/Plans: fixed comment draft collisions and improved multi-line comment editing in plan and file workflows (thanks to @nelsonPires5). +- Notifications: stopped firing completion notifications for comment draft edits to reduce noisy alerts during review-heavy sessions (thanks to @nelsonPires5). +- Settings: added confirmation dialogs for destructive delete/reset actions to prevent accidental data loss. +- Reliability: fixed message loading edge cases, stabilized voice-mode persistence across restarts, and improved update flow behavior across platforms. + +## VS Code + +### New +- Added usage pace and prediction indicators in the header and settings to make quota usage trends easier to track (thanks to @gsxdsm). +- Added confirmation dialogs for destructive delete/reset actions to reduce accidental mistakes in settings and management flows. + +### Improvements +- Improved reliability for message loading. diff --git a/changelog/1.6.8.md b/changelog/1.6.8.md new file mode 100644 index 00000000..0135f500 --- /dev/null +++ b/changelog/1.6.8.md @@ -0,0 +1,33 @@ +--- +version: 1.6.8 +date: 2026-02-12 +--- + +## App + +### New +- Chat: added drag-and-drop attachments with inline image previews. + +### Improvements +- Chat: improved agent/model picking with fuzzy search across names and descriptions. +- Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm). +- Usage: when using remaining-quota mode, usage markers now invert direction to better match how remaining capacity is interpreted (thanks to @gsxdsm). + +### Fixes +- Sessions: fixed a sidebar issue where draft input could carry over when switching projects. +- Chat: improved quick navigation from the sessions list by adding double-click to jump into chat and auto-focus the draft input; also fixed mobile session return behavior (thanks to @gsxdsm). +- Desktop: fixed project selection in opened remote instances. +- Desktop: fixed opened remote instances that use HTTP (helpful for instances under tunneling). + +## VS Code + +### New +- Chat: added drag-and-drop attachments with inline image previews. + +### Improvements +- Chat: improved picker search with fuzzy matching on names and descriptions to speed up finding the right agent/model. +- Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm). +- Usage: remaining-quota mode now inverts usage markers (thanks to @gsxdsm). + +### Fixes +- Sessions: fixed previously selected session carry-over when navigating from chat / session draft and list of sessions. diff --git a/changelog/1.6.9.md b/changelog/1.6.9.md new file mode 100644 index 00000000..e19c038d --- /dev/null +++ b/changelog/1.6.9.md @@ -0,0 +1,34 @@ +--- +version: 1.6.9 +date: 2026-02-16 +--- + +## App + +### New +- Sessions: added a persistent project notes and todos panel (thanks to @gsxdsm). +- Sessions: introduced the ability to pin sessions within your groups for easy access. +- Settings: added a configurable Zen model for commit messages generation and summarization of notifications (thanks to @gsxdsm). +- Usage: added NanoGPT quota support and hardened provider handling (thanks to @nelsonPires5). + +### Improvements +- **UI: redesigned the workspace shell with a context panel, tabbed sidebars, and quicker navigation across chat, files, and reviews.** +- UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5). +- Diff: improved large diff rendering and interaction performance for smooth reviews on heavy changesets. +- Worktrees: shipped an upstream-first flow across supported runtimes (thanks to @yulia-ivashko). +- Git: improved pull request branch normalization and base/remote resolution to reduce PR setup mismatches (thanks to @gsxdsm). +- Reliability: startup now auto-detects and safely connects to an existing OpenCode server. + +### Fixes +- Chat: fixed file attachment issues and added exceeded-quota information. +- Desktop: restored desktop window geometry and position (thanks to @yulia-ivashko). +- Mobile: fixes for small-screen editor, terminal, and layout overlap issues (thanks to @gsxdsm, @nelsonPires5). + +## VS Code + +### New +- Usage: added NanoGPT quota provider support and improved provider wiring for steady usage reporting (thanks to @nelsonPires5). + +### Improvements +- Agent Manager / Worktrees: switched to an upstream-first worktree flow with stronger branch tracking (thanks to @yulia-ivashko). +- UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5). diff --git a/changelog/1.7.0.md b/changelog/1.7.0.md new file mode 100644 index 00000000..f6097170 --- /dev/null +++ b/changelog/1.7.0.md @@ -0,0 +1,24 @@ +--- +version: 1.7.0 +date: 2026-02-17 +--- + +## App + +### New +- UI: added a context overview panel with token usage, cost breakdown, and raw message inspection to make session debugging easier. + +### Improvements +- Chat: improved live streaming with part-delta updates and smarter auto-follow scrolling. +- Chat: Mermaid diagrams now render inline in assistant messages, with quick copy/download actions for easier sharing. +- Sessions: project icon and color customizations now persist reliably across restarts. +- Reliability: managed local OpenCode runtimes now use rotated secure auth and tighter lifecycle control across runtimes. +- Git/GitHub: improved backend reliability for repository and auth operations (thanks to @nelsonPires5). + +## VS Code + +### Improvements +- Chat: improved live streaming responsiveness with part-delta updates and smarter auto-follow scrolling during generation. +- Chat: Mermaid diagrams now render directly in messages, with quick copy/download actions for easier reuse. +- Reliability: managed runtime startup now rotates secure auth credentials and hardens API proxy auth forwarding for safer local connections (thanks to @yulia-ivashko). +- Reliability: extension startup/shutdown handling is more predictable. diff --git a/changelog/1.7.1.md b/changelog/1.7.1.md new file mode 100644 index 00000000..9760a5fd --- /dev/null +++ b/changelog/1.7.1.md @@ -0,0 +1,32 @@ +--- +version: 1.7.1 +date: 2026-02-18 +--- + +## App + +### New +- Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy. + +### Improvements +- Chat: slash commands now follow server command semantics (including multiline arguments). +- Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests. +- Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering. +- Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning. +- Skills: upgraded editing/install UX with better code editing, syntax-aware related files, and clearer location targeting across user/project .opencode and .agents scopes. +- Maintenance: removed deprecated GitHub Actions cloud runtime assets and docs to reduce setup confusion (thanks to @yulia-ivashko). + +### Fixes +- Mobile: fixed accidental abort right after tapping Send on touch devices. + +## VS Code + +### New +- Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy. + +### Improvements +- Chat: slash commands now follow server command semantics (including multiline arguments). +- Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests. +- Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering. +- Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning. +- Skills: upgraded editing/install UX with better code editing, syntax-aware related files, and clearer location targeting across user/project .opencode and .agents scopes. diff --git a/changelog/1.7.2.md b/changelog/1.7.2.md new file mode 100644 index 00000000..9e78ade6 --- /dev/null +++ b/changelog/1.7.2.md @@ -0,0 +1,32 @@ +--- +version: 1.7.2 +date: 2026-02-20 +--- + +## App + +### New +- UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5). + +### Improvements +- Chat: question prompts now guide you to unanswered items before submit. +- Chat: improved streaming activity rendering and session attention indicators. +- Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko). + +### Fixes +- Chat: fixed auto-send queue to wait for the active session to be idle before sending. +- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. + +## VS Code + +### New +- UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5). + +### Improvements +- Chat: question prompts now guide you to unanswered items before submit. +- Chat: improved streaming activity rendering and session attention indicators. +- Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko). + +### Fixes +- Chat: fixed auto-send queue to wait for the active session to be idle before sending. +- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. diff --git a/changelog/1.7.3.md b/changelog/1.7.3.md new file mode 100644 index 00000000..6da2b9d6 --- /dev/null +++ b/changelog/1.7.3.md @@ -0,0 +1,32 @@ +--- +version: 1.7.3 +date: 2026-02-21 +--- + +## App + +### New +- Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5). +- Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong). + +### Improvements +- Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong). +- UI: unified clipboard copy behavior across Desktop app, Web app, and VS Code extension. +- Reliability: improved startup environment detection by capturing login-shell environment snapshots. +- Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5). + +### Fixes +- Diff/Plans/Files: restored GitHub-style inline comments (thanks to @nelsonPires5). +- Terminal: restored terminal text copy behavior (thanks to @shekohex). + +## VS Code + +### New +- Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong). +- Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5). + +### Improvements +- Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong). +- UI: unified clipboard copy behavior. +- Reliability: improved startup environment detection by capturing login-shell environment snapshots. +- Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5). diff --git a/changelog/1.7.4.md b/changelog/1.7.4.md new file mode 100644 index 00000000..1c0e3e29 --- /dev/null +++ b/changelog/1.7.4.md @@ -0,0 +1,43 @@ +--- +version: 1.7.4 +date: 2026-02-24 +--- + +## App + +### New +- Chat: added fullscreen Mermaid preview, persisted default thinking variant selection, and hardened file-preview safety checks for a safer, more predictable message experience (thanks to @yulia-ivashko). +- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). +- Files: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). + +### Improvements +- Settings: redesigned the settings workspace with flatter, more consistent page layouts. +- Settings: improved agents and skills navigation by grouping entries by subfolder for easier management at scale (thanks to @nguyenngothuong). +- Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong). +- Sessions: expanded folder management with subfolders, cleaner organization actions, and clearer delete confirmations (thanks to @nguyenngothuong). +- Git/PR: moved commit-message and PR-description generation to active-session structured output. +- Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults. +- Notifications/Voice: moved utility model controls into AI Summarization as a Zen-only Summarization Model setting. +- Mobile: refreshed drawer and session-status layouts (thanks to @Jovines). +- Desktop: improved remote instance URL handling (thanks to @shekohex). + +### Fixes +- Chat: improved streaming smoothness and stability with buffered updates and runtime fixes. + +## VS Code + +### New +- Chat: added fullscreen Mermaid preview, improved default thinking-variant persistence, and hardened file-preview safety checks for a more predictable message experience (thanks to @yulia-ivashko). +- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). +- Chat: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). + +### Improvements +- Settings: redesigned the settings workspace with flatter, more consistent layouts. +- Settings: grouped agents/skills navigation by subfolder to make larger setups easier to manage (thanks to @nguyenngothuong). +- Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong). +- Sessions: expanded folder management with subfolders, cleaner organization controls, and clearer delete confirmations (thanks to @nguyenngothuong). +- Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults. +- Reliability: aligned file read/raw endpoint safety checks with other runtimes (thanks to @yulia-ivashko). + +### Fixes +- Chat: improved streaming smoothness and runtime stability with buffered updates and reliability fixes. diff --git a/changelog/1.7.5.md b/changelog/1.7.5.md new file mode 100644 index 00000000..3f9d046b --- /dev/null +++ b/changelog/1.7.5.md @@ -0,0 +1,28 @@ +--- +version: 1.7.5 +date: 2026-02-25 +--- + +## App + +### New +- Web: added `OPENCODE_HOST` support (thanks to @colinmollenhour). + +### Improvements +- UI: moved projects into a dedicated sidebar rail and tightened the layout. +- Sessions: reduced session-switching overhead to make chat context changes feel more immediate. +- Reliability/Auth: migrated session auth storage to signed JWTs with a persistent secret. +- Mobile/Chat: refined message spacing and removed the top scroll shadow for a cleaner small-screen reading experience (thanks to @Jovines). + +### Fixes +- Chat: fixed an issue where messages could occasionally duplicate or disappear during active conversations. +- Mobile: pending permission prompts now recover after reconnect/resume instead of getting lost mid-run (thanks to @nelsonPires5). +- Web/Mobile: fixed in-app update flow in containerized setups. + +## VS Code + +### Improvements +- Sessions: improved switching performance. + +### Fixes +- Chat: fixed cases where messages could duplicate or disappear during active conversations. diff --git a/changelog/1.8.0.md b/changelog/1.8.0.md new file mode 100644 index 00000000..2d66ea82 --- /dev/null +++ b/changelog/1.8.0.md @@ -0,0 +1,51 @@ +--- +version: 1.8.0 +date: 2026-02-28 +--- + +## App + +### New +- Desktop: added SSH remote instance support with dedicated lifecycle and UX flows (thanks to @shekohex). +- Projects: added project icon customization with upload/remove and automatic favicon discovery from your repository (thanks to @shekohex). +- Projects: added header project actions on Web and Mobile. +- Desktop: added dynamic window titles that reflect active project and remote context (thanks to @shekohex). +- Remote Tunnel: added tunnel settings with quick/named modes, secure one-time connect links (with QR), and saved named-tunnel presets/tokens (thanks to @yulia-ivashko). +- UI: added an expandable project rail with project names, a settings toggle, and saved expansion state for easier navigation in multi-project setups (thanks to @nguyenngothuong). +- UI/Files: added file-type icons across file lists, tabs, and diffs (thanks to @shekohex). +- Files: added a read-only highlighted view with a quick toggle back to edit mode (thanks to @shekohex). +- Deployment: added Docker deployment support with safer container defaults and terminal shell fallback (thanks to @nzlov). +- Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov). +- Usage: added Ollama Cloud quota provider support (thanks to @iamhenry). + +### Improvements +- Projects/Desktop: project actions can also open SSH-forwarded URLs. +- UI: expanded sprite-based file and folder icons across Files, Diff, and Git views (thanks to @shekohex). +- Files: markdown preview now handles frontmatter more cleanly. +- Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex). +- Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705). +- Chat: edit tools now use the same diff style as the dedicated Diff view (thanks to @shekohex). +- Chat: pasted absolute paths are now treated as normal messages. +- Chat: upgraded Mermaid rendering with a cleaner diagram view plus quick copy/download actions (thanks to @shekohex). +- Notifications: improved child-session notification detection to reduce missed or misclassified subtask updates (thanks to @Jovines). +- Reliability: improved Windows compatibility across git status checks, OpenCode startup, path normalization, and session merge behavior (thanks to @mmereu). + +### Fixes +- Chat: fixed queued sends for inactive sessions. + +## VS Code + +### New +- Chat: added drag-and-drop file attachments (thanks to @Asuta). +- Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov). +- Usage: added Ollama Cloud quota provider support (thanks to @iamhenry). + +### Improvements +- Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex). +- Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705). +- Chat: pasted absolute paths are now treated as normal messages. +- Chat: edit tools now use improved diffs (thanks to @shekohex). +- UI: improved long filename handling in file-mention autocomplete (thanks to @haofeng0705). + +### Fixes +- Chat: fixed queued send behavior for inactive sessions to reduce accidental sends to the wrong conversation. diff --git a/changelog/1.8.1.md b/changelog/1.8.1.md new file mode 100644 index 00000000..c9dff161 --- /dev/null +++ b/changelog/1.8.1.md @@ -0,0 +1,14 @@ +--- +version: 1.8.1 +date: 2026-02-28 +--- + +## App + +### Fixes +- Web/Auth: fixed an issue where non-tunnel browser sessions could incorrectly show a tunnel-only lock screen; normal auth flow now appears unless a tunnel is actually active. + +## VS Code + +### Improvements +- No notable changes. diff --git a/changelog/1.8.2.md b/changelog/1.8.2.md new file mode 100644 index 00000000..b63bd021 --- /dev/null +++ b/changelog/1.8.2.md @@ -0,0 +1,31 @@ +--- +version: 1.8.2 +date: 2026-03-01 +--- + +## App + +### New +- Chat: added a new "Share as image" action (thanks to @Jovines). + +### Improvements +- Updates: hardened the self-update flow with safer release handling and fallback behavior. +- Chat: improved message readability with cleaner tool/reasoning rendering and less noisy activity timing in busy conversations (thanks to @nelsonPires5). +- Desktop/Chat: permission toasts now include session context and a clearer permission preview (thanks to @nelsonPires5). +- Notifications/Voice: consolidated TTS and summarization service wiring for steady text-to-speech and summary flows (thanks to @nelsonPires5). + +### Fixes +- VSCode: fixed live streaming edge cases for event endpoints with query/trailing-slash variants. +- Reliability: improved event-stream/session visibility handling when the app is hidden or restored. +- Windows: fixed CLI/runtime path and spawn edge cases to reduce startup and command failures on Windows (thanks to @plfavreau). +- Deployment: fixed Docker build/runtime issues (thanks to @nzlov). + +## VS Code + +### Improvements +- Chat: improved message readability with cleaner tool/reasoning rendering and more polished markdown presentation in long responses. +- Chat Activity: timing display is now less noisy, with detailed end timestamps shown on hover when you need them (thanks to @nelsonPires5). +- Reliability: improved panel visibility/reconnect handling. + +### Fixes +- Reliability: fixed live-streaming edge cases for event endpoints with query/trailing-slash variants. diff --git a/changelog/1.8.3.md b/changelog/1.8.3.md new file mode 100644 index 00000000..7ec02528 --- /dev/null +++ b/changelog/1.8.3.md @@ -0,0 +1,33 @@ +--- +version: 1.8.3 +date: 2026-03-02 +--- + +## App + +### New +- Chat: added user-message display controls for plain-text rendering and sticky headers. +- Chat: model picker now supports collapsible provider groups and remembers expanded state between sessions. + +### Improvements +- Chat/UI: overhauled the context panel with reusable tabs and embedded session chat (_beta_). +- Git: refined Git sidebar tab behavior and spacing, plus bulk-revert with confirmations for easier cleanup. +- Settings: reorganized chat display settings into a more compact two-column layout. + +### Fixes +- Chat: improved code block presentation with cleaner action alignment, restored horizontal scrolling, and polished themed highlighting across chat messages and tool output (thanks to @nelsonPires5). +- Diff: added quick open-in-editor actions from diff views that jump to the first changed line. +- Git: fixed commit staging edge cases by filtering stale deleted paths before staging. +- Git/Worktrees: restored branch rename/edit controls in draft sessions when working in a worktree directory. +- Mobile/UI: fixed session-title overflow in compact headers (thanks to @iamhenry). + +## VS Code + +### New +- Chat: added user-message display options for plain-text rendering and sticky headers, with preferences persisted in settings. + +### Improvements +- Chat: model picker provider groups are now collapsible, with expanded/collapsed state remembered. + +### Fixes +- Chat: improved code block readability with cleaner header actions, restored horizontal scrolling, and themed highlighting in markdown and tool output (thanks to @nelsonPires5). diff --git a/changelog/1.8.4.md b/changelog/1.8.4.md new file mode 100644 index 00000000..bb943504 --- /dev/null +++ b/changelog/1.8.4.md @@ -0,0 +1,45 @@ +--- +version: 1.8.4 +date: 2026-03-04 +--- + +## App + +### New +- Chat: added clickable file-path links in assistant messages (including line targeting) (thanks to @yulia-ivashko). +- Chat: added a new `Changes` tool-output mode that expands edits/patches by default while keeping activity readable (thanks to @iamhenry). +- Chat/GitHub: added Attach menu actions to link GitHub issues and PRs directly in any session. +- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). +- Sessions: added active-project session search in the sidebar, with clearer match behavior and easier clearing during filtering (thanks to @KJdotIO). +- Mobile/Projects: added long-press project editing with a bottom-sheet panel and drag-to-reorder support (thanks to @Jovines). +- Web/PWA/Android: added improved install UX with pre-install naming and manifest shortcut updates (thanks to @shekohex). + +### Improvements +- Chat: in-progress tools now appear immediately and stay live in collapsed activity view (thanks to @nelsonPires5). +- Chat: improved long user-message behavior in sticky mode with bounded height, internal scrolling, and cleaner action hit targets. +- Chat/Files: improved `@` file discovery and mention behavior with project-scoped search and more consistent matching. +- Worktrees/GitHub: streamlined worktree creation with a unified flow for branches, issues, and PR-linked sessions, including cleaner validation and faster branch loading. +- Files/Desktop: improved `Open In` actions from file views/editors, including app selection behavior and tighter integration for opening focused files (thanks to @yulia-ivashko). +- UI: interactive controls now consistently show pointer cursors. +- Security/Reliability: hardened terminal auth, tightened skill-file path protections, and reduced sensitive request logging exposure for safer day-to-day usage (thanks to @yulia-ivashko). + +### Fixes +- Chat/Files: restored user image previews/fullscreen navigation and improved text-selection action placement on narrow layouts. +- Worktrees/Git: fixed branch/PR source resolution (including slash-named branches and fork PR heads). +- Git: fixed a PR panel refresh loop that could trigger repeated updates and unstable behavior in the PR section (thanks to @yulia-ivashko). + +## VS Code + +### New +- Chat: added Save as image support for assistant messages. +- Chat: added a new `Changes` tool-output mode that opens edit/write/patch results by default while keeping activity easier to scan. +- Chat/GitHub: added Attach menu support for linking pull requests into your draft with picker-based selection and attached PR context. +- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). + +### Improvements +- Chat Activity: active tools now appear immediately and continue updating in collapsed view (thanks to @nelsonPires5). +- Chat: file references in assistant responses are now clickable (including line targets). +- Chat/Files: improved `@` file mentions with active-project scoping and more consistent search behavior. +- Chat: simplified attachment actions with a direct Attach files flow. +- Chat: improved sticky user-message behavior with bounded height and internal scrolling. +- UI: interactive controls now consistently use pointer cursors. diff --git a/changelog/1.8.5.md b/changelog/1.8.5.md new file mode 100644 index 00000000..132de5a4 --- /dev/null +++ b/changelog/1.8.5.md @@ -0,0 +1,31 @@ +--- +version: 1.8.5 +date: 2026-03-04 +--- + +## App + +### Improvements +- Desktop: startup now opens the app shell much earlier while background services continue loading. +- VSCode: edit-style tool results now open directly in a focused diff view. +- UI/Theming: unified loading logos and startup screens across runtimes, with visuals that better match your active theme. +- Projects/UI: project icons now follow active theme foreground colors consistently. +- Reliability: improved early startup recovery. +- Mobile/PWA: respected OS rotation lock by removing forced orientation behavior in the web app shell (thanks to @theluckystrike). + +### Fixes +- Desktop/macOS: fixed early title updates that could shift traffic-light window controls on startup. +- VSCode: cleaned up extension settings by removing duplicate display controls and hiding sections that do not apply in the editor environment. +- Chat: fixed focus-mode composer layout. +- Tunnel/CLI: fixed one-time Cloudflare tunnel connect links in CLI output for `--try-cf-tunnel` (thanks to @plfavreau). + +## VS Code + +### Improvements +- Chat/Files: edit-style tool results now open in a VS Code diff editor with focus on the first changed line. +- Chat: improved focus-mode input layout. +- UI/Theming: aligned startup/loading branding with the active theme for a more consistent look during connection and auth states. +- Reliability: improved startup recovery for provider/model/agent loading. + +### Fixes +- Settings: removed duplicate chat display options from Appearance and hid extension-irrelevant sections. diff --git a/changelog/1.8.6.md b/changelog/1.8.6.md new file mode 100644 index 00000000..03540851 --- /dev/null +++ b/changelog/1.8.6.md @@ -0,0 +1,38 @@ +--- +version: 1.8.6 +date: 2026-03-13 +--- + +## App + +### New +- Chat/Settings: added richer chat render controls, including sorted/live behavior, compact live Activity previews, and options to keep Bash/Edit outputs open by default. +- Sessions/GitHub: overhauled sidebar session loading and GitHub PR tracking, and added a new minimal sidebar sessions mode on Desktop/Web. + +### Improvements +- Tunnel/CLI: rebuilt tunnel workflows around clearer managed modes and provider-aware lifecycle commands, with safer startup checks, improved diagnostics, and cleaner CLI output for everyday remote access (thanks to @yulia-ivashko). +- Chat: completed a turn-based rendering pipeline that keeps streaming, activity rows, and tool progress more stable in long runs, with smooth auto-follow and fewer jumpy updates. +- Sessions: worktrees with active sessions now surface earlier in the sidebar (thanks to @GhostFlying). +- Projects/Desktop: project action inputs now submit with Enter, and Desktop settings now include a spell-check toggle for writing comfort (thanks to @DocterZed). +- Mobile/PWA: install metadata now honors orientation lock consistently. + +### Fixes +- Chat: fixed narrow-layout send behavior for modified Enter shortcuts (thanks to @eengad). +- Chat: fixed queue-button behavior and focus-mode composer sizing. + +## VS Code + +### New +- Chat/Settings: added richer render controls with sorted/live modes, compact Activity previews, and default-open Bash/Edit options. + +### Improvements +- Chat: completed a turn-based render pipeline with steady streaming, smooth auto-follow, and more stable activity/tool progress behavior during long responses. +- Reliability: switched extension event streaming to an SDK-based SSE proxy path. +- Settings: chat display changes now sync across sidebar and session editor views right away. +- Sessions: worktrees with active chats are now prioritized in the sidebar (thanks to @GhostFlying). +- Sessions: archived-session behavior in the extension is now scoped to the active workspace with cleaner sidebar presentation. +- Diff: edit result comparisons now preserve original file extensions in virtual "before" files. + +### Fixes +- Chat: fixed modified Enter send shortcuts in narrow layouts (thanks to @eengad). +- Chat: fixed queue button behavior and focus-mode composer sizing (thanks to @shekohex). diff --git a/changelog/1.8.7.md b/changelog/1.8.7.md new file mode 100644 index 00000000..65a62a77 --- /dev/null +++ b/changelog/1.8.7.md @@ -0,0 +1,19 @@ +--- +version: 1.8.7 +date: 2026-03-13 +--- + +## App + +### Improvements +- CLI: hardened entrypoint detection across direct, symlinked, and shim-based launches to keep startup behavior consistent across package managers (thanks to @shekohex). +- Deployment/Docker: improved `docker run` startup behavior and entrypoint handling (thanks to @nzlov). + +### Fixes +- CLI: fixed a startup regression in global npm/bun installs where wrapper or symlinked `openchamber` entrypoints could exit without output on commands like `--version` or `status`. +- Windows/Web: daemon startup and Git operations no longer flash extra console windows (thanks to @SergioChan). + +## VS Code + +### Improvements +- No notable changes. diff --git a/changelog/1.9.0.md b/changelog/1.9.0.md new file mode 100644 index 00000000..0c6a72ff --- /dev/null +++ b/changelog/1.9.0.md @@ -0,0 +1,39 @@ +--- +version: 1.9.0 +date: 2026-03-20 +--- + +## App + +### New +- Chat/Permissions: added a session-based permission auto-accept toggle and polished permission-shield visuals for quicker, clearer approval workflows. +- Git: refreshed history visuals and added clearer branch-boundary markers. +- Git: added remote removal from sync workflows and stabilized polling to reduce noisy background refreshes (thanks to @yulia-ivashko). +- Files: added debounced editor auto-save (thanks to @nguyenngothuong). + +### Improvements +- UI/Navigation: delivered a major sidebar redesign with clearer hierarchy, unified action patterns, and improved session organization (thanks to @yulia-ivashko). +- Chat: reduced streaming CPU usage and background churn with steady turn rendering, debounced updates, and less storage thrash during long runs. +- Panels/UI: softened panel resize affordances and tightened service dropdown/layout spacing for a cleaner, less distracting workspace. +- Files: reworked search UI for searching in files. +- Desktop/macOS: lowered the minimum supported macOS version to Ventura (13.0), expanding compatibility on older systems (thanks to @craigharman). +- Updates/Reliability: unified update-check behavior across runtimes. + +### Fixes +- Chat: fixed scroll-to-latest and timeline tracking behavior. +- Settings/UI: fixed settings scrolling on mobile, made outside-click closing immediate, and reduced settings load churn/CPU spikes. +- Reliability/Platform: improved Windows path/process behavior and restored macOS PTY/microphone compatibility. + +## VS Code + +### New +- Chat/Permissions: added per-session permission auto-accept controls to reduce repetitive approval prompts in iterative workflows. + +### Improvements +- Navigation/UI: refreshed the extension shell with a redesigned sidebar, clearer hierarchy, and cleaner session grouping. +- Chat/Performance: reduced streaming overhead and update churn for smooth long responses, steady activity rendering, and fewer UI stalls in heavy sessions. +- Chat: improved follow-to-latest behavior and timeline stability. +- Reliability/Windows: normalized workspace drive-letter handling and hid background process windows to reduce startup/session mismatches (thanks to @zerone0x). + +### Fixes +- Sessions: improved sidebar organization and interaction stability, including fixes for drag/rename edge cases during quick session management. diff --git a/changelog/1.9.1.md b/changelog/1.9.1.md new file mode 100644 index 00000000..8e6d8a53 --- /dev/null +++ b/changelog/1.9.1.md @@ -0,0 +1,32 @@ +--- +version: 1.9.1 +date: 2026-03-20 +--- + +## App + +### New +- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). + +### Improvements +- Chat/GitHub: linked issues and pull requests now appear as user-message attachments and open reliably across runtimes. +- Settings/MCP: adding MCP servers now consistently respects user vs project scope, preventing user-scope entries from being written into project config files. +- VSCode/Reliability: managed server startup now imports login-shell environment values and normalizes Windows workspace paths. +- Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier discovery (thanks to @nguyenngothuong). +- Files: file trees now refresh incrementally after create/rename/delete actions (thanks to @nguyenngothuong). +- Sessions/Worktrees: draft sessions now resolve the correct project when opened from worktree paths (thanks to @yulia-ivashko). + +### Fixes +- Sessions/UI: restored Project Notes access in the sidebar, polished notes/todo editing, and fixed project action overlap. +- Desktop: improved stale server-process cleanup on startup and fixed external link opening behavior (thanks to @jwcrystal). + +## VS Code + +### New +- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). + +### Improvements +- Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier session discovery (thanks to @nguyenngothuong). +- Chat/GitHub: linked issues and pull requests now show as user-message attachments and open reliably through extension-safe external link handling. +- Settings/MCP: adding MCP servers now correctly respects user scope. +- Reliability: managed server startup now imports login-shell environment values and normalizes Windows paths to reduce session-loading mismatches and proxy-related connection issues. diff --git a/changelog/1.9.10.md b/changelog/1.9.10.md new file mode 100644 index 00000000..6b114ce5 --- /dev/null +++ b/changelog/1.9.10.md @@ -0,0 +1,34 @@ +--- +version: 1.9.10 +date: 2026-04-28 +--- + +## App + +### New +- UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu). +- VSCode/Windows: normalized Windows drive-letter paths in extension webviews and added MiniMax/Ollama quota support. + +### Improvements +- Chat/Models: unified the model picker across desktop and mobile with a cleaner selection flow (thanks to @daveotero). +- Projects: improved the project directory picker with expandable pinned folders and better file/path handling. +- Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior. + +### Fixes +- Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD). +- Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, ignored stale downgrade update prompts, and improved stream/proxy recovery with heartbeat support. + +## VS Code + +### New +- UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu). +- Usage: added MiniMax and Ollama quota support. + +### Improvements +- Chat/Models: unified the model picker with a cleaner selection flow (thanks to @daveotero). +- Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior. +- Windows: normalized drive-letter paths in extension webviews (thanks to @sdunfeng). +- Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, and improved stream/proxy recovery with heartbeat support (thanks to @An-jinu). + +### Fixes +- Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD). diff --git a/changelog/1.9.2.md b/changelog/1.9.2.md new file mode 100644 index 00000000..cc912ea7 --- /dev/null +++ b/changelog/1.9.2.md @@ -0,0 +1,28 @@ +--- +version: 1.9.2 +date: 2026-03-31 +--- + +## App + +### New +- Worktrees/Multi-Run: added instant draft-first worktree creation and redesigned the multi-run launcher with a cleaner, faster flow for parallel runs. +- CLI/Server: added `--foreground` for process-manager deployments, made managed server hostname configurable, and added an explicit `--host` option with safer localhost defaults (thanks to @colinmollenhour, @rapidrabbit76, @yulia-ivashko). + +### Improvements +- Chat/Performance: rebuilt live session sync and streaming updates to cut render churn, reduce CPU spikes, and keep long-running chats smooth and more stable across runtimes. +- VSCode/UI: polished the extension chat and sidebar with improved spacing, tooltips, a resizable sessions pane, and file-to-chat mention flows from Explorer. +- Models/Providers: improved custom provider model metadata loading and caching (thanks to @ZeppLu). +- Docker/Deployments: improved container defaults, including UID 1000 user behavior, non-fatal SSH key generation, and better localhost detection in container networking (thanks to @yulia-ivashko). + +### Fixes +- Web/PWA: fixed manifest behavior behind Cloudflare Access (thanks to @arthurfiorette). + +## VS Code + +### Improvements +- Chat/Performance: overhauled live sync and streaming updates to reduce re-render churn and keep long-running chats smooth in the extension. +- Sessions/UI: refined sidebar behavior with cleaner spacing, better truncation/tooltips, and a resizable sessions pane for tighter workspace control. +- Chat/Editor integration: improved Explorer file insertion. +- Reliability: startup now queues bridge and stream requests until the API is ready. +- Chat: reasoning content now renders through the markdown pipeline. diff --git a/changelog/1.9.3.md b/changelog/1.9.3.md new file mode 100644 index 00000000..1edc54b1 --- /dev/null +++ b/changelog/1.9.3.md @@ -0,0 +1,43 @@ +--- +version: 1.9.3 +date: 2026-03-01 +--- + +## App + +### New +- VSCode/Files: added file stat support in the extension bridge (thanks to @geekifan). +- Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero). +- Files: added HTML preview support in the file viewer (thanks to @nguyenngothuong). +- Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong). + +### Improvements +- Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232). +- Desktop/Performance: reduced Tauri shell CPU/GPU overhead during longer sessions. +- Sessions/Drafts: draft chat config now stays synced with the selected draft target directory. +- Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong). +- Desktop/Settings: window vibrancy now correctly controls macOS window transparency, and settings copy now clarifies when full transparency changes take effect. +- Reliability/Proxy: hardened OpenCode proxy header handling (including identity-encoding normalization, compression-header cleanup, hop-by-hop response-header stripping) and suppressed expected SSE close noise. +- Terminal/Reliability: switched terminal transport to a pure WebSocket path with fallback handling. + +### Fixes +- Mobile/Settings: fixed lingering settings drawers and removed extra top spacing for a cleaner, less obstructed mobile layout (thanks to @Jovines). +- Git/Worktrees: fixed worktree detection and reset stale integration state when switching contexts. +- Reliability/Proxy: restored proxied chat event streaming. +- Usage/Providers: added ZhipuAI quota tracking and fixed MiniMax coding-plan and GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte). + +## VS Code + +### New +- Files/Markdown: added filesystem stat support in the extension bridge to validate markdown targets reliably before file handling flows (thanks to @geekifan). +- Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero). +- Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong). + +### Improvements +- Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232). +- Sessions/Drafts: draft chat config now stays aligned with the active draft target directory. +- Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong). +- Reliability/Streaming: proxy handling now normalizes identity encoding, strips conflicting compression headers and hop-by-hop response headers, and suppresses expected upstream SSE close errors to reduce noisy disconnect failures (thanks to @jwcrystal, @Jovines, @JiwaniZakir, @shekohex). + +### Fixes +- Usage: added ZhipuAI quota tracking and fixed MiniMax coding-plan plus GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte). diff --git a/changelog/1.9.4.md b/changelog/1.9.4.md new file mode 100644 index 00000000..54918490 --- /dev/null +++ b/changelog/1.9.4.md @@ -0,0 +1,34 @@ +--- +version: 1.9.4 +date: 2026-04-07 +--- + +## App + +### Improvements +- Chat/Performance: reduced streaming render churn across the app. +- Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko). +- Usage: refreshed MiniMax CN coding-plan quota data (thanks to @nzlov). + +### Fixes +- Settings/Magic Prompts: added a dedicated Magic Prompts page with editable templates for commit/PR generation, PR and issue reviews, failed-check/comment analysis, and merge/cherry-pick conflict resolution. +- Chat/Scrolling: fixed jumpy follow behavior and restored stable bottom-resume/live-compaction updates. +- Reliability/Streaming: improved reconnect, retry, and directory-aware event routing to reduce stuck session/subagent states after transient disconnects (thanks to @jwcrystal, @daveotero). +- Models: added defensive handling for missing model pricing/capability metadata (thanks to @Chi-square-test). +- Desktop/Performance: removed costly window translucency and reduced duplicate notification triggers for a cooler, less noisy desktop experience. +- Startup/Remote: restored remote provider startup behavior and tightened host/port detection to reduce false startup failures. + +## VS Code + +### New +- Reliability/Streaming: added loading timeouts, automatic SSE reconnect, and message retry behavior (thanks to @jwcrystal). + +### Improvements +- Reliability/Windows: normalized workspace path handling in SSE event lookup to keep live session updates working consistently on Windows (thanks to @widipa). +- Chat/Performance: reduced streaming re-render fanout and status-row churn for smooth long responses in the editor panel. +- Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko). + +### Fixes +- Sessions/Streaming: fixed directory-aware event routing and post-reconnect session resync (thanks to @daveotero, @jwcrystal). +- Chat/Scrolling: fixed scroll jumps and stabilized follow-to-latest behavior. +- Models: added defensive fallbacks for missing model cost/capability metadata (thanks to @Chi-square-test). diff --git a/changelog/1.9.5.md b/changelog/1.9.5.md new file mode 100644 index 00000000..be1dfb4f --- /dev/null +++ b/changelog/1.9.5.md @@ -0,0 +1,36 @@ +--- +version: 1.9.5 +date: 2026-04-14 +--- + +## App + +### New +- Security/Auth: added passkey sign-in for protected instances and new 1-week/30-day session expiration options (thanks to @daveotero, @pm0u). +- Voice: added OpenAI-compatible custom server support for both text-to-speech and speech-to-text, including configurable TTS model/pitch/volume and stricter custom URL validation for safer setup (thanks to @ablepharus). + +### Improvements +- Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery to keep live updates smooth under heavy activity (thanks to @jwcrystal). +- Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups when opening subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal). + +### Fixes +- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). +- Chat/Reliability: fixed question-tool content disappearing after refresh and hardened subagent/session recovery paths. +- Git/UI: restored Git changes panel visibility and sidebar sync (thanks to @jwcrystal). +- Desktop/Startup: delivered a more guided first-launch and smart recovery flow, plus startup and remote-window interaction fixes to reduce early-session friction (thanks to @jwcrystal). +- Usage: added Zhipu AI Coding Plan tracking and restored model-variant compatibility with older OpenCode runtimes (thanks to @cainiao1992, @Chi-square-test). + +## VS Code + +### New +- Usage: added Zhipu AI Coding Plan tracking (thanks to @cainiao1992). + +### Improvements +- Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery for steady live updates in busy workspaces (thanks to @jwcrystal). +- Task/Reliability: hardened subagent session resolution and polling lifecycle handling to reduce silent task failures (thanks to @jwcrystal). +- Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups for subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal). + +### Fixes +- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). +- Chat/Reliability: fixed question-tool content disappearing after refresh (thanks to @jwcrystal). +- Models: restored model-variant compatibility with newer OpenCode runtimes (thanks to @Chi-square-test). diff --git a/changelog/1.9.6.md b/changelog/1.9.6.md new file mode 100644 index 00000000..17efdf53 --- /dev/null +++ b/changelog/1.9.6.md @@ -0,0 +1,33 @@ +--- +version: 1.9.6 +date: 2026-04-17 +--- + +## App + +### New +- Reliability/Streaming: switched live message events to a WebSocket-first transport with SSE fallback, added response compression, and hardened proxy/compression handling (thanks to @geekifan, @jwcrystal). +- Sessions/Scheduled Tasks: added scheduled task creation and management with locale-aware scheduling. +- Files: added a full Go to Line workflow (toolbar + shortcut + dialog) and a new Copy Relative Path action (thanks to @coldbrow). +- Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow). +- Desktop: added quick open and a LAN access toggle, plus safer quit behavior around scheduled tasks (thanks to @An-jinu). +- Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in messages (thanks to @ricautomation). + +### Improvements +- Sessions/Worktrees: enforced session worktree isolation and tightened session-switch safety. +- Files: file trees now auto-refresh when files change outside the app (thanks to @jwcrystal). +- Settings/Skills: skills are now sorted within groups (thanks to @tomzx). + +### Fixes +- Chat/Requests: restored blocking request visibility in sub-sessions, scoped auto-approve to the active session tree, and reduced noisy auto-approved notifications during multi-session work. + +## VS Code + +### New +- Reliability/Streaming: moved to a WebSocket-first message stream with SSE fallback and added safer compression handling. +- Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow). +- Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in rendered messages (thanks to @ricautomation). + +### Improvements +- Reliability: improved startup shell detection to avoid false OpenCode discovery on POSIX login shells. +- Sessions/Worktrees: enforced worktree isolation for session and Git flows. diff --git a/changelog/1.9.7.md b/changelog/1.9.7.md new file mode 100644 index 00000000..824c37c8 --- /dev/null +++ b/changelog/1.9.7.md @@ -0,0 +1,36 @@ +--- +version: 1.9.7 +date: 2026-04-22 +--- + +## App + +### New +- Desktop: added an Electron desktop runtime in parallel with the current Tauri app, with Electron planned to become the default path in an upcoming release. +- Plans/Notes/Todos: added editable project plans from assistant messages, external plan upload, configurable planning magic prompts, and quicker note/todo handoff into new sessions or worktrees. +- Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete (thanks to @youfch). +- Files/Git: added a file-change summary bar and auto-refresh for open files changed outside the app. + +### Improvements +- Settings/MCP: improved MCP auth flow with better remote-config support and clearer diagnostics, and aligned config resolution with OpenCode behavior (thanks to @daveotero, @cyan). +- Reliability/Chat: hardened bootstrap and stream-connection recovery, preserved session/connect state, and reduced streaming UI churn. + +### Fixes +- Sessions/UI: added bulk session selection in the sidebar and fixed pinned sessions (thanks to @yart). +- Git/Worktrees: improved branch/worktree reliability by allowing checkout with uncommitted changes, tightening worktree cache invalidation, and reducing incorrect remote prefetches (thanks to @jwcrystal, @jasonalsing). +- Web/PWA: added install orientation controls and fixed loopback-origin handling for web push notifications in local setups (thanks to @vhqtvn, @yart). + +## VS Code + +### New +- Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete when building prompt context (thanks to @youfch). + +### Improvements +- Files: open editors now refresh file content after external changes. +- Settings/MCP: improved MCP auth flow with remote config support and clearer diagnostics (thanks to @daveotero). +- Chat/Questions: single-choice questions now use radio selection. +- Reliability: config resolution now matches OpenCode behavior more closely. +- Reliability/Streaming: strengthened bootstrap and connection recovery paths. + +### Fixes +- Sessions/UI: added bulk selection in the sessions sidebar and fixed pinned sessions (thanks to @yart). diff --git a/changelog/1.9.8.md b/changelog/1.9.8.md new file mode 100644 index 00000000..ace4d2e1 --- /dev/null +++ b/changelog/1.9.8.md @@ -0,0 +1,34 @@ +--- +version: 1.9.8 +date: 2026-04-22 +--- + +## App + +### New +- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. + +### Improvements +- Settings/Sync: settings updates now sync reliably across clients, and sidebar session pagination is steady in larger workspaces. +- Sessions/Folders: folder changes now persist through server-backed endpoints. +- Notifications: permission notifications are now suppressed when auto-accept is enabled. +- UI: improved the bottom scroll shadow and hid the tasks row when there is no active work. +- Reliability/Desktop: improved live event-stream recovery after transient stalls, wait briefly before failing chat actions during reconnects, and persist Electron server logs for easier disconnect debugging. + +### Fixes +- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). +- Chat/Files: improved changed-files handling in chat and restored quick file-open flows from pending changes (thanks to @jwcrystal). +- Desktop/macOS: System color mode now tracks OS theme changes, traffic-light controls stay visible after dock restore, and update restart/changelog handling is more reliable. + +## VS Code + +### New +- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. + +### Improvements +- Settings/Sync: settings changes now sync reliably with other clients, and sidebar session pagination is steady in larger workspaces. +- Sessions/Folders: folder updates now persist through server-backed APIs. +- UI: refined chat chrome with a cleaner bottom scroll fade and hidden idle tasks row. + +### Fixes +- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). diff --git a/changelog/1.9.9.md b/changelog/1.9.9.md new file mode 100644 index 00000000..0342f9b1 --- /dev/null +++ b/changelog/1.9.9.md @@ -0,0 +1,35 @@ +--- +version: 1.9.9 +date: 2026-04-26 +--- + +## App + +### New +- UI/Localization: added a localization foundation with translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese. +- Settings/Appearance: added selectable interface and code fonts with 10 choices each. +- Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced local workspace review and summarize slash commands. +- Files/Editor: added an "Open files in preview mode" setting and improved multi-file edit/diff safety (thanks to @daveotero). +- Desktop/Web/Mobile: improved Electron update restart behavior, PWA service-worker notifications, mobile keyboard handling, and the Add Project panel flow (thanks to @Jovines, @vhqtvn). + +### Improvements +- Chat/Mobile: improved mention and autocomplete behavior with complete results, clearer active-tab scoping, and less context-switching while drafting prompts. +- Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD). +- Reliability/Performance: improved cold start and streaming responsiveness with lazy-loaded heavy components, chunk-load recovery, lower re-render churn, and safer reconnect/local-stream recovery (thanks to @Yabuku-xD, @jwcrystal, @vhqtvn). + +## VS Code + +### New +- UI/Localization: added translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese, with language selection available in extension settings. +- Settings/Appearance: added selectable interface and code fonts with 10 choices each, and reorganized appearance sections. +- Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced a local workspace review slash command. + +### Improvements +- Chat/Context: autocomplete and mention results are now easier to scan, with fuller results and clearer active-tab behavior while drafting. +- Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD). +- Chat/Performance: improved cold start and streaming smoothness with lazy-loaded heavy components, chunk-load recovery, and lower re-render churn in long sessions (thanks to @Yabuku-xD). +- Reliability/Sync: improved reconnect recovery (thanks to @jwcrystal, @vhqtvn). + +### Fixes +- Chat/Header: restored context usage in the chat header, kept it tooltip-only, and kept rate-limit usage available in expanded layouts. +- Reliability/Startup: improved managed runtime startup by preserving user PATH and skipping stale session directories. diff --git a/changelog/README.md b/changelog/README.md new file mode 100644 index 00000000..cfa437d8 --- /dev/null +++ b/changelog/README.md @@ -0,0 +1,38 @@ +# Release notes source + +One file per release, plus `unreleased.md` for what has not shipped. `bun run changelog:build` renders `CHANGELOG.md` (app), `packages/vscode/CHANGELOG.md` (extension, shown by the Marketplace as is), and `index.json` (for the website). Edit the files here; the generated ones are overwritten. + +```markdown +--- +version: 1.22.2 +date: 2026-09-06 +title: optional one-line headline +--- + +Optional intro paragraph shown above the groups. + +## App + +### New +- Something the user could not do before. + +### Improvements +- Something they could do works better now. + +### Fixes +- Something was broken; name the symptom. + +### Misc +- Bundled tool versions, packaging, platform support, retirements. + +## VS Code + +### Fixes +- Only what the extension actually mounts. Written separately, on purpose. +``` + +Groups may appear in any order in a source file; the generator emits them as New, Improvements, Fixes, Misc and drops empty ones. A release without a `## VS Code` section is absent from the extension changelog. `unreleased.md` has no front matter. + +`bun run changelog:check` fails when the generated files are behind their sources; CI runs it. `oc-dev create-release` promotes `unreleased.md` to `.md` with today's date and rebuilds. + +How to write a bullet lives in `.agents/skills/changelog-authoring/SKILL.md`. diff --git a/changelog/index.json b/changelog/index.json new file mode 100644 index 00000000..989587eb --- /dev/null +++ b/changelog/index.json @@ -0,0 +1,5008 @@ +[ + { + "version": "1.22.1", + "date": "2026-09-04", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: a new session opens on the Chat or Project side you last used, and plus inside a chat opens a chat draft (thanks to @yulia-ivashko).", + "Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko).", + "Git: status stays hidden while a new worktree runs its setup commands instead of flashing mid-setup changes, and refreshes after a tool finishes a change or a worktree changes (thanks to @yulia-ivashko).", + "Settings: new installs default to the OpenChamber light and dark themes; an existing Flexoki choice is kept." + ], + "improvements": [ + "**OpenCode Go:** every request OpenChamber sends to OpenCode Go on its own, such as commit messages and pull request text, reply recaps and suggested follow-ups, walkthroughs, Goal Mode checks, notes, and usage, now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. Update before that date if you use OpenCode Go.", + "**Message queue:** messages queued while a session is busy are now sent by the OpenChamber server, so they go out even if the tab that queued them is closed, and every client shows the same queue. A queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer.", + "Chat: starting an isolated-worktree session from an assistant answer now picks the right project when the visible session already lives in a worktree (thanks to @yulia-ivashko).", + "Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko).", + "Settings: Fixel Text is available as an interface font.", + "Usage: exe.dev usage windows are tracked.", + "Settings: the Claude Code and Cursor plugin install cards are gone from Settings → Integrations, which now holds only GitHub and Linear.", + "Desktop: the instance switcher keeps its statuses between opens, never shows the connected instance as checking, retries a relay instance for up to fifteen seconds before calling it unreachable, and shows the full instance name. Switching instances clears the previous instance's Linear and GitHub logins, quotas, MCP status, skills, and memory.", + "Desktop: dev server previews work over the private relay." + ], + "fixes": [ + "**Git:** switching branches with uncommitted changes now stops at a commit-or-revert dialog with an optional push; a failed push cancels the switch. The branch picker lists recent branches with an unpushed-commit badge, the mobile Changes view gets a branch picker, and a draft over a dirty directory shows a warning on its branch selector (thanks to @yulia-ivashko).", + "**Worktrees:** removing a worktree no longer freezes the interface. It runs in the background with a progress toast, and its sessions are archived in one request, which takes a 121-session worktree from about fifteen seconds to one; archiving several selected sessions from the sidebar uses the same request (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum).", + "**MCP:** an MCP server that failed to start or lost its connection is now reconnected automatically, with a delay growing up to thirty seconds. Disabled servers and ones waiting for a login are left alone. Applies where OpenChamber launches OpenCode itself: Web and Desktop.", + "Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko).", + "Chat: resizing the window no longer snaps an idle reader back to the end of the conversation.", + "Settings: the theme no longer flips when switching sessions across directories, and missing theme fields keep the current preference (thanks to @kydorn).", + "Terminal: the terminal waits for its font before measuring glyphs, so it no longer renders wrong until resized, and connects on servers running under Bun.", + "Server: a browser on https behind an HTTP proxy hop is no longer rejected as a mismatched origin.", + "Sidebar: the project label no longer shifts when its hover actions appear.", + "Turkish interface: the missing Git repository discovery labels are back (thanks to @kydorn)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko)." + ], + "improvements": [ + "**OpenCode Go:** the usage request the extension sends to OpenCode Go now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode.", + "Message queue: a queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer.", + "Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko).", + "Settings: Fixel Text is available as an interface font.", + "Usage: exe.dev usage windows are tracked.", + "Settings: the Integrations page, which offered the Claude Code and Cursor plugin installs, is gone." + ], + "fixes": [ + "Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko).", + "Worktrees: removing a worktree no longer freezes the interface; it runs in the background with a progress toast (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum).", + "Settings: the theme no longer flips when switching sessions across directories, and a theme the extension cannot fully report keeps the current preference (thanks to @kydorn)." + ], + "misc": [] + } + }, + { + "version": "1.22.0", + "date": "2026-08-30", + "title": null, + "intro": null, + "app": { + "new": [ + "**Git:** projects containing several repositories can now switch between them from the Git tab. Diff, pull request, walkthrough, mobile Changes, and work status follow the selected repository (thanks to @jaygupta17)." + ], + "improvements": [ + "**Linear integration:** connect a workspace in Settings → Integrations, browse and filter issues, and start a session or worktree from an issue. OpenChamber reports session progress back to Linear and can attach an issue to the next chat message (thanks to @AlexKutas).", + "**Voice:** local text-to-speech and macOS say now choose a voice that matches the reply's language. Additional local models download on first use, and the voice picker lists voices from every installed model.", + "Files: Ctrl/Cmd+F opens search in the Markdown preview even when the preview is not focused.", + "GitHub: account connection has moved to Settings → Integrations. The pull-request panel includes account controls, and its context-rail icon appears only when connected.", + "Settings: themes are now remembered per OpenChamber instance, so windows connected to different instances keep their own theme (thanks to @kydorn).", + "Scheduled tasks: Goal, Auto-accept, and other task settings are preserved when older OpenChamber builds share the same project config.", + "Desktop: on Windows and Linux, the close button reaches the top-right corner and follows the theme on hover (thanks to @kydorn)." + ], + "fixes": [ + "**Chat:** sessions opened from the sidebar stay at the latest message, and switching sessions no longer causes jumps, partial rendering, crossfades, or tab-title shifts.", + "Chat: command, skill, and file autocomplete in projectless chats no longer uses the previously selected project.", + "Chat: reverting to a message, or forking from one, now brings its attached context back to the composer — review comments, chat and file quotes, terminal selections, and browser annotations are no longer lost.", + "Chat: stopped and unanswered turns now explain what happened. The status report includes recent session, send, and managed OpenCode errors, plus log locations.", + "Git: the commit graph no longer leaves a lane gap when the same branch is merged twice (thanks to @Naputt1)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: a session opened from the sidebar lands at its end and stays there, instead of landing above the bottom or snapping up a moment later." + ], + "fixes": [ + "Switching sessions is now visually stable, without conversation jumps or partial rendering.", + "Chat: a turn that OpenCode stopped no longer ends with nothing on screen — what OpenCode reported shows under the last message, and a message an idle session has left unanswered is named as such. The status report (Ctrl/Cmd+Shift+L) now lists the last session errors and rejected sends." + ], + "misc": [] + } + }, + { + "version": "1.21.1", + "date": "2026-08-29", + "title": null, + "intro": null, + "app": { + "new": [ + "**Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt).", + "Work status: the session cost now includes what its subagents spent, split under the context meter and shown per subagent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes).", + "Composer: pasting a large block of text (about 2,000 characters or 25 lines) now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a `[pasted-context-N.txt]` reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech).", + "Multi-Run: groups can now contain more than five models, including isolated runs that create one worktree per model (thanks to @tomzx).", + "Projects: the folder picker can select several directories at once and add them together (thanks to @herjarsa)." + ], + "improvements": [ + "`/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies).", + "Chat: the text the model writes before asking a question is shown right away instead of staying hidden in the Activity group until the turn ends (thanks to @makeittech).", + "Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12).", + "Usage: GitHub Copilot now shows a single AI Credits window, matching Copilot's token-based quota, in place of the old Chat Requests and Completions windows (thanks to @jakoss).", + "Files: the Markdown preview has an in-document search (Ctrl/Cmd+F) with highlighting and next/previous, and clicking a folder or file in the sidebar tree opens it reliably on macOS trackpads, where a tiny pointer move used to swallow the click (thanks to @makeittech); files up to 20,000 lines open in the full-file preview instead of being rejected at 5,000 (thanks to @gaojunran).", + "Panels: right-click an editor, chat, or browser tab to close it, close others, close left/right, or close all (thanks to @adavila0703).", + "Browser: when the agent captures a page while the browser panel is hidden, the panel is revealed first instead of the capture failing.", + "Mobile: Chats — sessions that belong to no project — now appear in the sessions sheet above the project list; opening an already-open agent switches to its editor instead of duplicating it (thanks to @bashrusakh); Android connections can trust user-installed certificate authorities, such as a local proxy's (thanks to @Silvenga).", + "Files: files reached through a symlink inside the workspace, or under a project root that is itself a symlink, open again instead of failing with an access error (thanks to @herjarsa).", + "Sidebar: searching sessions now also finds Chats — sessions that belong to no project — which used to vanish from the list as soon as anything was typed (thanks to @yulia-ivashko).", + "Projects: the folder picker can enter a directory that is already a project to browse from there (thanks to @weixiang1862), and sending, forking, and image attachments work in projects whose path has non-ASCII characters, such as `Masaüstü` (thanks to @fitzgpt).", + "Web/PWA: notification clicks focus an existing window, and the installed app uses the shorter \"OpenChamber\" name (thanks to @bketelsen and @greghaynes).", + "Themes: custom themes loaded through symlinks now work (thanks to @divyam234).", + "Debug: the debug panel (Ctrl/Cmd+Shift+D) has a Requests tab showing in-flight requests and their age over the last five minutes (thanks to @tomzx)." + ], + "fixes": [ + "**Git/Worktrees:** session menus can now move an idle session and its sub-sessions into an existing worktree. OpenChamber discovers worktrees created elsewhere when the target list opens, asks before transferring uncommitted changes, and keeps those changes safe if a move fails partway (thanks to @mattv8).", + "Chat scrolling: with \"Follow new content while streaming\" off, sending from the middle of a conversation no longer jumps to the new message; a middle-button pan or Shift+Space stops auto-follow like the wheel does, and an upward wheel inside a tool output box scrolls that box instead of the chat (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole window up and hides the title bar.", + "Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings, which could send the syntax highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message containing Windows line endings, which threw \"Selection points outside of document\" on every visit (thanks to @yulia-ivashko).", + "Chat: a session no longer looks frozen after a page reload or a late second client — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh).", + "Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code and chips are readable in every theme (thanks to @difagume); a completed reasoning block shows in full instead of replaying as if still thinking, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the first lines of the reply (thanks to @makeittech).", + "Chat actions: tool cards with a file path get a quick-open button (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown paragraph, list, and code-block spacing (thanks to @ChangeHow); Ctrl/Cmd+digit is ignored while typing in a field, and a manually chosen model survives switching between Build and Plan (thanks to @makeittech).", + "Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech).", + "Plans: saved plans open with their content again for chats, worktrees outside the project path, and tabs restored after a reload, and an edit made right before closing is no longer lost.", + "Sidebar: Recent rows show a compact timestamp on web and desktop, and pending permission/question badges are no longer covered by the hover actions (thanks to @makeittech).", + "Settings: the editor font size survives a restart (thanks to @pascalandr); a change made right before closing the window is saved (thanks to @makeittech); number fields and selects no longer clip at large font sizes (thanks to @makeittech); refreshing GitHub account state no longer interrupts the page (thanks to @floze-the-genius); the Cloudflare Tunnel download link is fixed (thanks to @AyoubAchour); Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx).", + "Small model: requests send the provider's configured headers, such as an API-gateway subscription key (thanks to @dmitrii-galantsev); a configured Anthropic endpoint is used without a doubled `/v1`, and Google models without reasoning no longer receive a thinking option (thanks to @mpeter and @IngTian).", + "Chat: a message made only of quoted context fragments now appears in the prompt navigator; opening or closing the context panel no longer leaves a blank tail under the last message.", + "Settings/Providers: after saving an API key or signing in, the provider no longer shows \"Credentials missing\" with its models hidden until you switch away and back (thanks to @herjarsa).", + "Git: the status panel refreshes from real repository state after checkout, branch, stash, merge, rebase, or reset, and remote branches that were never fetched appear in branch lists (thanks to @makeittech); the Branch diff scope no longer compares against the wrong base for branches created from the current branch (thanks to @gaojunran); picking `origin/main` in the branch selector checks out the local branch instead of a detached `HEAD` (thanks to @yulia-ivashko); branch search hides non-matching branches (thanks to @bashrusakh).", + "Updates: \"Update OpenCode\" no longer fails with a bare \"Bad Request\" — OpenChamber names the release to install and shows OpenCode's reason when refused — and the desktop \"Restart to Update\" button shows why an install failed, including an unsigned local build, and stays available to retry (thanks to @mdatsev and @yulia-ivashko).", + "Desktop: a crashed renderer window recovers automatically, with a visible failure page instead of a reload loop after repeated crashes (thanks to @wqpan); a slow or interactive shell startup file no longer stalls startup while OpenChamber looks for OpenCode — each probe gives up after five seconds, which is what left a Homebrew OpenCode looking undetected from a Dock launch (thanks to @mskadu).", + "Windows: managed OpenCode restarts clean up orphaned listeners and process trees, closing the app stops OpenCode, and scheduled startup no longer fails on Task Scheduler's command length limit (thanks to @sergiofspedro, @a0000001, and @HAHH9527).", + "Server: an `OPENCODE_BINARY` from the environment is no longer discarded when `settings.json` clears its own override (thanks to @bashrusakh); recovery through `OPENCODE_HOST` keeps the configured host and port (thanks to @colinmollenhour); `openchamber connect-url` no longer risks tearing `settings.json` while the desktop app runs, which could unpair every device (thanks to @shijie152).", + "VS Code: the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech).", + "Reliability: switching sessions quickly no longer saves the wrong scroll position, and the log no longer fills with worktree warnings for non-Git folders (thanks to @herjarsa); startup cleanup of leftover processes no longer blocks the server on Windows (thanks to @bashrusakh)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt).", + "Composer: pasting a large block of text now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech).", + "Multi-Run groups can now contain more than five models (thanks to @tomzx)." + ], + "improvements": [ + "`/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies).", + "Context usage now reports the session cost including everything its subagents spent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes).", + "Chat: the text the model writes before asking a question is shown right away instead of staying hidden until the turn ends (thanks to @makeittech).", + "Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12).", + "GitHub Copilot usage now shows a single AI Credits window, matching Copilot's token-based quota (thanks to @jakoss).", + "The extension reuses its OpenCode output channel across managed-server restarts instead of creating duplicates (thanks to @TTTPOB)." + ], + "fixes": [ + "Chat scrolling: with \"Follow new content while streaming\" off, sending while scrolled up leaves the view where it is; a middle-button pan or Shift+Space stops auto-follow like the wheel does (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole panel up.", + "Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings that sent the highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message with Windows line endings, which threw \"Selection points outside of document\" on every visit (thanks to @yulia-ivashko).", + "Chat: a session no longer looks frozen after the webview reloads or is opened late — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh).", + "Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code, chips, and model-picker highlights stay readable in high-contrast themes (thanks to @difagume and @bashrusakh); a completed reasoning block shows in full instead of replaying, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the reply (thanks to @makeittech).", + "Chat actions: tool cards with a file path get a quick-open button that opens the file in the editor (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown spacing (thanks to @ChangeHow); a manually chosen model survives switching between Build and Plan (thanks to @makeittech).", + "Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech).", + "Updating OpenCode no longer fails with a bare \"Bad Request\": the extension names the release to install and shows OpenCode's own reason when an update is refused (thanks to @mdatsev and @yulia-ivashko).", + "\"Add Project\" now adds the chosen folder to the workspace instead of failing (thanks to @bashrusakh), and the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech).", + "Sidebar: pending permission and question badges are no longer covered by the hover actions (thanks to @makeittech); worktree branch search hides non-matching branches (thanks to @bashrusakh).", + "Settings/Providers: after saving an API key or signing in, the provider no longer shows \"Credentials missing\" with its models hidden until you switch away and back (thanks to @herjarsa).", + "Settings: number fields and selects no longer clip at large font sizes (thanks to @makeittech), and Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx).", + "Windows: closing VS Code now stops the managed OpenCode process instead of leaving it running (thanks to @a0000001)." + ], + "misc": [] + } + }, + { + "version": "1.21.0", + "date": "2026-08-26", + "title": null, + "intro": null, + "app": { + "new": [ + "Mobile: the chat comment input overlays the composer exactly and rides the keyboard; Enter makes a new line there, with attach on the button.", + "Chat: a \"Follow new content while streaming\" checkbox (Settings → Chat → Streaming, on by default) turns automatic following off entirely; with it off, the scroll-to-bottom pill now appears as soon as the reply grows past the visible area.", + "Mobile: narrowing a browser window past phone size switches into the mobile layout (and back when widened); the old/new mobile layout setting is gone." + ], + "improvements": [ + "**Chat scrolling rebuilt around your message.** Sending parks your message near the top and the reply streams in below it, gliding smoothly a paragraph at a time. Scrolling up immediately hands you the wheel; the scroll-to-bottom pill carries the model's working status while you're away.", + "**Keyboard shortcuts redesigned:** single chords for everyday actions, a Cmd/Ctrl+K leader for two-step open/go actions, held Cmd/Ctrl+digit for session tabs and Cmd/Ctrl+Option+digit for panel surfaces. Shortcuts work on non-English keyboard layouts now, tooltips show the binding you actually have set, and old custom bindings reset once. The full map lives in Settings → Shortcuts (registry contributed by @ChangeHow — thanks!).", + "**Chat context attachments:** diff comments, terminal selections, browser annotations, linked issues/PRs and the rest now appear in the conversation as compact context cards instead of walls of raw text.", + "**Session tabs (opt-in):** the web/desktop header can show open sessions as browser-style tabs (Settings → General → Navigation). A tab switches the whole workspace; closing one never touches the session itself.", + "Permission: cards answer to the keyboard Alt+Enter allows once, Alt+Shift+Enter allows always, Alt+Backspace denies — the keys are printed on the buttons. The auto-accept toggle got Cmd/Ctrl+K, A.", + "Sessions: Cmd/Ctrl+Alt+Left/Right steps back and forward through the sessions you opened in this window, browser-history style; with session tabs enabled it moves between neighbouring tabs instead.", + "Git: Cmd/Ctrl+Enter in the commit message box commits. Diff review moves between changed files with Alt+Down/Up, expanding a collapsed file on arrival.", + "Chat: Cmd/Ctrl+Shift+T now cycles through every thinking level offered by the selected model instead of skipping levels after reaching the end (thanks to @nimobeeren).", + "Panels: the context rail got a configure button — a dialog chooses which panels the rail shows. Hidden panels keep their data, stay reachable from the command palette, and leave the digit switcher, so digits always match the icons you see.", + "Chat: comment on a reply — select text in a chat message (or a rendered markdown preview in Files) and choose Comment to attach exactly that quote, with a source line range when it can be located, plus your note. The selection stays highlighted while you type.", + "Diff: comment like a review — hovering a line shows a + in the gutter; clicking or dragging across lines opens the comment editor for that range, styled like the chat's comments.", + "Composer: hovering or tapping a context chip opens a stacked preview of everything attached, where a comment can be edited in place or an item removed before sending.", + "Search: every searchable picker uses one matcher now — best matches first, multi-word queries in any order, punctuation ignored (\"gpt4o\" finds \"gpt-4o\"). Ctrl/Cmd+P matches whole file paths.", + "Chat: @ file mentions rank files and directories together by match quality, and long paths keep the folder next to the file name visible.", + "Command palette: rarely used commands (pin session, copy session ID, multi-run launcher, archived sessions, notes, todos, status, theme) are found by typing but stay off the first screen.", + "Mobile: on Android browsers the composer now stays above the keyboard in the chat too — the keyboard could cover it with no way to scroll it into view; the draft screen's viewport pinning now covers the chat screen on Android.", + "Chat: opening a session or resizing panels could strand the view in a large empty space below the last message; the list now returns to the real end, and a width resize keeps a reader who was at the bottom at the bottom.", + "Devices: re-pairing a phone keeps the device's existing name instead of resetting it to \"OpenChamber Mobile\".", + "Files: the editor toolbar is always docked under the file tabs; the floating hover toolbar and its setting were removed." + ], + "fixes": [ + "Sessions: switching is much faster in large workspaces — the sidebar no longer rebuilds on switch and recently viewed sessions restore their rendered messages; end-to-end switch time roughly halved with thousands of loaded sessions (thanks to @c-w-xiaohei).", + "Terminal: terminals no longer vanish behind your back — every tab and device shows the ones already running on the server, and background tabs survive the idle cleanup.", + "Browser: an agent opening a page with the browser tool no longer pops the browser panel open (or switches the surface you're on) — the page loads in the background and the rail is where you peek at it.", + "Usage: the Command Code tile is gone — their official API exposes no usage data, so the tile could only fail.", + "Desktop: a relay-paired default host no longer greets every restart with the \"Remote Server Unreachable\" screen — the stored direct address (often the pairing machine's own loopback) failing its probe now boots the app normally and connects over the relay, picking the direct route back up automatically when it answers again.", + "Auth: an expired OpenChamber login is announced within seconds by a banner with a Log in button, instead of being discovered through failing actions. Sending pauses until login, and a conversation that failed to load reloads itself afterwards.", + "Chat: a failed send returns your typed prompt to the input — whatever the reason — instead of losing it to an error toast; a mid-send session switch lands it in that session's draft.", + "Chat: prompt-rail and message jumps land exactly on the target once the layout finishes measuring, and clicking the last rail item always works.", + "Desktop: two windows on different projects no longer hijack each other — one window's session switch could make the other adopt its project mid-typing. Notification clicks and openchamber:// links now open in one window instead of all of them.", + "Git: the branch's PR badge no longer picks up a stranger's pull request — with contributor forks added as remotes, a fork's closed PR sharing only the branch name could show up on the local branch.", + "Chat: streamed code blocks are syntax-highlighted while streaming, and finished messages no longer jump when line numbers fill in.", + "Chat: finished replies no longer flicker — tool cards stopped replaying their reveal animation on completion, and window resizing no longer throws the conversation around at the bottom.", + "Mobile: scrolling during a streaming reply works again — a drag immediately takes over, the pill shows up, and load-older no longer throws you to the bottom.", + "Fixed file links in messages being checked twice, and against the wrong project directory on the first pass.", + "Fixed the selected project or session briefly jumping back to a previous choice when settings responses arrived out of order.", + "Fixed sessions staying on \"loading sessions\" forever after a half-open connection to OpenCode — stalled reads now time out and retry (thanks to @herjarsa).", + "Files: previews above the editable size cap show the whole file, virtualized so huge files no longer freeze the app (thanks to @gaojunran).", + "VSCode: the chat view no longer sticks on its loading screen on slow or remote connections (thanks to @VinciYan).", + "Terminal: mobile keyboards no longer capitalize the first letter of every command.", + "Desktop: a freshly installed or updated build no longer loads the previous version's interface from cache.", + "Relay: paired devices no longer get logged out when the app restarts while another local OpenChamber process is running.", + "Sessions: headers now find archived sessions too, so an archived session's title no longer goes missing.", + "UI: the chat's scroll fades are back, the first uncached session open fades in, the timeline dialog fits small screens (thanks to @gaojunran), OpenCode notices share one style, draft target menus stay inside the chat area, Linear and Cloudflare tools show their own icons, sidebar tooltips no longer appear on passing hover, and the btw panel's shadow matches the composer." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "**Chat context attachments:** diff and file comments, terminal selections, and linked issues/PRs now show in the conversation as compact context cards — source header, captured content behind an expander, your comment below — instead of raw text inside the message.", + "**Chat: comment on a reply.** Select text in a chat message and choose Comment to attach that quote with your note to the next message; the selection stays highlighted while you type.", + "Composer: hovering a context chip above the input opens a stacked preview of everything attached, where comments can be edited in place or items removed before sending.", + "Chat: @ file mentions now rank files and directories together by how well they match, so the file you typed is at the top instead of below unrelated directories. Multi-word queries match in any order, and long paths keep the folder next to the file name visible.", + "Search: Ctrl/Cmd+P now matches the whole file path, not just the file name — searching a folder name finds the files inside it.", + "Search in dropdowns: searchable pickers (agents, models, providers, branches) now put the best matches first, match multi-word queries in any order, and ignore punctuation (so \"gpt4o\" finds \"gpt-4o\").", + "Permissions: cards answer to the keyboard with Alt+Enter to allow once, Alt+Shift+Enter to allow always, and Alt+Backspace to deny; the keys are printed on the buttons.", + "Keyboard: dropdown menus and pickers answer Ctrl+N/Ctrl+P for down/up, the session switcher opens focused on your current session, and shortcut labels in tooltips and menus show the binding you actually have set (thanks to @ChangeHow).", + "Chat: Cmd/Ctrl+Shift+T now cycles through every thinking level offered by the selected model instead of skipping levels after reaching the end (thanks to @nimobeeren).", + "Chat: OpenCode notices now share one style.", + "Chat: the timeline dialog now fits small windows instead of squeezing the message list to a couple of rows (thanks to @gaojunran)." + ], + "fixes": [ + "Chat: the view no longer stays stuck on its loading screen on slow or remote connections, including code-server behind a reverse proxy (thanks to @VinciYan)." + ], + "misc": [] + } + }, + { + "version": "1.20.0", + "date": "2026-08-23", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop/Remote instances: a managed remote server can now also be published to the remote machine's own network, so other devices there reach it without the SSH tunnel. It requires a UI password, and stays private to the tunnel otherwise.", + "Diff: the context-panel diff can now show every change on the current branch against its base branch. OpenChamber detects the base when Git knows it, or lets you choose one once when it does not.", + "Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. Both sit in one Defaults for new chats group, laid out like the Sessions defaults.", + "Chat: in the expanded composer, Enter now starts a new line and Cmd/Ctrl+Enter sends, so a long prompt is harder to send by accident.", + "Providers: expanded support for custom providers.", + "Small Model: summaries, goal audits, commit messages, and walkthroughs now support more providers." + ], + "improvements": [ + "**Session: /btw side questions.** Type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation, so it inherits the full context but leaves the chat itself untouched. The answer streams into a panel above the composer, which talks to that session while the panel is open; you can collapse it to a slim header bar, keep it as a full session, or discard it. The temporary session stays out of the sidebar and session lists until you keep it (thanks to @jaygupta17).", + "**Chat sessions:** start chats without choosing a project. They live in their own Chats section, rather than inheriting a project's repository and worktree context.", + "Skills catalog: browse curated GitHub skill collections in a card-based catalog with cross-source search, skill counts, stars, recent updates, and links back to each skill's repository.", + "Settings: the project selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show. It used to switch the whole app, so opening another project's configuration moved your chat, session list and file tree with it.", + "Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed.", + "Chat: file paths in messages now open from the session's project, even if you last browsed files in another project (thanks to @tomzx).", + "Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings.", + "Files/Desktop: files opened from outside the workspace remain readable after their temporary access expires instead of failing until you reopen them (thanks to @pascalandr).", + "Diff: creating an inline comment now opens the chat and focuses the composer for your follow-up.", + "Git: generated commit messages now match the repository's recent commit style and language.", + "Git: generating a pull request description now picks up the repository's own PR template when it has one, so the draft comes back in your project's sections and checklists instead of the built-in Summary/Why/Testing layout.", + "Sidebar: switch between the full project list and a focused view of one project. Sessions created outside OpenChamber now also appear in the sidebar and Recent list without a page refresh (thanks to @tomzx).", + "Chat: while a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes.", + "Chat: long user messages can be expanded even when their final layout finishes after they first appear.", + "Chat: in a chat without a project, the work status card again steps aside when the context panel is open, instead of sitting next to it.", + "Usage: Z.ai credit limits now appear alongside its other quota windows.", + "Git: pull-request checks in Work status stay current as their status changes.", + "UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer).", + "Desktop/Windows: the close button now aligns correctly with the rest of the window chrome." + ], + "fixes": [ + "**Desktop/Remote instances:** adding an SSH connection now starts from the hosts in your SSH config instead of a blank command field. Ports, install method and passwords moved behind Advanced settings, and each connection shows Connected, Connecting, or Needs attention with the failure text and a button that resolves it.", + "Desktop/Remote instances: connecting to a remote machine now works when bun, OpenChamber or the opencode CLI live in your home directory rather than on the system path. Installing no longer fails with a permission error, and a missing opencode CLI is now reported before the connection starts instead of as a stack trace.", + "Desktop/Remote instances: disconnecting from a connection set to not keep the server running now actually stops that remote server.", + "Dictation: speech is now transcribed after you stop recording. The composer shows a live waveform and timer, and long recordings split at pauses instead of cutting words.", + "Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately.", + "Settings/Providers: the provider you select no longer jumps to a different one on its own. Changing the chat's model or agent, and background provider refreshes, used to move the settings selection with them.", + "Chat: if OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117).", + "Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off.", + "Session assist: recaps and suggested follow-ups now work when the Anthropic provider is configured to use a custom endpoint; they previously failed every time instead of using that configured connection." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels.", + "Providers: expanded support for custom providers." + ], + "improvements": [ + "**/btw side questions:** type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation. The answer streams into a panel above the composer; collapse it, keep it as a full session, or discard it without touching the chat (thanks to @jaygupta17).", + "**Skills catalog:** browse curated GitHub skill collections in a card-based catalog with cross-source search and direct links to each skill's repository.", + "Settings: the workspace selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show instead of moving the chat, session list and file tree to another workspace.", + "Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed.", + "Sessions created outside OpenChamber now appear in the sidebar and Recent list without a page refresh (thanks to @tomzx).", + "Usage: Z.ai credit limits now appear alongside its other quota windows.", + "Chat: file paths in messages now open from the session's workspace, even if you last browsed files in another workspace (thanks to @tomzx).", + "Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings.", + "While a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes.", + "Chat: long user messages can be expanded even when their final layout finishes after they first appear.", + "UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer)." + ], + "fixes": [ + "Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately.", + "Settings/Providers: the provider you select no longer jumps to a different one when the chat selection or provider data changes.", + "If OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117).", + "Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off." + ], + "misc": [] + } + }, + { + "version": "1.19.0", + "date": "2026-08-19", + "title": null, + "intro": null, + "app": { + "new": [ + "**Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders.", + "Usage/Claude: Claude plan limits now work when you are signed in through Claude Code, without also signing into Anthropic in OpenCode; the account is read from Claude Code's own login on macOS, Linux, and WSL. The page shows your session and weekly limits again, adds per-model weekly limits and extra usage spending, and names your plan. Limits are kept on screen instead of disappearing when Anthropic temporarily blocks refreshes." + ], + "improvements": [ + "**Project knowledge:** the Project notes panel is now Project knowledge, with notes, todos, plans and their search in a resizable sidebar. Notes are cards you expand by clicking anywhere on them, plans open and edit in the panel itself instead of a separate tab, and notes and plans can be pinned as context.", + "**Files:** drag files onto the Files sidebar to upload them into the project or a specific folder; existing files require confirmation before replacement, and open previews refresh after an upload (thanks to @makeittech, @alanzchen).", + "Usage/Command Code: Command Code plan limits now appear in the Usage page and work status panel.", + "Git: the pull request panel now follows the branch's current open PR, and an open PR always wins over an older merged or closed one. After a PR is merged or closed the panel keeps showing it as the branch's last PR and offers creating the next one right below it (thanks to @makeittech).", + "Git/Worktrees: creating a worktree from a pull request now falls back to GitHub's pull-request reference when the source fork was deleted or cannot be reached, instead of failing before creating the worktree (thanks to @makeittech).", + "Chat: opening a busy subagent in the context panel now shows its history instead of only the working-status line (thanks to @makeittech).", + "Chat: saved chats in the context panel open again instead of staying blank.", + "Chat/Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context.", + "Files: files reached through a symlink inside the workspace now open correctly instead of being rejected as outside the workspace.", + "Settings: the session retention action you pick is now saved instead of being dropped (thanks to @Gautam0507).", + "Mobile: connecting through an ngrok address now bypasses ngrok's browser warning page instead of failing the server check.", + "Mobile/iOS: text selection in the chat composer now uses native CodeMirror selection handles.", + "Desktop: browser pages served from a self-signed loopback HTTPS address now load instead of being blocked by the certificate warning.", + "Skills Catalog: the source is now named ClawHub instead of \"ClawdHub\" (thanks to @makeittech)." + ], + "fixes": [ + "Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech).", + "Chat: an open conversation no longer keeps re-coloring the same code blocks in the background, so browsing files with a chat open stops pinning a CPU core and spinning up the fans (thanks to @makeittech).", + "Stability/Proxy: the local server now reuses its connection to OpenCode instead of opening a new one for every API request. Under sustained traffic the old behavior could use up every outgoing network port on the machine, at which point nothing on the computer could open a new connection until the traffic stopped and the ports were released (thanks to @alohaninja).", + "Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting.", + "Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech).", + "Chat: the context meter no longer climbs over 100% (330% readouts) after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds, everywhere the value appears — header, context sidebar, work status panel, mini chat, and mobile (thanks to @pocharlies).", + "Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude` in the sidebar, window title, settings and notifications; names you renamed yourself are kept.", + "Browser: typing a comment on a page no longer triggers app shortcuts.", + "Chat: dismissing an agent's clarifying questions no longer leaves the session stuck on the question screen — the next task shows its thinking and final response again.", + "VSCode: Add Project now adds the chosen folder to the workspace instead of showing a \"Failed to add project\" toast.", + "UI: the model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh).", + "Settings: an explicitly set `OPENCODE_BINARY` environment variable is no longer discarded when settings contain an empty opencodeBinary value; the environment variable keeps pointing the managed OpenCode server at the binary you chose." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders." + ], + "improvements": [ + "Usage: Command Code plan limits now appear in the Usage page and work status panel.", + "Usage: the context usage readout in the chat header now also shows the session's cost in its tooltip (thanks to @YunFeng0817).", + "Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context.", + "Skills Catalog: the source is now named ClawHub instead of \"ClawdHub\" (thanks to @makeittech)." + ], + "fixes": [ + "**Chat:** an open conversation no longer keeps re-coloring the same code blocks in the background, preventing high CPU use while the chat is idle (thanks to @makeittech).", + "Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech).", + "Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting.", + "Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech).", + "The context usage readout no longer climbs over 100% after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds (thanks to @pocharlies).", + "Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude`; names you renamed yourself are kept.", + "Add Project now adds the chosen folder to the workspace instead of showing a \"Failed to add project\" toast.", + "The model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh)." + ], + "misc": [] + } + }, + { + "version": "1.18.4", + "date": "2026-08-14", + "title": null, + "intro": null, + "app": { + "new": [ + "**Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order." + ], + "improvements": [], + "fixes": [ + "**Stability:** a single internal error no longer shuts down the local server, which made the instance unreachable until it was restarted; the error is logged and the server keeps running.", + "Mobile: connecting to a server that has authentication disabled now survives closing and reopening the app — auto-reconnect and the return-to-app check no longer treat the missing password token as a lost connection and kick back to the connect screen.", + "Browser: restoring or opening a dev server preview while connected to an instance over a relay or other non-standard address no longer crashes the app; the preview reports the tunnel as unavailable instead." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order." + ], + "improvements": [], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.18.3", + "date": "2026-08-14", + "title": null, + "intro": null, + "app": { + "new": [ + "**Agent browser control:** agents can now open a page and work with it — read what is on screen, click, type, scroll, look at how an element renders, switch between mobile, tablet and desktop layouts, and save a screenshot into the project — so they can check their own work instead of describing what they expect. It is a separate OpenChamber Web tool, turned on or off in the new Settings → General → OpenChamber Tools section.", + "Sessions: switching projects now selects a session owned by the new project, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech).", + "Browser: dev servers are listed from what is actually listening, so one is offered no matter how it was started, and a server that is still starting is waited for instead of showing an error to retry by hand. The panel holds several pages at once, shows each page's own icon, suggests addresses already visited in this project, and adds a hard reload, page zoom, device sizes, a light/dark switch for the page, and clearing cookies or cached data for the panel alone." + ], + "improvements": [ + "**Browser panel:** the preview and browser panels are now one panel, backed by a real browser view on the desktop app. Pages that previously refused to load because they were being rewritten now open normally, logins persist, and developer tools are available. Point at an element or drag a region, write a comment, and it goes to chat with a screenshot of what you marked.", + "**Chat images:** completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images and a horizontally scrollable mobile layout (thanks to @ChangeHow).", + "Browser: when OpenChamber runs on another machine, the desktop app opens its dev servers through a local port, so pages load with working hot reload and developer tools; links and redirects to another local port stay on that machine. In a web browser tab, only dev servers on your own machine can be opened.", + "Remote access: pairing QR codes created while the app is open through a public domain (for example behind a reverse proxy) now include that domain as a connection address, so paired phones can reach the server over it instead of relying only on the local network address or the relay.", + "Mobile: long-pressing the logo on the connect screen (or the instances list) opens a connection log with a copy button, for reporting connection problems.", + "Usage: quota limits enabled for display now refresh every three minutes on desktop, mobile, and VS Code, with a manual refresh action available at any time.", + "Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID.", + "Desktop/Windows/Linux: minimizing the window now always keeps it in the taskbar; the tray background setting, renamed \"Close to the system tray\", applies when you close the window.", + "Desktop/Linux: frameless main and Mini Chat windows now use native rounded corners (thanks to @kydorn)." + ], + "fixes": [ + "Remote access: messages sent through the private relay no longer fail with a 400 error when request-body frames are lost during a connection drop; incomplete requests are retried instead (thanks to @claymor333).", + "Mobile: a brief network hiccup when opening or returning to the app no longer bounces a working connection to the connect screen — the app retries in the background and reconnects on its own, while an unreachable server shows the connect screen within a few seconds.", + "Scheduled Tasks: when two OpenChamber servers use the same project configuration, a scheduled occurrence now runs only once instead of both servers starting duplicate sessions (thanks to @makeittech).", + "Performance: closed context panels no longer keep embedded chats running, and an open panel mounts only its active chat instead of every saved chat tab (thanks to @karimodm).", + "Chat: opening subagent and code-review sessions in the context panel no longer steals focus from the main composer; subagent prompting is available immediately when enabled, and code-review sessions are no longer mistaken for read-only subagent sessions.", + "Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing).", + "Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow).", + "Work status: new-session drafts now show project, MCP, and usage details before a session exists, long subagent lists stay within the panel, and hiding every section leaves controls available to restore them (thanks to @alohaninja)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: switching projects now selects a session owned by the new workspace, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech).", + "Chat: the Focus Chat command and Add to Context action now place the cursor in the chat input so typing can continue immediately." + ], + "improvements": [ + "Chat images: completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images across multi-root workspaces (thanks to @ChangeHow).", + "Usage: quota limits enabled for display now refresh every three minutes, with a manual refresh action available at any time.", + "Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID." + ], + "fixes": [ + "Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing).", + "Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow)." + ], + "misc": [] + } + }, + { + "version": "1.18.2", + "date": "2026-08-10", + "title": null, + "intro": null, + "app": { + "new": [ + "**Observability panel:** a new panel near to the chat brings the active goal, tasks, subagents, pinned context, MCP servers, and context usage into one live view. The session list also shows how long an agent has been working.", + "**Scheduled Tasks:** projects can now define recurring tasks as Markdown files in `.agents/loops`; opening the task list discovers file changes without a restart, and loop tasks can be edited, enabled, disabled, deleted, or run from the app (thanks to @makeittech).", + "Performance: the initial web download is about 58% smaller and startup memory use is about 22% lower; heavy Settings and syntax-highlighting code now loads only when opened (thanks to @makeittech).", + "Git/Worktrees: prompts now wait for a new worktree to finish checkout before sending, and sessions resolve to the worktree that owns them instead of occasionally opening or sending against the parent repository (thanks to @ftzi).", + "Projects: new project directories can now be created outside the current workspace, and adding, creating, or cloning a project opens a new-session draft targeted at that project instead of leaving the previous session context active.", + "Usage: added xAI quota reporting (thanks to @iamhenry)." + ], + "improvements": [ + "Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different instance (thanks to @Wsyjq).", + "Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech).", + "Chat: the composer caret is now easier to see.", + "Terminal: default tab names remain unique after tabs are closed, Escape reaches terminal applications instead of closing the context panel, and background connections send fewer keepalives (thanks to @makeittech).", + "Desktop/macOS: choosing a folder after denying filesystem access now recovers correctly instead of leaving the app unable to open the directory (thanks to @deatheros).", + "Desktop/Windows: minimizing from the taskbar now remains a native minimize while the app's own minimize action can still hide to the tray (thanks to @pascalandr).", + "Desktop: overlay scrollbars auto-hide again after scrolling instead of remaining permanently visible.", + "Mobile/Android: pairing QR codes now work in older WebViews that misread `openchamber://` links (thanks to @CMBill).", + "Mobile: pending agent questions now reappear after a cold start instead of leaving the session waiting without an answer prompt.", + "Files: removing an attached Office or OpenDocument file also removes the images extracted from that document, and Linux reveal failures now surface as an error instead of escaping in the background (thanks to @chiamsun, @pascalandr).", + "VSCode: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB).", + "Walkthrough: branch comparisons now use the repository's actual remote default branch instead of assuming its name (thanks to @RyderAsKing).", + "Server: foreground installs managed by a user systemd service now update through a separate transient service instead of being interrupted by the server restart (thanks to @SYU8384).", + "Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame).", + "UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling; the macOS vibrancy option was removed to reduce rendering overhead." + ], + "fixes": [ + "**Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech).", + "Remote access: paired devices that use the private relay no longer lose relay access when no browser client is currently connected or device-state loading temporarily fails.", + "Git/Worktrees: setup now runs the repository's `post-checkout` hook after creating a worktree, and deeply nested worktrees no longer fail with “Filename too long” on Windows (thanks to @ftzi, @makeittech).", + "Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech).", + "Chat: fresh messages no longer replay their entry animation after they have already been shown, and iOS users can insert a newline with Shift+Enter again (thanks to @makeittech).", + "MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action.", + "Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Usage: added xAI quota reporting (thanks to @iamhenry)." + ], + "improvements": [ + "Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different runtime (thanks to @Wsyjq).", + "Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech).", + "Chat: the composer caret is now easier to see.", + "Attachments: removing an attached Office or OpenDocument file also removes the images extracted from that document (thanks to @chiamsun).", + "Notebooks: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB).", + "Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame).", + "UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling." + ], + "fixes": [ + "**Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech).", + "Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech).", + "Chat: fresh messages no longer replay their entry animation after they have already been shown (thanks to @makeittech).", + "MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action.", + "Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr)." + ], + "misc": [] + } + }, + { + "version": "1.18.1", + "date": "2026-08-04", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected; the toggle-sidebar shortcut moved to Ctrl/Cmd+Alt+L." + ], + "improvements": [ + "**Providers:** signing in to an OAuth-only provider now actually completes — the browser login is stored and the provider list updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in.", + "Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button.", + "Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model." + ], + "fixes": [ + "**Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar — instead of only offering permanent deletion (thanks to @makeittech).", + "Walkthrough: models without a working provider login no longer appear in the walkthrough picker, and Generate stays disabled until a usable model is selected instead of failing with a raw provider error.", + "Walkthrough: connecting to a server older than the app now says the server needs updating instead of showing a raw HTML parsing error, and the \"Critical\" tag is now \"Key change\" with a tooltip so it no longer reads as a problem found in your code.", + "Agents/CLI: sending a prompt that never reaches its session is now reported as failed, and an unavailable model, agent, or variant is rejected with a clear error before anything is created.", + "Desktop/Linux: \"Open in Terminal\" no longer launches a non-terminal app that is set as the terminal launcher (thanks to @kydorn)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected." + ], + "improvements": [ + "**Providers:** signing in to an OAuth-only provider (such as Cursor) now completes in the browser — the login is stored and the provider updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in.", + "Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button.", + "Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model." + ], + "fixes": [ + "**Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar (thanks to @makeittech)." + ], + "misc": [] + } + }, + { + "version": "1.18.0", + "date": "2026-08-04", + "title": null, + "intro": null, + "app": { + "new": [ + "**Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech).", + "UI/Localization: added German interface translations and German documentation (thanks to @SGD-DEV).", + "Mobile/Android: pairing QR codes can now be scanned on devices without Google Play Services; the camera closes as soon as a code is recognized, followed by a connection-in-progress screen.", + "Mobile/Android: left and right drawer swipes can now start farther from the screen edge, outside Android's system Back gesture area.", + "Usage: added DeepSeek quota tracking (thanks to @airtaxi)." + ], + "improvements": [ + "**Mobile/Tablet:** reworked the tablet and foldable layout around the phone's navigation — a persistent resizable sessions sidebar on the left, the workspace (Changes, Files, Terminal, Notes, MCP) as a resizable right sidebar, and app pages like settings and instances shown as centered dialogs. An open diff, edited file, or attached terminal now survives rotation.", + "Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271).", + "Settings/Skills: repository-local `.agents/skills` now appear for the active project (thanks to @makeittech).", + "Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech).", + "Sessions: sessions in a newly created worktree now appear without restarting or refreshing the app.", + "Sessions: archiving and unarchiving now stays scoped to the current instance and workspace (thanks to @alexandrereyes).", + "Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech).", + "VSCode: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui)." + ], + "fixes": [ + "**Walkthrough:** a new guided walkthrough reorders a diff into a sequence of stops — the model groups related changes, explains what each one does, and orders them so each builds on the last. Start one from the Changes and pull-request views for uncommitted work, a branch against its base, or a pull request; nothing runs on its own. Walkthroughs are written in your interface language by default, and the panel can generate one in any other supported language.", + "Performance: fixed Bun dependency chunking so the web app no longer downloads a single 18.5 MB vendor bundle at startup; heavy syntax highlighting, screenshot, diagram, editor, and image-conversion libraries now load only when needed (thanks to @makeittech).", + "Performance: expanding projects with many worktrees no longer repeatedly reloads their session data.", + "Sessions: launching OpenChamber from a directory other than your project (for example your home folder) no longer produces repeated \"not a git repository\" errors that could stop sessions and projects from loading (thanks to @makeittech).", + "Sidebar: a worktree shared by more than one project no longer appears twice (thanks to @makeittech).", + "Sidebar: session titles no longer clip at the ends of their rows.", + "Git/Diff: opening a changed file now jumps its header directly to the top, and live updates refresh only files that actually changed while preserving the current review position. Saves from the built-in file editor update the diff too.", + "Terminal: opening a terminal no longer waits for the terminal view to finish loading, and startup output is retained if it arrives before the view appears (thanks to @makeittech).", + "Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update.", + "Chat: prompts sent through the private relay no longer produce duplicate replies when the connection drops after OpenCode accepted the message, and a queued message already being sent is no longer included in another send.", + "Agents/CLI: creating a session in a new worktree no longer reports a timeout while the worktree continues to be created in the background.", + "Desktop/Linux: terminals and OpenCode now start with the correct shell arguments in AppImage installs, fixing broken zsh startup (thanks to @makeittech).", + "Files: browser clients now label file exports as downloads and no longer show the desktop-only reveal action (thanks to @makeittech).", + "Chat: assistant messages no longer render active HTML." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech).", + "UI/Localization: added German interface translations (thanks to @SGD-DEV).", + "Usage: added DeepSeek quota tracking (thanks to @airtaxi)." + ], + "improvements": [ + "Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271).", + "Settings/Skills: repository-local `.agents/skills` now appear for the active workspace (thanks to @makeittech).", + "Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech).", + "Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech).", + "Chat: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui).", + "Sessions: archiving and unarchiving now stays scoped to the current workspace." + ], + "fixes": [ + "Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update.", + "Chat: assistant messages no longer render active HTML.", + "Sidebar: a worktree shared by more than one project no longer appears twice.", + "Sidebar: session titles no longer clip at the ends of their rows." + ], + "misc": [] + } + }, + { + "version": "1.17.2", + "date": "2026-08-01", + "title": null, + "intro": null, + "app": { + "new": [ + "**Desktop/Windows:** added Windows ARM64 support (thanks to @airtaxi).", + "UI: a new OpenChamber theme (dark and light) is now the default, replacing the previous default theme.", + "Sessions: a root session can now be moved with all its sub-sessions into a new worktree directly from the header menu.", + "Desktop/Linux: added a Window Controls Style setting to switch between classic rectangular buttons and macOS-style traffic lights (thanks to @kydorn).", + "Files: added a global Auto-save setting under Settings → General; binary, PDF, and Office files are excluded from auto-save (thanks to @makeittech)." + ], + "improvements": [ + "Desktop: the active session header now has a menu with rename, share, export, archive, delete, and copy-ID actions; share links copy to the clipboard automatically when created.", + "Git/Diff: symlinks now appear as link entries in the diff view instead of showing their file content.", + "Sidebar: sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr).", + "VSCode: per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on.", + "Usage: all Z.ai usage windows now appear in the usage view.", + "Chat: tool descriptions now show the glob pattern when a tool's input uses one.", + "Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12)." + ], + "fixes": [ + "**Mobile:** rebuilt the app navigation around two swipe drawers — a sessions drawer (left) with a cross-project tree, swipe actions to rename, archive, or delete sessions, and a workspace drawer (right) with Changes, Files, Terminal, Notes, and MCP tabs. Tapping the session title in the header switches recents from a compact overlay with live status indicators. Cold launches reopen the last active session and land on an explicit connect screen on failure instead of flashing an empty draft.", + "Performance: opening the first session after startup is faster — background startup requests no longer queue ahead of the initial message load (thanks to @yulia-ivashko).", + "Terminal: switching terminal tabs no longer rebuilds the connection from scratch on each open or switch (thanks to @makeittech).", + "Desktop: sticky session headers in the sidebar no longer blink or shift position during page transitions (thanks to @ChangeHow).", + "Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on.", + "Sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr).", + "Usage: all Z.ai usage windows now appear in the usage view.", + "Chat: tool descriptions now show the glob pattern when a tool's input uses one.", + "Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12)." + ], + "fixes": [ + "Chat: messages arriving at the start of the SSE stream no longer drop silently after initial connection.", + "Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12)." + ], + "misc": [] + } + }, + { + "version": "1.17.1", + "date": "2026-07-29", + "title": null, + "intro": null, + "app": { + "new": [ + "System prompt optimization: added an optional Behavior setting that reduces OpenCode's built-in system prompt by about 40% for the build and plan agents; it applies after restarting OpenCode and is unsuitable for custom build or plan definitions." + ], + "improvements": [ + "Chat: slash-command starters now include text already entered in the draft as command arguments.", + "Session goals: goals started from slash commands, including scheduled tasks, now use the command's expanded instructions.", + "Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny).", + "Desktop/Linux: AppImage tray menus now include Show, Hide, and Close, and \"Open in\" shows system application icons (thanks to @makeittech).", + "Mobile: image previews load when connected through the private relay." + ], + "fixes": [ + "**Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish.", + "OpenCode: chats now recover when OpenCode stops responding during a response, and managed OpenCode no longer restarts repeatedly during a temporary connectivity failure.", + "Desktop: bundled OpenCode no longer offers a separate update; it updates with OpenChamber (thanks to @yulia-ivashko).", + "Chat: fully loaded histories no longer show \"Load older\" again after a refresh.", + "Chat: messages removed by reverting no longer reappear after you send another message.", + "Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**OpenCode updates:** the extension can now update a managed OpenCode installation and restart it automatically; externally managed servers are left unchanged (thanks to @yulia-ivashko)." + ], + "improvements": [ + "Chat: slash-command starters now include text already entered in the draft as command arguments.", + "Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny)." + ], + "fixes": [ + "**Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish.", + "Chat: a stalled response now reconnects instead of remaining stuck in the extension.", + "Chat: fully loaded histories no longer show \"Load older\" again after a refresh.", + "Chat: messages removed by reverting no longer reappear after you send another message.", + "Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro)." + ], + "misc": [] + } + }, + { + "version": "1.17.0", + "date": "2026-07-28", + "title": null, + "intro": null, + "app": { + "new": [ + "**Agents/CLI:** agents on managed local instances can now create, send to, fork, inspect, and wait for sessions; create isolated worktrees; and manage scheduled tasks through the OpenChamber tool. The CLI adds matching `session`, `schedule`, `projects`, and `models` commands, and a new Schedule a Task starter guides task setup from chat.", + "Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow).", + "Settings: added an option to hide starter suggestions on the new-session screen.", + "Usage: added Crof and NeuralWatt quota tracking with subscription kWh, independent key-allowance windows, and credits-balance fallback across the web server and VS Code extension (thanks to @kydorn)." + ], + "improvements": [ + "**Sidebar:** sessions are organized into Recent and project zones with worktree-grouped or flat views. Scheduled tasks, archived sessions, multi-run, and worktree management now open as full-page views from the sidebar.", + "Chat composer: prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place, and the mobile composer grows with its content instead of using a separate fullscreen gesture.", + "Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx).", + "Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded.", + "Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet.", + "Mobile/iOS: push notifications now use Apple’s production service by default (thanks to @natheihei).", + "Mobile/iOS: notifications now work for development builds installed from Xcode — the app detects its Apple push environment and the server delivers each device to the matching endpoint, so dev (sandbox) and TestFlight/App Store (production) installs both receive pushes." + ], + "fixes": [ + "**Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft.", + "**Desktop/Linux:** official AppImage releases for x64 and arm64, with in-app updates, frameless window controls, system tray minimize, launch at login, multi-window support, and “Open in” for discovered installed apps. Missing update manifests are treated as “no update” instead of a hard failure, and updater errors surface in About/sidebar (thanks to @BestSithInEU, @jibanez-staticduo, @makeittech).", + "Desktop/Linux: fixed an intermittent freeze or crash while chats were streaming with the system tray enabled (thanks to @kydorn).", + "Small Model: GitHub Copilot models now use their supported API, fixing summaries, goal audits, commit messages, and other Small Model actions for models that do not support Chat Completions (thanks to @jakoss).", + "Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow).", + "Mobile/Android: terminal taps now open the keyboard, text and backspace input work with Android keyboards, and closing a focused terminal no longer leaves the app unresponsive.", + "Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow).", + "Settings: added an option to hide starter suggestions on the new-session screen." + ], + "improvements": [ + "**Chat composer:** prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place.", + "Sessions: the sidebar now uses clearer project zones and single-line session rows, with folders shown after ungrouped sessions and archived sessions kept in their existing workspace sections.", + "Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx).", + "Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded.", + "Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet." + ], + "fixes": [ + "**Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft.", + "Sessions: fixed missing activity-based sorting; chats now move in the list when they start or finish instead of repeatedly reordering while a response streams.", + "Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow).", + "Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active.", + "Usage: added Crof and NeuralWatt quota tracking, including the missing Crof switch arm that previously fell back to \"Unsupported provider\" (thanks to @kydorn)." + ], + "misc": [] + } + }, + { + "version": "1.16.3", + "date": "2026-07-22", + "title": null, + "intro": null, + "app": { + "new": [ + "**Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type.", + "**Sessions/Worktrees**: idle root sessions can now be moved with their sub-sessions and uncommitted changes into a new worktree. Worktree creation also recovers when an earlier Git operation left the repository locked.", + "Desktop: the app can now start directly with a saved remote instance, URL, or pairing link without requiring a local OpenCode installation or local server.", + "Scheduled Tasks: tasks can now start with permission auto-accept enabled, and the permission and Run as goal controls use the same compact toggles as the chat composer.", + "Desktop/macOS: added a setting to hide the menu bar item." + ], + "improvements": [ + "Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks).", + "Sidebar: projects now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged.", + "Desktop/Windows: SSH remote instances now connect through native Windows OpenSSH without relying on unsupported connection sharing. Password authentication and port forwarding work through hidden background processes, and connection failures now show the underlying SSH error instead of a generic message.", + "Mobile/Terminal: opening the terminal in a mobile browser or PWA now focuses its input and opens the keyboard without an extra tap (thanks to @bashrusakh)." + ], + "fixes": [ + "**Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between instances, projects, or worktrees.", + "Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place.", + "VSCode/Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech).", + "VSCode: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it.", + "Context Panel: delayed file-open requests no longer switch the panel back to a file after you select another tab." + ], + "misc": [] + }, + "vscode": { + "new": [ + "**Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type." + ], + "improvements": [ + "Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks).", + "Sessions: workspace groups now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged." + ], + "fixes": [ + "**Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between workspaces or extension views.", + "Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place.", + "Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech).", + "Startup: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it.", + "Agent Manager: worktree creation now recovers when an earlier Git operation left the repository locked, and removing a worktree while setup is still running no longer brings it back." + ], + "misc": [] + } + }, + { + "version": "1.16.2", + "date": "2026-07-18", + "title": null, + "intro": null, + "app": { + "new": [ + "**Terminal:** rebuilt terminal sessions across the Web, Desktop, and Mobile apps with faster rendering, retained scrollback after reconnecting, shell and login-shell selection, restart and selected-output attachment actions, live theme changes, and more accurate Unicode and full-screen app rendering. Mobile now includes a full-screen terminal workspace with touch scrolling and selection, quick keys, and Ctrl/Alt input.", + "Sessions: new drafts and sessions now stay with the project selected in the sidebar, including workspaces with nested or sibling projects (thanks to @bashrusakh)." + ], + "improvements": [ + "**Settings:** pages now use a consistent responsive layout, navigation is grouped into OpenChamber, Workspace, OpenCode, and Library sections, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech).", + "Session goals: audits now wait while direct subagents are still active, and goal details show the model used for the latest successful evaluation.", + "Small Model: provider API keys referenced through environment variables or files now work for summaries, goal audits, and other Small Model features; Gemini 3 Flash models now use their supported thinking setting.", + "VSCode: per-session permission auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open.", + "Mobile/Android: update downloads now select an APK when a release also includes an Android App Bundle." + ], + "fixes": [ + "**Pinned messages:** pin important user or assistant messages to restore their text to the agent after conversation compaction.", + "Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: new drafts and sessions now stay with the workspace selected in the sidebar, including multi-root and nested workspace setups (thanks to @bashrusakh)." + ], + "improvements": [ + "**Settings:** pages now use a consistent responsive layout, navigation is grouped by area, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech).", + "Permissions: per-session auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open." + ], + "fixes": [ + "Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it." + ], + "misc": [] + } + }, + { + "version": "1.16.1", + "date": "2026-07-14", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output.", + "Chat/Subagents: task cards now track the correct subagent when several run at once, preventing one subagent's activity or \"Open subtask\" action from pointing to another session.", + "Chat/Subagents: \"Open subtask\" now works for nested subagents inside the side-panel chat, with a Parent action to return to the previous subagent (thanks to @ameshkov).", + "Small Model: custom OpenAI-compatible providers now use the base URL and API key from OpenCode configuration (thanks to @ameshkov)." + ], + "fixes": [ + "**Performance:** large session sidebars stay responsive while chats stream, including setups with many projects, worktrees, and sessions. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history.", + "Chat: an optional Prompt Navigator adds a marker rail beside desktop chats; hover to preview prompts, click to jump between them, or assign a shortcut in Keyboard Shortcuts settings (thanks to @makeittech).", + "Sessions: temporary project lookup failures no longer remove worktree groups from the sidebar." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output.", + "Chat: task (subagents) now track the correct subagent when several run at once, preventing one subagent's activity or \"Open subtask\" action from pointing to another session." + ], + "fixes": [ + "**Performance:** large workspace session lists no longer regroup every session while chats stream. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history." + ], + "misc": [] + } + }, + { + "version": "1.16.0", + "date": "2026-07-13", + "title": null, + "intro": null, + "app": { + "new": [ + "**Session goals:** arm the new target button in the composer and your next prompt becomes a [goal](https://docs.openchamber.dev/session-goals/) — the session keeps working toward it on its own, with an independent small-model audit checking each finished turn, until the objective is verifiably complete, blocked, or over its optional token budget. The loop runs on the server, so it continues with the app closed and survives restarts. A goal strip above the composer shows progress with pause/resume; goals can also start from the plan-implement dialog, from scheduled tasks (\"Run as goal\"), or with the new \"Craft a Goal\" starter and `/craft-goal` command. While a goal runs, per-turn \"ready\" notifications are replaced by a single notification when it settles.", + "Chat: subagent sessions can now be prompted directly — open a subagent from the context panel and send it follow-up messages (off by default, available in settings).", + "Settings: chat visual settings are grouped into labeled sections, and a new editor font size setting for the code editor (thanks to @bashrusakh)." + ], + "improvements": [ + "**Usage:** OpenCode Go usage tracking is here, and Codex quota windows now show the correct reset times.", + "Files: the file viewer has a markdown preview toggle (thanks to @greghaynes).", + "Sidebar: projects can be sorted by different modes with a direction toggle, pinned sessions survive refreshes, and the file tree stays expanded while it refreshes (thanks to @bashrusakh).", + "Command palette: projects are included in the fuzzy search alongside sessions and files (thanks to @bashrusakh).", + "GitHub: PR and issue context now resolves against the source repository in fork workflows (thanks to @bashrusakh).", + "Notifications: session errors and subagent completions now notify reliably across desktop, web, and mobile.", + "Editor: \"Open in\" now recognizes VS Code Insiders.", + "Mobile: the sessions sidebar opens instantly instead of taking many seconds on some devices (thanks to @tomzx).", + "Security: requests that spoof local host headers to look like same-machine traffic are rejected." + ], + "fixes": [ + "**Remote access:** connecting over the relay got much faster — the app no longer waits for a stale local address to time out before trying the relay (previously up to ~20 seconds on a phone away from home). When your computer gets a new local IP, paired devices now learn the new address over the relay and quietly move back to the local network on their own — no re-pairing. The phone's launch screen shows which device it is connecting to.", + "Remote access: running several OpenChamber instances on the same machine no longer makes paired devices land on a random one of them — only one process per machine serves the relay now. This was behind intermittent \"Unable to reach server\" errors on paired phones.", + "Permissions: per-session auto-accept now lives on the server — sessions keep auto-accepting tool calls while the app is closed and after a server restart, subagent sessions inherit the setting, and it can be enabled on a draft before the first message (thanks to @bashrusakh for the draft fix).", + "Chat: queued messages now send when the session is already idle instead of waiting forever in some cases, pending agent questions stay answerable after a server restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh).", + "Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh).", + "Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh).", + "Mobile: renaming a saved instance no longer breaks its connection — the stored access token was getting lost on edit.", + "Mobile: on Android 15 the app no longer draws under the status bar." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Settings: a new editor font size setting for the code editor (thanks to @bashrusakh).", + "Usage: OpenCode Go usage tracking was added." + ], + "improvements": [ + "Chat: sessions with an active [goal](https://docs.openchamber.dev/session-goals/) (started from the web or desktop app) show the goal strip with its live status above the composer.", + "Chat: code blocks highlight correctly again — the webview's security policy was blocking the syntax highlighter (thanks to @bashrusakh).", + "Chat: queued messages now send when the session is already idle instead of waiting forever (thanks to @bashrusakh).", + "Sessions: pinned sessions survive refreshes (thanks to @bashrusakh).", + "Notifications: subagent completion notifications now follow the same settings as the main app." + ], + "fixes": [ + "Chat: pending agent questions stay answerable after a restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh).", + "Chat: tool output rendering no longer breaks on tools that return non-text results (thanks to @bashrusakh).", + "Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh).", + "Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh)." + ], + "misc": [] + } + }, + { + "version": "1.15.0", + "date": "2026-07-10", + "title": null, + "intro": null, + "app": { + "new": [ + "**Remote access:** a new [private relay](https://docs.openchamber.dev/private-relay/) lets you reach your instance from anywhere — no open ports and no third-party tunnel, over an end-to-end-encrypted tunnel. It turns on by itself when you pair a device over it and turns off once no paired device uses it (thanks to @yulia-ivashko).", + "**Mobile:** the native iOS and Android apps open for testing — join the [iOS public beta on TestFlight](https://testflight.apple.com/join/5ek6GU1E) or grab the Android APK from the [latest release](https://github.com/openchamber/openchamber/releases/latest). Connect by scanning a QR code from \"Add a device\" on your server; the app then moves between your local network and the private relay on its own — leaving home carries the open session onto the relay and coming back returns it to Wi-Fi, no re-pairing. Saved instances show a live Connected status with the active transport, iPad gets a split layout with a persistent sessions sidebar and a resizable Changes/Files sidebar, and the app checks for OpenChamber updates itself (Android shows a download toast).", + "**Pairing:** a redesigned [\"Add a device\"](https://docs.openchamber.dev/connect-devices/) dialog asks where you'll use the device — Anywhere (relay with local network preferred at home), Home network only, or This computer only — then shows a large scannable QR code with a copyable link, and closes itself once the device connects. Links are single-use expiring codes redeemed on connect instead of embedding a long-lived token in the QR (thanks to @yulia-ivashko).", + "Desktop: saved servers keep every transport their pairing link carried — the app connects directly on your network and falls back to the relay away from it, including when opening a server in a new window and when restoring the connection after a restart.", + "Desktop: the servers list in Settings shows live per-server reachability, and importing a pairing link is the primary way to add a server.", + "Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results open in a new navigable summary view with linked URLs and expandable nested data, alongside tree and raw JSON views.", + "Projects: each project can now set its own default model (thanks to @makeittech).", + "Diff/Chat: added a Last turn mode to the Diff view, and latest-turn changed-file chips in chat now open that snapshot while older turn chips stay read-only.", + "Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting (Settings → Chat) controls long-line wrapping." + ], + "improvements": [ + "Devices: a paired phone or desktop names the connection after the server's hostname; the name typed when creating the link labels the device in the server's list.", + "Desktop: the header dropdown (instance / usage / MCP) was restyled with cards — usage grouped per provider, hosts showing a colored status line with ping and the active host highlighted, and MCP servers in one card. Host statuses persist between openings instead of flashing \"Unknown\", and switching to an already-checked host is immediate.", + "Desktop: Windows builds can launch at login and minimize to the system tray (thanks to @achcyano).", + "Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei).", + "Mobile: selecting local files from the composer now attaches the picked files even if the composer switches between compact and expanded layouts while the file picker is open.", + "Browser: links clicked inside an embedded browser tab now keep the tab on the navigated page instead of remounting the frame.", + "Context Panel: raw message rows now keep token and time columns aligned without showing shortened message IDs.", + "Server: remote clients with non-ASCII project paths connect again (thanks to @FanFan4204)." + ], + "fixes": [ + "Devices: the \"Connect to this server\" list now shows each paired device with a live status — Connected · Local network or Relay — and a platform badge (iOS, Android, macOS, Windows, Linux). Re-pairing or re-entering the password on the same device updates its existing entry instead of adding a duplicate.", + "Chat/Tools: expanded file-edit and patch results now include per-file buttons to open the diff or jump to the first changed line in the file editor.", + "Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments.", + "Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations.", + "Chat: if sending a message times out or loses the connection after OpenCode accepted it, the app now keeps the sent message instead of rolling it back as failed.", + "UI: closing the right sidebar after resizing no longer leaves stale width constraints behind." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting controls long-line wrapping.", + "Editor Integration: the \"Add to Context\" command and active-editor pin-selection now use workspace-relative filenames so the model reads the correct file when names collide (thanks to @Catan)." + ], + "improvements": [ + "Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results now offer navigable summary, tree, and raw views.", + "Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei)." + ], + "fixes": [ + "Chat/Tools: expanded file-edit and patch results include per-file buttons to open the diff or jump to the first changed line in the editor.", + "Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments.", + "Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations.", + "Chat: if sending a message times out or loses the connection after OpenCode accepted it, the extension now keeps the sent message instead of rolling it back as failed." + ], + "misc": [] + } + }, + { + "version": "1.14.1", + "date": "2026-07-07", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: finished agent replies can now show a short recap and a suggested next message, with separate settings for each and a Small Model setting for choosing the utility model used for those helpers.", + "Voice: read-aloud can now use the Small Model to summarize long text before speaking it.", + "Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet." + ], + "improvements": [ + "Notes/Todos: adding selected chat text to notes now uses the Small Model to summarize it automatically.", + "Git/GitHub: commit message and pull-request generation now use the Small Model from setting instead of sending message to chat.", + "Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan).", + "Mobile: the composer stays focused more reliably when the keyboard opens, and the dictation transcript grows the composer like typed text.", + "Mobile: iOS PWA safe areas, keyboard overlays, and app-resume connection checks were tightened up.", + "VSCode: favorite models now stay saved after restarting the extension (thanks to @Catan).", + "VSCode: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan)." + ], + "fixes": [ + "Git/Diff: opening a changed file now jumps to the first changed line instead of the start of the diff hunk.", + "Desktop: password-protected instances opened from desktop or a browser no longer take the mobile-only unlock path." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet." + ], + "improvements": [ + "Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan).", + "Chat: favorite models now stay saved after restarting the extension (thanks to @Catan).", + "Settings: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan)." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.14.0", + "date": "2026-07-05", + "title": null, + "intro": null, + "app": { + "new": [ + "Voice: local speech-to-text works out of the box — models (Parakeet for English and 25 European languages, Whisper for a lighter multilingual option) download on demand from a new picker in Settings → Voice, or any OpenAI-compatible Whisper endpoint can be used instead; a configurable shortcut (mod+alt+v by default) toggles dictation.", + "Voice: read-aloud can now use a local Kokoro voice (11 English voices), and long replies start speaking after roughly a sentence instead of waiting for the whole message.", + "Voice: the Voice settings page was simplified — a single read-aloud toggle owns the playback options, and a new \"Enable voice input\" toggle hides the composer mic entirely.", + "Mobile: the composer collapses into a compact input bar while the keyboard is closed, with a round new-session button beside it (hidden on the new-session screen); tapping the bar expands it and opens the keyboard, and the mic starts voice input straight from the compact bar.", + "Mobile: the model and agent selectors moved into a row above the message text, the attachment menu and the new-session project/branch pickers open as bottom sheets with search, and a drag handle above the composer swipes it into a fullscreen editor — swiping down shrinks it back or dismisses the keyboard.", + "Mobile: the branch/worktree picker on the new-session screen lists all worktrees right after a cold start, and the GitHub connection status is recognized without re-running the connect flow.", + "Mobile: in phone browsers the composer now keeps itself above the keyboard on the new-session screen and in the fullscreen editor, and opening the app shows the logo while it connects instead of flashing an unreachable-server error." + ], + "improvements": [ + "Mobile: long conversations now load older history with a button at the top of the chat, which disappears once everything is loaded; loading older messages keeps your scroll position steady on all platforms.", + "Mobile: opening the web app in a phone browser against a password-protected instance shows the password unlock page again (regressed in 1.13.9).", + "UI: lists across the app were moved to one virtualization engine, so long lists scroll more consistently.", + "Desktop: the app prefers your own OpenCode install again — the bundled CLI is used only when no OpenCode is installed anywhere on the machine.", + "Windows: OpenCode installed via npm now launches from paths with spaces (such as C:\\Program Files\\nodejs), binary paths pasted with surrounding quotes work, and discovery also checks the system-wide npm prefix and Scoop's shims — in the web/desktop app and the VS Code extension." + ], + "fixes": [ + "Voice: voice input was rebuilt around live streaming transcription — the composer mic shows a live transcript with a volume meter and timer while you speak, and a recording can be cancelled, inserted, or inserted and sent; failed transcriptions keep their audio so you can retry or accept the partial text.", + "Mobile: returning to the app no longer briefly flickers the session list.", + "Mobile: continued polish ahead of the native app release — the chat and composer ride the keyboard in one smooth motion (including in long conversations), bottom sheets enter cleanly while the keyboard dismisses, the text cursor stays in place when the keyboard opens, starter suggestions on the new-session screen step aside while the keyboard is up, and switching instances no longer leaves the previous instance's sessions in the sessions list.", + "Mobile: the slash-command, file/agent, skill, and snippet autocompletes were tuned for touch — they can grow up to the top of the chat area, the keyboard-hint footer and description lines are gone, row icons line up, list scrolling no longer bounces the page behind, and picking a command keeps the keyboard open.", + "Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing.", + "Desktop: a local instance with a UI password and LAN access no longer gets stuck on \"Auth required\" and an unreachable-server screen (the app's client tokens are now reliably recognized as local, including for 0.0.0.0-bound servers)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: loading older messages keeps your scroll position steady.", + "Startup: on Windows, OpenCode installed via npm now launches from paths with spaces (such as C:\\Program Files\\nodejs), a binary path pasted with surrounding quotes into the Opencode Binary setting works, and discovery also checks the system-wide npm prefix and Scoop's shims." + ], + "fixes": [ + "Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing." + ], + "misc": [] + } + }, + { + "version": "1.13.9", + "date": "2026-07-02", + "title": null, + "intro": null, + "app": { + "new": [ + "Mobile: added the native iOS and Android app projects ahead of the mobile app release, with continued polish for saved connections, password unlock, QR-code connection scanning, push notifications, iOS widgets, app resume, and native layout details.", + "Desktop: the app can now use a bundled OpenCode CLI, or you can choose your own CLI path in settings.", + "Desktop: you can now specify optional custom headers when adding a remote OpenChamber instance to the desktop app, including for Cloudflare Access-style setups; settings and environment variables can still override them, and the bundled CLI can be replaced by setting a direct OpenCode CLI path." + ], + "improvements": [ + "Desktop: SSH remote instances with a saved UI password now open directly after the tunnel connects instead of showing the unlock screen again.", + "VSCode: clearing optional agent fields now removes them from agent config instead of saving `null` values." + ], + "fixes": [ + "Desktop: added a Keep awake setting for the upcoming desktop app release to prevent the computer from sleeping while the app is running.", + "Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling.", + "Chat: embedded JSON examples in messages no longer render as generated-result cards.", + "Sync: chat state now recovers after idle reconnects instead of leaving sessions stuck in a stale busy state.", + "VSCode: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Agents: clearing optional agent fields now removes them from agent config instead of saving `null` values." + ], + "fixes": [ + "Startup: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI.", + "Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling.", + "Chat: embedded JSON examples in messages no longer render as generated-result cards.", + "Sync: chat state now recovers after idle reconnects instead of leaving sessions stuck in a stale busy state." + ], + "misc": [] + } + }, + { + "version": "1.13.8", + "date": "2026-06-29", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: a new Follow-up behavior setting (Settings → Chat) controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh)." + ], + "improvements": [ + "Sessions: deleting a worktree group from the sidebar, or permanently deleting an archived session that has subagent sessions, now removes those subagent sessions too instead of leaving them behind (thanks to @bashrusakh)." + ], + "fixes": [ + "Startup: launching the app no longer hangs for around 20 seconds before you can open a session, load a diff, or send a message — GitHub pull request status checks no longer tie up the connection to the server during startup.", + "OpenCode: when a separate OpenCode is already running (the TUI, `opencode serve`, or a daemon on the default port 4096), the app now starts its own server instead of attaching to it. This fixes the \"OpenChamber could not finish initialization\" error and stops the app from opening or closing your separate OpenCode when it starts and quits. Connecting to an external OpenCode now requires setting `OPENCODE_HOST`, `OPENCODE_PORT`, or `OPENCODE_SKIP_START`.", + "Sessions: clicking a session inside a worktree group no longer briefly jumps the selection to the project's first session while the sidebar data catches up (thanks to @bashrusakh).", + "Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: a new Follow-up behavior setting controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh)." + ], + "improvements": [], + "fixes": [ + "Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx)." + ], + "misc": [] + } + }, + { + "version": "1.13.7", + "date": "2026-06-28", + "title": null, + "intro": null, + "app": { + "new": [ + "Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider." + ], + "improvements": [ + "Mobile: the model and agent buttons in the composer are now borderless and cleaner, show the provider logo next to the model name, and shorten long names with an ellipsis; in the model picker the thinking-variant control is plain text with a chevron and each row's controls line up.", + "Mobile: interface labels (the model and agent selectors and other small labels) are back to their previous size after 1.13.6 shrank them too much." + ], + "fixes": [ + "Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages.", + "Mobile: in long conversations, older messages now load before you reach the very top, and fast scrolling no longer leaves blank gaps where messages briefly disappear until you scroll back.", + "CLI: `openchamber update` works again after a missing helper broke the command." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider." + ], + "improvements": [], + "fixes": [ + "Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages." + ], + "misc": [] + } + }, + { + "version": "1.13.6", + "date": "2026-06-28", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop/macOS: the Dock icon can now show a badge count for chats with unseen activity, with a new Appearance setting to turn it off." + ], + "improvements": [ + "Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages.", + "Chat: selecting a user-installed skill from the slash command menu now invokes the skill and injects its content, instead of inserting the skill name as plain text.", + "Context Panel: chat tabs now use the session title and mark the open chat as seen while you are viewing it." + ], + "fixes": [ + "Context Panel: Browser and Preview tabs no longer accumulate duplicate auth tokens in their URLs after reloads or navigation." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.13.5", + "date": "2026-06-27", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [], + "fixes": [ + "CLI: global web installs no longer crash on startup when tunnel commands load ngrok capabilities.", + "CLI: `openchamber update` works again, and tunnel start paths no longer fail when using managed-local config prompts, multi-instance port selection, or auto-started servers.", + "GitHub/Usage: fork upstream detection and Google quota checks no longer fail because of missing server helpers." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "No notable changes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.13.4", + "date": "2026-06-27", + "title": null, + "intro": null, + "app": { + "new": [ + "UI/Localization: added Japanese interface translations and Japanese documentation (thanks to @yuchi0531).", + "Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech).", + "Reviews: the Review changes dialog can now run an automatic review loop, with a chat banner for opening or stopping the linked review sessions.", + "Shortcuts: the model-selector shortcut can now be customized (thanks to @makeittech).", + "Worktrees: messages sent to new worktree sessions now wait until the worktree session is ready instead of racing ahead (thanks to @bashrusakh)." + ], + "improvements": [ + "Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech).", + "Git: commit and pull-request generation from a draft session now starts from the created chat session instead of a temporary draft (thanks to @bashrusakh).", + "CLI: startup and status commands now check the live server port before treating an existing process as the active OpenChamber server." + ], + "fixes": [ + "Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx).", + "Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay.", + "Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech).", + "Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "UI/Localization: added Japanese interface translations (thanks to @yuchi0531).", + "Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech)." + ], + "improvements": [ + "Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech)." + ], + "fixes": [ + "Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx).", + "Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay.", + "Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech).", + "Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12)." + ], + "misc": [] + } + }, + { + "version": "1.13.3", + "date": "2026-06-24", + "title": null, + "intro": null, + "app": { + "new": [ + "Git: Git identities can now enable SSH commit signing." + ], + "improvements": [ + "Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12).", + "Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh).", + "Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer.", + "Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh).", + "Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz).", + "Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm).", + "Providers: disconnecting a provider from settings now works for the selected provider (thanks to @bashrusakh).", + "Git: pushing from the Git view now syncs first, reducing rejected pushes when the branch needs to update.", + "Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino).", + "VSCode: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114).", + "Files: downloads and file names with non-Latin characters now handle those characters correctly in headers (thanks to @FanFan4204)." + ], + "fixes": [ + "Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni).", + "Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa).", + "Sessions: new sessions now stay attached to the selected project or current workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh).", + "Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh).", + "Startup: managed OpenCode server processes left behind by a previous crash are cleaned up on the next start.", + "CLI: stale server PID files are checked more carefully so unrelated processes are not mistaken for an OpenChamber server.", + "Mobile: subagent chevrons no longer overlap long session titles, and session grouping now matches the exact workspace directory (thanks to @weixiang1862, @lilyzhaun)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12).", + "Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh).", + "Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer.", + "Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh).", + "Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz).", + "Settings: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114).", + "Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm).", + "Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino)." + ], + "fixes": [ + "Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni).", + "Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa).", + "Sessions: new sessions now stay attached to the selected workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh).", + "Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh).", + "Startup: managed OpenCode server processes left behind by a previous extension crash are cleaned up on the next start." + ], + "misc": [] + } + }, + { + "version": "1.13.2", + "date": "2026-06-18", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh).", + "Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven)." + ], + "fixes": [ + "Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12).", + "Files: HTML, image, and PDF previews no longer cycle to \"authentication required\" every ~50 seconds (thanks to @bashrusakh).", + "Startup: the app starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh).", + "Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven)." + ], + "fixes": [ + "Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12).", + "Startup: the extension starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved." + ], + "misc": [] + } + }, + { + "version": "1.13.1", + "date": "2026-06-17", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: pinned welcome starters now appear immediately when a new draft session opens, without needing to open the add dialog.", + "Scheduled Tasks: the task editor dialog now supports Cron expressions with inline validation, quick-example chips, and a preview of the next four upcoming runs (thanks to @tomzx).", + "Startup: providers and agents now load faster by avoiding the full provider catalog on initial load." + ], + "improvements": [ + "Chat: clicking a Mermaid diagram in a chat message now opens a fullscreen pan/zoom preview.", + "Chat: the context usage indicator now shows as a circular progress ring with the same color thresholds, visible in all workspace headers.", + "Chat/UI: embedded chat views and context panel previews now consistently match the current theme.", + "Chat/Mobile: the session status button now responds more reliably to taps on Android.", + "Files: syntax highlighting in the file editor, Plan View, and Skills page now uses Shiki for broader language support.", + "Right Sidebar: switching between sidebar tabs is less likely to re-render unrelated content (thanks to @bashrusakh).", + "Security: self-hosted instances now include noindex headers and a robots.txt to block search engine crawlers.", + "CLI/Installer: the installer now requires Node.js 22 and handles version detection failures with clearer guidance." + ], + "fixes": [ + "Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions — only `$$...$$` display math and `\\(...\\)` inline math are recognized.", + "Chat: code-block highlighting now runs off the main thread, preventing UI freezes when rendering code-heavy responses.", + "Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is and shows a clear explanation instead of silently disappearing.", + "Agents: deleting an agent now shows an error toast when the definition is missing, instead of failing silently.", + "Sessions: the app no longer crashes on startup when there are many sessions in folders.", + "Notifications: desktop notifications no longer show duplicate alerts, and reasoning text is excluded from notification bodies.", + "Reliability: session list loading handles Windows paths and concurrent requests more steadily, and duplicate health-check URLs are removed from diagnostics." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: pinned welcome starters now appear immediately when a new draft session opens." + ], + "improvements": [ + "Startup: providers and agents now load faster at startup.", + "Chat: code-block highlighting now runs off the main thread, keeping the UI responsive during code-heavy responses.", + "Chat: the context usage indicator now shows as a circular progress ring." + ], + "fixes": [ + "Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions.", + "Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is instead of being silently disabled.", + "Agents: deleting an agent now shows an error toast when the definition is missing." + ], + "misc": [] + } + }, + { + "version": "1.13.0", + "date": "2026-06-15", + "title": null, + "intro": null, + "app": { + "new": [ + "Files: added dedicated PDF files previews mode.", + "Files: added an optional docked files editor toolbar (thanks to @robertoberto).", + "Git/Diff: individual diff hunks can now be staged, unstaged, or discarded directly from the Changes view via `git apply`.", + "Git/Diff: added a review flow for starting a review from current changes.", + "GitHub: GitHub settings can now use credentials from the `gh` CLI when available (thanks to @tomzx).", + "Desktop: you can now open developer tools from the Help menu.", + "Sessions: new draft sessions now start from the default model and agent instead of inheriting the previous session's selection, and fall back to OpenCode's own `default_agent` (and its model) when no OpenChamber default is set.", + "Startup: the model and agent now appear faster on the initial draft — config loads under the project key up front (no reload when the draft opens) and the agent list is fetched once instead of per consumer." + ], + "improvements": [ + "Security: LAN and remote browser access now require a UI password before the server will start.", + "Desktop: if LAN access was enabled without a password, the app now starts locally and asks for a password before turning LAN access back on.", + "Chat: file paths inside fenced code blocks are now clickable, including line and column targets (thanks to @robertoberto).", + "Chat: context breakdowns now show message previews and cache hit rates (thanks to @robertoberto, @raz123).", + "Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive.", + "Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84).", + "Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history.", + "Files: file operations now use the active workspace directory more consistently (thanks to @tomzx).", + "Sessions: session menus now include a delete action (thanks to @ShogunPanda).", + "Sessions: selected rows now highlight across the full sidebar gutter.", + "Comments: inline file/diff comment drafts now stay in place when focus changes.", + "Git/Diff: redesigned the Changes diff view with faster multi-file rendering, expandable hunk separators, a full-file loading toggle, compact responsive controls, and a unified changed/staged context panel workflow.", + "Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini).", + "Notifications: notification streams now stay connected more reliably behind proxies (thanks to @kostazol).", + "Mobile: the empty Changes view keeps a close control visible (thanks to @lilyzhaun).", + "Security: file previews and downloads now reject paths outside the allowed workspace unless access has been granted.", + "Startup: cached settings and session state now appear earlier while the live API finishes connecting.", + "VSCode: the extension opens faster with cached sessions, models, providers, and projects, then refreshes in the background.", + "VSCode: sessions are now grouped under their workspace, with cleaner session rows and an archived-sessions toggle." + ], + "fixes": [ + "Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion).", + "Chat/Mobile: collapsed tool cards now keep their tool icon visible, and reasoning/tool text no longer clips descenders.", + "Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013).", + "Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013).", + "Sessions: fixed a bug where a running session would briefly flicker as idle (in the sidebar, the send/stop button, and the status row) when the app is protected by a password." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: session rows now use a cleaner single-line layout, and a new control next to \"archive all\" toggles archived sessions on or off." + ], + "improvements": [ + "Sessions: the list now groups sessions under their workspace, so pinning sessions and moving them into folders work as expected.", + "Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84).", + "Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive.", + "Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history.", + "Sessions: session menus now include a delete action (thanks to @ShogunPanda).", + "Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini)." + ], + "fixes": [ + "Startup: the extension opens faster — recent sessions, models, providers, and projects appear instantly from cache and refresh in the background, and the loading screen no longer lingers after the interface is ready.", + "Startup: requests made while OpenCode is still starting now wait briefly for it to become ready instead of failing, and if OpenCode fails to start the error now includes what it reported.", + "Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion).", + "Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013).", + "Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013)." + ], + "misc": [] + } + }, + { + "version": "1.12.4", + "date": "2026-06-11", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added `/handoff-review` to open a linked review session for the current workspace changes, with actions to send review feedback and implementation replies between the sessions.", + "Chat/UI: added a setting to collapse long user messages.", + "Chat: Mermaid diagrams can now be opened in a dedicated diagram editor (thanks to @nerdosaurus).", + "Worktrees: creating a single new worktree session now opens the session immediately while worktree setup continues in the background.", + "Settings: added search across settings pages.", + "Files: added an editor Vim mode setting (thanks to @Champii).", + "Desktop/macOS: added a menu bar tray with live session status, Mini Chat access, and a provider usage submenu.", + "Desktop/macOS: added an optional vibrancy effect for the left sidebar.", + "Mobile: refreshed session controls, worktree deletion flow, MCP controls, update flow, and usage tracking for new layout.", + "Usage: added Cursor quota tracking.", + "UI/Localization: added French interface translations and French documentation (thanks to @pascalandr).", + "VSCode: added an action to archive all sessions from the extension (thanks to @jjdubski).", + "VSCode: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko)." + ], + "improvements": [ + "Chat: `@agent` mentions in rendered messages now use the primary accent color.", + "Chat: table copy actions now include a Markdown format option (thanks to @kjhq).", + "Models: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq).", + "Multi-Run: creating isolated runs now opens sessions immediately while worktree setup continues in the background.", + "Sessions: chat folder assignments now stay in place after reloads.", + "Sessions: session, folder, project, and worktree rows now have right-click menus for their available actions.", + "Settings/Agents: agent prompt and permission edits now stay saved after changes.", + "Files: writes are now safer when saving through temporary files (thanks to @nerdosaurus).", + "Git: changed-file folders now have a revert action (thanks to @kostazol).", + "GitHub: issue and pull-request pickers now use server-side search for larger repositories (thanks to @tomzx).", + "Voice: Plan and file preview markdown now include text-to-speech buttons, with a setting for reading selected text or the full document (thanks to @yangyaofei)." + ], + "fixes": [ + "Preview: inline module scripts are now rewritten in proxied HTML responses, fixing more Vite preview pages (thanks to @mdbetancourt).", + "Desktop/macOS: startup no longer opens unnecessary folder prompts.", + "Terminal/Mobile: touch scrolling in the terminal no longer conflicts with terminal input as often (thanks to @kostazol)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: added an action to archive all sessions (thanks to @jjdubski).", + "Workspaces: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko).", + "Settings: added search across settings pages.", + "Chat/UI: added a setting to collapse long user messages.", + "Usage: added Cursor quota tracking.", + "UI/Localization: added French extension translations (thanks to @pascalandr)." + ], + "improvements": [ + "Agent Manager: creating isolated runs now opens sessions immediately while worktree setup continues in the background.", + "Agent Manager: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq).", + "Sessions: chat folder assignments now stay in place after reloads.", + "Sessions: session and folder rows now have right-click menus for their available actions.", + "Chat: table copy actions now include a Markdown format option (thanks to @kjhq).", + "Chat: `@agent` mentions in rendered messages now use the primary accent color." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.12.3", + "date": "2026-06-05", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Startup: OpenCode health checks now work with OpenCode 1.15.x." + ], + "fixes": [ + "Windows/Startup: WSL OpenCode installs are no longer detected or launched; install OpenCode natively on Windows and configure `opencode.cmd` or `opencode.exe` instead.", + "Files: file trees now show directory loading errors with a retry action instead of leaving the folder empty, and slow Git ignore checks no longer block directory listings indefinitely." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Startup: OpenCode health checks now work with OpenCode 1.15.x." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.12.2", + "date": "2026-06-05", + "title": null, + "intro": null, + "app": { + "new": [ + "**Desktop/Windows: the Windows app is now available publicly, with full functionality parity across the app.**", + "Projects: the Add Project directory picker now starts with hidden files off each time it opens." + ], + "improvements": [ + "Tunnels: switching between Cloudflare and ngrok quick tunnels now replaces the active quick tunnel instead of reusing the previous provider.", + "Tunnels: ngrok startup failures now show the ngrok or authtoken error returned during startup.", + "Chat: prompts sent while creating or switching target sessions now stay attached to the intended project directory.", + "VSCode: the extension now detects more Windows OpenCode installs from PATH, npm, Scoop, and Chocolatey." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Startup/Windows: the extension now detects more OpenCode installs from PATH, npm, Scoop, and Chocolatey.", + "Chat: prompts sent while creating or switching target sessions now stay attached to the intended workspace directory.", + "Files: chat and tool links now handle Windows drive-letter and backslash paths." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.12.1", + "date": "2026-06-03", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting.", + "Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group on desktop, mobile, and VS Code." + ], + "improvements": [ + "Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied.", + "Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session.", + "Chat/UI: sticky user-message headers are now off by default.", + "Sessions: session titles update from live session events, and the app now consistently loads all existing OpenCode sessions.", + "Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes.", + "UI/Time: the 12-hour/24-hour time preference now applies to chat timestamps, usage reset times, scheduled tasks, tunnels, passkeys, Git history, and pull-request dates.", + "Settings/Files: the default file preview setting now lives with the Chat appearance settings and applies immediately to open file tabs.", + "Desktop: Desktop tunnels now serve the full app UI instead of the headless page.", + "Desktop: removed the legacy Tauri desktop path; Electron is now the only desktop runtime." + ], + "fixes": [ + "Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details.", + "Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing.", + "Chat: the first prompt in a new session no longer gets stuck before sending.", + "Preview: embedded previews now rewrite inline module imports, fixing Vite React preview pages that load root-relative modules.", + "Desktop: quitting the Desktop app now stops managed OpenCode processes more reliably, reducing leftover OpenCode processes after exit." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting.", + "Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group." + ], + "improvements": [ + "Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied.", + "Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session.", + "Sessions: session titles update from live session events, and the extension now consistently loads all existing OpenCode sessions.", + "Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes.", + "UI/Time: the time-format preference now applies to chat timestamps, usage reset times, scheduled tasks, passkeys, and usage last-updated times." + ], + "fixes": [ + "Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details.", + "Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing.", + "Chat: the first prompt in a new session no longer gets stuck before sending." + ], + "misc": [] + } + }, + { + "version": "1.12.0", + "date": "2026-06-03", + "title": null, + "intro": null, + "app": { + "new": [ + "Mobile: added a new mobile UI as the default, with an option in Settings to switch back to the previous layout; this is the foundation for the upcoming mobile app and is available to try now.", + "Chat: added customizable draft welcome starters from commands and skills, including guided commands for planning, catch-up, debugging, and exploration.", + "Chat: assistant answers now have a dialog for starting a new session from that answer.", + "Web/Browser: added a Browser feature for opening websites in the web app and sharing annotations with screenshots to agents.", + "Web/Remote Instances: added a headless web app mode, and remote instance switching now changes the OpenChamber API endpoint without loading the full remote UI.", + "UI/Themes: added JetBrains Light and JetBrains Dark themes, and VS Code chat colors now map more closely to the active editor theme." + ], + "improvements": [ + "Chat/UI: markdown-rendered user messages now preserve line breaks." + ], + "fixes": [ + "Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added customizable draft welcome starters from commands and skills, including guided commands for catch-up, debugging, exploration, and approach comparison.", + "Chat: assistant answers now have a dialog for starting a new session from that answer." + ], + "improvements": [ + "Chat/UI: markdown-rendered user messages now preserve line breaks.", + "UI/Theming: chat colors now map more closely to the active editor theme, and the session UI has been refined.", + "Reliability/Startup: Restart API Connection now uses the same loading and reload flow as startup." + ], + "fixes": [ + "Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages." + ], + "misc": [] + } + }, + { + "version": "1.11.7", + "date": "2026-05-27", + "title": null, + "intro": null, + "app": { + "new": [ + "Git: commit history now includes a branch graph and commit-row actions in the history modal (thanks to @ermanhavuc).", + "Desktop: added a launch-at-startup setting, and collapsed browser windows now keep their webview state.", + "UI/Localization: added Traditional Chinese interface translations (thanks to @Jia35).", + "Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc)." + ], + "improvements": [ + "Notes/Todos: completed todos stay at the end of the list, and the send-to-session dialog has a cleaner model picker (thanks to @kostazol, @rghamilton3)." + ], + "fixes": [ + "Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt).", + "Sessions: inline session renaming no longer exits immediately after focus changes (thanks to @youfch).", + "VSCode: restored live streaming in the extension." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc)." + ], + "improvements": [], + "fixes": [ + "Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt).", + "Reliability/Streaming: restored live streaming in the extension." + ], + "misc": [] + } + }, + { + "version": "1.11.6", + "date": "2026-05-25", + "title": null, + "intro": null, + "app": { + "new": [ + "Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion).", + "Tunnels: added Ngrok as a quick tunnel provider in the CLI and Desktop tunnel settings, with readiness checks (requires Ngrok cli and auth).", + "Desktop: added optional password setting in OpenChamber sessions settings for the local Desktop server.", + "Multi-Run: new multi-run sessions now appear in the session list immediately, and slash-command prompts are sent to the created run sessions correctly." + ], + "improvements": [], + "fixes": [ + "Mobile: restored the new-session action in the session sidebar header." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion)." + ], + "improvements": [ + "Perf: Git repository lookups in the extension now avoid repeating the same Git read commands during refreshes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.11.5", + "date": "2026-05-25", + "title": null, + "intro": null, + "app": { + "new": [ + "Sessions: session titles can now be renamed inline with a double-click (thanks to @robertoberto).", + "Files: file search now shows the number of matches in the editor panel, and directory rows include a quick-add button (thanks to @attackonryan, @tomzx).", + "Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei)." + ], + "improvements": [ + "Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type.", + "Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent.", + "Git: changed files are split into staged and unstaged sections, and Git operations work correctly from repository subdirectories (thanks to @ShogunPanda, @kostazol).", + "Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404).", + "Mobile/PWA: long-press tooltips work on touch screens, fullscreen panels keep the right header state, deleted or long-named files behave better in file lists, and Android PWA dialogs stay visible (thanks to @kostazol, @lilyzhaun)." + ], + "fixes": [ + "Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei)." + ], + "improvements": [ + "Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type.", + "Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent.", + "Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404)." + ], + "fixes": [ + "Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts." + ], + "misc": [] + } + }, + { + "version": "1.11.4", + "date": "2026-05-22", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added reusable snippets with `#` autocomplete in the composer and a Snippets settings page for global and project snippets with [opencode-snippets](https://github.com/JosXa/opencode-snippets) plugin compatibility.", + "Multi-Run: runs can now be split into separate prompt/model groups, and Multi-Run prompts support command, file, agent, and snippet autocomplete (thanks to @tomzx)." + ], + "improvements": [ + "Desktop: Electron is now the desktop release target, with updated macOS menu actions for the right sidebar and terminal dock.", + "UI: refreshed the desktop workspace shell with a full-width header, framed chat area, and smooth left/right sidebar open and close states.", + "Chat: completed reasoning blocks stay collapsed without replaying the collapse animation when you reopen a session.", + "Files: file search and mention results avoid mixing entries from similar query/cache keys (thanks to @isanchez404).", + "VSCode: switching between chat sessions is less likely to stall on very large conversations.", + "UI/Localization: refreshed Simplified Chinese terminology across the interface (thanks to @luojiyin)." + ], + "fixes": [ + "Voice: preview audio now stops and cleans up correctly when you stop playback or leave Voice settings (thanks to @isanchez404)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: opening a session now fetches a smaller initial message page, while still expanding enough to show the latest user turn when needed." + ], + "improvements": [ + "Sessions: switching between chat sessions now keeps less inactive message history in the webview, especially after opening large conversations.", + "Chat: task tool results use final task summaries when available instead of repeatedly loading child-session messages.", + "Chat: task tool polling in the extension now uses smaller message fetches while subtasks are active or idle.", + "Chat: markdown file links now cap path checks in the extension, reducing stalls in messages with many inline paths.", + "Chat: the extension header reads only the active session title and latest usage data instead of reacting to the full session list." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.11.3", + "date": "2026-05-19", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: slash command autocomplete now includes skills and clearer command/type badges.", + "Updates/PWA: OpenCode update and PWA install prompts can now be dismissed without reappearing repeatedly (thanks to @robertoberto)." + ], + "improvements": [ + "Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto).", + "Chat: slash, file, skill, and agent autocomplete selection now stays steadier when using the keyboard or mouse.", + "Chat: external links in messages now show favicons with better contrast, and skill links render correctly in user message rendered as markdown.", + "Chat: multi-file tool diffs now render safely, including files with mixed line endings.", + "Sessions: archived session lists handle large archives better, and sub-session expansion is kept separate between Recent and project sections (thanks to @vhqtvn).", + "Sessions: deleting or archiving a parent session now shows a descendant count that matches what will actually be removed (thanks to @vhqtvn).", + "Git: reverting a chat message now refreshes the Git changes view afterward.", + "Terminal/Mobile: the terminal viewport now stays above the mobile keyboard more consistently (thanks to @Dav1dch)." + ], + "fixes": [ + "Notifications: browser and VS Code notifications work without duplicate alerts.", + "Usage: added Wafer.ai quota tracking and removed the duplicate Zhipu usage provider entry (thanks to @bowber)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Editor Integration: Add to Context now attaches the selected code as context instead of pasting a formatted block into the input.", + "Editor Integration: Add File to Chat now attaches selected files instead of inserting file mentions.", + "Editor Integration: Add to Context, Add File to Chat, Explain, and Improve Code now target the active session editor when one is open.", + "Chat: slash command autocomplete now includes skills and clearer command/type badges.", + "Usage: added Wafer.ai quota tracking (thanks to @bowber)." + ], + "improvements": [ + "Chat: session editor tabs now update their title to match the session title.", + "Sessions: session rows now include an action to open a chat as editor tab.", + "Notifications: completion, question, and permission notifications now use the extension notification settings and shows as multi-platforn native notifications.", + "Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto)." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.11.2", + "date": "2026-05-18", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc).", + "Git: commit history can now show file diffs inline (thanks to @ermanhavuc)." + ], + "improvements": [ + "Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc).", + "Notes/Todos: context panel sizes are remembered, and todos can be reordered with drag and drop (thanks to @ermanhavuc).", + "Git: branch history works better for local-only branches, and branch search fields accept typing again (thanks to @ermanhavuc).", + "Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404).", + "Skills: installed skills now match OpenCode's own skill list more closely." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc)." + ], + "improvements": [ + "Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc).", + "Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404).", + "Skills: installed skills now match OpenCode's own skill list more closely." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.11.1", + "date": "2026-05-15", + "title": null, + "intro": null, + "app": { + "new": [ + "Multi-Run: added fusion for multi-run sessions.", + "Multi-Run: added optional isolation and support for non-Git projects.", + "Chat/Sessions: added a header session switcher with project, branch, diff, active, unread, and sub-session context.", + "Desktop/Mini Chat: added session switching and the new-session shortcut to Mini Chat, while preserving user-selected sessions during startup.", + "Updates/Usage: added a setting to disable OpenCode update notifications, and quota reset times now display in your local timezone." + ], + "improvements": [ + "Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only.", + "Chat/Shortcuts: made the agent-switching shortcut configurable and usable from the chat input/model picker.", + "Preview: improved embedded preview proxying for absolute same-origin requests and WebSocket URLs, and avoided launching unrelated project actions when no dev-server action is detected.", + "Chat/UI: sorted-mode tool paths animate consistently, and tooltip rendering is guarded defensively.", + "Git: large change lists now display reliably, and branch selection stays hidden for non-Git draft sessions.", + "Settings/Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq)." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/Sessions: added a session switcher to the chat header." + ], + "improvements": [ + "Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only.", + "Usage: quota reset times now display in your local timezone.", + "Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq)." + ], + "fixes": [ + "Chat/UI: sorted-mode tool paths animate consistently, and tooltip crashes are guarded defensively." + ], + "misc": [] + } + }, + { + "version": "1.11.0", + "date": "2026-05-14", + "title": null, + "intro": null, + "app": { + "new": [ + "Updates/OpenCode: added in-app OpenCode update checks and upgrade actions.", + "Voice: added local Whisper speech-to-text." + ], + "improvements": [ + "Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic).", + "Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior.", + "VSCode: improved chat sidebar command handoff, active-editor context updates, SSE cleanup, Agent Manager settings sync, and archived-session bulk delete reliability in the extension (thanks to @isanchez404, @jjdubski).", + "Git: generalized repository provider handling beyond GitHub and made commit/PR generation more tolerant of JSON wrapped in assistant text.", + "Terminal: rejected file paths as terminal working directories, preserved UTF-8 replay chunks, and cleaned up WebSocket/SSE listeners reliably during shutdown and reconnects (thanks to @isanchez404).", + "Usage/Reliability: guarded quota percentages and reset timestamps defensively." + ], + "fixes": [ + "Voice: synced speech recognition settings across devices and let server transcription finish processing audio when voice input stops (thanks to @kostazol).", + "Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions.", + "UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, scheduled tasks, session folders, and accessible Git/session controls (thanks to @isanchez404)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic).", + "Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior.", + "Editor Integration: chat commands now wait for the sidebar webview before sending selections, file mentions, explain prompts, or improve prompts.", + "Reliability/Streaming: extension SSE reconnect delays now abort cleanly and disposed chat webviews clean up their live streams.", + "Agent Manager: settings changes now sync into Agent Manager views immediately.", + "Sessions: archived-session bulk delete now works reliably from the extension sidebar (thanks to @jjdubski)." + ], + "fixes": [ + "Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions.", + "Editor Integration: active-editor context updates now ignore stale broadcasts.", + "UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, and accessible session controls (thanks to @isanchez404)." + ], + "misc": [] + } + }, + { + "version": "1.10.4", + "date": "2026-05-09", + "title": null, + "intro": null, + "app": { + "new": [ + "Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head.", + "Settings/UI: improved keyboard and screen-reader support for resizable Settings navigation and collapsible sidebar groups (thanks to @isanchez404)." + ], + "improvements": [ + "Desktop/Mini Chat: improved Mini Chat session controls with current context usage in the compact header and a single header action that opens either the active session or current draft in Mini Chat.", + "Chat/Input: model, variant, and agent labels collapse better on narrow widths.", + "Terminal: cleaned up idle WebSocket connections and scoped SSE connection-open handling per retry attempt.", + "Reliability/Sync: preserved message part update ordering (thanks to @isanchez404)." + ], + "fixes": [ + "Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404).", + "Files: ignored stale file loads, guarded pending navigation, and stopped switching files when save fails." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head." + ], + "improvements": [ + "Chat/Input: model, variant, and agent labels collapse better on narrow widths.", + "Reliability/Sync: preserved message part update ordering (thanks to @isanchez404)." + ], + "fixes": [ + "Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404)." + ], + "misc": [] + } + }, + { + "version": "1.10.3", + "date": "2026-05-08", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop/Electron: added Mini Chat windows for focused conversations without the full workspace shell, including session/draft handoff back to the main window, always-on-top pinning, and quick access from the header, session list, command palette, and keyboard shortcuts." + ], + "improvements": [ + "Desktop/Startup: show the splash window earlier while the local runtime starts.", + "Chat/Scrolling: rebuilt auto-follow behavior for active responses.", + "Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff." + ], + "fixes": [ + "Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions.", + "Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404).", + "Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404).", + "Files/Skills: ignored stale directory refreshes and outdated skills catalog/repo scans.", + "Git/Terminal/Desktop: fixed sandbox database loading in ESM, forwarded lightweight Git status mode across runtimes, preserved Electron SSH desktop hosts when saving instances, and made terminal UTF-8 locale fallbacks platform-aware (thanks to @isanchez404, @liyiopener).", + "UI/Reliability: added smaller polish fixes for mobile Settings Escape handling, Multirun model limits, text-selection cleanup, and upstream event-stream cancellation (thanks to @isanchez404)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Scrolling: rebuilt auto-follow behavior for active responses.", + "Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff.", + "Skills/Reliability: ignored outdated skills catalog and repo scans." + ], + "fixes": [ + "Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions.", + "Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404).", + "Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404).", + "Chat/Reliability: added smaller polish fixes for text-selection cleanup (thanks to @isanchez404)." + ], + "misc": [] + } + }, + { + "version": "1.10.2", + "date": "2026-05-07", + "title": null, + "intro": null, + "app": { + "new": [ + "Projects: added repository cloning to the Add Project flow." + ], + "improvements": [ + "Chat/Reliability: stabilized live turn rendering and session sync caches.", + "Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch).", + "Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener).", + "Usage: OpenRouter credit balances now avoid misleading percentage displays and use clearer labels across usage views (thanks to @zerone0x).", + "Preview: improved embedded preview proxying with cleaner URL rewriting, fewer false-positive dev-server errors, steady navigation, and theme-aware preview frames.", + "Notifications: suppressed inherited subagent completion notifications.", + "VSCode: split the extension into a dedicated app root." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Reliability: stabilized live turn rendering and session sync caches.", + "Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch).", + "Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener).", + "Usage: OpenRouter credit balances now avoid misleading percentage displays and use clearer labels across usage views (thanks to @zerone0x).", + "Reliability: split the extension into a dedicated app root." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.10.1", + "date": "2026-05-06", + "title": null, + "intro": null, + "app": { + "new": [ + "Git: added one-click Sync and stash management, including stash access from a clean worktree.", + "UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52).", + "Sessions: added a quick archive action directly on session rows (thanks to @zoubenr).", + "Files: added a manual save mode to the file editor.", + "Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session.", + "Mobile/Terminal: added an opt-in keyboard resize mode and steady touch terminal input." + ], + "improvements": [ + "Chat/Reliability: pending questions now survive session switches and directory eviction.", + "VSCode/Reliability: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn)." + ], + "fixes": [ + "Git: improved sync safety and feedback with latest remote refs, clearer progress banners, less flicker during refresh, cleaner header controls, and better unavailable pull-request states.", + "Terminal: restored focus back to terminal input after Ghostty element blur events.", + "Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths.", + "Performance/Reliability: reduced duplicate app initialization, deferred heavier views, lowered local server status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise." + ], + "misc": [] + }, + "vscode": { + "new": [ + "UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52).", + "Sessions: added a quick archive action directly on session rows (thanks to @zoubenr).", + "Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session." + ], + "improvements": [ + "Chat/Reliability: pending questions now survive session switches and directory eviction.", + "Reliability/Sync: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn)." + ], + "fixes": [ + "Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths.", + "Performance/Reliability: reduced duplicate extension initialization, deferred heavier views, lowered managed runtime status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise." + ], + "misc": [] + } + }, + { + "version": "1.10.0", + "date": "2026-05-05", + "title": null, + "intro": null, + "app": { + "new": [ + "Preview: added an embedded dev-server Preview pane for loopback apps, with authenticated proxying, Vite/HMR support, same-origin API request handling, and safer local dev-server shutdown (thanks to @wpbiggs).", + "Preview: added preview console capture, DOM element inspection, annotation context, and Electron screenshot attachments.", + "Projects/Terminal: added Auto-discover for local dev servers, background terminal startup, action-linked Preview reopen controls, and cleaner terminal tab styling (thanks to @wpbiggs).", + "Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets.", + "VSCode/Chat: added the currently open editor file to chat context (thanks to @daveotero).", + "Onboarding/Updates/Mobile: added OpenCode CLI auto-detection during onboarding, cross-checks update prompts against npm, and improved iPad/tablet controls for fewer false update notices and smooth touch use (thanks to @IslamNofl)." + ], + "improvements": [ + "UI/Settings: improved settings scrolling, empty states, and button/overlay polish (thanks to @Yabuku-xD).", + "GitHub/Git: improved fork-aware issue and pull-request listing, PR status handling, startup loading feedback, remote MCP headers, and long model ID handling (thanks to @corrm, @ricautomation, @yart)." + ], + "fixes": [ + "Chat/UI: added a wide layout option, steady scroll position across sessions and generated prompts, less flicker during streaming, and safer rendering for malformed message parts (thanks to @jwcrystal, @pasta-paul).", + "Reliability/Streaming: reconnects now recover immediately after OS wake-from-sleep, long agent sessions avoid streaming hangs, concurrent sessions sharing the same provider are throttled more safely, and model metadata refreshes after OpenCode restarts (thanks to @jwcrystal, @pasta-paul, @Yabuku-xD)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/UI: added the currently open editor file to chat context (thanks to @daveotero).", + "Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets.", + "Chat/UI: added a wide layout option." + ], + "improvements": [ + "Chat/Scrolling: preserved per-session scroll position and kept generated prompts scrolled into view (thanks to @jwcrystal).", + "Settings/UI: improved settings scrolling and empty states (thanks to @Yabuku-xD).", + "GitHub/MCP: improved fork-aware issue and pull-request listing, PR status handling, and remote MCP header handling (thanks to @corrm, @ricautomation)." + ], + "fixes": [ + "Chat/Streaming: reduced text flicker, preserved first chunks reliably, and kept long agent sessions from hanging during active responses (thanks to @pasta-paul).", + "Models/Providers: fixed slash-containing model IDs, refreshed model metadata after OpenCode restarts, and added safer concurrency controls for sessions sharing the same provider (thanks to @yart, @Yabuku-xD)." + ], + "misc": [] + } + }, + { + "version": "1.9.10", + "date": "2026-04-28", + "title": null, + "intro": null, + "app": { + "new": [ + "UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu).", + "VSCode/Windows: normalized Windows drive-letter paths in extension webviews and added MiniMax/Ollama quota support." + ], + "improvements": [ + "Chat/Models: unified the model picker across desktop and mobile with a cleaner selection flow (thanks to @daveotero).", + "Projects: improved the project directory picker with expandable pinned folders and better file/path handling.", + "Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior." + ], + "fixes": [ + "Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD).", + "Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, ignored stale downgrade update prompts, and improved stream/proxy recovery with heartbeat support." + ], + "misc": [] + }, + "vscode": { + "new": [ + "UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu).", + "Usage: added MiniMax and Ollama quota support." + ], + "improvements": [ + "Chat/Models: unified the model picker with a cleaner selection flow (thanks to @daveotero).", + "Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior.", + "Windows: normalized drive-letter paths in extension webviews (thanks to @sdunfeng).", + "Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, and improved stream/proxy recovery with heartbeat support (thanks to @An-jinu)." + ], + "fixes": [ + "Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD)." + ], + "misc": [] + } + }, + { + "version": "1.9.9", + "date": "2026-04-26", + "title": null, + "intro": null, + "app": { + "new": [ + "UI/Localization: added a localization foundation with translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese.", + "Settings/Appearance: added selectable interface and code fonts with 10 choices each.", + "Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced local workspace review and summarize slash commands.", + "Files/Editor: added an \"Open files in preview mode\" setting and improved multi-file edit/diff safety (thanks to @daveotero).", + "Desktop/Web/Mobile: improved Electron update restart behavior, PWA service-worker notifications, mobile keyboard handling, and the Add Project panel flow (thanks to @Jovines, @vhqtvn)." + ], + "improvements": [ + "Chat/Mobile: improved mention and autocomplete behavior with complete results, clearer active-tab scoping, and less context-switching while drafting prompts.", + "Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD).", + "Reliability/Performance: improved cold start and streaming responsiveness with lazy-loaded heavy components, chunk-load recovery, lower re-render churn, and safer reconnect/local-stream recovery (thanks to @Yabuku-xD, @jwcrystal, @vhqtvn)." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "UI/Localization: added translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese, with language selection available in extension settings.", + "Settings/Appearance: added selectable interface and code fonts with 10 choices each, and reorganized appearance sections.", + "Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced a local workspace review slash command." + ], + "improvements": [ + "Chat/Context: autocomplete and mention results are now easier to scan, with fuller results and clearer active-tab behavior while drafting.", + "Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD).", + "Chat/Performance: improved cold start and streaming smoothness with lazy-loaded heavy components, chunk-load recovery, and lower re-render churn in long sessions (thanks to @Yabuku-xD).", + "Reliability/Sync: improved reconnect recovery (thanks to @jwcrystal, @vhqtvn)." + ], + "fixes": [ + "Chat/Header: restored context usage in the chat header, kept it tooltip-only, and kept rate-limit usage available in expanded layouts.", + "Reliability/Startup: improved managed runtime startup by preserving user PATH and skipping stale session directories." + ], + "misc": [] + } + }, + { + "version": "1.9.8", + "date": "2026-04-22", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts." + ], + "improvements": [ + "Settings/Sync: settings updates now sync reliably across clients, and sidebar session pagination is steady in larger workspaces.", + "Sessions/Folders: folder changes now persist through server-backed endpoints.", + "Notifications: permission notifications are now suppressed when auto-accept is enabled.", + "UI: improved the bottom scroll shadow and hid the tasks row when there is no active work.", + "Reliability/Desktop: improved live event-stream recovery after transient stalls, wait briefly before failing chat actions during reconnects, and persist Electron server logs for easier disconnect debugging." + ], + "fixes": [ + "Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal).", + "Chat/Files: improved changed-files handling in chat and restored quick file-open flows from pending changes (thanks to @jwcrystal).", + "Desktop/macOS: System color mode now tracks OS theme changes, traffic-light controls stay visible after dock restore, and update restart/changelog handling is more reliable." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts." + ], + "improvements": [ + "Settings/Sync: settings changes now sync reliably with other clients, and sidebar session pagination is steady in larger workspaces.", + "Sessions/Folders: folder updates now persist through server-backed APIs.", + "UI: refined chat chrome with a cleaner bottom scroll fade and hidden idle tasks row." + ], + "fixes": [ + "Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal)." + ], + "misc": [] + } + }, + { + "version": "1.9.7", + "date": "2026-04-22", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop: added an Electron desktop runtime in parallel with the current Tauri app, with Electron planned to become the default path in an upcoming release.", + "Plans/Notes/Todos: added editable project plans from assistant messages, external plan upload, configurable planning magic prompts, and quicker note/todo handoff into new sessions or worktrees.", + "Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete (thanks to @youfch).", + "Files/Git: added a file-change summary bar and auto-refresh for open files changed outside the app." + ], + "improvements": [ + "Settings/MCP: improved MCP auth flow with better remote-config support and clearer diagnostics, and aligned config resolution with OpenCode behavior (thanks to @daveotero, @cyan).", + "Reliability/Chat: hardened bootstrap and stream-connection recovery, preserved session/connect state, and reduced streaming UI churn." + ], + "fixes": [ + "Sessions/UI: added bulk session selection in the sidebar and fixed pinned sessions (thanks to @yart).", + "Git/Worktrees: improved branch/worktree reliability by allowing checkout with uncommitted changes, tightening worktree cache invalidation, and reducing incorrect remote prefetches (thanks to @jwcrystal, @jasonalsing).", + "Web/PWA: added install orientation controls and fixed loopback-origin handling for web push notifications in local setups (thanks to @vhqtvn, @yart)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete when building prompt context (thanks to @youfch)." + ], + "improvements": [ + "Files: open editors now refresh file content after external changes.", + "Settings/MCP: improved MCP auth flow with remote config support and clearer diagnostics (thanks to @daveotero).", + "Chat/Questions: single-choice questions now use radio selection.", + "Reliability: config resolution now matches OpenCode behavior more closely.", + "Reliability/Streaming: strengthened bootstrap and connection recovery paths." + ], + "fixes": [ + "Sessions/UI: added bulk selection in the sessions sidebar and fixed pinned sessions (thanks to @yart)." + ], + "misc": [] + } + }, + { + "version": "1.9.6", + "date": "2026-04-17", + "title": null, + "intro": null, + "app": { + "new": [ + "Reliability/Streaming: switched live message events to a WebSocket-first transport with SSE fallback, added response compression, and hardened proxy/compression handling (thanks to @geekifan, @jwcrystal).", + "Sessions/Scheduled Tasks: added scheduled task creation and management with locale-aware scheduling.", + "Files: added a full Go to Line workflow (toolbar + shortcut + dialog) and a new Copy Relative Path action (thanks to @coldbrow).", + "Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow).", + "Desktop: added quick open and a LAN access toggle, plus safer quit behavior around scheduled tasks (thanks to @An-jinu).", + "Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in messages (thanks to @ricautomation)." + ], + "improvements": [ + "Sessions/Worktrees: enforced session worktree isolation and tightened session-switch safety.", + "Files: file trees now auto-refresh when files change outside the app (thanks to @jwcrystal).", + "Settings/Skills: skills are now sorted within groups (thanks to @tomzx)." + ], + "fixes": [ + "Chat/Requests: restored blocking request visibility in sub-sessions, scoped auto-approve to the active session tree, and reduced noisy auto-approved notifications during multi-session work." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Reliability/Streaming: moved to a WebSocket-first message stream with SSE fallback and added safer compression handling.", + "Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow).", + "Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in rendered messages (thanks to @ricautomation)." + ], + "improvements": [ + "Reliability: improved startup shell detection to avoid false OpenCode discovery on POSIX login shells.", + "Sessions/Worktrees: enforced worktree isolation for session and Git flows." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.9.5", + "date": "2026-04-14", + "title": null, + "intro": null, + "app": { + "new": [ + "Security/Auth: added passkey sign-in for protected instances and new 1-week/30-day session expiration options (thanks to @daveotero, @pm0u).", + "Voice: added OpenAI-compatible custom server support for both text-to-speech and speech-to-text, including configurable TTS model/pitch/volume and stricter custom URL validation for safer setup (thanks to @ablepharus)." + ], + "improvements": [ + "Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery to keep live updates smooth under heavy activity (thanks to @jwcrystal).", + "Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups when opening subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal)." + ], + "fixes": [ + "Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma).", + "Chat/Reliability: fixed question-tool content disappearing after refresh and hardened subagent/session recovery paths.", + "Git/UI: restored Git changes panel visibility and sidebar sync (thanks to @jwcrystal).", + "Desktop/Startup: delivered a more guided first-launch and smart recovery flow, plus startup and remote-window interaction fixes to reduce early-session friction (thanks to @jwcrystal).", + "Usage: added Zhipu AI Coding Plan tracking and restored model-variant compatibility with older OpenCode runtimes (thanks to @cainiao1992, @Chi-square-test)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Usage: added Zhipu AI Coding Plan tracking (thanks to @cainiao1992)." + ], + "improvements": [ + "Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery for steady live updates in busy workspaces (thanks to @jwcrystal).", + "Task/Reliability: hardened subagent session resolution and polling lifecycle handling to reduce silent task failures (thanks to @jwcrystal).", + "Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups for subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal)." + ], + "fixes": [ + "Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma).", + "Chat/Reliability: fixed question-tool content disappearing after refresh (thanks to @jwcrystal).", + "Models: restored model-variant compatibility with newer OpenCode runtimes (thanks to @Chi-square-test)." + ], + "misc": [] + } + }, + { + "version": "1.9.4", + "date": "2026-04-07", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Chat/Performance: reduced streaming render churn across the app.", + "Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko).", + "Usage: refreshed MiniMax CN coding-plan quota data (thanks to @nzlov)." + ], + "fixes": [ + "Settings/Magic Prompts: added a dedicated Magic Prompts page with editable templates for commit/PR generation, PR and issue reviews, failed-check/comment analysis, and merge/cherry-pick conflict resolution.", + "Chat/Scrolling: fixed jumpy follow behavior and restored stable bottom-resume/live-compaction updates.", + "Reliability/Streaming: improved reconnect, retry, and directory-aware event routing to reduce stuck session/subagent states after transient disconnects (thanks to @jwcrystal, @daveotero).", + "Models: added defensive handling for missing model pricing/capability metadata (thanks to @Chi-square-test).", + "Desktop/Performance: removed costly window translucency and reduced duplicate notification triggers for a cooler, less noisy desktop experience.", + "Startup/Remote: restored remote provider startup behavior and tightened host/port detection to reduce false startup failures." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Reliability/Streaming: added loading timeouts, automatic SSE reconnect, and message retry behavior (thanks to @jwcrystal)." + ], + "improvements": [ + "Reliability/Windows: normalized workspace path handling in SSE event lookup to keep live session updates working consistently on Windows (thanks to @widipa).", + "Chat/Performance: reduced streaming re-render fanout and status-row churn for smooth long responses in the editor panel.", + "Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Sessions/Streaming: fixed directory-aware event routing and post-reconnect session resync (thanks to @daveotero, @jwcrystal).", + "Chat/Scrolling: fixed scroll jumps and stabilized follow-to-latest behavior.", + "Models: added defensive fallbacks for missing model cost/capability metadata (thanks to @Chi-square-test)." + ], + "misc": [] + } + }, + { + "version": "1.9.3", + "date": "2026-03-01", + "title": null, + "intro": null, + "app": { + "new": [ + "VSCode/Files: added file stat support in the extension bridge (thanks to @geekifan).", + "Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero).", + "Files: added HTML preview support in the file viewer (thanks to @nguyenngothuong).", + "Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong)." + ], + "improvements": [ + "Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232).", + "Desktop/Performance: reduced Tauri shell CPU/GPU overhead during longer sessions.", + "Sessions/Drafts: draft chat config now stays synced with the selected draft target directory.", + "Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong).", + "Desktop/Settings: window vibrancy now correctly controls macOS window transparency, and settings copy now clarifies when full transparency changes take effect.", + "Reliability/Proxy: hardened OpenCode proxy header handling (including identity-encoding normalization, compression-header cleanup, hop-by-hop response-header stripping) and suppressed expected SSE close noise.", + "Terminal/Reliability: switched terminal transport to a pure WebSocket path with fallback handling." + ], + "fixes": [ + "Mobile/Settings: fixed lingering settings drawers and removed extra top spacing for a cleaner, less obstructed mobile layout (thanks to @Jovines).", + "Git/Worktrees: fixed worktree detection and reset stale integration state when switching contexts.", + "Reliability/Proxy: restored proxied chat event streaming.", + "Usage/Providers: added ZhipuAI quota tracking and fixed MiniMax coding-plan and GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Files/Markdown: added filesystem stat support in the extension bridge to validate markdown targets reliably before file handling flows (thanks to @geekifan).", + "Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero).", + "Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong)." + ], + "improvements": [ + "Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232).", + "Sessions/Drafts: draft chat config now stays aligned with the active draft target directory.", + "Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong).", + "Reliability/Streaming: proxy handling now normalizes identity encoding, strips conflicting compression headers and hop-by-hop response headers, and suppresses expected upstream SSE close errors to reduce noisy disconnect failures (thanks to @jwcrystal, @Jovines, @JiwaniZakir, @shekohex)." + ], + "fixes": [ + "Usage: added ZhipuAI quota tracking and fixed MiniMax coding-plan plus GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte)." + ], + "misc": [] + } + }, + { + "version": "1.9.2", + "date": "2026-03-31", + "title": null, + "intro": null, + "app": { + "new": [ + "Worktrees/Multi-Run: added instant draft-first worktree creation and redesigned the multi-run launcher with a cleaner, faster flow for parallel runs.", + "CLI/Server: added `--foreground` for process-manager deployments, made managed server hostname configurable, and added an explicit `--host` option with safer localhost defaults (thanks to @colinmollenhour, @rapidrabbit76, @yulia-ivashko)." + ], + "improvements": [ + "Chat/Performance: rebuilt live session sync and streaming updates to cut render churn, reduce CPU spikes, and keep long-running chats smooth and more stable across runtimes.", + "VSCode/UI: polished the extension chat and sidebar with improved spacing, tooltips, a resizable sessions pane, and file-to-chat mention flows from Explorer.", + "Models/Providers: improved custom provider model metadata loading and caching (thanks to @ZeppLu).", + "Docker/Deployments: improved container defaults, including UID 1000 user behavior, non-fatal SSH key generation, and better localhost detection in container networking (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Web/PWA: fixed manifest behavior behind Cloudflare Access (thanks to @arthurfiorette)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Performance: overhauled live sync and streaming updates to reduce re-render churn and keep long-running chats smooth in the extension.", + "Sessions/UI: refined sidebar behavior with cleaner spacing, better truncation/tooltips, and a resizable sessions pane for tighter workspace control.", + "Chat/Editor integration: improved Explorer file insertion.", + "Reliability: startup now queues bridge and stream requests until the API is ready.", + "Chat: reasoning content now renders through the markdown pipeline." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.9.1", + "date": "2026-03-20", + "title": null, + "intro": null, + "app": { + "new": [ + "Usage: added MiniMax Weekly quota provider support (thanks to @nzlov)." + ], + "improvements": [ + "Chat/GitHub: linked issues and pull requests now appear as user-message attachments and open reliably across runtimes.", + "Settings/MCP: adding MCP servers now consistently respects user vs project scope, preventing user-scope entries from being written into project config files.", + "VSCode/Reliability: managed server startup now imports login-shell environment values and normalizes Windows workspace paths.", + "Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier discovery (thanks to @nguyenngothuong).", + "Files: file trees now refresh incrementally after create/rename/delete actions (thanks to @nguyenngothuong).", + "Sessions/Worktrees: draft sessions now resolve the correct project when opened from worktree paths (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Sessions/UI: restored Project Notes access in the sidebar, polished notes/todo editing, and fixed project action overlap.", + "Desktop: improved stale server-process cleanup on startup and fixed external link opening behavior (thanks to @jwcrystal)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Usage: added MiniMax Weekly quota provider support (thanks to @nzlov)." + ], + "improvements": [ + "Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier session discovery (thanks to @nguyenngothuong).", + "Chat/GitHub: linked issues and pull requests now show as user-message attachments and open reliably through extension-safe external link handling.", + "Settings/MCP: adding MCP servers now correctly respects user scope.", + "Reliability: managed server startup now imports login-shell environment values and normalizes Windows paths to reduce session-loading mismatches and proxy-related connection issues." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.9.0", + "date": "2026-03-20", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat/Permissions: added a session-based permission auto-accept toggle and polished permission-shield visuals for quicker, clearer approval workflows.", + "Git: refreshed history visuals and added clearer branch-boundary markers.", + "Git: added remote removal from sync workflows and stabilized polling to reduce noisy background refreshes (thanks to @yulia-ivashko).", + "Files: added debounced editor auto-save (thanks to @nguyenngothuong)." + ], + "improvements": [ + "UI/Navigation: delivered a major sidebar redesign with clearer hierarchy, unified action patterns, and improved session organization (thanks to @yulia-ivashko).", + "Chat: reduced streaming CPU usage and background churn with steady turn rendering, debounced updates, and less storage thrash during long runs.", + "Panels/UI: softened panel resize affordances and tightened service dropdown/layout spacing for a cleaner, less distracting workspace.", + "Files: reworked search UI for searching in files.", + "Desktop/macOS: lowered the minimum supported macOS version to Ventura (13.0), expanding compatibility on older systems (thanks to @craigharman).", + "Updates/Reliability: unified update-check behavior across runtimes." + ], + "fixes": [ + "Chat: fixed scroll-to-latest and timeline tracking behavior.", + "Settings/UI: fixed settings scrolling on mobile, made outside-click closing immediate, and reduced settings load churn/CPU spikes.", + "Reliability/Platform: improved Windows path/process behavior and restored macOS PTY/microphone compatibility." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/Permissions: added per-session permission auto-accept controls to reduce repetitive approval prompts in iterative workflows." + ], + "improvements": [ + "Navigation/UI: refreshed the extension shell with a redesigned sidebar, clearer hierarchy, and cleaner session grouping.", + "Chat/Performance: reduced streaming overhead and update churn for smooth long responses, steady activity rendering, and fewer UI stalls in heavy sessions.", + "Chat: improved follow-to-latest behavior and timeline stability.", + "Reliability/Windows: normalized workspace drive-letter handling and hid background process windows to reduce startup/session mismatches (thanks to @zerone0x)." + ], + "fixes": [ + "Sessions: improved sidebar organization and interaction stability, including fixes for drag/rename edge cases during quick session management." + ], + "misc": [] + } + }, + { + "version": "1.8.7", + "date": "2026-03-13", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "CLI: hardened entrypoint detection across direct, symlinked, and shim-based launches to keep startup behavior consistent across package managers (thanks to @shekohex).", + "Deployment/Docker: improved `docker run` startup behavior and entrypoint handling (thanks to @nzlov)." + ], + "fixes": [ + "CLI: fixed a startup regression in global npm/bun installs where wrapper or symlinked `openchamber` entrypoints could exit without output on commands like `--version` or `status`.", + "Windows/Web: daemon startup and Git operations no longer flash extra console windows (thanks to @SergioChan)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "No notable changes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.8.6", + "date": "2026-03-13", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat/Settings: added richer chat render controls, including sorted/live behavior, compact live Activity previews, and options to keep Bash/Edit outputs open by default.", + "Sessions/GitHub: overhauled sidebar session loading and GitHub PR tracking, and added a new minimal sidebar sessions mode on Desktop/Web." + ], + "improvements": [ + "Tunnel/CLI: rebuilt tunnel workflows around clearer managed modes and provider-aware lifecycle commands, with safer startup checks, improved diagnostics, and cleaner CLI output for everyday remote access (thanks to @yulia-ivashko).", + "Chat: completed a turn-based rendering pipeline that keeps streaming, activity rows, and tool progress more stable in long runs, with smooth auto-follow and fewer jumpy updates.", + "Sessions: worktrees with active sessions now surface earlier in the sidebar (thanks to @GhostFlying).", + "Projects/Desktop: project action inputs now submit with Enter, and Desktop settings now include a spell-check toggle for writing comfort (thanks to @DocterZed).", + "Mobile/PWA: install metadata now honors orientation lock consistently." + ], + "fixes": [ + "Chat: fixed narrow-layout send behavior for modified Enter shortcuts (thanks to @eengad).", + "Chat: fixed queue-button behavior and focus-mode composer sizing." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat/Settings: added richer render controls with sorted/live modes, compact Activity previews, and default-open Bash/Edit options." + ], + "improvements": [ + "Chat: completed a turn-based render pipeline with steady streaming, smooth auto-follow, and more stable activity/tool progress behavior during long responses.", + "Reliability: switched extension event streaming to an SDK-based SSE proxy path.", + "Settings: chat display changes now sync across sidebar and session editor views right away.", + "Sessions: worktrees with active chats are now prioritized in the sidebar (thanks to @GhostFlying).", + "Sessions: archived-session behavior in the extension is now scoped to the active workspace with cleaner sidebar presentation.", + "Diff: edit result comparisons now preserve original file extensions in virtual \"before\" files." + ], + "fixes": [ + "Chat: fixed modified Enter send shortcuts in narrow layouts (thanks to @eengad).", + "Chat: fixed queue button behavior and focus-mode composer sizing (thanks to @shekohex)." + ], + "misc": [] + } + }, + { + "version": "1.8.5", + "date": "2026-03-04", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Desktop: startup now opens the app shell much earlier while background services continue loading.", + "VSCode: edit-style tool results now open directly in a focused diff view.", + "UI/Theming: unified loading logos and startup screens across runtimes, with visuals that better match your active theme.", + "Projects/UI: project icons now follow active theme foreground colors consistently.", + "Reliability: improved early startup recovery.", + "Mobile/PWA: respected OS rotation lock by removing forced orientation behavior in the web app shell (thanks to @theluckystrike)." + ], + "fixes": [ + "Desktop/macOS: fixed early title updates that could shift traffic-light window controls on startup.", + "VSCode: cleaned up extension settings by removing duplicate display controls and hiding sections that do not apply in the editor environment.", + "Chat: fixed focus-mode composer layout.", + "Tunnel/CLI: fixed one-time Cloudflare tunnel connect links in CLI output for `--try-cf-tunnel` (thanks to @plfavreau)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat/Files: edit-style tool results now open in a VS Code diff editor with focus on the first changed line.", + "Chat: improved focus-mode input layout.", + "UI/Theming: aligned startup/loading branding with the active theme for a more consistent look during connection and auth states.", + "Reliability: improved startup recovery for provider/model/agent loading." + ], + "fixes": [ + "Settings: removed duplicate chat display options from Appearance and hid extension-irrelevant sections." + ], + "misc": [] + } + }, + { + "version": "1.8.4", + "date": "2026-03-04", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added clickable file-path links in assistant messages (including line targeting) (thanks to @yulia-ivashko).", + "Chat: added a new `Changes` tool-output mode that expands edits/patches by default while keeping activity readable (thanks to @iamhenry).", + "Chat/GitHub: added Attach menu actions to link GitHub issues and PRs directly in any session.", + "Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry).", + "Sessions: added active-project session search in the sidebar, with clearer match behavior and easier clearing during filtering (thanks to @KJdotIO).", + "Mobile/Projects: added long-press project editing with a bottom-sheet panel and drag-to-reorder support (thanks to @Jovines).", + "Web/PWA/Android: added improved install UX with pre-install naming and manifest shortcut updates (thanks to @shekohex)." + ], + "improvements": [ + "Chat: in-progress tools now appear immediately and stay live in collapsed activity view (thanks to @nelsonPires5).", + "Chat: improved long user-message behavior in sticky mode with bounded height, internal scrolling, and cleaner action hit targets.", + "Chat/Files: improved `@` file discovery and mention behavior with project-scoped search and more consistent matching.", + "Worktrees/GitHub: streamlined worktree creation with a unified flow for branches, issues, and PR-linked sessions, including cleaner validation and faster branch loading.", + "Files/Desktop: improved `Open In` actions from file views/editors, including app selection behavior and tighter integration for opening focused files (thanks to @yulia-ivashko).", + "UI: interactive controls now consistently show pointer cursors.", + "Security/Reliability: hardened terminal auth, tightened skill-file path protections, and reduced sensitive request logging exposure for safer day-to-day usage (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Chat/Files: restored user image previews/fullscreen navigation and improved text-selection action placement on narrow layouts.", + "Worktrees/Git: fixed branch/PR source resolution (including slash-named branches and fork PR heads).", + "Git: fixed a PR panel refresh loop that could trigger repeated updates and unstable behavior in the PR section (thanks to @yulia-ivashko)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added Save as image support for assistant messages.", + "Chat: added a new `Changes` tool-output mode that opens edit/write/patch results by default while keeping activity easier to scan.", + "Chat/GitHub: added Attach menu support for linking pull requests into your draft with picker-based selection and attached PR context.", + "Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry)." + ], + "improvements": [ + "Chat Activity: active tools now appear immediately and continue updating in collapsed view (thanks to @nelsonPires5).", + "Chat: file references in assistant responses are now clickable (including line targets).", + "Chat/Files: improved `@` file mentions with active-project scoping and more consistent search behavior.", + "Chat: simplified attachment actions with a direct Attach files flow.", + "Chat: improved sticky user-message behavior with bounded height and internal scrolling.", + "UI: interactive controls now consistently use pointer cursors." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.8.3", + "date": "2026-03-02", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added user-message display controls for plain-text rendering and sticky headers.", + "Chat: model picker now supports collapsible provider groups and remembers expanded state between sessions." + ], + "improvements": [ + "Chat/UI: overhauled the context panel with reusable tabs and embedded session chat (_beta_).", + "Git: refined Git sidebar tab behavior and spacing, plus bulk-revert with confirmations for easier cleanup.", + "Settings: reorganized chat display settings into a more compact two-column layout." + ], + "fixes": [ + "Chat: improved code block presentation with cleaner action alignment, restored horizontal scrolling, and polished themed highlighting across chat messages and tool output (thanks to @nelsonPires5).", + "Diff: added quick open-in-editor actions from diff views that jump to the first changed line.", + "Git: fixed commit staging edge cases by filtering stale deleted paths before staging.", + "Git/Worktrees: restored branch rename/edit controls in draft sessions when working in a worktree directory.", + "Mobile/UI: fixed session-title overflow in compact headers (thanks to @iamhenry)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added user-message display options for plain-text rendering and sticky headers, with preferences persisted in settings." + ], + "improvements": [ + "Chat: model picker provider groups are now collapsible, with expanded/collapsed state remembered." + ], + "fixes": [ + "Chat: improved code block readability with cleaner header actions, restored horizontal scrolling, and themed highlighting in markdown and tool output (thanks to @nelsonPires5)." + ], + "misc": [] + } + }, + { + "version": "1.8.2", + "date": "2026-03-01", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added a new \"Share as image\" action (thanks to @Jovines)." + ], + "improvements": [ + "Updates: hardened the self-update flow with safer release handling and fallback behavior.", + "Chat: improved message readability with cleaner tool/reasoning rendering and less noisy activity timing in busy conversations (thanks to @nelsonPires5).", + "Desktop/Chat: permission toasts now include session context and a clearer permission preview (thanks to @nelsonPires5).", + "Notifications/Voice: consolidated TTS and summarization service wiring for steady text-to-speech and summary flows (thanks to @nelsonPires5)." + ], + "fixes": [ + "VSCode: fixed live streaming edge cases for event endpoints with query/trailing-slash variants.", + "Reliability: improved event-stream/session visibility handling when the app is hidden or restored.", + "Windows: fixed CLI/runtime path and spawn edge cases to reduce startup and command failures on Windows (thanks to @plfavreau).", + "Deployment: fixed Docker build/runtime issues (thanks to @nzlov)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: improved message readability with cleaner tool/reasoning rendering and more polished markdown presentation in long responses.", + "Chat Activity: timing display is now less noisy, with detailed end timestamps shown on hover when you need them (thanks to @nelsonPires5).", + "Reliability: improved panel visibility/reconnect handling." + ], + "fixes": [ + "Reliability: fixed live-streaming edge cases for event endpoints with query/trailing-slash variants." + ], + "misc": [] + } + }, + { + "version": "1.8.1", + "date": "2026-02-28", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [], + "fixes": [ + "Web/Auth: fixed an issue where non-tunnel browser sessions could incorrectly show a tunnel-only lock screen; normal auth flow now appears unless a tunnel is actually active." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "No notable changes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.8.0", + "date": "2026-02-28", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop: added SSH remote instance support with dedicated lifecycle and UX flows (thanks to @shekohex).", + "Projects: added project icon customization with upload/remove and automatic favicon discovery from your repository (thanks to @shekohex).", + "Projects: added header project actions on Web and Mobile.", + "Desktop: added dynamic window titles that reflect active project and remote context (thanks to @shekohex).", + "Remote Tunnel: added tunnel settings with quick/named modes, secure one-time connect links (with QR), and saved named-tunnel presets/tokens (thanks to @yulia-ivashko).", + "UI: added an expandable project rail with project names, a settings toggle, and saved expansion state for easier navigation in multi-project setups (thanks to @nguyenngothuong).", + "UI/Files: added file-type icons across file lists, tabs, and diffs (thanks to @shekohex).", + "Files: added a read-only highlighted view with a quick toggle back to edit mode (thanks to @shekohex).", + "Deployment: added Docker deployment support with safer container defaults and terminal shell fallback (thanks to @nzlov).", + "Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov).", + "Usage: added Ollama Cloud quota provider support (thanks to @iamhenry)." + ], + "improvements": [ + "Projects/Desktop: project actions can also open SSH-forwarded URLs.", + "UI: expanded sprite-based file and folder icons across Files, Diff, and Git views (thanks to @shekohex).", + "Files: markdown preview now handles frontmatter more cleanly.", + "Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex).", + "Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705).", + "Chat: edit tools now use the same diff style as the dedicated Diff view (thanks to @shekohex).", + "Chat: pasted absolute paths are now treated as normal messages.", + "Chat: upgraded Mermaid rendering with a cleaner diagram view plus quick copy/download actions (thanks to @shekohex).", + "Notifications: improved child-session notification detection to reduce missed or misclassified subtask updates (thanks to @Jovines).", + "Reliability: improved Windows compatibility across git status checks, OpenCode startup, path normalization, and session merge behavior (thanks to @mmereu)." + ], + "fixes": [ + "Chat: fixed queued sends for inactive sessions." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added drag-and-drop file attachments (thanks to @Asuta).", + "Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov).", + "Usage: added Ollama Cloud quota provider support (thanks to @iamhenry)." + ], + "improvements": [ + "Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex).", + "Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705).", + "Chat: pasted absolute paths are now treated as normal messages.", + "Chat: edit tools now use improved diffs (thanks to @shekohex).", + "UI: improved long filename handling in file-mention autocomplete (thanks to @haofeng0705)." + ], + "fixes": [ + "Chat: fixed queued send behavior for inactive sessions to reduce accidental sends to the wrong conversation." + ], + "misc": [] + } + }, + { + "version": "1.7.5", + "date": "2026-02-25", + "title": null, + "intro": null, + "app": { + "new": [ + "Web: added `OPENCODE_HOST` support (thanks to @colinmollenhour)." + ], + "improvements": [ + "UI: moved projects into a dedicated sidebar rail and tightened the layout.", + "Sessions: reduced session-switching overhead to make chat context changes feel more immediate.", + "Reliability/Auth: migrated session auth storage to signed JWTs with a persistent secret.", + "Mobile/Chat: refined message spacing and removed the top scroll shadow for a cleaner small-screen reading experience (thanks to @Jovines)." + ], + "fixes": [ + "Chat: fixed an issue where messages could occasionally duplicate or disappear during active conversations.", + "Mobile: pending permission prompts now recover after reconnect/resume instead of getting lost mid-run (thanks to @nelsonPires5).", + "Web/Mobile: fixed in-app update flow in containerized setups." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Sessions: improved switching performance." + ], + "fixes": [ + "Chat: fixed cases where messages could duplicate or disappear during active conversations." + ], + "misc": [] + } + }, + { + "version": "1.7.4", + "date": "2026-02-24", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added fullscreen Mermaid preview, persisted default thinking variant selection, and hardened file-preview safety checks for a safer, more predictable message experience (thanks to @yulia-ivashko).", + "Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong).", + "Files: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks)." + ], + "improvements": [ + "Settings: redesigned the settings workspace with flatter, more consistent page layouts.", + "Settings: improved agents and skills navigation by grouping entries by subfolder for easier management at scale (thanks to @nguyenngothuong).", + "Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong).", + "Sessions: expanded folder management with subfolders, cleaner organization actions, and clearer delete confirmations (thanks to @nguyenngothuong).", + "Git/PR: moved commit-message and PR-description generation to active-session structured output.", + "Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults.", + "Notifications/Voice: moved utility model controls into AI Summarization as a Zen-only Summarization Model setting.", + "Mobile: refreshed drawer and session-status layouts (thanks to @Jovines).", + "Desktop: improved remote instance URL handling (thanks to @shekohex)." + ], + "fixes": [ + "Chat: improved streaming smoothness and stability with buffered updates and runtime fixes." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added fullscreen Mermaid preview, improved default thinking-variant persistence, and hardened file-preview safety checks for a more predictable message experience (thanks to @yulia-ivashko).", + "Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong).", + "Chat: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks)." + ], + "improvements": [ + "Settings: redesigned the settings workspace with flatter, more consistent layouts.", + "Settings: grouped agents/skills navigation by subfolder to make larger setups easier to manage (thanks to @nguyenngothuong).", + "Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong).", + "Sessions: expanded folder management with subfolders, cleaner organization controls, and clearer delete confirmations (thanks to @nguyenngothuong).", + "Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults.", + "Reliability: aligned file read/raw endpoint safety checks with other runtimes (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Chat: improved streaming smoothness and runtime stability with buffered updates and reliability fixes." + ], + "misc": [] + } + }, + { + "version": "1.7.3", + "date": "2026-02-21", + "title": null, + "intro": null, + "app": { + "new": [ + "Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5).", + "Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong)." + ], + "improvements": [ + "Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong).", + "UI: unified clipboard copy behavior across Desktop app, Web app, and VS Code extension.", + "Reliability: improved startup environment detection by capturing login-shell environment snapshots.", + "Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5)." + ], + "fixes": [ + "Diff/Plans/Files: restored GitHub-style inline comments (thanks to @nelsonPires5).", + "Terminal: restored terminal text copy behavior (thanks to @shekohex)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong).", + "Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5)." + ], + "improvements": [ + "Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong).", + "UI: unified clipboard copy behavior.", + "Reliability: improved startup environment detection by capturing login-shell environment snapshots.", + "Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5)." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.7.2", + "date": "2026-02-20", + "title": null, + "intro": null, + "app": { + "new": [ + "UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5)." + ], + "improvements": [ + "Chat: question prompts now guide you to unanswered items before submit.", + "Chat: improved streaming activity rendering and session attention indicators.", + "Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Chat: fixed auto-send queue to wait for the active session to be idle before sending.", + "Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections." + ], + "misc": [] + }, + "vscode": { + "new": [ + "UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5)." + ], + "improvements": [ + "Chat: question prompts now guide you to unanswered items before submit.", + "Chat: improved streaming activity rendering and session attention indicators.", + "Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Chat: fixed auto-send queue to wait for the active session to be idle before sending.", + "Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections." + ], + "misc": [] + } + }, + { + "version": "1.7.1", + "date": "2026-02-18", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy." + ], + "improvements": [ + "Chat: slash commands now follow server command semantics (including multiline arguments).", + "Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests.", + "Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering.", + "Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning.", + "Skills: upgraded editing/install UX with better code editing, syntax-aware related files, and clearer location targeting across user/project .opencode and .agents scopes.", + "Maintenance: removed deprecated GitHub Actions cloud runtime assets and docs to reduce setup confusion (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Mobile: fixed accidental abort right after tapping Send on touch devices." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy." + ], + "improvements": [ + "Chat: slash commands now follow server command semantics (including multiline arguments).", + "Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests.", + "Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering.", + "Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning.", + "Skills: upgraded editing/install UX with better code editing, syntax-aware related files, and clearer location targeting across user/project .opencode and .agents scopes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.7.0", + "date": "2026-02-17", + "title": null, + "intro": null, + "app": { + "new": [ + "UI: added a context overview panel with token usage, cost breakdown, and raw message inspection to make session debugging easier." + ], + "improvements": [ + "Chat: improved live streaming with part-delta updates and smarter auto-follow scrolling.", + "Chat: Mermaid diagrams now render inline in assistant messages, with quick copy/download actions for easier sharing.", + "Sessions: project icon and color customizations now persist reliably across restarts.", + "Reliability: managed local OpenCode runtimes now use rotated secure auth and tighter lifecycle control across runtimes.", + "Git/GitHub: improved backend reliability for repository and auth operations (thanks to @nelsonPires5)." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: improved live streaming responsiveness with part-delta updates and smarter auto-follow scrolling during generation.", + "Chat: Mermaid diagrams now render directly in messages, with quick copy/download actions for easier reuse.", + "Reliability: managed runtime startup now rotates secure auth credentials and hardens API proxy auth forwarding for safer local connections (thanks to @yulia-ivashko).", + "Reliability: extension startup/shutdown handling is more predictable." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.6.9", + "date": "2026-02-16", + "title": null, + "intro": null, + "app": { + "new": [ + "Sessions: added a persistent project notes and todos panel (thanks to @gsxdsm).", + "Sessions: introduced the ability to pin sessions within your groups for easy access.", + "Settings: added a configurable Zen model for commit messages generation and summarization of notifications (thanks to @gsxdsm).", + "Usage: added NanoGPT quota support and hardened provider handling (thanks to @nelsonPires5)." + ], + "improvements": [ + "**UI: redesigned the workspace shell with a context panel, tabbed sidebars, and quicker navigation across chat, files, and reviews.**", + "UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5).", + "Diff: improved large diff rendering and interaction performance for smooth reviews on heavy changesets.", + "Worktrees: shipped an upstream-first flow across supported runtimes (thanks to @yulia-ivashko).", + "Git: improved pull request branch normalization and base/remote resolution to reduce PR setup mismatches (thanks to @gsxdsm).", + "Reliability: startup now auto-detects and safely connects to an existing OpenCode server." + ], + "fixes": [ + "Chat: fixed file attachment issues and added exceeded-quota information.", + "Desktop: restored desktop window geometry and position (thanks to @yulia-ivashko).", + "Mobile: fixes for small-screen editor, terminal, and layout overlap issues (thanks to @gsxdsm, @nelsonPires5)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Usage: added NanoGPT quota provider support and improved provider wiring for steady usage reporting (thanks to @nelsonPires5)." + ], + "improvements": [ + "Agent Manager / Worktrees: switched to an upstream-first worktree flow with stronger branch tracking (thanks to @yulia-ivashko).", + "UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5)." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.6.8", + "date": "2026-02-12", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added drag-and-drop attachments with inline image previews." + ], + "improvements": [ + "Chat: improved agent/model picking with fuzzy search across names and descriptions.", + "Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm).", + "Usage: when using remaining-quota mode, usage markers now invert direction to better match how remaining capacity is interpreted (thanks to @gsxdsm)." + ], + "fixes": [ + "Sessions: fixed a sidebar issue where draft input could carry over when switching projects.", + "Chat: improved quick navigation from the sessions list by adding double-click to jump into chat and auto-focus the draft input; also fixed mobile session return behavior (thanks to @gsxdsm).", + "Desktop: fixed project selection in opened remote instances.", + "Desktop: fixed opened remote instances that use HTTP (helpful for instances under tunneling)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added drag-and-drop attachments with inline image previews." + ], + "improvements": [ + "Chat: improved picker search with fuzzy matching on names and descriptions to speed up finding the right agent/model.", + "Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm).", + "Usage: remaining-quota mode now inverts usage markers (thanks to @gsxdsm)." + ], + "fixes": [ + "Sessions: fixed previously selected session carry-over when navigating from chat / session draft and list of sessions." + ], + "misc": [] + } + }, + { + "version": "1.6.7", + "date": "2026-02-10", + "title": null, + "intro": null, + "app": { + "new": [ + "Voice: added built-in voice input and read-aloud responses with multiple providers (thanks to @gsxdsm).", + "Git: added multi-remote push selection and smarter fork-aware pull request creation to reduce manual branch/remote setup (thanks to @gsxdsm).", + "Usage: added usage pace and prediction indicators in the header and settings (thanks to @gsxdsm).", + "Desktop: added multi-window support with a dedicated \"New Window\" action for parallel work across projects (thanks to @yulia-ivashko)." + ], + "improvements": [ + "UI: refreshed header and settings layout, improved host switching, and upgraded the editor for smooth day-to-day navigation and editing." + ], + "fixes": [ + "Diff/Plans: fixed comment draft collisions and improved multi-line comment editing in plan and file workflows (thanks to @nelsonPires5).", + "Notifications: stopped firing completion notifications for comment draft edits to reduce noisy alerts during review-heavy sessions (thanks to @nelsonPires5).", + "Settings: added confirmation dialogs for destructive delete/reset actions to prevent accidental data loss.", + "Reliability: fixed message loading edge cases, stabilized voice-mode persistence across restarts, and improved update flow behavior across platforms." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added usage pace and prediction indicators in the header and settings to make quota usage trends easier to track (thanks to @gsxdsm).", + "Added confirmation dialogs for destructive delete/reset actions to reduce accidental mistakes in settings and management flows." + ], + "improvements": [ + "Improved reliability for message loading." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.6.6", + "date": "2026-02-09", + "title": null, + "intro": null, + "app": { + "new": [ + "Desktop: added an `Open In` button to open the current workspace in Finder, Terminal, and supported editors with remembered app preference (thanks to @yulia-ivashko).", + "Git: added push/pull with remote selection, plus in-app rebase/merge flows with improved remote inference and clearer conflict handling (thanks to @gsxdsm).", + "Notifications: added smarter templates with concise summaries (thanks to @gsxdsm)." + ], + "improvements": [ + "Desktop: redesigned the main workspace with a dedicated Git sidebar and bottom terminal dock.", + "Header: combined Instance, Usage, and MCP into one services menu.", + "Git: reorganized the Git workspace with improved in-app PR workflows.", + "Files: improved editing with breadcrumbs, better draft handling, smooth editor interactions, and more reliable directory navigation from file context (thanks to @nelsonPires5).", + "Sessions: improved status behavior, faster mobile session switching with running/unread indicators, and clearer worktree labels when branch name differs (thanks to @Jovines, @gsxdsm).", + "Terminal: improved input responsiveness with a persistent low-latency transport for steady typing (thanks to @shekohex)." + ], + "fixes": [ + "Usage: added per-model quota breakdowns with collapsible groups, and fixed provider dropdown scrolling (thanks to @nelsonPires5, @gsxdsm).", + "Mobile: fixed chat input layout issues on small screens (thanks to @nelsonPires5).", + "Reliability: fixed OpenCode auth pass-through and proxy env handling to reduce intermittent connection/auth issues (thanks to @gsxdsm)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [], + "fixes": [ + "Usage: added per-model quota groups in the header and fixed provider dropdown scrolling for easier usage tracking (thanks to @nelsonPires5, @gsxdsm).", + "Reliability: fixed OpenCode auth pass-through/proxy behavior to reduce failed extension requests (thanks to @gsxdsm)." + ], + "misc": [] + } + }, + { + "version": "1.6.5", + "date": "2026-02-06", + "title": null, + "intro": null, + "app": { + "new": [ + "Settings: added an OpenCode CLI path override.", + "Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm).", + "Diff/Plans: added inline comment drafts (thanks to @nelsonPires5).", + "Sessions: you can now rename projects directly from the sidebar, and issue/PR pickers are easier to scan when starting from GitHub context (thanks to @shekohex, @gsxdsm).", + "UI: added Vitesse Dark and Vitesse Light theme presets." + ], + "improvements": [ + "Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm).", + "Worktrees: improved worktree flow reliability, including cleaner handling when a worktree was already removed outside the app (thanks to @gsxdsm).", + "Terminal: improved Android keyboard behavior and removed distracting native caret blink in terminal inputs (thanks to @shekohex).", + "Reliability: improved OpenCode binary resolution and HOME-path handling across runtimes for steady local startup." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Settings: added an OpenCode CLI path override.", + "Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm)." + ], + "improvements": [ + "Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm).", + "Reliability: improved OpenCode binary resolution and HOME-path handling for steady local startup." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.6.4", + "date": "2026-02-05", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm).", + "Diff/Plans: add inline comment drafts (thanks to @nelsonPires5).", + "Git: improved macOS SSH agent support for smooth private-repo auth (thanks to @shekohex)." + ], + "improvements": [ + "Desktop: switch between local and remote OpenChamber instances, plus a thinner runtime.", + "Mobile: split Agent/Model controls and a quick commands button with autocomplete (Commands/Agents/Files) for easier input (thanks to @Jovines, @gsxdsm).", + "Terminal/Syntax: font size controls and Phoenix file extension support (thanks to @shekohex).", + "Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5).", + "GitHub: PR description generation supports optional extra context (thanks to @nelsonPires5)." + ], + "fixes": [ + "VSCode: improved Windows PATH resolution and cold-start readiness checks to reduce \"stuck loading\" for sessions/models/agents.", + "Web: fixed missing icon when installing the Android PWA (thanks to @nelsonPires5)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm)." + ], + "improvements": [ + "Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5)." + ], + "fixes": [ + "Improved Windows PATH resolution and cold-start readiness checks to reduce \"stuck loading\" sessions." + ], + "misc": [] + } + }, + { + "version": "1.6.3", + "date": "2026-02-02", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Web: improved server readiness check to use the `/global/health` endpoint.", + "VSCode: improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans)." + ], + "fixes": [ + "Web: added login rate limit protection to prevent brute-force attempts on the authentication endpoint (thanks to @Jovines).", + "Settings: dialog no longer persists open/closed state across app restarts." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans)." + ], + "fixes": [ + "Settings dialog no longer persists open/closed state across extension restarts." + ], + "misc": [] + } + }, + { + "version": "1.6.2", + "date": "2026-02-01", + "title": null, + "intro": null, + "app": { + "new": [ + "Usage: new multi-provider quota dashboard to monitor API usage across OpenAI, Google, and z.ai (thanks to @nelsonPires5).", + "Terminal: added tabbed interface to manage multiple terminal sessions per directory.", + "Files: added multi-file tabs on desktop and dropdown selector on mobile (thanks to @nelsonPires5).", + "UI: introduced a token-based theming system, 18 themes with light/dark variants, and custom user themes from `~/.config/openchamber/themes`." + ], + "improvements": [ + "Settings: now opens in a windowed dialog on desktop with backdrop blur.", + "Diff: optimized stacked view with worker-pool processing and lazy DOM rendering for smooth scrolling.", + "Worktrees: workspace path now resolves correctly when using git worktrees (thanks to @nelsonPires5)." + ], + "fixes": [ + "Projects: fixed directory creation outside workspace in the Add Project modal (thanks to @nelsonPires5)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added multi-provider quota dashboard in settings to monitor API usage across OpenAI, Google, and z.ai with auto-refresh support (thanks to @nelsonPires5)." + ], + "improvements": [ + "Enhanced token-based theming system." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.6.1", + "date": "2026-01-30", + "title": null, + "intro": null, + "app": { + "new": [ + "UI: update dialog now includes the changelog.", + "Terminal: added optional on-screen key bar (Esc/Ctrl/arrows/Enter) for easier terminal navigation.", + "Notifications: added \"Notify for subtasks\" toggle to silence child-session notifications during multi-run (thanks to @Jovines).", + "Worktrees: starting new worktree sessions now defaults to HEAD when no start point is provided.", + "Git: commit message generation now includes untracked files and handles `git diff --no-index` comparisons reliably (thanks to @MrLYC)." + ], + "improvements": [ + "Mobile: revamped chat controls on small screens with a unified controls drawer (thanks to @nelsonPires5).", + "Reliability: improved event-stream reconnection when the app becomes visible again.", + "Desktop: improved macOS window chrome and header spacing, including steady traffic lights on older macOS versions (thanks to @yulia-ivashko)." + ], + "fixes": [ + "Chat: added Stop button to cancel generation mid-response." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added Apply Patch tool support for opening files in editor." + ], + "improvements": [ + "Chat: improved compact controls on narrow panels with a unified drawer for model and tool options.", + "Reliability: improved event stream reconnection when the panel is hidden/shown or VS Code regains focus." + ], + "fixes": [ + "Chat: added Stop button to cancel generation mid-response." + ], + "misc": [] + } + }, + { + "version": "1.6.0", + "date": "2026-01-29", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added message stall detection with automatic soft resync." + ], + "improvements": [ + "Git: PR picker now validates local branch existence and includes a refresh action.", + "Git: worktree integration now syncs clean target directories before merging.", + "VSCode: session activity status now updates reliably even when the webview is hidden.", + "Web: session activity tracking now works consistently across browser tabs." + ], + "fixes": [ + "Chat: fixed \"Load older\" button behavior in chat with proper pagination implementation.", + "Diff: fixed memory leak when viewing many modified files; large changesets now lazy-load for smooth performance.", + "Reliability: plans directory no longer errors when missing." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added message stall detection with automatic soft resync." + ], + "improvements": [ + "Session activity status now updates reliably even when the extension panel is hidden or collapsed." + ], + "fixes": [ + "Fixed \"Load older\" button in long sessions with proper progressive pagination." + ], + "misc": [] + } + }, + { + "version": "1.5.9", + "date": "2026-01-28", + "title": null, + "intro": null, + "app": { + "new": [ + "UI: Files, Diff, Git, and Terminal now follow the active session/worktree directory, including new-session drafts." + ], + "improvements": [ + "Worktrees: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated.", + "Git: integrate worktree commits back to a target branch with commit previews and guided conflict handling.", + "Files: toggle markdown preview when viewing files (thanks to @Jovines).", + "Files: open the file viewer in fullscreen for focused review and editing (thanks to @TaylorBeeston).", + "Plans: switch between markdown preview and edit mode in the Plan view." + ], + "fixes": [ + "Web: plan lists no longer error when the plans directory is missing." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Agent Manager: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated." + ], + "fixes": [ + "Agent Manager: worktree setup commands are now persistent per project and automatically saved/restored." + ], + "misc": [] + } + }, + { + "version": "1.5.8", + "date": "2026-01-26", + "title": null, + "intro": null, + "app": { + "new": [ + "Plans: new Plan/Build mode switching support with dedicated Plan content view with per-session context.", + "Web: iOS safe-area support for the PWA header.", + "Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng)." + ], + "improvements": [ + "GitHub: sign in with multiple accounts and smooth auth flow.", + "Chat/UI: linkable mentions, better wrapping, and markdown/scroll polish in messages.", + "Skills: ClawdHub catalog now pages results and retries transient failures.", + "Mobile: improved layout for attachments, git, and permissions on small screens (thanks to @nelsonPires5)." + ], + "fixes": [ + "Diff: fixed Chrome scrolling in All Files layout.", + "Reliability: file lists and message sends handle missing directories and transient errors better." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Plans: added new Plan/Build mode switching support.", + "Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng)." + ], + "improvements": [ + "Chat: linkable mentions, better wrapping, and markdown/scroll polish in messages.", + "Skills: ClawdHub catalog now pages results and retries transient failures.", + "Performance: faster chat rendering for busy sessions." + ], + "fixes": [ + "Diff: fixed Chrome scrolling in All Files layout.", + "Reliability: file lists and message sends handle missing directories and transient errors better." + ], + "misc": [] + } + }, + { + "version": "1.5.7", + "date": "2026-01-24", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "GitHub: PR panel supports fork PR detection by branch name." + ], + "fixes": [ + "GitHub: Git tab PR panel can send failed checks/comments to chat with hidden context; added check details dialog with Actions step breakdown.", + "Web: GitHub auth flow fixes." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "No notable changes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.6", + "date": "2026-01-24", + "title": null, + "intro": null, + "app": { + "new": [ + "Sessions: start new sessions from GitHub issues with seeded context (title, body, labels, comments).", + "Sessions: start new sessions from GitHub pull requests with PR context baked in (including diffs)." + ], + "improvements": [ + "GitHub: connect your account in Settings with device-flow auth to enable GitHub tools.", + "Git: manage pull requests in the Git view with AI-generated descriptions, status checks, ready-for-review, and merge actions." + ], + "fixes": [ + "Mobile: fixed CommandAutocomplete dropdown scrolling (thanks to @nelsonPires5)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "GitHub: added backend support for PRs/issues workflows; UI comes later." + ], + "improvements": [], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.5", + "date": "2026-01-23", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Navigation: URLs now sync the active session, tab, settings, and diff state for shareable links and reliable back/forward (thanks to @TaylorBeeston).", + "Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders.", + "Skills: installs now target plural directories while still recognizing legacy singular folders.", + "Web: improved push subscription handling across multiple windows." + ], + "fixes": [ + "Web: push notifications no longer fire when a window is visible, avoiding duplicate alerts." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders.", + "Skills: installs now target plural directories while still recognizing legacy singular folders." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.4", + "date": "2026-01-22", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: new Apply Patch tool UI with diff preview for patch-based edits.", + "Web: added Background notifications for PWA." + ], + "improvements": [ + "Files: refreshed attachment cards and related file views for clearer context.", + "Settings: manage provider configuration files directly from the UI.", + "UI: updated header and sidebar layout for a cleaner, tighter workspace fit (thanks to @TheRealAshik)." + ], + "fixes": [ + "Diff: large diffs now lazy-load to avoid freezes (thanks to @Jovines).", + "Reliability: connect to external OpenCode servers without auto-start and fixed subagent crashes (thanks to @TaylorBeeston)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Apply Patch tool now shows a diff preview.", + "Settings: manage provider configuration files directly from the extension." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.3", + "date": "2026-01-20", + "title": null, + "intro": null, + "app": { + "new": [ + "Settings: new memory limits controls for session message history.", + "Chat: new Activity view in collapsed state, now shows latest 6 tools by default." + ], + "improvements": [ + "Files: edit files inline with syntax highlighting, draft protection, and save/discard flow.", + "Files: toggles to show hidden/dotfiles and gitignored entries in file browsers and pickers (thanks to @syntext).", + "Chat: smooth session switching with more stable scroll anchoring.", + "Git: generated commit messages now auto-pick a gitmoji when enabled (thanks to @TheRealAshik).", + "Performance: faster filesystem/search operations and general stability improvements (thanks to @TheRealAshik)." + ], + "fixes": [ + "Chat: fixed message copy on Firefox for macOS (thanks to @syntext).", + "Appearance: new corner radius control and restored input bar offset setting (thanks to @TheRealAshik)." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: improved session switching with more stable scroll anchoring.", + "Chat: the collapsed Activity view now shows the latest 6 tools by default.", + "Chat: updated accent color derivation to better match editor themes.", + "Performance: improved filesystem/search speed and general stability (thanks to @TheRealAshik).", + "Files: adjusted default visibility for hidden/dotfiles to be visible and gitignored entries to be hidden." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.2", + "date": "2026-01-17", + "title": null, + "intro": null, + "app": { + "new": [ + "Sessions: added branch picker dialog to start new worktree sessions from local branches (thanks to @nilskroe).", + "Sessions: added project header worktree button, active-session loader, and right-click context menu in the sessions sidebar (thanks to @nilskroe).", + "Git: added gitmoji picker in commit message composer with cached emoji list (thanks to @TaylorBeeston).", + "UI: added one-click diagnostics copy in the About dialog." + ], + "improvements": [ + "Sessions: improved worktree delete dialog with linked session details, dirty-change warnings, and optional remote branch removal.", + "Chat: optimized message loading for opening sessions.", + "VSCode: tuned layout breakpoint and server readiness timeout for steady startup.", + "Reliability: improved OpenCode process cleanup to reduce orphaned servers." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Chat: optimized message loading for opening sessions.", + "Layout: tuned responsive breakpoint and server readiness timeout for steady startup.", + "Reliability: improved OpenCode process cleanup to reduce orphaned servers." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.1", + "date": "2026-01-16", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [], + "fixes": [ + "Desktop: fixed orphaned OpenCode processes not being cleaned up on restart or exit.", + "OpenCode: fixed a crash when reloading configuration." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "No notable changes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.5.0", + "date": "2026-01-16", + "title": null, + "intro": null, + "app": { + "new": [ + "UI: added a new Files tab to browse workspace files directly from the interface.", + "Git Identities: added \"default identity\" setting with one-click set/unset and automatic local identity detection.", + "VSCode: added responsive layout with sessions sidebar + chat side-by-side when wide, compact header, and streamlined settings." + ], + "improvements": [ + "Diff: enhanced the diff viewer with mobile support and the ability to ask the agent for comments on changes.", + "VSCode: improved server management to ensure it initializes within the workspace directory with context-aware readiness checks.", + "Web: the server now automatically resolves and uses an available port if the default is occupied." + ], + "fixes": [ + "Web/VSCode: fixed orphaned OpenCode processes not being cleaned up on restart or exit.", + "Stability: fixed heartbeat race condition causing session stalls during long tasks (thanks to @tybradle).", + "Desktop: fixed commands for worktree setup access to PATH." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Layout: added responsive expanded layout showing sessions sidebar + chat side-by-side when extension is wide enough (≥700px).", + "Layout: extension now opens to sessions list instead of new session draft." + ], + "improvements": [ + "Improved OpenCode server management to ensure it initializes within the workspace directory.", + "Enhanced extension startup with context-aware readiness checks for the current workspace.", + "Layout: compact header with reduced padding.", + "Settings: hidden Git Identities tab, Git section, and Diff view settings (not applicable to VS Code).", + "Settings: hidden project switcher dropdown (VS Code uses workspace).", + "Shortcuts: disabled worktree session creation with shortcuts (Ctrl+Shift+N now opens standard session)." + ], + "fixes": [ + "Fixed orphaned OpenCode processes not being cleaned up on restart or exit.", + "Session tabs: fixed opening new session in editor tab; title bar button now opens new session tab, sidebar button opens current or new session." + ], + "misc": [] + } + }, + { + "version": "1.4.9", + "date": "2026-01-14", + "title": null, + "intro": null, + "app": { + "new": [ + "VSCode: added session editor panel to view sessions alongside files.", + "Diff: added stacked/inline diff mode toggle in settings with sidebar file navigation (thanks to @nelsonPires5)." + ], + "improvements": [ + "VSCode: improved server connection reliability with multiple URL candidate support.", + "Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files." + ], + "fixes": [ + "Mobile: fixed iOS keyboard safe area padding for home indicator bar (thanks to @Jovines)." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added session editor panel to view sessions alongside files." + ], + "improvements": [ + "Improved server connection reliability with multiple URL candidate support.", + "Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.8", + "date": "2026-01-14", + "title": null, + "intro": null, + "app": { + "new": [ + "Git Identities: added token-based authentication support with ~/.git-credentials discovery and import.", + "Settings: consolidated Git settings and added opencode zen model selection for commit generation (thanks to @nelsonPires5).", + "Web Notifications: added configurable native web notifications for assistant completion (thanks to @vio1ator).", + "Stability: added graceful shutdown handling for the server process (thanks to @vio1ator)." + ], + "improvements": [ + "Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator).", + "UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator).", + "Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring." + ], + "fixes": [ + "Chat: fixed edit tool output and added turn duration." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Stability: added graceful shutdown handling for the server process (thanks to @vio1ator)." + ], + "improvements": [ + "Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator).", + "UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator).", + "Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring." + ], + "fixes": [ + "Chat: fixed edit tool output and added turn duration." + ], + "misc": [] + } + }, + { + "version": "1.4.7", + "date": "2026-01-10", + "title": null, + "intro": null, + "app": { + "new": [ + "Skills: added ClawdHub integration as built-in market for skills." + ], + "improvements": [], + "fixes": [ + "Web: fixed issues in terminal." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Skills: added ClawdHub integration as built-in market for skills." + ], + "improvements": [], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.6", + "date": "2026-01-09", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added question tool support with a rich UI for interaction." + ], + "improvements": [ + "VSCode/Web: switched OpenCode CLI management to the SDK.", + "Input: removed auto-complete and auto-correction.", + "Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added question tool support with a rich UI for interaction." + ], + "improvements": [ + "Switched OpenCode CLI management to the SDK.", + "Input: removed auto-complete and auto-correction.", + "Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.5", + "date": "2026-01-08", + "title": null, + "intro": null, + "app": { + "new": [ + "Chat: added support for model variants (thinking effort).", + "Skills: added autocomplete for skills on \"/\" when it is not the first character in input.", + "Autocomplete: added scope badges for commands/agents/skills.", + "MCP: added the ability to dynamically enable or disable configured MCP servers.", + "Web: refactored the Add Project UI with autocomplete." + ], + "improvements": [ + "Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab.", + "Compact: changed `/summarize` to `/compact` and moved compaction to the SDK." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Chat: added support for model variants (thinking effort).", + "Skills: added autocomplete for skills on \"/\" when it is not the first character in input.", + "Autocomplete: added scope badges for commands/agents/skills.", + "MCP: added the ability to dynamically enable or disable configured MCP servers." + ], + "improvements": [ + "Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab.", + "Compact: changed `/summarize` to `/compact` and moved compaction to the SDK." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.4", + "date": "2026-01-08", + "title": null, + "intro": null, + "app": { + "new": [ + "Agent Manager: added \"Copy Worktree Path\" action in the more menu (thanks to @wienans).", + "Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management.", + "Settings: added the ability to create new sessions in worktrees by default.", + "Git view: added branch rename for worktree.", + "Projects: added multi-project support with per-project settings for agents/commands/skills.", + "Tunnel: added QR code and password URL for Cloudflare tunnel (thanks to @martindonadieu)." + ], + "improvements": [ + "Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans).", + "Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans).", + "Session sidebar: refactored the unified view for sessions in worktrees.", + "Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic." + ], + "fixes": [ + "Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun).", + "Model selector: fixed dropdowns not responding to viewport size." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Agent Manager: added \"Copy Worktree Path\" action in the more menu (thanks to @wienans).", + "Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management.", + "Settings: added ability to create new session in worktree by default.", + "Projects: added multi-project support with per-project settings for agents/commands/skills." + ], + "improvements": [ + "Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans).", + "Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans).", + "Session sidebar: refactoring with unified view for sessions in worktrees.", + "Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic." + ], + "fixes": [ + "Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun).", + "Model selector: fixed dropdowns not responding to viewport size." + ], + "misc": [] + } + }, + { + "version": "1.4.3", + "date": "2026-01-04", + "title": null, + "intro": null, + "app": { + "new": [ + "VS Code extension: added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans).", + "Added permission prompt UI for tools configured with \"ask\" in opencode.json, showing requested patterns and \"Always Allow\" options (thanks to @aptdnfapt).", + "Added \"Open subAgent session\" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt)." + ], + "improvements": [ + "VS Code extension: improved activation reliability and error handling." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans).", + "Added permission prompt UI for tools configured with \"ask\" in opencode.json, showing requested patterns and \"Always Allow\" options (thanks to @aptdnfapt).", + "Added \"Open subAgent session\" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt)." + ], + "improvements": [ + "Improved activation reliability and error handling." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.2", + "date": "2026-01-02", + "title": null, + "intro": null, + "app": { + "new": [ + "Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt).", + "Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt).", + "Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt)." + ], + "improvements": [ + "Desktop app: keyboard shortcuts now use Cmd on macOS and Ctrl on web/other platforms (thanks to @sakhnyuk).", + "Migrated to OpenCode SDK v2 with improved API types and streaming." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt).", + "Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt).", + "Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt)." + ], + "improvements": [ + "Migrated to OpenCode SDK v2 with improved API types and streaming." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.1", + "date": "2026-01-02", + "title": null, + "intro": null, + "app": { + "new": [ + "Added the ability to select the same model multiple times in multi-agent runs for response comparison.", + "Model selector now includes search and keyboard navigation.", + "Added revert button to all user messages (including first one).", + "Added HEIC image support for file attachments with automatic MIME type normalization for text format files.", + "VS Code extension: added Git backend integration for UI access (thanks to @wienans).", + "Web app: terminal backend now supports a faster Bun-based PTY when Bun is available, with automatic fallback for existing Node-only setups." + ], + "improvements": [ + "VS Code extension: only shows the main Worktree in the Chat Sidebar (thanks to @wienans).", + "Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer, while keeping the existing terminal UX and per-directory sessions." + ], + "fixes": [ + "Terminal: fixed several issues with terminal session restore and rendering under heavy output, including switching directories and long-running TUI apps." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added the ability to select the same model multiple times in multi-agent runs for response comparison.", + "Model selector now includes search and keyboard navigation.", + "Added revert button to all user messages (including first one).", + "Added HEIC image support for file attachments with automatic MIME type normalization for text format files." + ], + "improvements": [ + "Only show the main Worktree in the Chat Sidebar (thanks to @wienans).", + "Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.4.0", + "date": "2026-01-01", + "title": null, + "intro": null, + "app": { + "new": [ + "Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree.", + "Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push.", + "Web app: added Cloudflare Quick Tunnel support for simpler remote access (thanks to @wojons and @aptdnfapt)." + ], + "improvements": [ + "Git view: improved branch publishing by detecting unpublished commits and automatically setting the upstream on first push.", + "VS Code extension: default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans).", + "Sidebar: improved readability for sticky headers with a dynamic background." + ], + "fixes": [ + "Mobile: improved keyboard/input bar behavior (including Android fixes and better keyboard avoidance) and added an offset setting for curved-screen devices (thanks to @auroraflux).", + "Chat: now shows clearer error messages when agent messages fail." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree.", + "Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push." + ], + "improvements": [ + "Default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans).", + "Sidebar: improved readability for sticky headers with a dynamic background." + ], + "fixes": [ + "Chat: now shows clearer error messages when agent messages fail." + ], + "misc": [] + } + }, + { + "version": "1.3.9", + "date": "2025-12-30", + "title": null, + "intro": null, + "app": { + "new": [ + "Added skills management to settings with the ability to create, edit, and delete skills (make sure you have the latest OpenCode version for skills support).", + "Added Skills catalog functionality for discovering and installing skills from external sources.", + "VS Code extension: added right-click context menu with \"Add to Context,\" \"Explain,\" and \"Improve Code\" actions (thanks to @wienans)." + ], + "improvements": [], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added skills management to settings with the ability to create, edit, and delete skills.", + "Added Skills catalog functionality for discovering and installing skills from external sources.", + "Added right-click context menu with \"Add to Context,\" \"Explain,\" and \"Improve Code\" actions (thanks to @wienans)." + ], + "improvements": [], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.3.8", + "date": "2025-12-29", + "title": null, + "intro": null, + "app": { + "new": [ + "Added Intel Mac (x86_64) support for the desktop application (thanks to @rothnic).", + "Added queued message mode with chips, batching, and idle auto‑send (including attachments).", + "Added queue mode toggle to OpenChamber settings (chat section) with persistence across runtimes." + ], + "improvements": [ + "Build workflow now generates separate builds for Apple Silicon (arm64) and Intel (x86_64) Macs (thanks to @rothnic).", + "Improved dev server HMR by reusing a healthy OpenCode process to avoid zombie instances.", + "Refactored Agents/Commands management with ability to configure project/user scopes." + ], + "fixes": [ + "Fixed scroll position persistence for active conversation turns across session switches." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added queued message mode with chips, batching, and idle auto‑send (including attachments).", + "Added queue mode toggle to settings (chat section)." + ], + "improvements": [ + "Refactored Agents/Commands management with ability to configure project/user scopes." + ], + "fixes": [ + "Fixed scroll position persistence for active conversation turns across session switches." + ], + "misc": [] + } + }, + { + "version": "1.3.7", + "date": "2025-12-28", + "title": null, + "intro": null, + "app": { + "new": [ + "Added mobile-friendly drill-down navigation for settings.", + "Added responsive tab labels in settings header (icons only at narrow widths).", + "Introduced enhanced VSCode extension settings with dynamic layout based on width." + ], + "improvements": [ + "Redesigned Settings as a full-screen view with tabbed navigation.", + "ESC key now closes settings; double-ESC abort only works on chat tab without overlays.", + "Improved session activity status handling and message step completion logic." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added responsive tab labels in settings header (icons only at narrow widths).", + "Introduced enhanced extension settings with dynamic layout based on width." + ], + "improvements": [ + "Redesigned Settings as a full-screen view with tabbed navigation.", + "ESC key now closes settings.", + "Improved session activity status handling and message step completion logic." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.3.6", + "date": "2025-12-27", + "title": null, + "intro": null, + "app": { + "new": [ + "Added the ability to manage (connect/disconnect) providers in settings." + ], + "improvements": [ + "Adjusted auto-summarization visuals in chat." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added the ability to manage (connect/disconnect) providers in settings." + ], + "improvements": [ + "Adjusted auto-summarization visuals in chat." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.3.5", + "date": "2025-12-26", + "title": null, + "intro": null, + "app": { + "new": [ + "Added Nushell support for OpenCode CLI operations.", + "Added Discord links in the about section.", + "Added settings for choosing the default model/agent to start with in a new session." + ], + "improvements": [ + "Improved file search with fuzzy matching capabilities.", + "Enhanced mobile responsiveness in chat controls.", + "Improved provider loading reliability during workspace switching." + ], + "fixes": [ + "Fixed workspace switching performance and API health checks.", + "Fixed session handling for non-existent worktree directories." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added settings for choosing the default model/agent to start with in a new session." + ], + "improvements": [ + "Improved file search with fuzzy matching capabilities.", + "Improved provider loading reliability during workspace switching." + ], + "fixes": [ + "Fixed workspace switching performance and API health checks.", + "Fixed session handling for non-existent worktree directories." + ], + "misc": [] + } + }, + { + "version": "1.3.4", + "date": "2025-12-25", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Diff view now loads reliably even with large files and slow networks.", + "VS Code extension: improved type checking and editor integration." + ], + "fixes": [ + "Fixed getting diffs for worktree files." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Improved type checking and editor integration." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.3.3", + "date": "2025-12-25", + "title": null, + "intro": null, + "app": { + "new": [ + "VS Code extension: added an animated loading screen and introduced command for status/debug output." + ], + "improvements": [ + "Updated OpenCode SDK to 1.0.185 across all app versions.", + "Chat UI: improved agent activity status behavior and reduced image thumbnail sizes." + ], + "fixes": [ + "VS Code extension: fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming.", + "Fixed session activity tracking.", + "Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors.", + "Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added an animated loading screen and introduced command for status/debug output." + ], + "improvements": [ + "Chat UI: improved agent activity status behavior and reduced image thumbnail sizes." + ], + "fixes": [ + "Fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming.", + "Fixed session activity tracking.", + "Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors.", + "Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation." + ], + "misc": [] + } + }, + { + "version": "1.3.2", + "date": "2025-12-22", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Updated OpenCode SDK to the latest version." + ], + "fixes": [ + "Fixed new bug session when switching directories." + ], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.3.1", + "date": "2025-12-22", + "title": null, + "intro": null, + "app": { + "new": [ + "The app opens to a new chat by default.", + "Updated app identity with new logo and icons across all platforms." + ], + "improvements": [], + "fixes": [ + "New chats no longer create a session until you send your first message.", + "Fixed mobile and VSCode sessions handling." + ], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.3.0", + "date": "2025-12-21", + "title": null, + "intro": null, + "app": { + "new": [ + "Added revert functionality in chat for user messages." + ], + "improvements": [ + "Polished mobile controls in chat view.", + "Updated user message layout/styling.", + "Improved header tab responsiveness.", + "Adjusted VSCode extension theme mapping and model selection view.", + "Polished file autocomplete experience." + ], + "fixes": [ + "Fixed bugs with new session creation when the VSCode extension initialized for the first time." + ], + "misc": [] + }, + "vscode": { + "new": [ + "Added revert functionality in chat for user messages." + ], + "improvements": [ + "Updated user message layout/styling.", + "Improved header tab responsiveness.", + "Adjusted extension theme mapping and model selection view.", + "Polished file autocomplete experience." + ], + "fixes": [ + "Fixed bugs with new session creation when the extension initialized for the first time." + ], + "misc": [] + } + }, + { + "version": "1.2.9", + "date": "2025-12-20", + "title": null, + "intro": null, + "app": { + "new": [ + "Added session auto-cleanup with configurable retention across app versions, including the VSCode extension.", + "Added web package updates from the mobile/PWA settings view.", + "Added several optimizations for long sessions." + ], + "improvements": [], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Session auto‑cleanup feature with configurable retention.", + "Optimization for long sessions." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.2.8", + "date": "2025-12-19", + "title": null, + "intro": null, + "app": { + "new": [ + "Added a web update flow that does not require CLI interaction.", + "Added a web install script with package manager detection." + ], + "improvements": [ + "Web server update/restart now reuses previously set parameters like port or password." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.2.7", + "date": "2025-12-19", + "title": null, + "intro": null, + "app": { + "new": [ + "Introduced keyboard shortcuts help menu and quick actions menu." + ], + "improvements": [ + "Comprehensive macOS native menu bar entries.", + "Redesigned directory selection view for web/mobile with improved layout.", + "Improved theme consistency across dropdown menus, selects, and command palette." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.2.6", + "date": "2025-12-19", + "title": null, + "intro": null, + "app": { + "new": [ + "Added write/create tool preview in permission cards with syntax highlighting." + ], + "improvements": [ + "More descriptive assistant status messages with tool-specific and varied idle phrases.", + "Polished Git view layout." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added write/create tool preview in permission cards with syntax highlighting." + ], + "improvements": [ + "More descriptive assistant status messages with tool-specific and varied idle phrases." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.2.5", + "date": "2025-12-19", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Polished the chat experience for longer sessions.", + "Improved inactive-state handling in the Desktop app.", + "Redesigned Git tab layout with improved organization.", + "Smoother session rename experience." + ], + "fixes": [ + "Fixed file links from Git view to Diff.", + "Fixed untracked files in new directories not showing individually." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Polished chat experience for longer sessions.", + "Smoother session rename experience." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.2.4", + "date": "2025-12-18", + "title": null, + "intro": null, + "app": { + "new": [ + "Added macOS app menu entries for Check for Update and bug/request reports in Help." + ], + "improvements": [], + "fixes": [ + "Mobile: added settings, improved terminal scrolling, and fixed app layout positioning." + ], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.2.3", + "date": "2025-12-17", + "title": null, + "intro": null, + "app": { + "new": [ + "Added image preview support in Diff tab (shows original/modified images instead of base64 code)." + ], + "improvements": [ + "Improved diff view visuals and aligned styling across widgets.", + "Optimized Git polling and background diff/syntax pre-warming for faster Diff tab opening.", + "Optimized reloading unaffected diffs." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.2.2", + "date": "2025-12-17", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Agent Task tool now renders progressively with live duration and completed sub-tools summary.", + "Unified markdown rendering between assistant messages and tool outputs.", + "Reduced markdown header sizes." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Agent Task tool now renders progressively with live duration and completed sub-tools summary.", + "Unified markdown rendering between assistant messages and tool outputs.", + "Reduced markdown header sizes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.2.1", + "date": "2025-12-16", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Todo task tracking: collapsible status row showing AI's current task and progress.", + "Switched \"Detailed\" tool output mode to only open the 'task', 'edit', 'multiedit', 'write', 'bash' tools." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Todo task tracking: collapsible status row showing AI's current task and progress.", + "Switched \"Detailed\" tool output mode to only open critical tools (task, edit, write, etc.)." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.2.0", + "date": "2025-12-15", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Favorite & recent models for quick access in model selection.", + "Tool call expansion settings: collapsed, activity, or detailed modes (thanks to @theblazehen).", + "Font size & spacing controls (50-200% scaling) in Appearance Settings (thanks to @theblazehen).", + "Settings page access within VSCode extension (thanks to @theblazehen)." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Favorite & recent models for quick access in model selection.", + "Tool call expansion settings: collapsed, activity, or detailed modes.", + "Font size & spacing controls (50-200% scaling) in Appearance Settings.", + "Settings page access within extension." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.1.6", + "date": "2025-12-15", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Optimized diff view layout with smaller fonts and compact hunk separators.", + "Improved mobile experience: simplified header, better diff file selector.", + "Redesigned password-protected session unlock screen." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Redesigned password-protected session unlock screen." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.1.5", + "date": "2025-12-15", + "title": null, + "intro": null, + "app": { + "new": [ + "Added fuzzy search for file mentions with `@` in chat." + ], + "improvements": [ + "Improved file attachment performance.", + "Optimized input area layout." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added fuzzy search for file mentions with `@` in chat." + ], + "improvements": [ + "Improved file attachment performance.", + "Optimized input area layout." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.1.4", + "date": "2025-12-15", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Flexoki themes for Shiki syntax highlighting for consistency with the app color schema.", + "Enhanced VSCode extension theming with editor themes." + ], + "fixes": [ + "Fixed mobile view model/agent selection." + ], + "misc": [] + }, + "vscode": { + "new": [], + "improvements": [ + "Flexoki themes for Shiki syntax highlighting for consistency with the app color schema.", + "Enhanced extension theming with editor themes." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.1.3", + "date": "2025-12-14", + "title": null, + "intro": null, + "app": { + "new": [ + "Added line wrap toggle in diff view with dynamic layout switching (auto-inline when narrow)." + ], + "improvements": [ + "Replaced Monaco diff editor with Pierre/diffs." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.1.2", + "date": "2025-12-13", + "title": null, + "intro": null, + "app": { + "new": [ + "Added feedback messages for \"Restart API Connection\" command." + ], + "improvements": [ + "Moved VS Code extension to activity bar (left sidebar).", + "Removed redundant VS Code commands.", + "Enhanced UserTextPart styling." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added feedback messages for \"Restart API Connection\" command." + ], + "improvements": [ + "Moved extension to activity bar (left sidebar).", + "Removed redundant commands.", + "Enhanced UserTextPart styling." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.1.1", + "date": "2025-12-13", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Adjusted model/agent selection alignment." + ], + "fixes": [ + "Fixed user message rendering issues." + ], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.1.0", + "date": "2025-12-13", + "title": null, + "intro": null, + "app": { + "new": [ + "Added assistant answer fork flow.", + "Added OpenChamber VS Code extension with editor integration: file picker, click-to-open in tool parts.", + "Added git polling backoff optimization." + ], + "improvements": [ + "Improved scroll performance with force flag and RAF placeholder." + ], + "fixes": [], + "misc": [] + }, + "vscode": { + "new": [ + "Added assistant answer fork flow to start new sessions with inherited context.", + "Initial VS Code extension release with editor integration: file picker, click-to-open in tool parts." + ], + "improvements": [ + "Improved scroll performance." + ], + "fixes": [], + "misc": [] + } + }, + { + "version": "1.0.9", + "date": "2025-12-08", + "title": null, + "intro": null, + "app": { + "new": [ + "Added directory picker on first launch to reduce macOS permission prompts.", + "Show changelog in update dialog from current to new version.", + "Added macOS folder access usage descriptions." + ], + "improvements": [ + "Improved update dialog UI with inline version display." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.8", + "date": "2025-12-08", + "title": null, + "intro": null, + "app": { + "new": [ + "Added fallback detection for OpenCode CLI in `~/.opencode/bin`.", + "Added window focus after app restart/update." + ], + "improvements": [ + "Adapted traffic lights position and corner radius for older macOS versions." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.7", + "date": "2025-12-08", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Optimized OpenCode binary detection.", + "Adjusted app update experience." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.6", + "date": "2025-12-08", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Enhanced shell environment detection." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.5", + "date": "2025-12-07", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Disabled devtools and page refresh in production builds." + ], + "fixes": [ + "Fixed \"Load older messages\" incorrectly scrolling to bottom.", + "Fixed page refresh getting stuck on splash screen." + ], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.4", + "date": "2025-12-07", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Optimized desktop app start time." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.3", + "date": "2025-12-07", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Updated onboarding UI.", + "Updated sidebar styles." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.2", + "date": "2025-12-07", + "title": null, + "intro": null, + "app": { + "new": [], + "improvements": [ + "Updated macOS window design." + ], + "fixes": [], + "misc": [] + }, + "vscode": null + }, + { + "version": "1.0.1", + "date": "2025-12-07", + "title": null, + "intro": null, + "app": { + "new": [ + "Initial public release of OpenChamber web and desktop packages in a unified monorepo.", + "Added GitHub Actions release pipeline with macOS signing/notarization, npm publish, and release asset uploads.", + "Introduced OpenCode agent chat experience with section-based navigation, theming, and session persistence." + ], + "improvements": [], + "fixes": [], + "misc": [] + }, + "vscode": null + } +] diff --git a/changelog/unreleased.md b/changelog/unreleased.md new file mode 100644 index 00000000..cebafbe9 --- /dev/null +++ b/changelog/unreleased.md @@ -0,0 +1,25 @@ +## App + +### New +- **VS Code: comments on code.** Select lines, click the `+` in the gutter or right-click → OpenChamber → Add Comment, and write your note. It stays pinned to the code and goes out with your next message as a context card. Works in diffs too (thanks to @felipegenef). +- Project actions in worktrees: a session in a worktree can use the parent project's saved actions (thanks to @mattv8). +- VS Code: the extension is available in Turkish (thanks to @fitzgpt). + +### Improvements +- **Project actions:** the running state of a saved action is reliable now. It shows as running only while the command is really running, every device sees the same state, and the sidebar shows which project has something running (thanks to @mattv8). +- Chat: Markdown tables are readable again, columns take the width their content needs (thanks to @ChangeHow). +- Mobile: with a draft typed, the collapsed composer always has a send button. While the agent is working, that button queues the message (thanks to @ChangeHow). +- Server: OpenCode config paths respect `XDG_CONFIG_HOME` (thanks to @travisdoherty). +- VS Code: a fresh install uses VS Code's language until you choose one in Settings. + +### Fixes +- **Settings/Providers:** editing a custom provider keeps all of its model settings, and VS Code saves the protocol you chose (thanks to @hehuaiyu). +- Chat: huge patches in tool cards open without freezing the page (thanks to @karimodm). +- Chat: pressing Enter to confirm text on a Japanese, Chinese, or Korean keyboard no longer sends a comment by accident (thanks to @ChangeHow). +- Chat: a queued slash command with attached context is delivered correctly, and the "Queued messages" card disappears after the last message goes out. +- Goal Mode: when a reply is cut off by the length limit, the goal continues, and Resume gives it another try (thanks to @bashrusakh). +- Sessions: subagent sessions are found in projects with more than 200 sessions (thanks to @bashrusakh). +- Server: the terminal works in the Docker image, and non-Latin text renders correctly there (thanks to @yulia-ivashko). +- CLI: on Windows, `openchamber` starts the server under Bun when Bun is installed. +- VS Code: on Windows, the status command and adding a folder to the workspace handle drive-letter case correctly (thanks to @pttydou). +- VS Code: permission auto-accept works again with the stable OpenCode (thanks to @bashrusakh). diff --git a/package.json b/package.json index bb3beccb..3410be1a 100644 --- a/package.json +++ b/package.json @@ -42,6 +42,8 @@ "test": "node scripts/run-isolated-tests.mjs scripts && bun run --cwd packages/ui test && bun run --cwd packages/vscode test && bun run --cwd packages/electron test && bun run --cwd packages/web test", "clean": "bun run --filter '*' clean", "changelog-card": "node scripts/changelog-card/generate.mjs", + "changelog:build": "node scripts/changelog/build.mjs", + "changelog:check": "node scripts/changelog/build.mjs --check", "postinstall": "node ./fix-deprecation.js && patch-package && node ./packages/electron/scripts/ensure-electron.mjs --best-effort", "dev:web": "bun run --cwd packages/web build:watch", "dev:web:server": "bun run --cwd packages/web dev:server:watch", @@ -81,7 +83,7 @@ "icons:generate": "bun run scripts/generate-icon-sprite.mjs", "themes:port:opencode": "tsx scripts/port-opencode-theme.ts", "version:bump": "node scripts/bump-version.mjs", - "release:prepare": "bun run build && bun run type-check && bun run lint", + "release:prepare": "bun run changelog:check && bun run build && bun run type-check && bun run lint", "release:test": "./scripts/test-release-build.sh", "release:test:intel": "./scripts/test-release-build.sh x86_64", "release:test:arm": "./scripts/test-release-build.sh aarch64", diff --git a/packages/vscode/CHANGELOG.md b/packages/vscode/CHANGELOG.md index 61b914bd..cee46cf5 100644 --- a/packages/vscode/CHANGELOG.md +++ b/packages/vscode/CHANGELOG.md @@ -1,73 +1,77 @@ + + ## [Unreleased] -### New - -- **Comments on code.** Select lines, click the `+` in the gutter or right-click → OpenChamber → Add Comment, and write your note. It stays pinned to the code and goes out with your next message as a context card. Works in diffs too (thanks to @felipegenef). -- The extension is available in Turkish (thanks to @fitzgpt). - -### Improvements - -- Chat: Markdown tables are readable again, columns take the width their content needs (thanks to @ChangeHow). -- OpenCode config paths respect `XDG_CONFIG_HOME`. -- A fresh install uses VS Code's language until you choose one in Settings. - -### Fixes - -- Settings/Providers: editing a custom provider keeps all of its model settings and saves the protocol you chose (thanks to @hehuaiyu). -- Chat: huge patches in tool cards open without freezing the view (thanks to @karimodm). -- Chat: pressing Enter to confirm text on a Japanese, Chinese, or Korean keyboard no longer sends a comment by accident (thanks to @ChangeHow). -- Sessions: subagent sessions are found in projects with more than 200 sessions (thanks to @bashrusakh). -- Permission auto-accept works again with the stable OpenCode (thanks to @bashrusakh). -- On Windows, the status command and adding a folder to the workspace handle drive-letter case correctly (thanks to @pttydou). - ## [1.22.1] - 2026-09-04 +### New + +- Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko). + +### Improvements + - **OpenCode Go:** the usage request the extension sends to OpenCode Go now carries the `x-opencode-session` header that OpenCode Go requires from 6 September. Chat traffic already had it, because it goes through OpenCode. - Message queue: a queued message keeps its attached context, file mentions, and skill; editing it brings them back to the composer. -- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). -- Worktrees: removing a worktree no longer freezes the interface; it runs in the background with a progress toast (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). -- Worktrees: the New Worktree dialog keeps its form when the worktree list changes while open, and a removed worktree leaves the sidebar under every project it was listed in (thanks to @yulia-ivashko). - Sessions: starting a rename selects the whole title (thanks to @yulia-ivashko). -- Settings: the theme no longer flips when switching sessions across directories, and a theme the extension cannot fully report keeps the current preference (thanks to @kydorn). - Settings: Fixel Text is available as an interface font. - Usage: exe.dev usage windows are tracked. - Settings: the Integrations page, which offered the Claude Code and Cursor plugin installs, is gone. +### Fixes + +- Thinking effort: picking Default now sticks after a send and across agent or session switches, and a reopened session restores the effort its last message used (thanks to @yulia-ivashko). +- Worktrees: removing a worktree no longer freezes the interface; it runs in the background with a progress toast (thanks to @yulia-ivashko). A worktree created from a branch behind its upstream now fetches first and branches from the remote (thanks to @jtatum). +- Settings: the theme no longer flips when switching sessions across directories, and a theme the extension cannot fully report keeps the current preference (thanks to @kydorn). + ## [1.22.0] - 2026-08-30 +### Improvements + +- Chat: a session opened from the sidebar lands at its end and stays there, instead of landing above the bottom or snapping up a moment later. + +### Fixes + - Switching sessions is now visually stable, without conversation jumps or partial rendering. - Chat: a turn that OpenCode stopped no longer ends with nothing on screen — what OpenCode reported shows under the last message, and a message an idle session has left unanswered is named as such. The status report (Ctrl/Cmd+Shift+L) now lists the last session errors and rejected sends. -- Chat: a session opened from the sidebar lands at its end and stays there, instead of landing above the bottom or snapping up a moment later. ## [1.21.1] - 2026-08-29 +### New + - **Turkish interface:** OpenChamber can now be used in Turkish (thanks to @fitzgpt). +- Composer: pasting a large block of text now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). +- Multi-Run groups can now contain more than five models (thanks to @tomzx). + +### Improvements + - `/btw` side questions: a btw session now answers the side question instead of carrying on with the parent's plan, and forks at the last completed turn so a reply that is still streaming is never inherited (thanks to @pocharlies). +- Context usage now reports the session cost including everything its subagents spent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). +- Chat: the text the model writes before asking a question is shown right away instead of staying hidden until the turn ends (thanks to @makeittech). +- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). +- GitHub Copilot usage now shows a single AI Credits window, matching Copilot's token-based quota (thanks to @jakoss). +- The extension reuses its OpenCode output channel across managed-server restarts instead of creating duplicates (thanks to @TTTPOB). + +### Fixes + - Chat scrolling: with "Follow new content while streaming" off, sending while scrolled up leaves the view where it is; a middle-button pan or Shift+Space stops auto-follow like the wheel does (thanks to @pascalandr); PageUp/PageDown in the prompt box no longer shifts the whole panel up. - Chat no longer crashes or freezes on: very large tool results, which are capped before rendering (thanks to @JSap0914); a code block with JavaScript template strings that sent the highlighter into endless backtracking (thanks to @makeittech); a diff with a truncated header (thanks to @pascalandr); and a draft or recalled message with Windows line endings, which threw "Selection points outside of document" on every visit (thanks to @yulia-ivashko). - Chat: a session no longer looks frozen after the webview reloads or is opened late — pending permission and question cards come back (thanks to @yangyaofei) — nor after dismissing the agent's questions and sending a new task (thanks to @bashrusakh). -- Context usage now reports the session cost including everything its subagents spent (thanks to @igorvelho), and undoing or redoing a parent session keeps its subagents at the same point in history (thanks to @alexandrereyes). - Chat rendering: question prompts render Markdown (thanks to @pascalandr); bare links next to CJK or full-width punctuation no longer absorb it (thanks to @gaojunran); inline code, chips, and model-picker highlights stay readable in high-contrast themes (thanks to @difagume and @bashrusakh); a completed reasoning block shows in full instead of replaying, the text-selection menu stays inside the viewport, and the sticky user-message header no longer fades over the reply (thanks to @makeittech). - Chat actions: tool cards with a file path get a quick-open button that opens the file in the editor (thanks to @robertoberto); sending without a selected model explains what is missing (thanks to @rvaldemar); `/init` stays in slash-command autocomplete after the conversation starts (thanks to @Dawnfz-Lenfeng); copying a message keeps Markdown spacing (thanks to @ChangeHow); a manually chosen model survives switching between Build and Plan (thanks to @makeittech). -- Composer: pasting a large block of text now offers to attach it as a `pasted-context-N.txt` file instead of flooding the input, with a reference left at the caret; Settings → Chat can make it always attach or always paste inline (thanks to @makeittech). -- Chat: the text the model writes before asking a question is shown right away instead of staying hidden until the turn ends (thanks to @makeittech). - Chat: when the turn-ending signal from OpenCode is lost, the working spinner now clears within about a second instead of up to ten (thanks to @makeittech). -- Composer: typing three backticks leaves the caret inside the completed code fence, empty inputs keep a visible caret, and platform autocorrect behavior is preserved (thanks to @franzudev, @TTTPOB, and @IbrahimKhan12). -- GitHub Copilot usage now shows a single AI Credits window, matching Copilot's token-based quota (thanks to @jakoss). - Updating OpenCode no longer fails with a bare "Bad Request": the extension names the release to install and shows OpenCode's own reason when an update is refused (thanks to @mdatsev and @yulia-ivashko). - "Add Project" now adds the chosen folder to the workspace instead of failing (thanks to @bashrusakh), and the extension starts in the current workspace folder instead of one restored from storage (thanks to @makeittech). -- Multi-Run groups can now contain more than five models (thanks to @tomzx). - Sidebar: pending permission and question badges are no longer covered by the hover actions (thanks to @makeittech); worktree branch search hides non-matching branches (thanks to @bashrusakh). - Settings/Providers: after saving an API key or signing in, the provider no longer shows "Credentials missing" with its models hidden until you switch away and back (thanks to @herjarsa). - Settings: number fields and selects no longer clip at large font sizes (thanks to @makeittech), and Windows skill paths are classified correctly, so disabled and duplicate skills are hidden as intended (thanks to @Ttungx). - Windows: closing VS Code now stops the managed OpenCode process instead of leaving it running (thanks to @a0000001). -- The extension reuses its OpenCode output channel across managed-server restarts instead of creating duplicates (thanks to @TTTPOB). ## [1.21.0] - 2026-08-26 +### Improvements + - **Chat context attachments:** diff and file comments, terminal selections, and linked issues/PRs now show in the conversation as compact context cards — source header, captured content behind an expander, your comment below — instead of raw text inside the message. - **Chat: comment on a reply.** Select text in a chat message and choose Comment to attach that quote with your note to the next message; the selection stays highlighted while you type. -- Chat: the view no longer stays stuck on its loading screen on slow or remote connections, including code-server behind a reverse proxy (thanks to @VinciYan). - Composer: hovering a context chip above the input opens a stacked preview of everything attached, where comments can be edited in place or items removed before sending. - Chat: @ file mentions now rank files and directories together by how well they match, so the file you typed is at the top instead of below unrelated directories. Multi-word queries match in any order, and long paths keep the folder next to the file name visible. - Search: Ctrl/Cmd+P now matches the whole file path, not just the file name — searching a folder name finds the files inside it. @@ -78,197 +82,324 @@ - Chat: OpenCode notices now share one style. - Chat: the timeline dialog now fits small windows instead of squeezing the message list to a couple of rows (thanks to @gaojunran). +### Fixes + +- Chat: the view no longer stays stuck on its loading screen on slow or remote connections, including code-server behind a reverse proxy (thanks to @VinciYan). + ## [1.20.0] - 2026-08-23 +### New + +- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. +- Providers: expanded support for custom providers. + +### Improvements + - **/btw side questions:** type `/btw` followed by your question to ask something off-topic in a temporary session forked from the current conversation. The answer streams into a panel above the composer; collapse it, keep it as a full session, or discard it without touching the chat (thanks to @jaygupta17). - **Skills catalog:** browse curated GitHub skill collections in a card-based catalog with cross-source search and direct links to each skill's repository. - Settings: the workspace selector on Providers, Agents, MCP, Commands and Skills now only changes what those pages show instead of moving the chat, session list and file tree to another workspace. -- Settings/Projects: a project can now pin a thinking level next to its model, for models that offer levels. -- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. -- Settings/Providers: the provider you select no longer jumps to a different one when the chat selection or provider data changes. - Settings/Integrations: the experimental page now only lists integrations that can be installed; unavailable and Coming soon entries were removed. -- Providers: expanded support for custom providers. - Sessions created outside OpenChamber now appear in the sidebar and Recent list without a page refresh (thanks to @tomzx). -- If OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). - Usage: Z.ai credit limits now appear alongside its other quota windows. - Chat: file paths in messages now open from the session's workspace, even if you last browsed files in another workspace (thanks to @tomzx). - Chat: app links such as `spotify://` now ask for confirmation before opening another app. You can trust an app link type on one device and manage trusted links in Settings. - While a reply streams, the model status line under the last message now turns into the finished message's info row in place, instead of jumping when the reply completes. -- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. - Chat: long user messages can be expanded even when their final layout finishes after they first appear. - UI: the default dialog close button is easier to click or tap (thanks to @rockinrimmer). +### Fixes + +- Settings/General: changing the default model, variant or agent no longer repoints an open chat that already carries a model you picked for it. Chats following the default still switch immediately. +- Settings/Providers: the provider you select no longer jumps to a different one when the chat selection or provider data changes. +- If OpenCode restarts while a response is still running, the chat now stops with an interrupted state and a notification to continue instead of hanging silently (thanks to @sum117). +- Chat: newly sent messages and syntax-highlighted code blocks no longer briefly flicker. Bash output can also grow with its content instead of being cut off. + ## [1.19.0] - 2026-08-19 +### New + - **Settings/Integrations:** a new Integrations settings page lists Claude Code, Command Code, and Cursor plugins with install, update, setup, and remove actions, plus Discord and Telegram Coming soon placeholders. + +### Improvements + +- Usage: Command Code plan limits now appear in the Usage page and work status panel. +- Usage: the context usage readout in the chat header now also shows the session's cost in its tooltip (thanks to @YunFeng0817). +- Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context. +- Skills Catalog: the source is now named ClawHub instead of "ClawdHub" (thanks to @makeittech). + +### Fixes + - **Chat:** an open conversation no longer keeps re-coloring the same code blocks in the background, preventing high CPU use while the chat is idle (thanks to @makeittech). - Settings: OpenChamber no longer replaces a full OpenCode config with an empty `$schema`-only stub when the file uses JSON5-style unquoted keys; Settings changes now fail instead of wiping plugins, MCP servers, and providers (thanks to @makeittech). -- Usage: Command Code plan limits now appear in the Usage page and work status panel. - Chat: new chats no longer start against a deleted last worktree directory; they fall back to the active project instead of saving the first message and never starting. - Chat: typing with Chinese, Japanese, or Korean input methods no longer interrupts composition or jumps the cursor to the end of the composer (thanks to @makeittech). - The context usage readout no longer climbs over 100% after turns with many tool calls and no longer jumps when reopening an older session; it now shows what the window actually holds (thanks to @pocharlies). -- Usage: the context usage readout in the chat header now also shows the session's cost in its tooltip (thanks to @YunFeng0817). -- Attachments: extracted Office and OpenDocument content is now capped and presented more compactly, preventing large documents and their images from overwhelming the message context. - Projects: project names now match the folder name exactly, so `.ssh` and `opencode-claude` are no longer shown as `.Ssh` and `Opencode Claude`; names you renamed yourself are kept. -- Skills Catalog: the source is now named ClawHub instead of "ClawdHub" (thanks to @makeittech). - Add Project now adds the chosen folder to the workspace instead of showing a "Failed to add project" toast. - The model selection menu no longer shows white text on a white highlight when a high-contrast theme is active, so the hovered or selected model stays legible (thanks to @bashrusakh). ## [1.18.4] - 2026-08-14 +### New + - **Chat:** new messages now remain at the end of the conversation instead of jumping before older messages after the message ID sequence rolls over; history loading, revert, and redo follow the same chronological order. ## [1.18.3] - 2026-08-14 -- Chat images: completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images across multi-root workspaces (thanks to @ChangeHow). +### New + - Sessions: switching projects now selects a session owned by the new workspace, and a message already being prepared stays with the session where it was submitted instead of being rerouted by a later project switch (thanks to @makeittech). +- Chat: the Focus Chat command and Add to Context action now place the cursor in the chat input so typing can continue immediately. + +### Improvements + +- Chat images: completed assistant replies now collect Markdown images into a compact gallery with thumbnails and full-screen previews, including workspace-local images across multi-root workspaces (thanks to @ChangeHow). - Usage: quota limits enabled for display now refresh every three minutes, with a manual refresh action available at any time. - Usage: OpenCode Go quota tracking now uses the existing OpenCode API key instead of requiring separate browser cookies and a workspace ID. -- Chat: the Focus Chat command and Add to Context action now place the cursor in the chat input so typing can continue immediately. + +### Fixes + - Chat: typing `!` to enter shell mode no longer inserts the trigger into the command or moves the caret to the wrong side of it (thanks to @RyderAsKing). - Chat: line numbers with three or more digits no longer wrap in code blocks (thanks to @ChangeHow). ## [1.18.2] - 2026-08-10 -- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). -- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different runtime (thanks to @Wsyjq). -- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). -- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). -- Chat: fresh messages no longer replay their entry animation after they have already been shown (thanks to @makeittech). -- Chat: the composer caret is now easier to see. -- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. +### New + - Usage: added xAI quota reporting (thanks to @iamhenry). + +### Improvements + +- Chat: messages submitted before switching sessions stay with the session and workspace they were sent from, and are cancelled rather than crossing into a different runtime (thanks to @Wsyjq). +- Chat: shell command output is expanded by default, and adding a message to context returns focus to the composer (thanks to @pascalandr, @makeittech). +- Chat: the composer caret is now easier to see. - Attachments: removing an attached Office or OpenDocument file also removes the images extracted from that document (thanks to @chiamsun). - Notebooks: notebook links now open in the notebook editor when a compatible extension is installed (thanks to @TTTPOB). -- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). - Security: updated archive extraction to address GHSA-xcpc-8h2w-3j85 (thanks to @mel0nyrame). - UI: dialogs, dropdowns, popovers, and tooltips now use consistent glass styling. +### Fixes + +- **Settings:** OpenCode configuration changes now accumulate behind a single Apply & Restart action instead of restarting OpenCode after every edit; the confirmation warns when active chats will be stopped (thanks to @makeittech). +- Chat: queued messages no longer send into a response that is still streaming, and tool cards left running by an interrupted response settle instead of remaining stuck (thanks to @makeittech). +- Chat: fresh messages no longer replay their entry animation after they have already been shown (thanks to @makeittech). +- MCP: authorization now handles browser callbacks more reliably, settings distinguish available and unavailable servers more clearly, and failed connections expose a retry action. +- Settings: rapid edits to notification templates no longer overwrite one another, and the collapsed-user-message preference now persists correctly (thanks to @AmanTahiliani, @pascalandr). + ## [1.18.1] - 2026-08-04 +### New + +- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected. + +### Improvements + - **Providers:** signing in to an OAuth-only provider (such as Cursor) now completes in the browser — the login is stored and the provider updates instead of remaining signed out. OAuth-only providers show a Connect flow instead of an API key form, and their models stay hidden until you are signed in. -- **Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar (thanks to @makeittech). - Providers: sign-ins that need extra details (such as GitHub Copilot Enterprise) now ask for them before opening the browser, and device codes come with a working copy button. - Chat: a manually chosen model now stays selected after a delegated subtask finishes, instead of reverting to the agent's default model. -- Chat: Ctrl/Cmd+L now adds the selected text to the chat input, or focuses it when nothing is selected. + +### Fixes + +- **Sessions:** archived sessions can now be restored to the active list — from the sidebar context menu, the archived-sessions page, or the bulk-selection bar (thanks to @makeittech). ## [1.18.0] - 2026-08-04 +### New + - **Providers:** custom OpenAI-compatible providers can now be added and edited from Settings, including their endpoint, models, credentials, headers, and configuration scope (thanks to @makeittech). - UI/Localization: added German interface translations (thanks to @SGD-DEV). +- Usage: added DeepSeek quota tracking (thanks to @airtaxi). + +### Improvements + - Chat/Tools: Bash output now applies terminal control characters and strips ANSI formatting, preventing progress output and rewritten lines from appearing as raw escape sequences (thanks to @catan271). -- Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update. - Settings/Skills: repository-local `.agents/skills` now appear for the active workspace (thanks to @makeittech). - Settings/Skills: renaming a skill now preserves its instructions and supporting files; only skills in locations OpenChamber can safely rename show the action (thanks to @makeittech). -- Usage: added DeepSeek quota tracking (thanks to @airtaxi). - Usage: Kimi for Coding now calculates usage correctly when the provider reports either used or remaining quota (thanks to @makeittech). - Chat: clicking an apply_patch tool result now opens each changed file at its correct path instead of always opening the first file (thanks to @nabsiddiqui). +- Sessions: archiving and unarchiving now stays scoped to the current workspace. + +### Fixes + +- Chat: queued messages now retry after a temporary send failure or an interrupted turn instead of remaining stuck until another session update. - Chat: assistant messages no longer render active HTML. - Sidebar: a worktree shared by more than one project no longer appears twice. - Sidebar: session titles no longer clip at the ends of their rows. -- Sessions: archiving and unarchiving now stays scoped to the current workspace. ## [1.17.2] - 2026-08-01 +### Improvements + - Per-session permission auto-accept now replies to live permission requests correctly when auto-accept is turned on. -- Chat: messages arriving at the start of the SSE stream no longer drop silently after initial connection. - Sessions with active agents now show a live activity indicator even when the sidebar is collapsed (thanks to @pascalandr). - Usage: all Z.ai usage windows now appear in the usage view. - Chat: tool descriptions now show the glob pattern when a tool's input uses one. - Chat: clicking in the padding area of the composer now correctly places the cursor (thanks to @IbrahimKhan12). + +### Fixes + +- Chat: messages arriving at the start of the SSE stream no longer drop silently after initial connection. - Chat: the `/` command menu no longer lists a skill twice when a command shares its name (thanks to @IbrahimKhan12). ## [1.17.1] - 2026-07-29 -- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. +### New + - **OpenCode updates:** the extension can now update a managed OpenCode installation and restart it automatically; externally managed servers are left unchanged (thanks to @yulia-ivashko). + +### Improvements + +- Chat: slash-command starters now include text already entered in the draft as command arguments. +- Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny). + +### Fixes + +- **Chat tools:** Bash tool cards now show output before a command finishes, keep it in a fixed-height pane, and follow new lines until you scroll away. Long-running commands no longer remain at a 300-second duration, and their timers continue until they finish. - Chat: a stalled response now reconnects instead of remaining stuck in the extension. - Chat: fully loaded histories no longer show "Load older" again after a refresh. - Chat: messages removed by reverting no longer reappear after you send another message. -- Chat: slash-command starters now include text already entered in the draft as command arguments. - Settings: subpanels keep a visible vertical scrollbar and no longer show a horizontal scrollbar (thanks to @sergiofspedro). -- Usage: OpenAI business-account Codex usage now shows the configured spend limit (thanks to @jrandiny). ## [1.17.0] - 2026-07-28 -- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. +### New + +- Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow). +- Settings: added an option to hide starter suggestions on the new-session screen. + +### Improvements + - **Chat composer:** prompts now render Markdown emphasis, attention lines, file and agent mentions, slash commands, snippets, attachment citations, and `~path` references directly while you type. File mentions can be edited in place. - Sessions: the sidebar now uses clearer project zones and single-line session rows, with folders shown after ungrouped sessions and archived sessions kept in their existing workspace sections. -- Sessions: fixed missing activity-based sorting; chats now move in the list when they start or finish instead of repeatedly reordering while a response streams. -- Chat: selecting text from Markdown code blocks now preserves the code fences, language, and surrounding block structure when adding it to the composer or starting a new session (thanks to @ChangeHow). -- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). - Chat/Permissions: sending a message while a permission prompt is open now denies pending requests in the session and its subagents, then queues the message for the next turn (thanks to @tomzx). - Chat/Subagents: subagent chats can be prompted when direct subagent prompting is enabled, even if the parent session has not loaded. - Chat: jumping to messages in long conversations now lands on the intended message when earlier rows have not been rendered yet. -- Settings: added an option to hide starter suggestions on the new-session screen. + +### Fixes + +- **Context panel:** a new surface rail brings Changes, pull requests, files, terminal, notes, plans, previews, and side chats into one resizable panel. The pull-request surface now shows live checks and comments, and can attach failed checks or comments to a chat draft. +- Sessions: fixed missing activity-based sorting; chats now move in the list when they start or finish instead of repeatedly reordering while a response streams. +- Chat: code blocks no longer shift line layout or merge adjacent text while rendering, and copied code keeps its original text (thanks to @ChangeHow). - Shortcuts: fixed a regression where double-Escape could be primed when the current session was not active. - Usage: added Crof and NeuralWatt quota tracking, including the missing Crof switch arm that previously fell back to "Unsupported provider" (thanks to @kydorn). ## [1.16.3] - 2026-07-22 +### New + - **Chat attachments:** added Office and OpenDocument files (`.docx`, `.pptx`, `.xlsx`, `.odt`, `.odp`, and `.ods`), with readable text and supported embedded images extracted before sending. Attachments also support more source-code formats, notebooks, HAR files with credentials and cookies removed, SVG and Draw.io files, and HEIC/HEIF images; the composer warns when the selected model may ignore an attachment type. + +### Improvements + +- Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks). +- Sessions: workspace groups now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged. + +### Fixes + - **Performance:** opening and switching sessions now prioritizes the selected and visible chats in large workspaces. Failed refreshes keep the existing session list, parent sessions no longer disappear when their sub-sessions load first, and session data no longer crosses between workspaces or extension views. - Chat: assistant turns now show model, agent, thinking level, duration, and time together in the footer, and replies separated by hidden system or subagent prompts display as one continuous turn. The working indicator shows the model actually producing the active response, streaming at the bottom no longer jitters, and new user messages finish their entry animation instead of snapping into place. -- Chat/Tools: attachments returned by plugin and custom tools remain visible after streaming and refreshes, with the same image previews and file chips as chat attachments (thanks to @FrostiDrinks). - Cursor: opening a chat no longer crashes when the editor webview does not expose its usual messaging APIs, and disposed editor tabs no longer receive late streaming messages (thanks to @makeittech). - Startup: the active workspace is now detected before startup state is restored, preventing projects outside the editor workspace from replacing it. - Agent Manager: worktree creation now recovers when an earlier Git operation left the repository locked, and removing a worktree while setup is still running no longer brings it back. -- Sessions: workspace groups now default to manual ordering instead of recent-activity order; explicit sorting choices remain unchanged. ## [1.16.2] - 2026-07-18 +### New + +- Sessions: new drafts and sessions now stay with the workspace selected in the sidebar, including multi-root and nested workspace setups (thanks to @bashrusakh). + +### Improvements + - **Settings:** pages now use a consistent responsive layout, navigation is grouped by area, and save failures are shown in the page header. Agent tool permissions now distinguish inherited and explicit rules and show session-granted rules separately (thanks to @makeittech). - Permissions: per-session auto-accept works again, persists across extension restarts, and applies to subagent sessions while an OpenChamber view is open. -- Sessions: new drafts and sessions now stay with the workspace selected in the sidebar, including multi-root and nested workspace setups (thanks to @bashrusakh). + +### Fixes + - Chat: if creating a session fails, the new-session draft stays open and restores the submitted prompt instead of discarding it. ## [1.16.1] - 2026-07-14 -- **Performance:** large workspace session lists no longer regroup every session while chats stream. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. +### Improvements + - Chat: shell-mode command cards now update their status and output while the command runs, with syntax highlighting for the command and output. - Chat: task (subagents) now track the correct subagent when several run at once, preventing one subagent's activity or "Open subtask" action from pointing to another session. +### Fixes + +- **Performance:** large workspace session lists no longer regroup every session while chats stream. Opening a long chat after an empty or aborted agent turn also no longer repeatedly loads larger portions of its history. + ## [1.16.0] - 2026-07-13 +### New + +- Settings: a new editor font size setting for the code editor (thanks to @bashrusakh). +- Usage: OpenCode Go usage tracking was added. + +### Improvements + - Chat: sessions with an active [goal](https://docs.openchamber.dev/session-goals/) (started from the web or desktop app) show the goal strip with its live status above the composer. - Chat: code blocks highlight correctly again — the webview's security policy was blocking the syntax highlighter (thanks to @bashrusakh). - Chat: queued messages now send when the session is already idle instead of waiting forever (thanks to @bashrusakh). +- Sessions: pinned sessions survive refreshes (thanks to @bashrusakh). +- Notifications: subagent completion notifications now follow the same settings as the main app. + +### Fixes + - Chat: pending agent questions stay answerable after a restart, and session renames no longer flicker back to the old title (thanks to @bashrusakh). - Chat: tool output rendering no longer breaks on tools that return non-text results (thanks to @bashrusakh). -- Settings: a new editor font size setting for the code editor (thanks to @bashrusakh). -- Sessions: pinned sessions survive refreshes (thanks to @bashrusakh). - Agents: saving agent settings from the UI no longer drops custom YAML frontmatter fields (thanks to @bashrusakh). -- Notifications: subagent completion notifications now follow the same settings as the main app. -- Usage: OpenCode Go usage tracking was added. - Windows: paths no longer mismatch on drive letter casing, which could split one project into duplicates (thanks to @bashrusakh). ## [1.15.0] - 2026-07-10 +### New + +- Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting controls long-line wrapping. +- Editor Integration: the "Add to Context" command and active-editor pin-selection now use workspace-relative filenames so the model reads the correct file when names collide (thanks to @Catan). + +### Improvements + - Chat/Tools: every tool call now expands to show its input, result, and errors, including MCP, plugin, and custom tools; Read and Skill stay compact links to their files. JSON results now offer navigable summary, tree, and raw views. +- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). + +### Fixes + - Chat/Tools: expanded file-edit and patch results include per-file buttons to open the diff or jump to the first changed line in the editor. - Chat/Thinking: reasoning parts stay separate and in chronological order instead of merging into one block, and collapsed previews no longer show empty trailing HTML comments. -- Chat: Mermaid diagrams now have zoom controls (thanks to @c-w-xiaohei). -- Chat: code blocks can show line numbers that stay aligned while streaming, and a new Wrap Code Block Lines setting controls long-line wrapping. - Chat: with Sticky User Header enabled, user messages no longer float over earlier messages in long conversations. - Chat: if sending a message times out or loses the connection after OpenCode accepted it, the extension now keeps the sent message instead of rolling it back as failed. -- Editor Integration: the "Add to Context" command and active-editor pin-selection now use workspace-relative filenames so the model reads the correct file when names collide (thanks to @Catan). ## [1.14.1] - 2026-07-07 +### New + - Chat: the timeline dialog can now load older messages when the current session history has not all been fetched yet. + +### Improvements + - Chat: file references with line ranges like `src/file.ts:10-20` are now clickable in messages (thanks to @Catan). - Chat: favorite models now stay saved after restarting the extension (thanks to @Catan). - Settings: closing Settings returns to the previous extension view instead of always showing the sessions list (thanks to @Catan). ## [1.14.0] - 2026-07-05 +### Improvements + - Chat: loading older messages keeps your scroll position steady. -- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. - Startup: on Windows, OpenCode installed via npm now launches from paths with spaces (such as C:\Program Files\nodejs), a binary path pasted with surrounding quotes into the Opencode Binary setting works, and discovery also checks the system-wide npm prefix and Scoop's shims. +### Fixes + +- Chat: the stop button now aborts sessions running in a different project or worktree than the currently open one — previously those aborts silently did nothing. + ## [1.13.9] - 2026-07-02 +### Improvements + - Agents: clearing optional agent fields now removes them from agent config instead of saving `null` values. + +### Fixes + - Startup: the extension no longer picks OpenCode desktop app installs when looking for the standalone OpenCode CLI. - Chat: fixed edge cases where late-loading tool content, subagent content, or streaming Thinking blocks could pull the conversation away from the latest message or fight manual scrolling. - Chat: embedded JSON examples in messages no longer render as generated-result cards. @@ -276,150 +407,246 @@ ## [1.13.8] - 2026-06-29 +### New + - Chat: a new Follow-up behavior setting controls what happens when you press Enter on a message while the agent is still responding — Steer inserts it into the agent's current turn, or Queue holds it until the turn finishes. Replaces the previous queue-mode toggle (thanks to @bashrusakh). + +### Fixes + - Sync: a connected but quiet session (for example an agent running a long tool call) no longer triggers repeated background refreshes every ~15 seconds (thanks to @tomzx). ## [1.13.7] - 2026-06-28 -- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. +### New + - Providers: the Add provider form stays open while provider data refreshes or a model is picked in the background, instead of snapping back to an existing provider. +### Fixes + +- Chat: with tool calls (such as Bash and Edit) shown expanded by default, scrolling no longer twitches, and slow scrolling no longer jumps past several messages. + ## [1.13.6] - 2026-06-28 +### Improvements + - Chat: scrolling in conversations now stays steady while sending, queueing, streaming, switching sessions, and loading older messages. ## [1.13.5] - 2026-06-27 +### Improvements + - No notable changes. ## [1.13.4] - 2026-06-27 +### New + - UI/Localization: added Japanese interface translations (thanks to @yuchi0531). - Chat: queued messages can now be reordered by dragging them in the queue (thanks to @makeittech). + +### Improvements + +- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). + +### Fixes + - Chat: sending a message now closes an open question prompt instead of leaving stale question UI in the composer (thanks to @tomzx). - Chat: conversations pinned to the bottom no longer jiggle or double-scroll after sending, and revisiting older sessions snaps to the latest message without a smooth-scroll delay. -- Models: the model picker now remembers provider group expansion and custom ordering, and Shift+Delete removes a recent model from recents (thanks to @makeittech). - Agents: agent edits against an external OpenCode server no longer show a saved-state update when the save did not succeed (thanks to @makeittech). - Providers: the add-provider form no longer loses the selected provider during background provider refreshes (thanks to @IbrahimKhan12). ## [1.13.3] - 2026-06-24 +### Improvements + - Chat: selecting a user-installed skill from the slash command menu now invokes the skill instead of inserting the skill name as plain text (thanks to @IbrahimKhan12). -- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). - Chat: code blocks in user messages now preserve characters like `<` and `->` instead of escaping them inside the code block (thanks to @bashrusakh). -- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). - Chat: Arrow Up opens prompt history again when the cursor is at the start of the composer. -- Sessions: new sessions now stay attached to the selected workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). -- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). - Agents: agent settings now include thinking variant, temperature, and top-p controls, and clearing temperature or top-p now removes the override (thanks to @bashrusakh). - Settings/Models: per-model visibility and sibling model selections now stay saved after changes (thanks to @attilaszasz). - Settings: font size and padding preferences now apply inside the extension webview (thanks to @Sin991114). - Settings/Skills: the skills catalog refreshes after catalog settings change (thanks to @gokulkgm). - Usage: MiniMax M3 and Token Plan usage now handle the provider's latest API response format (thanks to @baruchvitorino). + +### Fixes + +- Chat: pasted text containing `@` no longer opens file mention autocomplete unexpectedly (thanks to @charpeni). +- Chat: switching sessions and loading older messages no longer causes the conversation to jump backward or oscillate around the current scroll position (thanks to @herjarsa). +- Sessions: new sessions now stay attached to the selected workspace directory instead of sometimes appearing under a stale project (thanks to @bashrusakh). +- Sessions: pinned sessions and folder rows no longer disappear from the sidebar after an empty session-list refresh (thanks to @bashrusakh). - Startup: managed OpenCode server processes left behind by a previous extension crash are cleaned up on the next start. ## [1.13.2] - 2026-06-18 +### Improvements + - Chat/Performance: long conversations and large session lists now stay smooth and responsive while a response is streaming (thanks to @bashrusakh). -- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). - Chat: paragraphs in assistant messages now have proper spacing instead of collapsing into a single block (thanks to @foundryseven). + +### Fixes + +- Chat: the end of a streamed response is no longer occasionally cut off — messages now always settle on their complete text (thanks to @IbrahimKhan12). - Startup: the extension starts faster by no longer waiting on default OpenCode config, while your manual and per-directory model selections are preserved. ## [1.13.1] - 2026-06-17 -- Startup: providers and agents now load faster at startup. +### New + - Chat: pinned welcome starters now appear immediately when a new draft session opens. -- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions. + +### Improvements + +- Startup: providers and agents now load faster at startup. - Chat: code-block highlighting now runs off the main thread, keeping the UI responsive during code-heavy responses. - Chat: the context usage indicator now shows as a circular progress ring. + +### Fixes + +- Chat: inline math delimiters no longer incorrectly treat currency amounts like `$50` as LaTeX math expressions. - Agents: deleting a built-in agent no longer creates a disable override — the agent stays as-is instead of being silently disabled. - Agents: deleting an agent now shows an error toast when the definition is missing. ## [1.13.0] - 2026-06-15 -- Startup: the extension opens faster — recent sessions, models, providers, and projects appear instantly from cache and refresh in the background, and the loading screen no longer lingers after the interface is ready. -- Startup: requests made while OpenCode is still starting now wait briefly for it to become ready instead of failing, and if OpenCode fails to start the error now includes what it reported. -- Sessions: the list now groups sessions under their workspace, so pinning sessions and moving them into folders work as expected. +### New + - Sessions: session rows now use a cleaner single-line layout, and a new control next to "archive all" toggles archived sessions on or off. + +### Improvements + +- Sessions: the list now groups sessions under their workspace, so pinning sessions and moving them into folders work as expected. - Chat: custom-answer question textareas resize more steadily while typing (thanks to @bigcoder84). - Chat/Performance: long conversations now use virtualized rendering to keep large histories responsive. -- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). - Chat/Input: Arrow Up moves the cursor inside multi-line drafts again instead of always opening prompt history. - Sessions: session menus now include a delete action (thanks to @ShogunPanda). -- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). -- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). - Settings/MCP: importing MCP snippets from OpenCode config works again (thanks to @youzini). +### Fixes + +- Startup: the extension opens faster — recent sessions, models, providers, and projects appear instantly from cache and refresh in the background, and the loading screen no longer lingers after the interface is ready. +- Startup: requests made while OpenCode is still starting now wait briefly for it to become ready instead of failing, and if OpenCode fails to start the error now includes what it reported. +- Chat/Input: tab-completing a mention no longer changes the selected agent (thanks to @Quat3rnion). +- Sessions: deleting a parent session no longer brings deleted child sessions back into the sidebar (thanks to @panzeyu2013). +- Sessions: switching sessions no longer leaves the chat area blank in some cases (thanks to @panzeyu2013). + ## [1.12.4] - 2026-06-11 +### New + +- Sessions: added an action to archive all sessions (thanks to @jjdubski). +- Workspaces: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko). +- Settings: added search across settings pages. +- Chat/UI: added a setting to collapse long user messages. +- Usage: added Cursor quota tracking. +- UI/Localization: added French extension translations (thanks to @pascalandr). + +### Improvements + - Agent Manager: creating isolated runs now opens sessions immediately while worktree setup continues in the background. - Agent Manager: hidden models now stay hidden in multi-model selection controls (thanks to @kjhq). - Sessions: chat folder assignments now stay in place after reloads. -- Sessions: added an action to archive all sessions (thanks to @jjdubski). - Sessions: session and folder rows now have right-click menus for their available actions. -- Workspaces: added multi-root workspace support, including workspace folder switching in the extension (thanks to @mmospanenko). -- Settings: added search across settings pages. -- Chat/UI: added a setting to collapse long user messages. - Chat: table copy actions now include a Markdown format option (thanks to @kjhq). - Chat: `@agent` mentions in rendered messages now use the primary accent color. -- Usage: added Cursor quota tracking. -- UI/Localization: added French extension translations (thanks to @pascalandr). ## [1.12.3] - 2026-06-05 +### Improvements + - Startup: OpenCode health checks now work with OpenCode 1.15.x. ## [1.12.2] - 2026-06-05 +### Improvements + - Startup/Windows: the extension now detects more OpenCode installs from PATH, npm, Scoop, and Chocolatey. - Chat: prompts sent while creating or switching target sessions now stay attached to the intended workspace directory. - Files: chat and tool links now handle Windows drive-letter and backslash paths. ## [1.12.1] - 2026-06-03 +### New + - Chat: completed turns can now show changed-file chips with per-file additions and deletions, controlled by a new Chat setting. +- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group. + +### Improvements + - Chat: LSP tool calls now show the operation, file, and cursor position more clearly, and JSON tool output can be toggled between formatted and raw views or copied. - Chat: streaming messages now appear correctly after startup, and activity/status rows show for the active session. -- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. -- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. -- Chat: the first prompt in a new session no longer gets stuck before sending. - Sessions: session titles update from live session events, and the extension now consistently loads all existing OpenCode sessions. -- Sessions: recent sessions now stay visible inside project groups, and new or worktree sessions stay in the correct project/worktree group. - Settings/OpenCode: OpenCode CLI path, update-notification preference, keyboard shortcuts, and protected-session settings now stay saved after changes. - UI/Time: the time-format preference now applies to chat timestamps, usage reset times, scheduled tasks, passkeys, and usage last-updated times. +### Fixes + +- Chat: completed responses no longer lose late-arriving summaries, token counts, errors, structured output, or changed-file details. +- Chat: question cards now show an error or no-longer-pending message when submit or dismiss fails instead of silently doing nothing. +- Chat: the first prompt in a new session no longer gets stuck before sending. + ## [1.12.0] - 2026-06-03 +### New + - Chat: added customizable draft welcome starters from commands and skills, including guided commands for catch-up, debugging, exploration, and approach comparison. - Chat: assistant answers now have a dialog for starting a new session from that answer. -- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. + +### Improvements + - Chat/UI: markdown-rendered user messages now preserve line breaks. - UI/Theming: chat colors now map more closely to the active editor theme, and the session UI has been refined. - Reliability/Startup: Restart API Connection now uses the same loading and reload flow as startup. +### Fixes + +- Chat/Input: queued messages no longer auto-send before the active session is ready, and thinking-variant choices are preserved for generated messages. + ## [1.11.7] - 2026-05-27 -- Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt). +### New + - Usage: added a setting to hide prediction rows on usage cards (thanks to @ermanhavuc). + +### Fixes + +- Chat/Input: selecting an agent now switches to that agent's configured model, and malformed tool diffs no longer break chat rendering (thanks to @Adrian-Eckardt). - Reliability/Streaming: restored live streaming in the extension. ## [1.11.6] - 2026-05-25 +### New + - Settings/Plugins: added a Plugins page for managing opencode plugins, with npm update checks and user/project scopes (thanks to @Quat3rnion). + +### Improvements + - Perf: Git repository lookups in the extension now avoid repeating the same Git read commands during refreshes. ## [1.11.5] - 2026-05-25 +### New + +- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Improvements + - Chat/Input: pending image attachments now show previews, sent image attachments can be cited from assistant messages, and markdown source mode highlights formatting while you type. - Chat: queued messages now send to the session they were queued from, even if you switch sessions before they are sent. -- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. - Settings/Skills: installed skills are discovered more accurately, skill files opened from tool messages now load correctly, and snippet names keep their canonical casing (thanks to @jkker, @isanchez404). -- Voice: OpenAI-compatible custom speech providers can now use API keys (thanks to @yangyaofei). + +### Fixes + +- Chat/UI: chats keep following the latest response after final task summaries, activity reasoning no longer flashes before settling, and assistant timestamps stay visible on narrow layouts. ## [1.11.4] - 2026-05-22 -- Sessions: switching between chat sessions now keeps less inactive message history in the webview, especially after opening large conversations. +### New + - Sessions: opening a session now fetches a smaller initial message page, while still expanding enough to show the latest user turn when needed. + +### Improvements + +- Sessions: switching between chat sessions now keeps less inactive message history in the webview, especially after opening large conversations. - Chat: task tool results use final task summaries when available instead of repeatedly loading child-session messages. - Chat: task tool polling in the extension now uses smaller message fetches while subtasks are active or idle. - Chat: markdown file links now cap path checks in the extension, reducing stalls in messages with many inline paths. @@ -427,62 +654,100 @@ ## [1.11.3] - 2026-05-19 +### New + - Editor Integration: Add to Context now attaches the selected code as context instead of pasting a formatted block into the input. - Editor Integration: Add File to Chat now attaches selected files instead of inserting file mentions. - Editor Integration: Add to Context, Add File to Chat, Explain, and Improve Code now target the active session editor when one is open. +- Chat: slash command autocomplete now includes skills and clearer command/type badges. +- Usage: added Wafer.ai quota tracking (thanks to @bowber). + +### Improvements + - Chat: session editor tabs now update their title to match the session title. - Sessions: session rows now include an action to open a chat as editor tab. - Notifications: completion, question, and permission notifications now use the extension notification settings and shows as multi-platforn native notifications. - Chat: question cards now include copy buttons for Markdown and JSON (thanks to @robertoberto). -- Chat: slash command autocomplete now includes skills and clearer command/type badges. -- Usage: added Wafer.ai quota tracking (thanks to @bowber). ## [1.11.2] - 2026-05-18 +### New + - Chat: thinking blocks can now be collapsed, and expanding tool details feels smooth (thanks to @ermanhavuc). + +### Improvements + - Chat: reverting or forking messages now keeps file attachments in place, with clearer undo/redo controls (thanks to @youfch, @ermanhavuc). - Sessions: root project sessions now show up correctly in the session switcher (thanks to @isanchez404). - Skills: installed skills now match OpenCode's own skill list more closely. ## [1.11.1] - 2026-05-15 +### New + - Chat/Sessions: added a session switcher to the chat header. + +### Improvements + - Chat/Subagents: opened subagent sessions read-only in the context panel and made subagent chats read-only. -- Chat/UI: sorted-mode tool paths animate consistently, and tooltip crashes are guarded defensively. - Usage: quota reset times now display in your local timezone. - Skills: the skills catalog now keeps the selected source label visible when switching sources (thanks to @kjhq). +### Fixes + +- Chat/UI: sorted-mode tool paths animate consistently, and tooltip crashes are guarded defensively. + ## [1.11.0] - 2026-05-14 -- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. +### Improvements + - Chat/Input: queued messages now auto-send one at a time in FIFO order, and model/agent selections persist across reloads (thanks to @lyxxx708, @chutastic). - Chat/Performance: virtualized more timeline content, deferred heavy tool output, and improved scroll-to-bottom behavior. - Editor Integration: chat commands now wait for the sidebar webview before sending selections, file mentions, explain prompts, or improve prompts. -- Editor Integration: active-editor context updates now ignore stale broadcasts. - Reliability/Streaming: extension SSE reconnect delays now abort cleanly and disposed chat webviews clean up their live streams. - Agent Manager: settings changes now sync into Agent Manager views immediately. - Sessions: archived-session bulk delete now works reliably from the extension sidebar (thanks to @jjdubski). + +### Fixes + +- Chat/Permissions: restored `@agent` mentions in sent messages and parent-session auto-accept for child-session permissions. +- Editor Integration: active-editor context updates now ignore stale broadcasts. - UI/Reliability: added smaller fixes for chunk-load recovery, locale retry behavior, stale attachment reads, and accessible session controls (thanks to @isanchez404). ## [1.10.4] - 2026-05-09 -- Chat/Input: model, variant, and agent labels collapse better on narrow widths. +### New + - Git/Worktrees: pull-request worktrees can now reuse an existing local branch when it matches the PR head. -- Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404). + +### Improvements + +- Chat/Input: model, variant, and agent labels collapse better on narrow widths. - Reliability/Sync: preserved message part update ordering (thanks to @isanchez404). +### Fixes + +- Git: deduplicated lightweight and full status refreshes separately, preventing stale or mismatched Git updates during background polling (thanks to @isanchez404). + ## [1.10.3] - 2026-05-08 +### Improvements + - Chat/Scrolling: rebuilt auto-follow behavior for active responses. -- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. - Chat/UI: tightened scroll-to-bottom behavior and code-block scrolling handoff. +- Skills/Reliability: ignored outdated skills catalog and repo scans. + +### Fixes + +- Chat/Scrolling: saved scroll positions restore consistently after session switches, hydration, and draft-to-session transitions. - Chat/Input: fixed attachment-only queued sends, stale attachment restores, stale file-search results, autocomplete tab handling, and focusable removal controls (thanks to @isanchez404). - Reliability/Sync: reduced stale and duplicate live-state updates across request arrays, retry metadata, streaming indicators, and session status events, cutting unnecessary rerenders and stuck activity states during long-running chats (thanks to @isanchez404). -- Skills/Reliability: ignored outdated skills catalog and repo scans. - Chat/Reliability: added smaller polish fixes for text-selection cleanup (thanks to @isanchez404). ## [1.10.2] - 2026-05-07 +### Improvements + - Chat/Reliability: stabilized live turn rendering and session sync caches. - Terminal: improved Android tablet keyboard handling, including control-key shortcuts, and kept app shortcuts from stealing focus while typing in the terminal (thanks to @Dav1dch). - Terminal: set a UTF-8 locale for terminal sessions (thanks to @liyiopener). @@ -491,106 +756,185 @@ ## [1.10.1] - 2026-05-06 +### New + - UI/Localization: added Polish interface translations, expanding language support for Polish-speaking users (thanks to @levy52). - Sessions: added a quick archive action directly on session rows (thanks to @zoubenr). - Chat/Timeline: added full-text timeline search across user, assistant, and tool messages in a session. + +### Improvements + - Chat/Reliability: pending questions now survive session switches and directory eviction. - Reliability/Sync: aligned session status parsing and reconnect reconciliation (thanks to @vhqtvn). + +### Fixes + - Startup/Reliability: configured OpenCode CLI paths are now validated before managed startup, with clearer errors for missing, non-executable, or app-bundle paths. - Performance/Reliability: reduced duplicate extension initialization, deferred heavier views, lowered managed runtime status overhead, optimized markdown file-link detection, reduced sync recovery payloads, and suppressed expected missing-directory noise. ## [1.10.0] - 2026-05-05 +### New + - Chat/UI: added the currently open editor file to chat context (thanks to @daveotero). - Settings/Behavior: added a dedicated Behavior page with global `AGENTS.md` configuration and response style presets. - Chat/UI: added a wide layout option. -- Chat/Streaming: reduced text flicker, preserved first chunks reliably, and kept long agent sessions from hanging during active responses (thanks to @pasta-paul). + +### Improvements + - Chat/Scrolling: preserved per-session scroll position and kept generated prompts scrolled into view (thanks to @jwcrystal). - Settings/UI: improved settings scrolling and empty states (thanks to @Yabuku-xD). -- Models/Providers: fixed slash-containing model IDs, refreshed model metadata after OpenCode restarts, and added safer concurrency controls for sessions sharing the same provider (thanks to @yart, @Yabuku-xD). - GitHub/MCP: improved fork-aware issue and pull-request listing, PR status handling, and remote MCP header handling (thanks to @corrm, @ricautomation). +### Fixes + +- Chat/Streaming: reduced text flicker, preserved first chunks reliably, and kept long agent sessions from hanging during active responses (thanks to @pasta-paul). +- Models/Providers: fixed slash-containing model IDs, refreshed model metadata after OpenCode restarts, and added safer concurrency controls for sessions sharing the same provider (thanks to @yart, @Yabuku-xD). + ## [1.9.10] - 2026-04-28 +### New + - UI/Localization: added Korean interface translations and default new installs back to English when no language has been chosen (thanks to @An-jinu). +- Usage: added MiniMax and Ollama quota support. + +### Improvements + - Chat/Models: unified the model picker with a cleaner selection flow (thanks to @daveotero). - Chat/UI: improved split-response action placement, error-message alignment, tab close affordances, and overscroll behavior. -- Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD). - Windows: normalized drive-letter paths in extension webviews (thanks to @sdunfeng). -- Usage: added MiniMax and Ollama quota support. - Reliability/Startup: hardened managed OpenCode startup, preserved shell PATH reliably, and improved stream/proxy recovery with heartbeat support (thanks to @An-jinu). +### Fixes + +- Sessions/Sidebar: fixed stale session, folder, project, and worktree state after mutations, and polished pinned-session indicators (thanks to @corrm, @Yabuku-xD). + ## [1.9.9] - 2026-04-26 +### New + - UI/Localization: added translated interface strings for Spanish, Brazilian Portuguese, Ukrainian, and Simplified Chinese, with language selection available in extension settings. - Settings/Appearance: added selectable interface and code fonts with 10 choices each, and reorganized appearance sections. -- Chat/Header: restored context usage in the chat header, kept it tooltip-only, and kept rate-limit usage available in expanded layouts. - Chat/Workflow: added keyboard turn navigation, widened chat content, and introduced a local workspace review slash command. + +### Improvements + - Chat/Context: autocomplete and mention results are now easier to scan, with fuller results and clearer active-tab behavior while drafting. - Chat/Tasks: todo list progress now updates live as task status changes, and task/model status hints are steady during active runs (thanks to @Yabuku-xD). - Chat/Performance: improved cold start and streaming smoothness with lazy-loaded heavy components, chunk-load recovery, and lower re-render churn in long sessions (thanks to @Yabuku-xD). - Reliability/Sync: improved reconnect recovery (thanks to @jwcrystal, @vhqtvn). + +### Fixes + +- Chat/Header: restored context usage in the chat header, kept it tooltip-only, and kept rate-limit usage available in expanded layouts. - Reliability/Startup: improved managed runtime startup by preserving user PATH and skipping stale session directories. ## [1.9.8] - 2026-04-22 -- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). +### New + +- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. + +### Improvements + - Settings/Sync: settings changes now sync reliably with other clients, and sidebar session pagination is steady in larger workspaces. - Sessions/Folders: folder updates now persist through server-backed APIs. - UI: refined chat chrome with a cleaner bottom scroll fade and hidden idle tasks row. -- Chat/Commands: added `/summary` slash command for a non-destructive session summary - optional topic hint after the command focuses the output, and the prompt is customizable under Settings: Magic Prompts. + +### Fixes + +- Sessions/Reliability: fixed parent-child session sync during reconnects and navigation (thanks to @jwcrystal). ## [1.9.7] - 2026-04-22 -- Sessions/UI: added bulk selection in the sessions sidebar and fixed pinned sessions (thanks to @yart). +### New + - Chat/Files: you can now drag files and folders from the file tree into chat, with improved `@folder` autocomplete when building prompt context (thanks to @youfch). + +### Improvements + - Files: open editors now refresh file content after external changes. - Settings/MCP: improved MCP auth flow with remote config support and clearer diagnostics (thanks to @daveotero). - Chat/Questions: single-choice questions now use radio selection. - Reliability: config resolution now matches OpenCode behavior more closely. - Reliability/Streaming: strengthened bootstrap and connection recovery paths. +### Fixes + +- Sessions/UI: added bulk selection in the sessions sidebar and fixed pinned sessions (thanks to @yart). + ## [1.9.6] - 2026-04-17 -- Reliability: improved startup shell detection to avoid false OpenCode discovery on POSIX login shells. +### New + - Reliability/Streaming: moved to a WebSocket-first message stream with SSE fallback and added safer compression handling. -- Sessions/Worktrees: enforced worktree isolation for session and Git flows. - Chat/Export: added export session as Markdown and improved empty-state/export behavior (thanks to @coldbrow). - Chat/Markdown: added LaTeX rendering support for clearer math and technical notation in rendered messages (thanks to @ricautomation). +### Improvements + +- Reliability: improved startup shell detection to avoid false OpenCode discovery on POSIX login shells. +- Sessions/Worktrees: enforced worktree isolation for session and Git flows. + ## [1.9.5] - 2026-04-14 -- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). -- Chat/Reliability: fixed question-tool content disappearing after refresh (thanks to @jwcrystal). +### New + +- Usage: added Zhipu AI Coding Plan tracking (thanks to @cainiao1992). + +### Improvements + - Sync/Performance: optimized multi-session streaming with per-directory queues, event coalescing, and parts-gap recovery for steady live updates in busy workspaces (thanks to @jwcrystal). - Task/Reliability: hardened subagent session resolution and polling lifecycle handling to reduce silent task failures (thanks to @jwcrystal). - Sessions/UI: kept active sessions visible in Recent, auto-expanded parent groups for subagent sessions, and hid empty archived/folder sections (thanks to @jwcrystal). + +### Fixes + +- Chat/Tool Output: added an interactive tree viewer for structured outputs and fixed JSON quote rendering (thanks to @yaozhenghangma). +- Chat/Reliability: fixed question-tool content disappearing after refresh (thanks to @jwcrystal). - Models: restored model-variant compatibility with newer OpenCode runtimes (thanks to @Chi-square-test). -- Usage: added Zhipu AI Coding Plan tracking (thanks to @cainiao1992). ## [1.9.4] - 2026-04-07 +### New + - Reliability/Streaming: added loading timeouts, automatic SSE reconnect, and message retry behavior (thanks to @jwcrystal). + +### Improvements + - Reliability/Windows: normalized workspace path handling in SSE event lookup to keep live session updates working consistently on Windows (thanks to @widipa). -- Sessions/Streaming: fixed directory-aware event routing and post-reconnect session resync (thanks to @daveotero, @jwcrystal). - Chat/Performance: reduced streaming re-render fanout and status-row churn for smooth long responses in the editor panel. -- Chat/Scrolling: fixed scroll jumps and stabilized follow-to-latest behavior. - Chat/Tool Output: LSP diagnostics now render directly in tool output (thanks to @yulia-ivashko). + +### Fixes + +- Sessions/Streaming: fixed directory-aware event routing and post-reconnect session resync (thanks to @daveotero, @jwcrystal). +- Chat/Scrolling: fixed scroll jumps and stabilized follow-to-latest behavior. - Models: added defensive fallbacks for missing model cost/capability metadata (thanks to @Chi-square-test). ## [1.9.3] - 2026-03-01 -- Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232). -- Sessions/Drafts: draft chat config now stays aligned with the active draft target directory. +### New + - Files/Markdown: added filesystem stat support in the extension bridge to validate markdown targets reliably before file handling flows (thanks to @geekifan). - Chat/Models: added arrow-key navigation for thinking-mode selection in model controls (thanks to @daveotero). -- Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong). - Chat/JSON: added an interactive JSON tree viewer with collapse/expand controls and richer color cues for easier inspection of large structured outputs (thanks to @nguyenngothuong). + +### Improvements + +- Security/Chat: user messages now escape raw HTML by default (thanks to @kalac2232). +- Sessions/Drafts: draft chat config now stays aligned with the active draft target directory. +- Chat: improved error message readability with clearer styling and safer word-wrapping (thanks to @nguyenngothuong). - Reliability/Streaming: proxy handling now normalizes identity encoding, strips conflicting compression headers and hop-by-hop response headers, and suppresses expected upstream SSE close errors to reduce noisy disconnect failures (thanks to @jwcrystal, @Jovines, @JiwaniZakir, @shekohex). + +### Fixes + - Usage: added ZhipuAI quota tracking and fixed MiniMax coding-plan plus GitHub Copilot overusage calculations (thanks to @kalac2232, @baruchvitorino, @ebrainte). ## [1.9.2] - 2026-03-31 +### Improvements + - Chat/Performance: overhauled live sync and streaming updates to reduce re-render churn and keep long-running chats smooth in the extension. - Sessions/UI: refined sidebar behavior with cleaner spacing, better truncation/tooltips, and a resizable sessions pane for tighter workspace control. - Chat/Editor integration: improved Explorer file insertion. @@ -599,128 +943,214 @@ ## [1.9.1] - 2026-03-20 +### New + +- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). + +### Improvements + - Sessions: sidebar lists now keep sessions visible in both Recent and Project sections for easier session discovery (thanks to @nguyenngothuong). - Chat/GitHub: linked issues and pull requests now show as user-message attachments and open reliably through extension-safe external link handling. - Settings/MCP: adding MCP servers now correctly respects user scope. - Reliability: managed server startup now imports login-shell environment values and normalizes Windows paths to reduce session-loading mismatches and proxy-related connection issues. -- Usage: added MiniMax Weekly quota provider support (thanks to @nzlov). ## [1.9.0] - 2026-03-20 +### New + +- Chat/Permissions: added per-session permission auto-accept controls to reduce repetitive approval prompts in iterative workflows. + +### Improvements + - Navigation/UI: refreshed the extension shell with a redesigned sidebar, clearer hierarchy, and cleaner session grouping. -- Sessions: improved sidebar organization and interaction stability, including fixes for drag/rename edge cases during quick session management. - Chat/Performance: reduced streaming overhead and update churn for smooth long responses, steady activity rendering, and fewer UI stalls in heavy sessions. - Chat: improved follow-to-latest behavior and timeline stability. -- Chat/Permissions: added per-session permission auto-accept controls to reduce repetitive approval prompts in iterative workflows. - Reliability/Windows: normalized workspace drive-letter handling and hid background process windows to reduce startup/session mismatches (thanks to @zerone0x). +### Fixes + +- Sessions: improved sidebar organization and interaction stability, including fixes for drag/rename edge cases during quick session management. + ## [1.8.7] - 2026-03-13 +### Improvements + - No notable changes. ## [1.8.6] - 2026-03-13 -- Chat: completed a turn-based render pipeline with steady streaming, smooth auto-follow, and more stable activity/tool progress behavior during long responses. +### New + - Chat/Settings: added richer render controls with sorted/live modes, compact Activity previews, and default-open Bash/Edit options. + +### Improvements + +- Chat: completed a turn-based render pipeline with steady streaming, smooth auto-follow, and more stable activity/tool progress behavior during long responses. - Reliability: switched extension event streaming to an SDK-based SSE proxy path. - Settings: chat display changes now sync across sidebar and session editor views right away. - Sessions: worktrees with active chats are now prioritized in the sidebar (thanks to @GhostFlying). - Sessions: archived-session behavior in the extension is now scoped to the active workspace with cleaner sidebar presentation. +- Diff: edit result comparisons now preserve original file extensions in virtual "before" files. + +### Fixes + - Chat: fixed modified Enter send shortcuts in narrow layouts (thanks to @eengad). - Chat: fixed queue button behavior and focus-mode composer sizing (thanks to @shekohex). -- Diff: edit result comparisons now preserve original file extensions in virtual "before" files. ## [1.8.5] - 2026-03-04 +### Improvements + - Chat/Files: edit-style tool results now open in a VS Code diff editor with focus on the first changed line. - Chat: improved focus-mode input layout. -- Settings: removed duplicate chat display options from Appearance and hid extension-irrelevant sections. - UI/Theming: aligned startup/loading branding with the active theme for a more consistent look during connection and auth states. - Reliability: improved startup recovery for provider/model/agent loading. +### Fixes + +- Settings: removed duplicate chat display options from Appearance and hid extension-irrelevant sections. + ## [1.8.4] - 2026-03-04 +### New + - Chat: added Save as image support for assistant messages. - Chat: added a new `Changes` tool-output mode that opens edit/write/patch results by default while keeping activity easier to scan. +- Chat/GitHub: added Attach menu support for linking pull requests into your draft with picker-based selection and attached PR context. +- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). + +### Improvements + - Chat Activity: active tools now appear immediately and continue updating in collapsed view (thanks to @nelsonPires5). - Chat: file references in assistant responses are now clickable (including line targets). - Chat/Files: improved `@` file mentions with active-project scoping and more consistent search behavior. -- Chat/GitHub: added Attach menu support for linking pull requests into your draft with picker-based selection and attached PR context. - Chat: simplified attachment actions with a direct Attach files flow. - Chat: improved sticky user-message behavior with bounded height and internal scrolling. -- Shortcuts/Models: added favorite-model cycling shortcuts (thanks to @iamhenry). - UI: interactive controls now consistently use pointer cursors. - ## [1.8.3] - 2026-03-02 +### New + - Chat: added user-message display options for plain-text rendering and sticky headers, with preferences persisted in settings. -- Chat: improved code block readability with cleaner header actions, restored horizontal scrolling, and themed highlighting in markdown and tool output (thanks to @nelsonPires5). + +### Improvements + - Chat: model picker provider groups are now collapsible, with expanded/collapsed state remembered. +### Fixes + +- Chat: improved code block readability with cleaner header actions, restored horizontal scrolling, and themed highlighting in markdown and tool output (thanks to @nelsonPires5). + ## [1.8.2] - 2026-03-01 +### Improvements + - Chat: improved message readability with cleaner tool/reasoning rendering and more polished markdown presentation in long responses. - Chat Activity: timing display is now less noisy, with detailed end timestamps shown on hover when you need them (thanks to @nelsonPires5). - Reliability: improved panel visibility/reconnect handling. + +### Fixes + - Reliability: fixed live-streaming edge cases for event endpoints with query/trailing-slash variants. ## [1.8.1] - 2026-02-28 +### Improvements + - No notable changes. ## [1.8.0] - 2026-02-28 -- Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex). +### New + - Chat: added drag-and-drop file attachments (thanks to @Asuta). -- Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705). -- Chat: pasted absolute paths are now treated as normal messages. -- Chat: fixed queued send behavior for inactive sessions to reduce accidental sends to the wrong conversation. -- Chat: edit tools now use improved diffs (thanks to @shekohex). -- UI: improved long filename handling in file-mention autocomplete (thanks to @haofeng0705). - Usage: added MiniMax coding-plan quota provider support (thanks to @nzlov). - Usage: added Ollama Cloud quota provider support (thanks to @iamhenry). +### Improvements + +- Chat: improved long-session performance with virtualized message rendering, smooth scrolling, and more stable behavior in large histories (thanks to @shekohex). +- Chat: enabled markdown rendering in user messages for clearer formatted prompts and notes (thanks to @haofeng0705). +- Chat: pasted absolute paths are now treated as normal messages. +- Chat: edit tools now use improved diffs (thanks to @shekohex). +- UI: improved long filename handling in file-mention autocomplete (thanks to @haofeng0705). + +### Fixes + +- Chat: fixed queued send behavior for inactive sessions to reduce accidental sends to the wrong conversation. + ## [1.7.5] - 2026-02-25 +### Improvements + - Sessions: improved switching performance. + +### Fixes + - Chat: fixed cases where messages could duplicate or disappear during active conversations. ## [1.7.4] - 2026-02-24 +### New + +- Chat: added fullscreen Mermaid preview, improved default thinking-variant persistence, and hardened file-preview safety checks for a more predictable message experience (thanks to @yulia-ivashko). +- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). +- Chat: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). + +### Improvements + - Settings: redesigned the settings workspace with flatter, more consistent layouts. - Settings: grouped agents/skills navigation by subfolder to make larger setups easier to manage (thanks to @nguyenngothuong). -- Chat: improved streaming smoothness and runtime stability with buffered updates and reliability fixes. - Chat: draft text now persists per session, and the input supports an expanded focus mode for longer prompts (thanks to @nguyenngothuong). -- Chat: added fullscreen Mermaid preview, improved default thinking-variant persistence, and hardened file-preview safety checks for a more predictable message experience (thanks to @yulia-ivashko). - Sessions: expanded folder management with subfolders, cleaner organization controls, and clearer delete confirmations (thanks to @nguyenngothuong). -- Settings: added an MCP config manager UI to simplify editing and validating MCP server configuration (thanks to @nguyenngothuong). - Chat Activity: improved Structured Output tool rendering with dedicated title/icon, clearer result descriptions, and more reliable detailed expansion defaults. -- Chat: added C, C++, and Go language support for syntax-aware rendering in code-heavy workflows (thanks to @fomenks). - Reliability: aligned file read/raw endpoint safety checks with other runtimes (thanks to @yulia-ivashko). +### Fixes + +- Chat: improved streaming smoothness and runtime stability with buffered updates and reliability fixes. + ## [1.7.3] - 2026-02-21 +### New + - Sessions: added custom folders to group chat sessions, with move/rename/delete flows and persisted collapse state per project (thanks to @nguyenngothuong). -- Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong). - Settings: added customizable keyboard shortcuts for chat actions, panel toggles, and services (thanks to @nelsonPires5). + +### Improvements + +- Notifications: improved agent progress notifications and permission handling to reduce noisy prompts during active runs (thanks to @nguyenngothuong). - UI: unified clipboard copy behavior. - Reliability: improved startup environment detection by capturing login-shell environment snapshots. - Reliability: refactored OpenCode config/auth integration into domain modules for steady provider auth and command loading flows (thanks to @nelsonPires5). ## [1.7.2] - 2026-02-20 -- Chat: question prompts now guide you to unanswered items before submit. -- Chat: fixed auto-send queue to wait for the active session to be idle before sending. -- Chat: improved streaming activity rendering and session attention indicators. +### New + - UI: added Plan view in the context sidebar panel for quicker access to plan content while you work (thanks to @nelsonPires5). -- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. + +### Improvements + +- Chat: question prompts now guide you to unanswered items before submit. +- Chat: improved streaming activity rendering and session attention indicators. - Reliability: provider auth failures now show clearer re-auth guidance when tokens expire (thanks to @yulia-ivashko). +### Fixes + +- Chat: fixed auto-send queue to wait for the active session to be idle before sending. +- Settings: model variant options now refresh correctly in draft/new-session flows, avoiding stale selections. + ## [1.7.1] - 2026-02-18 -- Chat: slash commands now follow server command semantics (including multiline arguments). +### New + - Chat: added a shell mode triggered by leading `!`, with inline output visibility/copy. + +### Improvements + +- Chat: slash commands now follow server command semantics (including multiline arguments). - Chat: improved delegated-task clarity with richer subtask bubbles, better task-detail rendering, and parent-chat surfacing for child permission/question requests. - Chat: improved `@` mention autocomplete by prioritizing agents and cleaning up ordering. - Skills: discovery now uses OpenCode API as the source of truth with safer fallback scanning. @@ -728,370 +1158,559 @@ ## [1.7.0] - 2026-02-17 +### Improvements + - Chat: improved live streaming responsiveness with part-delta updates and smarter auto-follow scrolling during generation. - Chat: Mermaid diagrams now render directly in messages, with quick copy/download actions for easier reuse. -**- Reliability: managed runtime startup now rotates secure auth credentials and hardens API proxy auth forwarding for safer local connections (thanks to @yulia-ivashko).** -**- Reliability: extension startup/shutdown handling is more predictable.** +- Reliability: managed runtime startup now rotates secure auth credentials and hardens API proxy auth forwarding for safer local connections (thanks to @yulia-ivashko). +- Reliability: extension startup/shutdown handling is more predictable. ## [1.6.9] - 2026-02-16 -- Agent Manager / Worktrees: switched to an upstream-first worktree flow with stronger branch tracking (thanks to @yulia-ivashko). +### New + - Usage: added NanoGPT quota provider support and improved provider wiring for steady usage reporting (thanks to @nelsonPires5). + +### Improvements + +- Agent Manager / Worktrees: switched to an upstream-first worktree flow with stronger branch tracking (thanks to @yulia-ivashko). - UI: compact model info in selection (price + capabilities) (thanks to @nelsonPires5). ## [1.6.8] - 2026-02-12 +### New + - Chat: added drag-and-drop attachments with inline image previews. -- Sessions: fixed previously selected session carry-over when navigating from chat / session draft and list of sessions. + +### Improvements + - Chat: improved picker search with fuzzy matching on names and descriptions to speed up finding the right agent/model. - Usage: corrected Gemini and Antigravity quota source mapping and labels (thanks to @gsxdsm). - Usage: remaining-quota mode now inverts usage markers (thanks to @gsxdsm). +### Fixes + +- Sessions: fixed previously selected session carry-over when navigating from chat / session draft and list of sessions. + ## [1.6.7] - 2026-02-10 +### New + - Added usage pace and prediction indicators in the header and settings to make quota usage trends easier to track (thanks to @gsxdsm). - Added confirmation dialogs for destructive delete/reset actions to reduce accidental mistakes in settings and management flows. + +### Improvements + - Improved reliability for message loading. -## [1.6.6] - 2026-02-9 +## [1.6.6] - 2026-02-09 + +### Fixes - Usage: added per-model quota groups in the header and fixed provider dropdown scrolling for easier usage tracking (thanks to @nelsonPires5, @gsxdsm). - Reliability: fixed OpenCode auth pass-through/proxy behavior to reduce failed extension requests (thanks to @gsxdsm). -## [1.6.5] - 2026-02-6 +## [1.6.5] - 2026-02-06 + +### New - Settings: added an OpenCode CLI path override. - Chat: added arrow-key prompt history and an optional setting to persist input drafts between restarts (thanks to @gsxdsm). + +### Improvements + - Chat: thinking/reasoning blocks now render consistently, and justification visibility settings now apply reliably (thanks to @gsxdsm). - Reliability: improved OpenCode binary resolution and HOME-path handling for steady local startup. -## [1.6.4] - 2026-02-5 +## [1.6.4] - 2026-02-05 + +### New -- Improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" sessions. -- Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5). - Chat: select text in messages to quickly add it to your prompt or start a new session (thanks to @gsxdsm). +### Improvements -## [1.6.3] - 2026-02-2 +- Usage: expanded quota tracking with more providers (including GitHub Copilot) and a provider selector dropdown (thanks to @gsxdsm, @nelsonPires5). + +### Fixes + +- Improved Windows PATH resolution and cold-start readiness checks to reduce "stuck loading" sessions. + +## [1.6.3] - 2026-02-02 + +### Improvements - Improved server health check with the proper health API endpoint and increased timeout for steady startup (thanks to @wienans). + +### Fixes + - Settings dialog no longer persists open/closed state across extension restarts. +## [1.6.2] - 2026-02-01 -## [1.6.2] - 2026-02-1 +### New - Added multi-provider quota dashboard in settings to monitor API usage across OpenAI, Google, and z.ai with auto-refresh support (thanks to @nelsonPires5). -- Enhanced token-based theming system. +### Improvements + +- Enhanced token-based theming system. ## [1.6.1] - 2026-01-30 -- Chat: added Stop button to cancel generation mid-response. -- Chat: improved compact controls on narrow panels with a unified drawer for model and tool options. +### New + - Chat: added Apply Patch tool support for opening files in editor. + +### Improvements + +- Chat: improved compact controls on narrow panels with a unified drawer for model and tool options. - Reliability: improved event stream reconnection when the panel is hidden/shown or VS Code regains focus. +### Fixes + +- Chat: added Stop button to cancel generation mid-response. ## [1.6.0] - 2026-01-29 +### New + - Added message stall detection with automatic soft resync. -- Fixed "Load older" button in long sessions with proper progressive pagination. + +### Improvements + - Session activity status now updates reliably even when the extension panel is hidden or collapsed. +### Fixes + +- Fixed "Load older" button in long sessions with proper progressive pagination. ## [1.5.9] - 2026-01-28 -- Agent Manager: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated. -- Agent Manager: worktree setup commands are now persistent per project and automatically saved/restored. +### Improvements +- Agent Manager: migrated to the OpenCode SDK worktree implementation; sessions in worktrees are now completely isolated. + +### Fixes + +- Agent Manager: worktree setup commands are now persistent per project and automatically saved/restored. ## [1.5.8] - 2026-01-26 +### New + - Plans: added new Plan/Build mode switching support. +- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). + +### Improvements + - Chat: linkable mentions, better wrapping, and markdown/scroll polish in messages. - Skills: ClawdHub catalog now pages results and retries transient failures. -- Diff: fixed Chrome scrolling in All Files layout. -- Activity: added a text-justification setting for activity summaries (thanks to @iyangdianfeng). - Performance: faster chat rendering for busy sessions. -- Reliability: file lists and message sends handle missing directories and transient errors better. +### Fixes + +- Diff: fixed Chrome scrolling in All Files layout. +- Reliability: file lists and message sends handle missing directories and transient errors better. ## [1.5.7] - 2026-01-24 -- No notable changes. +### Improvements +- No notable changes. ## [1.5.6] - 2026-01-24 +### New + - GitHub: added backend support for PRs/issues workflows; UI comes later. - ## [1.5.5] - 2026-01-23 +### Improvements + - Settings: agent and command overrides now prefer plural directories while still honoring legacy singular folders. - Skills: installs now target plural directories while still recognizing legacy singular folders. - ## [1.5.4] - 2026-01-22 +### Improvements + - Apply Patch tool now shows a diff preview. - Settings: manage provider configuration files directly from the extension. - ## [1.5.3] - 2026-01-20 +### Improvements + - Chat: improved session switching with more stable scroll anchoring. - Chat: the collapsed Activity view now shows the latest 6 tools by default. - Chat: updated accent color derivation to better match editor themes. - Performance: improved filesystem/search speed and general stability (thanks to @TheRealAshik). - Files: adjusted default visibility for hidden/dotfiles to be visible and gitignored entries to be hidden. - ## [1.5.2] - 2026-01-17 +### Improvements + - Chat: optimized message loading for opening sessions. - Layout: tuned responsive breakpoint and server readiness timeout for steady startup. - Reliability: improved OpenCode process cleanup to reduce orphaned servers. - ## [1.5.1] - 2026-01-16 +### Improvements + - No notable changes. - ## [1.5.0] - 2026-01-16 +### New + +- Layout: added responsive expanded layout showing sessions sidebar + chat side-by-side when extension is wide enough (≥700px). +- Layout: extension now opens to sessions list instead of new session draft. + +### Improvements + - Improved OpenCode server management to ensure it initializes within the workspace directory. - Enhanced extension startup with context-aware readiness checks for the current workspace. -- Fixed orphaned OpenCode processes not being cleaned up on restart or exit. -- Session tabs: fixed opening new session in editor tab; title bar button now opens new session tab, sidebar button opens current or new session. -- Layout: added responsive expanded layout showing sessions sidebar + chat side-by-side when extension is wide enough (≥700px). -- Layout: extension now opens to sessions list instead of new session draft. - Layout: compact header with reduced padding. - Settings: hidden Git Identities tab, Git section, and Diff view settings (not applicable to VS Code). - Settings: hidden project switcher dropdown (VS Code uses workspace). - Shortcuts: disabled worktree session creation with shortcuts (Ctrl+Shift+N now opens standard session). +### Fixes + +- Fixed orphaned OpenCode processes not being cleaned up on restart or exit. +- Session tabs: fixed opening new session in editor tab; title bar button now opens new session tab, sidebar button opens current or new session. ## [1.4.9] - 2026-01-14 +### New + - Added session editor panel to view sessions alongside files. + +### Improvements + - Improved server connection reliability with multiple URL candidate support. - Upload: increased attachment size limit to 50MB with automatic image compression to 2048px for large files. - ## [1.4.8] - 2026-01-14 -- Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator). -- Chat: fixed edit tool output and added turn duration. -- UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator). -- Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring. +### New + - Stability: added graceful shutdown handling for the server process (thanks to @vio1ator). +### Improvements + +- Chat: sidebar sessions are now automatically sorted by last updated date (thanks to @vio1ator). +- UI: todo lists and status indicators now hide automatically when all tasks are completed (thanks to @vio1ator). +- Reliability: improved project state preservation on validation failures (thanks to @vio1ator) and refined server health monitoring. + +### Fixes + +- Chat: fixed edit tool output and added turn duration. ## [1.4.7] - 2026-01-10 +### New + - Skills: added ClawdHub integration as built-in market for skills. - ## [1.4.6] - 2026-01-09 +### New + +- Chat: added question tool support with a rich UI for interaction. + +### Improvements + - Switched OpenCode CLI management to the SDK. - Input: removed auto-complete and auto-correction. - Shortcuts: switched the agent cycling shortcut from Shift+Tab back to Tab. -- Chat: added question tool support with a rich UI for interaction. - ## [1.4.5] - 2026-01-08 +### New + - Chat: added support for model variants (thinking effort). -- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. - Skills: added autocomplete for skills on "/" when it is not the first character in input. - Autocomplete: added scope badges for commands/agents/skills. -- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. - MCP: added the ability to dynamically enable or disable configured MCP servers. +### Improvements + +- Shortcuts: switched the agent cycling shortcut from Tab to Shift+Tab. +- Compact: changed `/summarize` to `/compact` and moved compaction to the SDK. ## [1.4.4] - 2026-01-08 -- Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans). -- Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans). +### New + - Agent Manager: added "Copy Worktree Path" action in the more menu (thanks to @wienans). - Worktrees: added session creation flow with loading screen, auto-create worktree setting, and setup commands management. -- Session sidebar: refactoring with unified view for sessions in worktrees. - Settings: added ability to create new session in worktree by default. -- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). - Projects: added multi-project support with per-project settings for agents/commands/skills. + +### Improvements + +- Agent Manager / Multi Run: select agent per worktree session (thanks to @wienans). +- Agent Manager / Multi Run: worktree actions to delete group or individual worktrees, or keep only selected one (thanks to @wienans). +- Session sidebar: refactoring with unified view for sessions in worktrees. - Event stream: improved SSE with heartbeat management, permission bootstrap on connect, and reconnection logic. + +### Fixes + +- Chat: fixed IME composition for CJK input to prevent accidental send (thanks to @madebyjun). - Model selector: fixed dropdowns not responding to viewport size. - ## [1.4.3] - 2026-01-04 +### New + - Added Agent Manager panel to run the same prompt across up to 5 models in parallel (thanks to @wienans). - Added permission prompt UI for tools configured with "ask" in opencode.json, showing requested patterns and "Always Allow" options (thanks to @aptdnfapt). - Added "Open subAgent session" button on task tool outputs to quickly navigate to child sessions (thanks to @aptdnfapt). + +### Improvements + - Improved activation reliability and error handling. - ## [1.4.2] - 2026-01-02 +### New + - Added timeline dialog (`/timeline` command or Cmd/Ctrl+T) for navigating, reverting, and forking from any point in the conversation (thanks to @aptdnfapt). - Added `/undo` and `/redo` commands for reverting and restoring messages in a session (thanks to @aptdnfapt). - Added fork button on user messages to create a new session from any point (thanks to @aptdnfapt). + +### Improvements + - Migrated to OpenCode SDK v2 with improved API types and streaming. - ## [1.4.1] - 2026-01-02 +### New + - Added the ability to select the same model multiple times in multi-agent runs for response comparison. - Model selector now includes search and keyboard navigation. - Added revert button to all user messages (including first one). - Added HEIC image support for file attachments with automatic MIME type normalization for text format files. + +### Improvements + - Only show the main Worktree in the Chat Sidebar (thanks to @wienans). - Terminal: improved terminal performance and stability by switching to the Ghostty-based terminal renderer. - ## [1.4.0] - 2026-01-01 +### New + - Added the ability to run multiple agents from a single prompt, with each agent working in an isolated worktree. - Worktrees: new branch creation can start from a chosen base; remote branches are only created when you push. + +### Improvements + - Default location is now the right secondary sidebar in VS Code, and the left activity bar in Cursor/Windsurf; navigation moved into the title bar (thanks to @wienans). -- Chat: now shows clearer error messages when agent messages fail. - Sidebar: improved readability for sticky headers with a dynamic background. +### Fixes + +- Chat: now shows clearer error messages when agent messages fail. ## [1.3.9] - 2025-12-30 +### New + - Added skills management to settings with the ability to create, edit, and delete skills. - Added Skills catalog functionality for discovering and installing skills from external sources. - Added right-click context menu with "Add to Context," "Explain," and "Improve Code" actions (thanks to @wienans). - ## [1.3.8] - 2025-12-29 +### New + - Added queued message mode with chips, batching, and idle auto‑send (including attachments). - Added queue mode toggle to settings (chat section). -- Fixed scroll position persistence for active conversation turns across session switches. + +### Improvements + - Refactored Agents/Commands management with ability to configure project/user scopes. +### Fixes + +- Fixed scroll position persistence for active conversation turns across session switches. ## [1.3.7] - 2025-12-28 -- Redesigned Settings as a full-screen view with tabbed navigation. -- ESC key now closes settings. +### New + - Added responsive tab labels in settings header (icons only at narrow widths). -- Improved session activity status handling and message step completion logic. - Introduced enhanced extension settings with dynamic layout based on width. +### Improvements + +- Redesigned Settings as a full-screen view with tabbed navigation. +- ESC key now closes settings. +- Improved session activity status handling and message step completion logic. ## [1.3.6] - 2025-12-27 -- Added the ability to manage (connect/disconnect) providers in settings. -- Adjusted auto-summarization visuals in chat. +### New +- Added the ability to manage (connect/disconnect) providers in settings. + +### Improvements + +- Adjusted auto-summarization visuals in chat. ## [1.3.5] - 2025-12-26 -- Improved file search with fuzzy matching capabilities. -- Fixed workspace switching performance and API health checks. -- Improved provider loading reliability during workspace switching. -- Fixed session handling for non-existent worktree directories. +### New + - Added settings for choosing the default model/agent to start with in a new session. +### Improvements + +- Improved file search with fuzzy matching capabilities. +- Improved provider loading reliability during workspace switching. + +### Fixes + +- Fixed workspace switching performance and API health checks. +- Fixed session handling for non-existent worktree directories. ## [1.3.4] - 2025-12-25 -- Improved type checking and editor integration. +### Improvements +- Improved type checking and editor integration. ## [1.3.3] - 2025-12-25 -- Fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. +### New + - Added an animated loading screen and introduced command for status/debug output. + +### Improvements + +- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. + +### Fixes + +- Fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming. - Fixed session activity tracking. - Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors. - Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation. -- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes. - ## [1.3.0] - 2025-12-21 +### New + - Added revert functionality in chat for user messages. + +### Improvements + - Updated user message layout/styling. - Improved header tab responsiveness. -- Fixed bugs with new session creation when the extension initialized for the first time. - Adjusted extension theme mapping and model selection view. - Polished file autocomplete experience. +### Fixes + +- Fixed bugs with new session creation when the extension initialized for the first time. ## [1.2.9] - 2025-12-20 +### Improvements + - Session auto‑cleanup feature with configurable retention. - Optimization for long sessions. - ## [1.2.6] - 2025-12-19 +### New + - Added write/create tool preview in permission cards with syntax highlighting. + +### Improvements + - More descriptive assistant status messages with tool-specific and varied idle phrases. - ## [1.2.5] - 2025-12-19 +### Improvements + - Polished chat experience for longer sessions. - Smoother session rename experience. - ## [1.2.2] - 2025-12-17 +### Improvements + - Agent Task tool now renders progressively with live duration and completed sub-tools summary. - Unified markdown rendering between assistant messages and tool outputs. - Reduced markdown header sizes. - ## [1.2.1] - 2025-12-16 +### Improvements + - Todo task tracking: collapsible status row showing AI's current task and progress. - Switched "Detailed" tool output mode to only open critical tools (task, edit, write, etc.). - ## [1.2.0] - 2025-12-15 +### Improvements + - Favorite & recent models for quick access in model selection. - Tool call expansion settings: collapsed, activity, or detailed modes. - Font size & spacing controls (50-200% scaling) in Appearance Settings. - Settings page access within extension. - ## [1.1.6] - 2025-12-15 +### Improvements + - Redesigned password-protected session unlock screen. - ## [1.1.5] - 2025-12-15 -- Improved file attachment performance. +### New + - Added fuzzy search for file mentions with `@` in chat. + +### Improvements + +- Improved file attachment performance. - Optimized input area layout. - ## [1.1.4] - 2025-12-15 +### Improvements + - Flexoki themes for Shiki syntax highlighting for consistency with the app color schema. - Enhanced extension theming with editor themes. - ## [1.1.2] - 2025-12-13 -- Moved extension to activity bar (left sidebar). +### New + - Added feedback messages for "Restart API Connection" command. + +### Improvements + +- Moved extension to activity bar (left sidebar). - Removed redundant commands. - Enhanced UserTextPart styling. - ## [1.1.0] - 2025-12-13 +### New + - Added assistant answer fork flow to start new sessions with inherited context. - Initial VS Code extension release with editor integration: file picker, click-to-open in tool parts. + +### Improvements + - Improved scroll performance. diff --git a/scripts/changelog/build.mjs b/scripts/changelog/build.mjs new file mode 100644 index 00000000..263e549a --- /dev/null +++ b/scripts/changelog/build.mjs @@ -0,0 +1,53 @@ +#!/usr/bin/env node +// Render the changelog outputs from `changelog/*.md`. +// +// node scripts/changelog/build.mjs write CHANGELOG.md, packages/vscode/CHANGELOG.md, changelog/index.json +// node scripts/changelog/build.mjs --check exit 1 when any output differs from what is committed +// node scripts/changelog/build.mjs --release 1.2.3 [--date YYYY-MM-DD] +// move unreleased.md to 1.2.3.md (dated today by default), then write +import fs from 'node:fs'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +import { loadReleases, promoteUnreleased, renderOutputs } from './lib.mjs'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..'); +const changelogDirectory = path.join(repoRoot, 'changelog'); + +const args = process.argv.slice(2); +const readFlag = (name) => { + const index = args.indexOf(name); + return index >= 0 ? args[index + 1] ?? null : null; +}; +const check = args.includes('--check'); +const releaseVersion = readFlag('--release'); + +try { + if (releaseVersion) { + const date = readFlag('--date') ?? new Date().toISOString().slice(0, 10); + const created = promoteUnreleased(changelogDirectory, releaseVersion, date); + console.log(`Promoted changelog/unreleased.md to ${path.relative(repoRoot, created)}`); + } + + const outputs = renderOutputs(loadReleases(changelogDirectory)); + const stale = []; + for (const [relativePath, content] of Object.entries(outputs)) { + const target = path.join(repoRoot, relativePath); + const current = fs.existsSync(target) ? fs.readFileSync(target, 'utf8') : null; + if (current === content) continue; + if (check) { + stale.push(relativePath); + continue; + } + fs.writeFileSync(target, content); + console.log(`Wrote ${relativePath}`); + } + if (check && stale.length > 0) { + console.error(`Generated changelog files are out of date: ${stale.join(', ')}. Run "bun run changelog:build" and commit the result.`); + process.exit(1); + } + if (check) console.log('Changelog outputs are up to date.'); +} catch (error) { + console.error(error instanceof Error ? error.message : String(error)); + process.exit(1); +} diff --git a/scripts/changelog/lib.mjs b/scripts/changelog/lib.mjs new file mode 100644 index 00000000..22d60383 --- /dev/null +++ b/scripts/changelog/lib.mjs @@ -0,0 +1,241 @@ +// Source of truth for release notes: one Markdown file per release under +// `changelog/`, plus `changelog/unreleased.md` for what is not shipped yet. +// This module parses those files, validates their shape, and renders the +// three generated outputs: `CHANGELOG.md` (app), `packages/vscode/CHANGELOG.md` +// (extension, read by the Marketplace as is), and `changelog/index.json`. +// +// The generated Markdown keeps today's `## [x.y.z] - YYYY-MM-DD` headers: the +// update dialog, the release workflow, and the release script match them by +// regex. Groups render as `### New` / `### Improvements` / `### Fixes` / +// `### Misc` inside each release. + +import fs from 'node:fs'; +import path from 'node:path'; + +export const GROUPS = ['New', 'Improvements', 'Fixes', 'Misc']; +const GENERATED_BANNER = ''; +export const SURFACES = ['App', 'VS Code']; + +const VERSION_PATTERN = /^\d+\.\d+\.\d+$/; +const DATE_PATTERN = /^\d{4}-\d{2}-\d{2}$/; + +/** + * @typedef {{ [group: string]: string[] }} Groups group name → bullet lines without the leading "- " + * @typedef {{ version: string | null, date: string | null, title: string | null, intro: string[], app: Groups | null, vscode: Groups | null, file: string }} Release + */ + +const fail = (file, line, message) => { + throw new Error(`${file}:${line}: ${message}`); +}; + +/** Minimal front matter: `key: value` lines between `---` fences. */ +const parseFrontMatter = (lines, file) => { + if (lines[0] !== '---') return { meta: {}, bodyStart: 0 }; + const end = lines.indexOf('---', 1); + if (end < 0) fail(file, 1, 'front matter is not closed'); + const meta = {}; + for (let index = 1; index < end; index += 1) { + const raw = lines[index]; + if (!raw.trim()) continue; + const separator = raw.indexOf(':'); + if (separator < 0) fail(file, index + 1, `expected "key: value", got ${JSON.stringify(raw)}`); + meta[raw.slice(0, separator).trim()] = raw.slice(separator + 1).trim(); + } + return { meta, bodyStart: end + 1 }; +}; + +/** + * Parse one release file. Shape: + * + * --- (absent for unreleased.md) + * version: 1.2.3 + * date: 2026-01-31 + * title: optional + * --- + * optional intro paragraph(s) + * ## App + * ### New | Improvements | Fixes | Misc + * - bullet + * ## VS Code + * ### ... + */ +export const parseRelease = (text, file) => { + const lines = text.replace(/\r\n/g, '\n').split('\n'); + const { meta, bodyStart } = parseFrontMatter(lines, file); + const release = { + version: meta.version ?? null, + date: meta.date ?? null, + title: meta.title || null, + intro: [], + app: null, + vscode: null, + file, + }; + if (release.version !== null && !VERSION_PATTERN.test(release.version)) fail(file, 1, `version ${JSON.stringify(release.version)} is not x.y.z`); + if (release.date !== null && !DATE_PATTERN.test(release.date)) fail(file, 1, `date ${JSON.stringify(release.date)} is not YYYY-MM-DD`); + + let surface = null; // 'app' | 'vscode' + let group = null; + for (let index = bodyStart; index < lines.length; index += 1) { + const line = lines[index]; + const number = index + 1; + if (line.startsWith('## ')) { + const name = line.slice(3).trim(); + const position = SURFACES.indexOf(name); + if (position < 0) fail(file, number, `unknown section ${JSON.stringify(name)}; expected one of ${SURFACES.join(', ')}`); + surface = position === 0 ? 'app' : 'vscode'; + if (release[surface]) fail(file, number, `section ${name} appears twice`); + release[surface] = {}; + group = null; + continue; + } + if (line.startsWith('### ')) { + const name = line.slice(4).trim(); + if (!surface) fail(file, number, `group ${JSON.stringify(name)} appears before any ## App or ## VS Code section`); + if (!GROUPS.includes(name)) fail(file, number, `unknown group ${JSON.stringify(name)}; expected one of ${GROUPS.join(', ')}`); + if (release[surface][name]) fail(file, number, `group ${name} appears twice in ${surface === 'app' ? 'App' : 'VS Code'}`); + release[surface][name] = []; + group = name; + continue; + } + if (line.startsWith('- ') || line.startsWith('* ')) { + if (!surface || !group) fail(file, number, 'a bullet must sit under a ### group inside ## App or ## VS Code'); + const bullet = line.slice(2).trim(); + if (!bullet) fail(file, number, 'empty bullet'); + release[surface][group].push(bullet); + continue; + } + if (!line.trim()) continue; + if (surface === null) { + release.intro.push(line.trimEnd()); + continue; + } + fail(file, number, `unexpected text inside a section; only "- " bullets belong under a group: ${JSON.stringify(line)}`); + } + return release; +}; + +const compareVersionsDesc = (a, b) => { + const pa = a.split('.').map(Number); + const pb = b.split('.').map(Number); + for (let index = 0; index < 3; index += 1) { + if (pa[index] !== pb[index]) return pb[index] - pa[index]; + } + return 0; +}; + +/** Read `changelog/`: every `x.y.z.md` plus `unreleased.md`, newest first. */ +export const loadReleases = (directory) => { + const releases = []; + let unreleased = null; + for (const name of fs.readdirSync(directory)) { + if (!name.endsWith('.md') || name === 'README.md') continue; + const file = path.join(directory, name); + const release = parseRelease(fs.readFileSync(file, 'utf8'), path.relative(process.cwd(), file)); + if (name === 'unreleased.md') { + if (release.version || release.date) fail(release.file, 1, 'unreleased.md carries no version or date'); + unreleased = release; + continue; + } + const stem = name.slice(0, -3); + if (!release.version || !release.date) fail(release.file, 1, 'a release file needs version and date in its front matter'); + if (release.version !== stem) fail(release.file, 1, `version ${release.version} does not match the file name ${stem}`); + releases.push(release); + } + releases.sort((a, b) => compareVersionsDesc(a.version, b.version)); + const seen = new Set(); + for (const release of releases) { + if (seen.has(release.version)) fail(release.file, 1, `version ${release.version} appears twice`); + seen.add(release.version); + } + return { unreleased, releases }; +}; + +const renderGroups = (groups) => { + const blocks = []; + for (const name of GROUPS) { + const bullets = groups?.[name]; + if (!bullets || bullets.length === 0) continue; + blocks.push(`### ${name}\n\n${bullets.map((bullet) => `- ${bullet}`).join('\n')}\n`); + } + return blocks.join('\n'); +}; + +const renderHeader = (release) => (release.version ? `## [${release.version}] - ${release.date}` : '## [Unreleased]'); + +const renderSection = (release, groups, intro) => { + const parts = [renderHeader(release), '']; + if (intro.length > 0) parts.push(intro.join('\n'), ''); + const body = renderGroups(groups); + if (body) parts.push(body); + return parts.join('\n').replace(/\n+$/, '\n'); +}; + +/** `CHANGELOG.md`: the app notes, unreleased first, every release after. */ +export const renderAppChangelog = ({ unreleased, releases }) => { + const sections = []; + sections.push(renderSection(unreleased ?? { version: null }, unreleased?.app, unreleased?.intro ?? [])); + for (const release of releases) sections.push(renderSection(release, release.app, release.intro)); + return `# Changelog\n\n${GENERATED_BANNER}\n\nAll notable changes to this project will be documented in this file.\n\n${sections.join('\n')}`; +}; + +/** `packages/vscode/CHANGELOG.md`: only releases that carry a VS Code section. */ +export const renderVsCodeChangelog = ({ unreleased, releases }) => { + const sections = []; + sections.push(renderSection(unreleased ?? { version: null }, unreleased?.vscode, [])); + for (const release of releases) { + if (!release.vscode) continue; + sections.push(renderSection(release, release.vscode, [])); + } + return `${GENERATED_BANNER}\n\n${sections.join('\n')}`; +}; + +const groupsToJson = (groups) => { + if (!groups) return null; + const out = {}; + for (const name of GROUPS) out[name.toLowerCase()] = groups[name] ?? []; + return out; +}; + +/** `changelog/index.json`: released versions only, newest first. */ +export const renderIndex = ({ releases }) => `${JSON.stringify(releases.map((release) => ({ + version: release.version, + date: release.date, + title: release.title, + intro: release.intro.join('\n') || null, + app: groupsToJson(release.app), + vscode: groupsToJson(release.vscode), +})), null, 2)}\n`; + +/** Every generated file, keyed by path relative to the repo root. */ +export const renderOutputs = (loaded) => ({ + 'CHANGELOG.md': renderAppChangelog(loaded), + 'packages/vscode/CHANGELOG.md': renderVsCodeChangelog(loaded), + 'changelog/index.json': renderIndex(loaded), +}); + +export const UNRELEASED_TEMPLATE = `## App + +## VS Code +`; + +/** + * Turn `unreleased.md` into `.md` dated `date`, and reset + * `unreleased.md` to the empty template. Refuses an empty unreleased file: + * a release with nothing to say is a mistake, not a release. + */ +export const promoteUnreleased = (directory, version, date) => { + if (!VERSION_PATTERN.test(version)) throw new Error(`version ${JSON.stringify(version)} is not x.y.z`); + if (!DATE_PATTERN.test(date)) throw new Error(`date ${JSON.stringify(date)} is not YYYY-MM-DD`); + const source = path.join(directory, 'unreleased.md'); + const target = path.join(directory, `${version}.md`); + if (fs.existsSync(target)) throw new Error(`${path.relative(process.cwd(), target)} already exists`); + const text = fs.readFileSync(source, 'utf8'); + const release = parseRelease(text, path.relative(process.cwd(), source)); + const bullets = [...Object.values(release.app ?? {}), ...Object.values(release.vscode ?? {})].flat(); + if (bullets.length === 0) throw new Error('changelog/unreleased.md has no bullets; write the release notes before releasing'); + const body = text.replace(/^---\n[\s\S]*?\n---\n/, ''); + fs.writeFileSync(target, `---\nversion: ${version}\ndate: ${date}\n---\n\n${body.replace(/^\n+/, '')}`); + fs.writeFileSync(source, UNRELEASED_TEMPLATE); + return target; +}; diff --git a/scripts/changelog/lib.test.mjs b/scripts/changelog/lib.test.mjs new file mode 100644 index 00000000..0b8e8f65 --- /dev/null +++ b/scripts/changelog/lib.test.mjs @@ -0,0 +1,125 @@ +import assert from 'node:assert/strict'; +import fs from 'node:fs'; +import os from 'node:os'; +import path from 'node:path'; +import test from 'node:test'; + +import { loadReleases, parseRelease, promoteUnreleased, renderAppChangelog, renderIndex, renderVsCodeChangelog } from './lib.mjs'; + +const banner = ''; + +const release = `--- +version: 1.2.3 +date: 2026-01-31 +title: Comments everywhere +--- + +A short intro. + +## App + +### Fixes +- Chat: huge patches open without freezing the page (thanks to @someone). + +### New +- **Comments:** select text and comment on it. + +## VS Code + +### New +- Comments on code. +`; + +test('parses front matter, intro, sections, and groups', () => { + const parsed = parseRelease(release, 'changelog/1.2.3.md'); + assert.equal(parsed.version, '1.2.3'); + assert.equal(parsed.date, '2026-01-31'); + assert.equal(parsed.title, 'Comments everywhere'); + assert.deepEqual(parsed.intro, ['A short intro.']); + assert.deepEqual(parsed.app, { + Fixes: ['Chat: huge patches open without freezing the page (thanks to @someone).'], + New: ['**Comments:** select text and comment on it.'], + }); + assert.deepEqual(parsed.vscode, { New: ['Comments on code.'] }); +}); + +test('rejects shapes the generator cannot render', () => { + assert.throws(() => parseRelease('## App\n### Nope\n- x\n', 'f.md'), /unknown group "Nope"/); + assert.throws(() => parseRelease('## Desktop\n', 'f.md'), /unknown section "Desktop"/); + assert.throws(() => parseRelease('- orphan\n', 'f.md'), /must sit under a ### group/); + assert.throws(() => parseRelease('## App\n### New\nstray text\n', 'f.md'), /unexpected text inside a section/); + assert.throws(() => parseRelease('---\nversion: 1.2\ndate: 2026-01-31\n---\n', 'f.md'), /is not x\.y\.z/); +}); + +test('renders groups in canonical order with today\'s headers and skips versions without a VS Code section', () => { + const directory = fs.mkdtempSync(path.join(os.tmpdir(), 'changelog-')); + fs.writeFileSync(path.join(directory, '1.2.3.md'), release); + fs.writeFileSync(path.join(directory, '1.2.4.md'), '---\nversion: 1.2.4\ndate: 2026-02-01\n---\n\n## App\n\n### Improvements\n- Faster.\n'); + fs.writeFileSync(path.join(directory, 'unreleased.md'), '## App\n\n### Fixes\n- Pending fix.\n\n## VS Code\n'); + const loaded = loadReleases(directory); + + assert.equal(renderAppChangelog(loaded), `# Changelog + +${banner} + +All notable changes to this project will be documented in this file. + +## [Unreleased] + +### Fixes + +- Pending fix. + +## [1.2.4] - 2026-02-01 + +### Improvements + +- Faster. + +## [1.2.3] - 2026-01-31 + +A short intro. + +### New + +- **Comments:** select text and comment on it. + +### Fixes + +- Chat: huge patches open without freezing the page (thanks to @someone). +`); + + assert.equal(renderVsCodeChangelog(loaded), `${banner} + +## [Unreleased] + +## [1.2.3] - 2026-01-31 + +### New + +- Comments on code. +`); + + const index = JSON.parse(renderIndex(loaded)); + assert.equal(index.length, 2); + assert.equal(index[0].version, '1.2.4'); + assert.equal(index[1].title, 'Comments everywhere'); + assert.deepEqual(index[1].vscode, { new: ['Comments on code.'], improvements: [], fixes: [], misc: [] }); + assert.equal(index[0].vscode, null); +}); + +test('loadReleases refuses a file whose name and version disagree', () => { + const directory = fs.mkdtempSync(path.join(os.tmpdir(), 'changelog-')); + fs.writeFileSync(path.join(directory, '9.9.9.md'), release); + assert.throws(() => loadReleases(directory), /does not match the file name 9\.9\.9/); +}); + +test('promoteUnreleased dates the release, resets the template, and refuses an empty release', () => { + const directory = fs.mkdtempSync(path.join(os.tmpdir(), 'changelog-')); + fs.writeFileSync(path.join(directory, 'unreleased.md'), '## App\n\n### New\n- Something shipped.\n\n## VS Code\n'); + const created = promoteUnreleased(directory, '2.0.0', '2026-03-01'); + assert.equal(path.basename(created), '2.0.0.md'); + assert.match(fs.readFileSync(created, 'utf8'), /^---\nversion: 2\.0\.0\ndate: 2026-03-01\n---\n\n## App/); + assert.equal(fs.readFileSync(path.join(directory, 'unreleased.md'), 'utf8'), '## App\n\n## VS Code\n'); + assert.throws(() => promoteUnreleased(directory, '2.0.1', '2026-03-02'), /has no bullets/); +}); diff --git a/scripts/oc-dev.mjs b/scripts/oc-dev.mjs index 7062cb34..ea527534 100755 --- a/scripts/oc-dev.mjs +++ b/scripts/oc-dev.mjs @@ -174,20 +174,8 @@ function step(label, fn) { return result; } -const RELEASE_CHANGELOG_FILES = ['CHANGELOG.md', 'packages/vscode/CHANGELOG.md']; - -// Same check the release workflow runs before it publishes, so a missing -// section fails here in seconds instead of after the tag is pushed. -function assertChangelogSection(version) { - const changelogPath = path.join(repoRoot, 'CHANGELOG.md'); - if (!existsSync(changelogPath)) { - throw new Error('CHANGELOG.md not found; add it before releasing.'); - } - const sections = readFileSync(changelogPath, 'utf8').split(/^## /m); - if (!sections.some((section) => section.startsWith(`[${version}]`))) { - throw new Error(`CHANGELOG.md has no "## [${version}] - YYYY-MM-DD" section. Add it before releasing.`); - } -} +// The release notes source plus the files generated from it; all go into the release commit. +const RELEASE_CHANGELOG_FILES = ['changelog', 'CHANGELOG.md', 'packages/vscode/CHANGELOG.md']; function printReleaseNextSteps(version) { log.success(`Release v${version} prepared locally`); @@ -613,7 +601,9 @@ async function createRelease(options) { } } if (!/^\d+\.\d+\.\d+(-[a-zA-Z0-9.]+)?$/.test(version)) throw new Error('Invalid version format. Use semver, e.g. 1.4.7 or 1.4.7-beta.1'); - step('Checking changelog', () => assertChangelogSection(version)); + // Turns changelog/unreleased.md into changelog/.md dated today and + // regenerates CHANGELOG.md; fails when nothing was written for the release. + step('Promoting the changelog', () => run('node', ['scripts/changelog/build.mjs', '--release', version])); step('Validating codebase', () => run('bun', ['run', 'release:prepare'])); step(`Bumping version to ${version}`, () => run('node', ['scripts/bump-version.mjs', version])); printReleaseNextSteps(version);