diff --git a/.changeset/agent-manager-diff-base-override.md b/.changeset/agent-manager-diff-base-override.md deleted file mode 100644 index 5d38f0e6cb..0000000000 --- a/.changeset/agent-manager-diff-base-override.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Apply the Agent Manager base branch picker selection to the active diff immediately. Changing the base branch now refreshes the diff against the new base instead of keeping the previous comparison until the scope or session changed. diff --git a/.changeset/agent-manager-diff-scope-selector.md b/.changeset/agent-manager-diff-scope-selector.md deleted file mode 100644 index 341e5ee768..0000000000 --- a/.changeset/agent-manager-diff-scope-selector.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Add a scope selector and base branch picker to the Agent Manager diff review. The side panel and full-screen review now let you switch between Branch, Staged, Unstaged, and Session scopes for the selected worktree, and the Branch scope's base branch can be overridden from a picker next to it. Branch stays the default, so existing review behavior is unchanged. diff --git a/.changeset/agent-manager-multi-project.md b/.changeset/agent-manager-multi-project.md deleted file mode 100644 index 1212a52f99..0000000000 --- a/.changeset/agent-manager-multi-project.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Add an experimental multi-project foundation for Agent Manager behind the Multi-Project Agent Manager toggle in Kilo Settings > Experimental. A persistent project registry catalogs additional Git repositories across restarts while the current workspace repository stays the pinned default project, and all repository-bound services (state, worktrees, setup scripts, stale tracking, polling) are now owned by immutable per-project contexts that can be activated, expanded, and switched through new project protocol messages. Every expanded project runs its own git stats and PR pollers, so all visible project accordions show live data at the same time; switching projects keeps previously visited projects expanded and restores the exact worktree or session that was open there. Sessions created anywhere (sidebar, another window, the CLI) appear in the owning project's list immediately, and open tabs stay private to the project they were opened in. Single-project behavior is unchanged when the experiment is disabled. diff --git a/.changeset/agent-manager-session-scope-selection.md b/.changeset/agent-manager-session-scope-selection.md deleted file mode 100644 index 7d34311656..0000000000 --- a/.changeset/agent-manager-session-scope-selection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Make the Agent Manager diff review follow the sidebar selection instead of a single session. Switching session tabs inside a worktree no longer refetches the Branch, Staged, and Unstaged scopes, the Session scope now swaps to the active session's changes on tab switch, and the Local tab gains the Session scope so sessions running in the workspace can be reviewed on their own. The Session scope shows a notice when snapshots are disabled instead of a blank list, worktrees without an open session now still show their branch diff, and the Apply dialog lists the worktree's changes again. diff --git a/.changeset/agent-manager-terminal-project-namespace.md b/.changeset/agent-manager-terminal-project-namespace.md deleted file mode 100644 index 7f7560042d..0000000000 --- a/.changeset/agent-manager-terminal-project-namespace.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Fix Agent Manager embedded terminals not opening in the side panel or as a tab. diff --git a/.changeset/agent-manager-terminal-shortcut-focus.md b/.changeset/agent-manager-terminal-shortcut-focus.md deleted file mode 100644 index 8d0b718198..0000000000 --- a/.changeset/agent-manager-terminal-shortcut-focus.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Make Cmd/Ctrl+/ toggle the Agent Manager terminal even when the webview keybinding forwarding drops the key while the prompt input is focused, and stop it from triggering the Agent Manager terminal while the Kilo sidebar is focused. diff --git a/.changeset/agent-manager-terminal-shortcut-platform.md b/.changeset/agent-manager-terminal-shortcut-platform.md deleted file mode 100644 index dbd2a126cb..0000000000 --- a/.changeset/agent-manager-terminal-shortcut-platform.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Match the Agent Manager terminal shortcut fallback to the platform modifier (Cmd on macOS, Ctrl elsewhere) and consume the extension echo once per keypress so unrelated invocations are no longer swallowed. diff --git a/.changeset/agent-manager-unassigned-detail-pane.md b/.changeset/agent-manager-unassigned-detail-pane.md deleted file mode 100644 index eec6218990..0000000000 --- a/.changeset/agent-manager-unassigned-detail-pane.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Fix the Agent Manager detail pane blanking when an unassigned session is selected. Clicking a session that belongs to no worktree now renders the chat and read-only banner again instead of an empty content area, and live terminal tabs stay mounted across the switch. diff --git a/.changeset/calm-cursors-fit.md b/.changeset/calm-cursors-fit.md deleted file mode 100644 index d35d8ee2d1..0000000000 --- a/.changeset/calm-cursors-fit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Keep the Agent Manager terminal cursor visible on the bottom row. diff --git a/.changeset/calm-run-terminals.md b/.changeset/calm-run-terminals.md deleted file mode 100644 index df2a4ace3d..0000000000 --- a/.changeset/calm-run-terminals.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Run Agent Manager project scripts in the terminal selected by the existing toolbar dropdown. Agent Manager panel uses the named side terminal, while VS Code terminal retains the integrated task flow. diff --git a/.changeset/cli-startup-lazy-loading.md b/.changeset/cli-startup-lazy-loading.md deleted file mode 100644 index 38571e5838..0000000000 --- a/.changeset/cli-startup-lazy-loading.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@kilocode/cli": patch -"@kilocode/kilo-telemetry": patch ---- - -Reduce CLI startup time by deferring Kilo-specific module loading until commands actually run, caching the telemetry profile lookup across invocations, and uploading telemetry in the background so process exit is not delayed by a network round trip diff --git a/.changeset/config-unset-propagation.md b/.changeset/config-unset-propagation.md deleted file mode 100644 index 82418a5635..0000000000 --- a/.changeset/config-unset-propagation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Fix settings snapping back to their previous value after being cleared to "Not set" when multiple config files exist (e.g. both `kilo.json` and `kilo.jsonc`) diff --git a/.changeset/deprecate-kilo-console.md b/.changeset/deprecate-kilo-console.md deleted file mode 100644 index 0b44e85374..0000000000 --- a/.changeset/deprecate-kilo-console.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Mark Kilo Console as deprecated and direct users to supported session and settings workflows. diff --git a/.changeset/enable-websearch-config.md b/.changeset/enable-websearch-config.md deleted file mode 100644 index cd47a9e9fb..0000000000 --- a/.changeset/enable-websearch-config.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@kilocode/cli": patch -"kilo-code": patch ---- - -Allow users to enable web search for models from all providers through Kilo configuration, VS Code settings, and Kilo Console settings. diff --git a/.changeset/fresh-rc-upgrades.md b/.changeset/fresh-rc-upgrades.md deleted file mode 100644 index 61a54ea4e2..0000000000 --- a/.changeset/fresh-rc-upgrades.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Keep RC installations up to date when a newer stable CLI release is published. diff --git a/.changeset/friendly-memories-rest.md b/.changeset/friendly-memories-rest.md deleted file mode 100644 index ff62c49064..0000000000 --- a/.changeset/friendly-memories-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/kilo-memory": patch ---- - -Accept memory digest responses that include additional model-generated fields. diff --git a/.changeset/fuzzy-otters-signal.md b/.changeset/fuzzy-otters-signal.md deleted file mode 100644 index eb802171c1..0000000000 --- a/.changeset/fuzzy-otters-signal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Report Bash commands terminated by a signal with the conventional 128 + signum exit code (e.g. 139 for SIGSEGV) instead of hanging until the command timeout. diff --git a/.changeset/fuzzy-pandas-listen.md b/.changeset/fuzzy-pandas-listen.md deleted file mode 100644 index c2d8334aec..0000000000 --- a/.changeset/fuzzy-pandas-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Persist MCP server enable and disable changes from VS Code settings across window reloads. diff --git a/.changeset/headless-run-honest-exit.md b/.changeset/headless-run-honest-exit.md deleted file mode 100644 index 37d00a8493..0000000000 --- a/.changeset/headless-run-honest-exit.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Non-interactive `kilo run` no longer reports success for runs that did not complete. A plain -headless run (neither `--auto` nor `--dangerously-skip-permissions`) in which the CLI -auto-rejected at least one permission ask now exits 1 with a stderr diagnostic naming the cause, -and a run whose session errors mid-stream now prints that diagnostic to stderr under -`--format json` as well (previously the JSON branch swallowed it). Runs that complete their turn -with no auto-rejected permission still exit 0. Under `--format json` the auto-reject path adds a -new `error` event to the stream; existing event shapes are unchanged. The same exit-1 rule applies -to a plain non-interactive `--attach` run that auto-rejects an ask (that run was equally crippled); -interactive mode is untouched. diff --git a/.changeset/jetbrains-session-diff-improvements.md b/.changeset/jetbrains-session-diff-improvements.md deleted file mode 100644 index e75be291a8..0000000000 --- a/.changeset/jetbrains-session-diff-improvements.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/kilo-jetbrains": minor ---- - -Improve JetBrains session change tracking: show the files each assistant turn modified with expandable per-file diffs, open inline and branch diffs in a refreshable diff viewer, and surface branch changes in the session header. diff --git a/.changeset/long-session-prompt-navigation.md b/.changeset/long-session-prompt-navigation.md deleted file mode 100644 index 967dde901f..0000000000 --- a/.changeset/long-session-prompt-navigation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Navigate long conversations from a compact prompt rail that loads earlier history as you scroll. diff --git a/.changeset/past-chats-worktree-family.md b/.changeset/past-chats-worktree-family.md deleted file mode 100644 index 395bee2b5a..0000000000 --- a/.changeset/past-chats-worktree-family.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Fix the `@` "Past chats" picker in Agent Manager showing only the current session's directory. It now lists previous sessions across the whole worktree family — the local workspace and every Agent Manager worktree — each labeled with its worktree name, matching the Agent Manager session search. Any listed session can be attached as context, including chats from other worktrees of the same repository. diff --git a/.changeset/persian-language.md b/.changeset/persian-language.md deleted file mode 100644 index 9e07d9e8b8..0000000000 --- a/.changeset/persian-language.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Add Persian (Farsi) as a UI language, including right-to-left layout. Contributed by Babak Safabahar. diff --git a/.changeset/quiet-config-unset.md b/.changeset/quiet-config-unset.md deleted file mode 100644 index 2a15a23e18..0000000000 --- a/.changeset/quiet-config-unset.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Allow clearing a nested project setting when no project config file exists yet. diff --git a/.changeset/quiet-terminals-switch.md b/.changeset/quiet-terminals-switch.md deleted file mode 100644 index 0306eb3475..0000000000 --- a/.changeset/quiet-terminals-switch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Open an embedded terminal automatically when switching to a worktree without one. diff --git a/.changeset/remote-cli-lifecycle.md b/.changeset/remote-cli-lifecycle.md deleted file mode 100644 index 8960b9409b..0000000000 --- a/.changeset/remote-cli-lifecycle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": minor ---- - -Remote CLI session lifecycle: create_session accepts optional agent, model, and orgId (org claim rides session metadata); CLI adopts backend renames via system session.renamed and POSTs local title changes (generation-aware) to the ingest title route so auto-titles and explicit renames stay in sync. diff --git a/.changeset/responses-stream-error-details.md b/.changeset/responses-stream-error-details.md deleted file mode 100644 index 9b9d8cff06..0000000000 --- a/.changeset/responses-stream-error-details.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Show the provider's actual error message when an OpenAI or Azure Responses API stream fails (for example an upstream rate limit) instead of a generic retry notice. diff --git a/.changeset/ripgrep-error-detail.md b/.changeset/ripgrep-error-detail.md deleted file mode 100644 index 6afe556432..0000000000 --- a/.changeset/ripgrep-error-detail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Include the underlying reason in search execution failures instead of showing a bare "ripgrep execution failed" message. diff --git a/.changeset/side-terminal-tab-parity.md b/.changeset/side-terminal-tab-parity.md deleted file mode 100644 index 715a1bfe21..0000000000 --- a/.changeset/side-terminal-tab-parity.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Make Agent Manager panel terminals behave like session tabs: right-click Close and Close Others, arrow-key tab navigation, overflow scrolling with edge fades, and stable tab widths while closing. The new-terminal button now sits directly next to the last terminal tab instead of the far edge of the panel. diff --git a/.changeset/skill-shell-execution.md b/.changeset/skill-shell-execution.md deleted file mode 100644 index 8689613673..0000000000 --- a/.changeset/skill-shell-execution.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": minor ---- - -Support executing shell commands embedded in skill files. Commands written as `` !`command` `` in a SKILL.md run and their output is inlined into the skill. Only trusted skills can run commands and `KILO_DISABLE_SKILL_SHELL` disables the behavior; when the model loads a skill, the commands are shown in a single up-front approval before running. diff --git a/.changeset/skill-shell-permission-vscode.md b/.changeset/skill-shell-permission-vscode.md deleted file mode 100644 index c6f093117a..0000000000 --- a/.changeset/skill-shell-permission-vscode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Show skill shell commands in the permission prompt. When a skill runs embedded shell commands, the approval dialog now lists every command with Allow / Reject. diff --git a/.changeset/smart-pandas-remain.md b/.changeset/smart-pandas-remain.md deleted file mode 100644 index cab4570c52..0000000000 --- a/.changeset/smart-pandas-remain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": minor ---- - -Run Agent Manager worktree setup scripts in the terminal selected by the toolbar dropdown. Agent Manager panel shows live setup output in a named `Setup` side tab that reveals itself while provisioning and hides again on success unless you engaged with the panel, while VS Code terminal retains the integrated task flow. diff --git a/.changeset/tidy-mice-report.md b/.changeset/tidy-mice-report.md deleted file mode 100644 index 3ba5fbb6e9..0000000000 --- a/.changeset/tidy-mice-report.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/kilo-telemetry": patch ---- - -Include the host operating system name, version, and architecture in telemetry events. diff --git a/.changeset/windows-locked-file-retry.md b/.changeset/windows-locked-file-retry.md deleted file mode 100644 index b6bc07c285..0000000000 --- a/.changeset/windows-locked-file-retry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@kilocode/cli": patch ---- - -Retry transient locked-file errors (EPERM/EACCES/EBUSY) on Windows when atomically saving config and other files. Background plugin installs and Windows Defender/indexer can briefly hold the temp file during the rename step, which previously surfaced as a 500 error. A short backoff now retries the rename so config writes succeed without surfacing the contention. diff --git a/.changeset/write-aware-cache-rate.md b/.changeset/write-aware-cache-rate.md deleted file mode 100644 index ad2d852104..0000000000 --- a/.changeset/write-aware-cache-rate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"kilo-code": patch ---- - -Show a write-aware cache hit rate in the VS Code session usage bar. diff --git a/bun.lock b/bun.lock index 18a6dcee68..bad9797466 100644 --- a/bun.lock +++ b/bun.lock @@ -32,7 +32,7 @@ }, "packages/core": { "name": "@opencode-ai/core", - "version": "7.4.17", + "version": "7.4.18", "bin": { "opencode": "./bin/opencode", }, @@ -127,7 +127,7 @@ }, "packages/effect-drizzle-sqlite": { "name": "@opencode-ai/effect-drizzle-sqlite", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "drizzle-orm": "catalog:", "effect": "catalog:", @@ -141,7 +141,7 @@ }, "packages/effect-sqlite-node": { "name": "@opencode-ai/effect-sqlite-node", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "effect": "catalog:", }, @@ -153,7 +153,7 @@ }, "packages/http-recorder": { "name": "@opencode-ai/http-recorder", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@effect/platform-node": "4.0.0-beta.74", "@effect/platform-node-shared": "4.0.0-beta.74", @@ -174,7 +174,7 @@ }, "packages/kilo-console": { "name": "@kilocode/kilo-console", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/kilo-indexing": "workspace:*", "@kilocode/kilo-web-ui": "workspace:*", @@ -197,7 +197,7 @@ }, "packages/kilo-docs": { "name": "@kilocode/kilo-docs", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@docsearch/css": "^4", "@docsearch/js": "^4", @@ -227,7 +227,7 @@ }, "packages/kilo-gateway": { "name": "@kilocode/kilo-gateway", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@ai-sdk/alibaba": "1.0.17", "@ai-sdk/anthropic": "3.0.82", @@ -263,7 +263,7 @@ }, "packages/kilo-i18n": { "name": "@kilocode/kilo-i18n", - "version": "7.4.17", + "version": "7.4.18", "devDependencies": { "@tsconfig/node22": "catalog:", "@types/bun": "catalog:", @@ -273,7 +273,7 @@ }, "packages/kilo-indexing": { "name": "@kilocode/kilo-indexing", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@aws-sdk/client-bedrock-runtime": "3.1005.0", "@aws-sdk/credential-provider-ini": "3.972.31", @@ -305,11 +305,11 @@ }, "packages/kilo-jetbrains": { "name": "@kilocode/kilo-jetbrains", - "version": "7.4.16", + "version": "7.4.17", }, "packages/kilo-memory": { "name": "@kilocode/kilo-memory", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "effect": "catalog:", "zod": "catalog:", @@ -323,7 +323,7 @@ }, "packages/kilo-sandbox": { "name": "@kilocode/sandbox", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@anthropic-ai/sandbox-runtime": "catalog:", "effect": "catalog:", @@ -338,7 +338,7 @@ }, "packages/kilo-telemetry": { "name": "@kilocode/kilo-telemetry", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/kilo-gateway": "workspace:*", "posthog-node": "4.4.0", @@ -352,7 +352,7 @@ }, "packages/kilo-ui": { "name": "@kilocode/kilo-ui", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/sdk": "workspace:*", "@kobalte/core": "0.13.11", @@ -389,7 +389,7 @@ }, "packages/kilo-vscode": { "name": "kilo-code", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@anthropic-ai/sdk": "^0.39.0", "@kilocode/kilo-gateway": "workspace:*", @@ -458,7 +458,7 @@ }, "packages/kilo-web-ui": { "name": "@kilocode/kilo-web-ui", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/kilo-ui": "workspace:*", "@kobalte/core": "catalog:", @@ -475,7 +475,7 @@ }, "packages/llm": { "name": "@opencode-ai/llm", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@smithy/eventstream-codec": "4.2.14", "@smithy/util-utf8": "4.2.2", @@ -493,7 +493,7 @@ }, "packages/opencode": { "name": "@kilocode/cli", - "version": "7.4.17", + "version": "7.4.18", "bin": { "kilo": "./bin/kilo", "kilocode": "./bin/kilo", @@ -660,7 +660,7 @@ }, "packages/plugin": { "name": "@kilocode/plugin", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/sdk": "workspace:*", "effect": "catalog:", @@ -688,7 +688,7 @@ }, "packages/plugin-atomic-chat": { "name": "@kilocode/plugin-atomic-chat", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/plugin": "workspace:*", }, @@ -702,7 +702,7 @@ }, "packages/script": { "name": "@opencode-ai/script", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "semver": "^7.6.3", }, @@ -713,7 +713,7 @@ }, "packages/sdk/js": { "name": "@kilocode/sdk", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "cross-spawn": "catalog:", }, @@ -728,7 +728,7 @@ }, "packages/server": { "name": "@opencode-ai/server", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@opencode-ai/core": "workspace:*", "drizzle-orm": "catalog:", @@ -742,7 +742,7 @@ }, "packages/storybook": { "name": "@opencode-ai/storybook", - "version": "7.4.17", + "version": "7.4.18", "devDependencies": { "@opencode-ai/ui": "workspace:*", "@solidjs/meta": "catalog:", @@ -765,7 +765,7 @@ }, "packages/tui": { "name": "@opencode-ai/tui", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/plugin": "workspace:*", "@kilocode/sdk": "workspace:*", @@ -792,7 +792,7 @@ }, "packages/ui": { "name": "@opencode-ai/ui", - "version": "7.4.17", + "version": "7.4.18", "dependencies": { "@kilocode/sdk": "workspace:*", "@kobalte/core": "catalog:", diff --git a/package.json b/package.json index 9a36adf04e..cb7a4a91b0 100644 --- a/package.json +++ b/package.json @@ -173,6 +173,6 @@ "pacote@21.5.1": "patches/pacote@21.5.1.patch", "mammoth@1.12.0": "patches/mammoth@1.12.0.patch" }, - "version": "7.4.17", + "version": "7.4.18", "peerDependencies": {} } diff --git a/packages/core/package.json b/packages/core/package.json index 35301f1ac3..e07c580a5d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@opencode-ai/core", "type": "module", "license": "MIT", diff --git a/packages/effect-drizzle-sqlite/package.json b/packages/effect-drizzle-sqlite/package.json index bdc5267013..7303d76d7c 100644 --- a/packages/effect-drizzle-sqlite/package.json +++ b/packages/effect-drizzle-sqlite/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@opencode-ai/effect-drizzle-sqlite", "type": "module", "license": "MIT", diff --git a/packages/effect-sqlite-node/package.json b/packages/effect-sqlite-node/package.json index c5863bfad0..2b297b5ecb 100644 --- a/packages/effect-sqlite-node/package.json +++ b/packages/effect-sqlite-node/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@opencode-ai/effect-sqlite-node", "type": "module", "license": "MIT", diff --git a/packages/extensions/zed/extension.toml b/packages/extensions/zed/extension.toml index a912fd5940..5321bca1b3 100644 --- a/packages/extensions/zed/extension.toml +++ b/packages/extensions/zed/extension.toml @@ -1,7 +1,7 @@ id = "kilo" name = "Kilo" description = "The open source coding agent." -version = "7.4.17" +version = "7.4.18" schema_version = 1 authors = ["Anomaly"] repository = "https://github.com/Kilo-Org/kilocode" @@ -11,26 +11,26 @@ name = "Kilo" icon = "./icons/opencode.svg" [agent_servers.opencode.targets.darwin-aarch64] -archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.17/opencode-darwin-arm64.zip" +archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.18/opencode-darwin-arm64.zip" cmd = "./opencode" args = ["acp"] [agent_servers.opencode.targets.darwin-x86_64] -archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.17/opencode-darwin-x64.zip" +archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.18/opencode-darwin-x64.zip" cmd = "./opencode" args = ["acp"] [agent_servers.opencode.targets.linux-aarch64] -archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.17/opencode-linux-arm64.tar.gz" +archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.18/opencode-linux-arm64.tar.gz" cmd = "./opencode" args = ["acp"] [agent_servers.opencode.targets.linux-x86_64] -archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.17/opencode-linux-x64.tar.gz" +archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.18/opencode-linux-x64.tar.gz" cmd = "./opencode" args = ["acp"] [agent_servers.opencode.targets.windows-x86_64] -archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.17/opencode-windows-x64.zip" +archive = "https://github.com/Kilo-Org/kilocode/releases/download/v7.4.18/opencode-windows-x64.zip" cmd = "./opencode.exe" args = ["acp"] diff --git a/packages/http-recorder/package.json b/packages/http-recorder/package.json index 46de980c7a..ff408eb430 100644 --- a/packages/http-recorder/package.json +++ b/packages/http-recorder/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@opencode-ai/http-recorder", "description": "Record and replay Effect HTTP client traffic with deterministic cassettes", "type": "module", diff --git a/packages/kilo-console/package.json b/packages/kilo-console/package.json index 53ac288500..c9097a403c 100755 --- a/packages/kilo-console/package.json +++ b/packages/kilo-console/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/kilo-console", - "version": "7.4.17", + "version": "7.4.18", "private": true, "type": "module", "scripts": { diff --git a/packages/kilo-docs/package.json b/packages/kilo-docs/package.json index 742763dd4d..5f296eedea 100644 --- a/packages/kilo-docs/package.json +++ b/packages/kilo-docs/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/kilo-docs", - "version": "7.4.17", + "version": "7.4.18", "private": true, "scripts": { "dev": "next dev --webpack --port 3002", diff --git a/packages/kilo-gateway/package.json b/packages/kilo-gateway/package.json index 233cea6995..e55bbbdd5d 100644 --- a/packages/kilo-gateway/package.json +++ b/packages/kilo-gateway/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/kilo-gateway", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "description": "Unified Kilo Gateway package for OpenCode - authentication, provider, and API integration", diff --git a/packages/kilo-i18n/package.json b/packages/kilo-i18n/package.json index e50df8969b..b74de939f7 100644 --- a/packages/kilo-i18n/package.json +++ b/packages/kilo-i18n/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/kilo-i18n", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "description": "Kilo-specific i18n translations and overrides", diff --git a/packages/kilo-indexing/package.json b/packages/kilo-indexing/package.json index fd56507373..7f2e39eea5 100644 --- a/packages/kilo-indexing/package.json +++ b/packages/kilo-indexing/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/kilo-indexing", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "description": "Standalone indexing engine and host helpers for Kilo Code", diff --git a/packages/kilo-jetbrains/CHANGELOG.md b/packages/kilo-jetbrains/CHANGELOG.md index 85a7e4a31f..1fe8a38d92 100644 --- a/packages/kilo-jetbrains/CHANGELOG.md +++ b/packages/kilo-jetbrains/CHANGELOG.md @@ -4,6 +4,12 @@ ### Minor Changes +- [#12612](https://github.com/Kilo-Org/kilocode/pull/12612) [`a103f4a`](https://github.com/Kilo-Org/kilocode/commit/a103f4abf91c2d3192c11f18d4a56f54b0dafe25) - Improve JetBrains session change tracking: show the files each assistant turn modified with expandable per-file diffs, open inline and branch diffs in a refreshable diff viewer, and surface branch changes in the session header. + +## 7.5.0 + +### Minor Changes + - [#12518](https://github.com/Kilo-Org/kilocode/pull/12518) [`452d0eb`](https://github.com/Kilo-Org/kilocode/commit/452d0eb55f740e951cfd906375e22cf97250144c) - Publish a signed GitHub-hosted JetBrains plugin build with the CLI bundled for offline installation. ### Patch Changes @@ -115,6 +121,7 @@ ## [7.0.12-rc.3] - 2026-07-31 ### Added + - feat(agent-manager): add embedded side-panel terminal destination by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12598 - feat(opencode): route websearch Exa through Kilo proxy by @IamCoder18 in https://github.com/Kilo-Org/kilocode/pull/12470 - feat(agent-manager): reveal jump shortcut badges while modifier is held by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12631 @@ -138,6 +145,7 @@ - feat(jetbrains): improve session changes and diff review by @kirillk in https://github.com/Kilo-Org/kilocode/pull/12612 ### Fixed + - fix(cli): enforce permissions on shell commands the parser fails to scan by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12585 - fix(ci): docs-sync bot — no errors, no timeouts, no lost PRs by @iscekic in https://github.com/Kilo-Org/kilocode/pull/12580 - fix(cli): prevent agent-loop freeze when a provider stalls after headers by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12588 @@ -180,6 +188,7 @@ - fix(cli): suppress AI SDK system message warning in TUI by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12739 ### Changed + - release(jetbrains): v7.0.12-rc.2 by @kilo-maintainer[bot] in https://github.com/Kilo-Org/kilocode/pull/12581 - chore(opencode): merge v1.17.6 through v1.17.9 by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12460 - refactor(vscode): remove dead code from Agent Manager by @marius-kilocode in https://github.com/Kilo-Org/kilocode/pull/12594 @@ -206,7 +215,6 @@ - chore(jetbrains): bump CLI pin to v7.4.17 by @kilo-maintainer[bot] in https://github.com/Kilo-Org/kilocode/pull/12644 - docs(cli): deprecate Kilo Console by @lambertjosh in https://github.com/Kilo-Org/kilocode/pull/12701 - ## [7.0.12-rc.2] - 2026-07-27 ### Added diff --git a/packages/kilo-memory/package.json b/packages/kilo-memory/package.json index d48bcabe87..4989cfc0f2 100644 --- a/packages/kilo-memory/package.json +++ b/packages/kilo-memory/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/kilo-memory", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "description": "Project memory storage, indexing, recall, and command helpers for Kilo Code", diff --git a/packages/kilo-sandbox/package.json b/packages/kilo-sandbox/package.json index b57728afed..1355fc2e07 100644 --- a/packages/kilo-sandbox/package.json +++ b/packages/kilo-sandbox/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/sandbox", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "private": true, diff --git a/packages/kilo-telemetry/package.json b/packages/kilo-telemetry/package.json index 36243e82c9..63a0131565 100644 --- a/packages/kilo-telemetry/package.json +++ b/packages/kilo-telemetry/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/kilo-telemetry", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "description": "Telemetry for Kilo CLI - PostHog analytics integration", diff --git a/packages/kilo-ui/package.json b/packages/kilo-ui/package.json index 25e78d8ac0..3744324984 100644 --- a/packages/kilo-ui/package.json +++ b/packages/kilo-ui/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/kilo-ui", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "exports": { diff --git a/packages/kilo-vscode/CHANGELOG.md b/packages/kilo-vscode/CHANGELOG.md index 8e0e1d920c..5a7cdeac28 100644 --- a/packages/kilo-vscode/CHANGELOG.md +++ b/packages/kilo-vscode/CHANGELOG.md @@ -1,5 +1,54 @@ # kilo-code +## 7.4.18 + +### Minor Changes + +- [#12681](https://github.com/Kilo-Org/kilocode/pull/12681) [`3ab1122`](https://github.com/Kilo-Org/kilocode/commit/3ab1122e0fbbff5c6821acb21df7d3d93f52955f) - Add a scope selector and base branch picker to the Agent Manager diff review. The side panel and full-screen review now let you switch between Branch, Staged, Unstaged, and Session scopes for the selected worktree, and the Branch scope's base branch can be overridden from a picker next to it. Branch stays the default, so existing review behavior is unchanged. + +- [#12566](https://github.com/Kilo-Org/kilocode/pull/12566) [`46b7e55`](https://github.com/Kilo-Org/kilocode/commit/46b7e55f8d8f1e4b0722076b09d4a56bf8031939) - Add an experimental multi-project foundation for Agent Manager behind the Multi-Project Agent Manager toggle in Kilo Settings > Experimental. A persistent project registry catalogs additional Git repositories across restarts while the current workspace repository stays the pinned default project, and all repository-bound services (state, worktrees, setup scripts, stale tracking, polling) are now owned by immutable per-project contexts that can be activated, expanded, and switched through new project protocol messages. Every expanded project runs its own git stats and PR pollers, so all visible project accordions show live data at the same time; switching projects keeps previously visited projects expanded and restores the exact worktree or session that was open there. Sessions created anywhere (sidebar, another window, the CLI) appear in the owning project's list immediately, and open tabs stay private to the project they were opened in. Single-project behavior is unchanged when the experiment is disabled. + +- [#12709](https://github.com/Kilo-Org/kilocode/pull/12709) [`5c140b1`](https://github.com/Kilo-Org/kilocode/commit/5c140b12cf54d883e3a31329e07dbdd2d4b38829) - Make the Agent Manager diff review follow the sidebar selection instead of a single session. Switching session tabs inside a worktree no longer refetches the Branch, Staged, and Unstaged scopes, the Session scope now swaps to the active session's changes on tab switch, and the Local tab gains the Session scope so sessions running in the workspace can be reviewed on their own. The Session scope shows a notice when snapshots are disabled instead of a blank list, worktrees without an open session now still show their branch diff, and the Apply dialog lists the worktree's changes again. + +- [#12680](https://github.com/Kilo-Org/kilocode/pull/12680) [`49223b3`](https://github.com/Kilo-Org/kilocode/commit/49223b3adecb891b185d7a21bac8d4993d3bee65) - Run Agent Manager project scripts in the terminal selected by the existing toolbar dropdown. Agent Manager panel uses the named side terminal, while VS Code terminal retains the integrated task flow. + +- [#12424](https://github.com/Kilo-Org/kilocode/pull/12424) [`d6380b2`](https://github.com/Kilo-Org/kilocode/commit/d6380b246b0d0ad99e5cf2084d97e381f1bc94e3) Thanks [@bsflasher](https://github.com/bsflasher)! - Add Persian (Farsi) as a UI language, including right-to-left layout. Contributed by Babak Safabahar. + +- [#12606](https://github.com/Kilo-Org/kilocode/pull/12606) [`286b672`](https://github.com/Kilo-Org/kilocode/commit/286b67265f6be79b14bb3ca4051880339c695c3f) Thanks [@bagatao-anaconda](https://github.com/bagatao-anaconda)! - Show skill shell commands in the permission prompt. When a skill runs embedded shell commands, the approval dialog now lists every command with Allow / Reject. + +- [#12703](https://github.com/Kilo-Org/kilocode/pull/12703) [`5076b62`](https://github.com/Kilo-Org/kilocode/commit/5076b629741e4cae71277405470f7c382f800bb3) - Run Agent Manager worktree setup scripts in the terminal selected by the toolbar dropdown. Agent Manager panel shows live setup output in a named `Setup` side tab that reveals itself while provisioning and hides again on success unless you engaged with the panel, while VS Code terminal retains the integrated task flow. + +### Patch Changes + +- [#12696](https://github.com/Kilo-Org/kilocode/pull/12696) [`a2b22d0`](https://github.com/Kilo-Org/kilocode/commit/a2b22d07c2b773dcbcc71b8e6999a9bd1c118b91) - Apply the Agent Manager base branch picker selection to the active diff immediately. Changing the base branch now refreshes the diff against the new base instead of keeping the previous comparison until the scope or session changed. + +- [#12720](https://github.com/Kilo-Org/kilocode/pull/12720) [`57a9a60`](https://github.com/Kilo-Org/kilocode/commit/57a9a6012c7eac98a7a0704443f671101935a795) - Fix Agent Manager embedded terminals not opening in the side panel or as a tab. + +- [#12691](https://github.com/Kilo-Org/kilocode/pull/12691) [`301c14e`](https://github.com/Kilo-Org/kilocode/commit/301c14e558caf1deb4510be847f6ba3fba804a5d) - Make Cmd/Ctrl+/ toggle the Agent Manager terminal even when the webview keybinding forwarding drops the key while the prompt input is focused, and stop it from triggering the Agent Manager terminal while the Kilo sidebar is focused. + +- [#12694](https://github.com/Kilo-Org/kilocode/pull/12694) [`af6bb00`](https://github.com/Kilo-Org/kilocode/commit/af6bb00eed3fec25429bb459db95709667761909) - Match the Agent Manager terminal shortcut fallback to the platform modifier (Cmd on macOS, Ctrl elsewhere) and consume the extension echo once per keypress so unrelated invocations are no longer swallowed. + +- [#12722](https://github.com/Kilo-Org/kilocode/pull/12722) [`5678c09`](https://github.com/Kilo-Org/kilocode/commit/5678c09cf54ed73e4d712a87bca730ee0d64001d) - Fix the Agent Manager detail pane blanking when an unassigned session is selected. Clicking a session that belongs to no worktree now renders the chat and read-only banner again instead of an empty content area, and live terminal tabs stay mounted across the switch. + +- [#12658](https://github.com/Kilo-Org/kilocode/pull/12658) [`dbcd582`](https://github.com/Kilo-Org/kilocode/commit/dbcd5825da6a3253015f6c38e55a7faf5d1715b8) - Keep the Agent Manager terminal cursor visible on the bottom row. + +- [#12369](https://github.com/Kilo-Org/kilocode/pull/12369) [`44f1373`](https://github.com/Kilo-Org/kilocode/commit/44f13738a30668483a2cc5c22c6ba82a718cdb90) - Allow users to enable web search for models from all providers through Kilo configuration, VS Code settings, and Kilo Console settings. + +- [#12624](https://github.com/Kilo-Org/kilocode/pull/12624) [`af4cb42`](https://github.com/Kilo-Org/kilocode/commit/af4cb422038538643fe0303674ceeb43b6d7185b) Thanks [@Hardik180704](https://github.com/Hardik180704)! - Persist MCP server enable and disable changes from VS Code settings across window reloads. + +- [#12656](https://github.com/Kilo-Org/kilocode/pull/12656) [`f0d2c8f`](https://github.com/Kilo-Org/kilocode/commit/f0d2c8ffc801ae964bb3821500ed4b116de5bccd) - Navigate long conversations from a compact prompt rail that loads earlier history as you scroll. + +- [#12692](https://github.com/Kilo-Org/kilocode/pull/12692) [`faf0236`](https://github.com/Kilo-Org/kilocode/commit/faf0236ca4208ac798407fe70f86845a1de0b510) - Fix the `@` "Past chats" picker in Agent Manager showing only the current session's directory. It now lists previous sessions across the whole worktree family — the local workspace and every Agent Manager worktree — each labeled with its worktree name, matching the Agent Manager session search. Any listed session can be attached as context, including chats from other worktrees of the same repository. + +- [#12689](https://github.com/Kilo-Org/kilocode/pull/12689) [`1cd81a9`](https://github.com/Kilo-Org/kilocode/commit/1cd81a9e1f973574271cc3cee1051ed37e22422f) - Open an embedded terminal automatically when switching to a worktree without one. + +- [#12693](https://github.com/Kilo-Org/kilocode/pull/12693) [`1e2a7f1`](https://github.com/Kilo-Org/kilocode/commit/1e2a7f17d7242ce48eb46e7268ebcdefed8b8336) - Make Agent Manager panel terminals behave like session tabs: right-click Close and Close Others, arrow-key tab navigation, overflow scrolling with edge fades, and stable tab widths while closing. The new-terminal button now sits directly next to the last terminal tab instead of the far edge of the panel. + +- [#12738](https://github.com/Kilo-Org/kilocode/pull/12738) [`84b8b96`](https://github.com/Kilo-Org/kilocode/commit/84b8b9676a3912793f8bf38208b38760f6e79b17) - Show a write-aware cache hit rate in the VS Code session usage bar. + +- Updated dependencies [[`0d923d0`](https://github.com/Kilo-Org/kilocode/commit/0d923d0ef56d42cd7eb6d1e2d5fc58c7b508a80b)]: + - @kilocode/kilo-memory@7.4.18 + ## 7.4.17 ### Minor Changes diff --git a/packages/kilo-vscode/package.json b/packages/kilo-vscode/package.json index 40269facce..8f50182e1e 100644 --- a/packages/kilo-vscode/package.json +++ b/packages/kilo-vscode/package.json @@ -2,7 +2,7 @@ "name": "kilo-code", "displayName": "Kilo Code: AI Coding Agent, Copilot, and Autocomplete", "description": "Open Source AI coding agent that generates code from natural language, automates tasks, and runs terminal commands. Features inline autocomplete, browser automation, automated refactoring, and custom modes for planning, coding, and debugging. Supports 500+ AI models including Claude (Anthropic), Gemini, Grok, GPT, Codex and GLM.", - "version": "7.4.17", + "version": "7.4.18", "icon": "assets/icons/logo-outline-black.png", "galleryBanner": { "color": "#FFFFFF", diff --git a/packages/kilo-vscode/tests/package.json b/packages/kilo-vscode/tests/package.json index 52e607fbd4..0219e54e36 100644 --- a/packages/kilo-vscode/tests/package.json +++ b/packages/kilo-vscode/tests/package.json @@ -1,6 +1,6 @@ { "type": "module", - "version": "7.4.17", + "version": "7.4.18", "dependencies": {}, "devDependencies": {}, "peerDependencies": {} diff --git a/packages/kilo-web-ui/package.json b/packages/kilo-web-ui/package.json index a831a4ea50..b0cc608f59 100644 --- a/packages/kilo-web-ui/package.json +++ b/packages/kilo-web-ui/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/kilo-web-ui", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "exports": { diff --git a/packages/llm/package.json b/packages/llm/package.json index fe0a6c4e55..f47683b9d2 100644 --- a/packages/llm/package.json +++ b/packages/llm/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@opencode-ai/llm", "type": "module", "license": "MIT", diff --git a/packages/opencode/CHANGELOG.md b/packages/opencode/CHANGELOG.md index 13eef058d4..42fac90936 100644 --- a/packages/opencode/CHANGELOG.md +++ b/packages/opencode/CHANGELOG.md @@ -1,5 +1,49 @@ # @kilocode/cli +## 7.4.18 + +### Minor Changes + +- [#12704](https://github.com/Kilo-Org/kilocode/pull/12704) [`ace509d`](https://github.com/Kilo-Org/kilocode/commit/ace509dc60ac4e25aa81fbd6e6f569d0f47367a6) - Remote CLI session lifecycle: create_session accepts optional agent, model, and orgId (org claim rides session metadata); CLI adopts backend renames via system session.renamed and POSTs local title changes (generation-aware) to the ingest title route so auto-titles and explicit renames stay in sync. + +- [#12604](https://github.com/Kilo-Org/kilocode/pull/12604) [`2d784a0`](https://github.com/Kilo-Org/kilocode/commit/2d784a0e3162818afdb89b2c2352e45fdaaa8c6d) Thanks [@bagatao-anaconda](https://github.com/bagatao-anaconda)! - Support executing shell commands embedded in skill files. Commands written as `` !`command` `` in a SKILL.md run and their output is inlined into the skill. Only trusted skills can run commands and `KILO_DISABLE_SKILL_SHELL` disables the behavior; when the model loads a skill, the commands are shown in a single up-front approval before running. + +### Patch Changes + +- [#12682](https://github.com/Kilo-Org/kilocode/pull/12682) [`ed9e132`](https://github.com/Kilo-Org/kilocode/commit/ed9e132bd89557af41df19ea6b82936d098f0140) - Reduce CLI startup time by deferring Kilo-specific module loading until commands actually run, caching the telemetry profile lookup across invocations, and uploading telemetry in the background so process exit is not delayed by a network round trip + +- [#12687](https://github.com/Kilo-Org/kilocode/pull/12687) [`624b589`](https://github.com/Kilo-Org/kilocode/commit/624b5890f10bc0f60c50a191cd7bc82fac9574d0) - Fix settings snapping back to their previous value after being cleared to "Not set" when multiple config files exist (e.g. both `kilo.json` and `kilo.jsonc`) + +- [#12701](https://github.com/Kilo-Org/kilocode/pull/12701) [`89caab9`](https://github.com/Kilo-Org/kilocode/commit/89caab9e0cf65b33c73542e9eaae986583952563) - Mark Kilo Console as deprecated and direct users to supported session and settings workflows. + +- [#12369](https://github.com/Kilo-Org/kilocode/pull/12369) [`44f1373`](https://github.com/Kilo-Org/kilocode/commit/44f13738a30668483a2cc5c22c6ba82a718cdb90) - Allow users to enable web search for models from all providers through Kilo configuration, VS Code settings, and Kilo Console settings. + +- [#12647](https://github.com/Kilo-Org/kilocode/pull/12647) [`5ad8b2f`](https://github.com/Kilo-Org/kilocode/commit/5ad8b2f1261a920354c1c79371300cca7ecc3b66) - Keep RC installations up to date when a newer stable CLI release is published. + +- [#12698](https://github.com/Kilo-Org/kilocode/pull/12698) [`1d1630b`](https://github.com/Kilo-Org/kilocode/commit/1d1630b3462caa16716af608deaff14ea0e155a5) - Report Bash commands terminated by a signal with the conventional 128 + signum exit code (e.g. 139 for SIGSEGV) instead of hanging until the command timeout. + +- [#12605](https://github.com/Kilo-Org/kilocode/pull/12605) [`d579774`](https://github.com/Kilo-Org/kilocode/commit/d5797749608bd2824b24774a04fe7fadfd47b6d6) - Non-interactive `kilo run` no longer reports success for runs that did not complete. A plain + headless run (neither `--auto` nor `--dangerously-skip-permissions`) in which the CLI + auto-rejected at least one permission ask now exits 1 with a stderr diagnostic naming the cause, + and a run whose session errors mid-stream now prints that diagnostic to stderr under + `--format json` as well (previously the JSON branch swallowed it). Runs that complete their turn + with no auto-rejected permission still exit 0. Under `--format json` the auto-reject path adds a + new `error` event to the stream; existing event shapes are unchanged. The same exit-1 rule applies + to a plain non-interactive `--attach` run that auto-rejects an ask (that run was equally crippled); + interactive mode is untouched. + +- [#12727](https://github.com/Kilo-Org/kilocode/pull/12727) [`1a34037`](https://github.com/Kilo-Org/kilocode/commit/1a340371f4038a6dcb6e98389a6e2c20755de6bd) - Allow clearing a nested project setting when no project config file exists yet. + +- [#12700](https://github.com/Kilo-Org/kilocode/pull/12700) [`f695425`](https://github.com/Kilo-Org/kilocode/commit/f6954253284c0eccb72f2011b11dbb2136511a82) - Show the provider's actual error message when an OpenAI or Azure Responses API stream fails (for example an upstream rate limit) instead of a generic retry notice. + +- [#12684](https://github.com/Kilo-Org/kilocode/pull/12684) [`d7f8da9`](https://github.com/Kilo-Org/kilocode/commit/d7f8da917eeeead9e26234edaf45eb419ad27fce) - Include the underlying reason in search execution failures instead of showing a bare "ripgrep execution failed" message. + +- [#12723](https://github.com/Kilo-Org/kilocode/pull/12723) [`a1ad65e`](https://github.com/Kilo-Org/kilocode/commit/a1ad65e5229156bfa7d404fcbaa98ad70462197f) - Retry transient locked-file errors (EPERM/EACCES/EBUSY) on Windows when atomically saving config and other files. Background plugin installs and Windows Defender/indexer can briefly hold the temp file during the rename step, which previously surfaced as a 500 error. A short backoff now retries the rename so config writes succeed without surfacing the contention. + +- Updated dependencies [[`ed9e132`](https://github.com/Kilo-Org/kilocode/commit/ed9e132bd89557af41df19ea6b82936d098f0140), [`0d923d0`](https://github.com/Kilo-Org/kilocode/commit/0d923d0ef56d42cd7eb6d1e2d5fc58c7b508a80b), [`304c75e`](https://github.com/Kilo-Org/kilocode/commit/304c75e600cfbb0ec52b9c11e60b5782e4af5a37)]: + - @kilocode/kilo-telemetry@7.4.18 + - @kilocode/kilo-memory@7.4.18 + ## 7.4.17 ### Patch Changes diff --git a/packages/opencode/package.json b/packages/opencode/package.json index c49f699905..ea7b37fb09 100644 --- a/packages/opencode/package.json +++ b/packages/opencode/package.json @@ -1,6 +1,6 @@ { "$schema": "https://json.schemastore.org/package.json", - "version": "7.4.17", + "version": "7.4.18", "name": "@kilocode/cli", "type": "module", "license": "MIT", diff --git a/packages/plugin-atomic-chat/package.json b/packages/plugin-atomic-chat/package.json index 2409e9af79..554a5f527b 100644 --- a/packages/plugin-atomic-chat/package.json +++ b/packages/plugin-atomic-chat/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/plugin-atomic-chat", - "version": "7.4.17", + "version": "7.4.18", "description": "Kilo Code plugin for Atomic Chat: auto-detection and dynamic model discovery (OpenAI-compatible local API)", "type": "module", "license": "MIT", diff --git a/packages/plugin/package.json b/packages/plugin/package.json index 455be0c020..305899105c 100644 --- a/packages/plugin/package.json +++ b/packages/plugin/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/plugin", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "scripts": { diff --git a/packages/script/package.json b/packages/script/package.json index a4b2c4545b..9c6851dab3 100644 --- a/packages/script/package.json +++ b/packages/script/package.json @@ -12,6 +12,6 @@ "exports": { ".": "./src/index.ts" }, - "version": "7.4.17", + "version": "7.4.18", "peerDependencies": {} } diff --git a/packages/sdk/js/package.json b/packages/sdk/js/package.json index 4446c5f1de..f7f1d7ecda 100644 --- a/packages/sdk/js/package.json +++ b/packages/sdk/js/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@kilocode/sdk", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "scripts": { diff --git a/packages/sdk/js/src/v2/gen/sdk.gen.ts b/packages/sdk/js/src/v2/gen/sdk.gen.ts index 8370f418b1..11c459be77 100644 --- a/packages/sdk/js/src/v2/gen/sdk.gen.ts +++ b/packages/sdk/js/src/v2/gen/sdk.gen.ts @@ -10517,6 +10517,7 @@ export class Pty2 extends HeyApiClient { "location[workspace]"?: string cursor?: string ticket?: string + replayExited?: string }, options?: Options, ) { @@ -10530,6 +10531,7 @@ export class Pty2 extends HeyApiClient { { in: "query", key: "location[workspace]" }, { in: "query", key: "cursor" }, { in: "query", key: "ticket" }, + { in: "query", key: "replayExited" }, ], }, ], diff --git a/packages/sdk/js/src/v2/gen/types.gen.ts b/packages/sdk/js/src/v2/gen/types.gen.ts index d947b97ead..e5f39340d5 100644 --- a/packages/sdk/js/src/v2/gen/types.gen.ts +++ b/packages/sdk/js/src/v2/gen/types.gen.ts @@ -19,6 +19,7 @@ export type Event = | EventInteractiveTerminalData | EventInteractiveTerminalDeleted | EventSandboxStatusChanged + | EventLspClientDiagnostics | EventSuggestionShown | EventSuggestionAccepted | EventSuggestionDismissed @@ -28,12 +29,12 @@ export type Event = | EventKilocodeNotebookRequested | EventKilocodeNotebookCancelled | EventKiloSessionsRemoteStatusChanged - | EventLspClientDiagnostics | EventMemoryStatus1 | EventMemoryUpdated1 | EventMemoryError1 | EventIndexingStatus | EventIndexingWarning + | EventModelsDevRefreshed | EventServerConnected | EventGlobalDisposed | EventGlobalConfigUpdated @@ -90,16 +91,13 @@ export type Event = | EventMessagePartDelta | EventSessionDiff | EventSessionError - | EventModelsDevRefreshed | EventInstallationUpdated | EventInstallationUpdateAvailable - | EventPermissionAsked - | EventPermissionReplied - | EventReferenceUpdated + | EventFileEdited | EventPermissionV2Asked | EventPermissionV2Replied + | EventReferenceUpdated | EventProjectDirectoriesUpdated - | EventFileEdited | EventFileWatcherUpdated | EventPtyCreated | EventPtyUpdated @@ -109,13 +107,15 @@ export type Event = | EventQuestionV2Replied | EventQuestionV2Rejected | EventTodoUpdated + | EventLspUpdated + | EventPermissionAsked + | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventSessionCompacted | EventCommandExecuted | EventProjectUpdated | EventVcsBranchUpdated - | EventLspUpdated | EventWorkspaceReady | EventWorkspaceFailed | EventWorkspaceStatus @@ -1072,6 +1072,7 @@ export type GlobalEvent = { | EventInteractiveTerminalData | EventInteractiveTerminalDeleted | EventSandboxStatusChanged + | EventLspClientDiagnostics | EventSuggestionShown | EventSuggestionAccepted | EventSuggestionDismissed @@ -1081,12 +1082,12 @@ export type GlobalEvent = { | EventKilocodeNotebookRequested | EventKilocodeNotebookCancelled | EventKiloSessionsRemoteStatusChanged - | EventLspClientDiagnostics | EventMemoryStatus | EventMemoryUpdated | EventMemoryError | EventIndexingStatus | EventIndexingWarning + | EventModelsDevRefreshed | EventServerConnected | EventGlobalDisposed | EventGlobalConfigUpdated @@ -1143,16 +1144,13 @@ export type GlobalEvent = { | EventMessagePartDelta | EventSessionDiff | EventSessionError - | EventModelsDevRefreshed | EventInstallationUpdated | EventInstallationUpdateAvailable - | EventPermissionAsked - | EventPermissionReplied - | EventReferenceUpdated + | EventFileEdited | EventPermissionV2Asked | EventPermissionV2Replied + | EventReferenceUpdated | EventProjectDirectoriesUpdated - | EventFileEdited | EventFileWatcherUpdated | EventPtyCreated | EventPtyUpdated @@ -1162,13 +1160,15 @@ export type GlobalEvent = { | EventQuestionV2Replied | EventQuestionV2Rejected | EventTodoUpdated + | EventLspUpdated + | EventPermissionAsked + | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventSessionCompacted | EventCommandExecuted | EventProjectUpdated | EventVcsBranchUpdated - | EventLspUpdated | EventWorkspaceReady | EventWorkspaceFailed | EventWorkspaceStatus @@ -3708,6 +3708,15 @@ export type EventSandboxStatusChanged = { } } +export type EventLspClientDiagnostics = { + id: string + type: "lsp.client.diagnostics" + properties: { + serverID: string + path: string + } +} + export type EventSuggestionShown = { id: string type: "suggestion.shown" @@ -3807,15 +3816,6 @@ export type EventKiloSessionsRemoteStatusChanged = { } } -export type EventLspClientDiagnostics = { - id: string - type: "lsp.client.diagnostics" - properties: { - serverID: string - path: string - } -} - export type EventMemoryStatus = { id: string type: "memory.status" @@ -3941,6 +3941,14 @@ export type EventIndexingWarning = { properties: IndexingWarning } +export type EventModelsDevRefreshed = { + id: string + type: "models-dev.refreshed" + properties: { + [key: string]: unknown + } +} + export type EventServerConnected = { id: string type: "server.connected" @@ -4622,14 +4630,6 @@ export type EventSessionError = { } } -export type EventModelsDevRefreshed = { - id: string - type: "models-dev.refreshed" - properties: { - [key: string]: unknown - } -} - export type EventInstallationUpdated = { id: string type: "installation.updated" @@ -4646,40 +4646,11 @@ export type EventInstallationUpdateAvailable = { } } -export type EventPermissionAsked = { +export type EventFileEdited = { id: string - type: "permission.asked" + type: "file.edited" properties: { - id: string - sessionID: string - permission: string - patterns: Array - metadata: { - [key: string]: unknown - } - always: Array - tool?: { - messageID: string - callID: string - } - } -} - -export type EventPermissionReplied = { - id: string - type: "permission.replied" - properties: { - sessionID: string - requestID: string - reply: "once" | "always" | "reject" - } -} - -export type EventReferenceUpdated = { - id: string - type: "reference.updated" - properties: { - [key: string]: unknown + file: string } } @@ -4717,6 +4688,14 @@ export type EventPermissionV2Replied = { } } +export type EventReferenceUpdated = { + id: string + type: "reference.updated" + properties: { + [key: string]: unknown + } +} + export type EventProjectDirectoriesUpdated = { id: string type: "project.directories.updated" @@ -4725,14 +4704,6 @@ export type EventProjectDirectoriesUpdated = { } } -export type EventFileEdited = { - id: string - type: "file.edited" - properties: { - file: string - } -} - export type EventFileWatcherUpdated = { id: string type: "file.watcher.updated" @@ -4852,6 +4823,43 @@ export type EventTodoUpdated = { } } +export type EventLspUpdated = { + id: string + type: "lsp.updated" + properties: { + [key: string]: unknown + } +} + +export type EventPermissionAsked = { + id: string + type: "permission.asked" + properties: { + id: string + sessionID: string + permission: string + patterns: Array + metadata: { + [key: string]: unknown + } + always: Array + tool?: { + messageID: string + callID: string + } + } +} + +export type EventPermissionReplied = { + id: string + type: "permission.replied" + properties: { + sessionID: string + requestID: string + reply: "once" | "always" | "reject" + } +} + export type EventSessionStatus = { id: string type: "session.status" @@ -4924,14 +4932,6 @@ export type EventVcsBranchUpdated = { } } -export type EventLspUpdated = { - id: string - type: "lsp.updated" - properties: { - [key: string]: unknown - } -} - export type EventWorkspaceReady = { id: string type: "workspace.ready" @@ -15994,6 +15994,7 @@ export type V2PtyConnectData = { "location[workspace]"?: string cursor?: string ticket?: string + replayExited?: string } url: "/api/pty/{ptyID}/connect" } diff --git a/packages/server/package.json b/packages/server/package.json index 1dc884c72e..04006121d8 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@opencode-ai/server", - "version": "7.4.17", + "version": "7.4.18", "private": true, "type": "module", "license": "MIT", diff --git a/packages/storybook/package.json b/packages/storybook/package.json index 163306ec46..56bc841220 100644 --- a/packages/storybook/package.json +++ b/packages/storybook/package.json @@ -26,7 +26,7 @@ "typescript": "catalog:", "vite": "catalog:" }, - "version": "7.4.17", + "version": "7.4.18", "dependencies": {}, "peerDependencies": {} } diff --git a/packages/tui/package.json b/packages/tui/package.json index 87fe7949af..3e241c725b 100644 --- a/packages/tui/package.json +++ b/packages/tui/package.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/package.json", "name": "@opencode-ai/tui", - "version": "7.4.17", + "version": "7.4.18", "private": true, "type": "module", "license": "MIT", diff --git a/packages/ui/package.json b/packages/ui/package.json index bb4a10d842..0346e145ec 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,6 +1,6 @@ { "name": "@opencode-ai/ui", - "version": "7.4.17", + "version": "7.4.18", "type": "module", "license": "MIT", "exports": { diff --git a/script/upstream/package.json b/script/upstream/package.json index 753ce3fa52..6c10f20641 100644 --- a/script/upstream/package.json +++ b/script/upstream/package.json @@ -1,6 +1,6 @@ { "name": "@kilocode/upstream-merge", - "version": "7.4.17", + "version": "7.4.18", "private": true, "type": "module", "description": "Scripts for automating upstream opencode merges into Kilo",