Commit Graph

3314 Commits

Author SHA1 Message Date
kiloconnect[bot] 849780995d fix: filter notifications by showIn so CLI-only and extension-only notifications target the right client
Move showIn filtering from the gateway to each client. The gateway now
returns all notifications unfiltered, and the CLI TUI filters for
showIn containing "cli" while the VS Code extension filters for
"extension". Notifications with no showIn field appear in both clients.

This prevents extension-targeted notifications (e.g. "Prefer the
terminal? Install the Kilo CLI") from appearing in the CLI where
they don't make sense.
2026-02-27 14:55:25 +00:00
Christiaan Arnoldus 86a255509d Merge pull request #6344 from Kilo-Org/session/agent_c5400014-aac1-472a-9ef3-0ae6308637fe
fix: restore Claude tool call ID normalization from upstream
2026-02-26 16:45:07 +01:00
Christiaan Arnoldus 644579304a Merge pull request #6385 from Kilo-Org/christiaan/prompt
Add family, prompt, variants to the Kilo gateway
2026-02-26 14:32:57 +01:00
Christiaan Arnoldus 2c084431ac Some code reuse 2026-02-26 13:41:04 +01:00
Christiaan Arnoldus ab0702f193 Actually honor the values from the api's model metadata 2026-02-26 13:32:35 +01:00
Kevin van Dijk a478ee6cfd Merge pull request #6392 from Kilo-Org/kevinvandijk/kilo-opencode-v1.2.14
OpenCode v1.2.14
2026-02-26 13:32:13 +01:00
Marian Alexandru Alecu 61e7fa048f Merge pull request #6236 from Kilo-Org/fix/memory-leak
Fix memory leaks
2026-02-26 14:11:30 +02:00
Kevin van Dijk a04589b028 Resolve merge conflicts 2026-02-26 12:56:14 +01:00
Kevin van Dijk f2d987e2b8 refactor: kilo compat for v1.2.14 2026-02-26 12:54:06 +01:00
Kevin van Dijk 8f34422961 Resolve merge conflicts 2026-02-26 12:53:40 +01:00
Alex Alecu 996598e78c fix(tui): allow terminateWorker retries after failure 2026-02-26 13:49:20 +02:00
Alex Alecu e54479d2cd fix: drop MCP transport monkey patching 2026-02-26 13:33:06 +02:00
Christiaan Arnoldus ad70628553 Add family, prompt, variants to the Kilo gateway 2026-02-26 11:44:27 +01:00
Marian Alexandru Alecu d76d563226 Merge branch 'main' into fix/memory-leak 2026-02-26 09:09:19 +02:00
Alex Alecu db3cec1634 fix(tui): terminate orphaned CLI when terminal parent exits
Handle tab-close paths where the shell dies without forwarding SIGHUP/SIGTERM, which left `bun run ...` alive as an orphan. Add a parent-liveness watchdog in the TUI thread and route shutdown through a single idempotent `shutdownAndExit` path. Also guard the normal `process.exit(0)` path so signal/parent-exit codes are not overridden.
2026-02-26 08:29:22 +02:00
Kevin van Dijk cfb3b6ef56 refactor: kilo compat for v1.2.13 2026-02-26 03:23:56 +01:00
Kevin van Dijk d92b94e7ca Merge pull request #6354 from Kilo-Org/kevinvandijk/kilo-opencode-v1.2.11
OpenCode v1.2.11
2026-02-26 02:40:08 +01:00
Christiaan Arnoldus fbfd6c1ab4 Revert "Remove fixDuplicateReasoning function" 2026-02-25 23:18:32 +01:00
Marius 41995929cd fix: resolve diff viewer race condition and add diagnostics for Agent Manager (#6352)
* fix: resolve diff viewer race condition and add diagnostics for Agent Manager

onRequestWorktreeDiff now awaits stateReady before resolving the diff
target, preventing a race where startDiffWatch fires before state loads
from disk. Added diagnostic logging to resolveDiffTarget, diff polling,
and the server-side /experimental/worktree/diff endpoint so silent
failures become visible in the output channel.

* fix: guard stateReady await so rejection doesn't break diff polling

* docs: clarify why .catch() is required on stateReady await
2026-02-25 18:07:42 +00:00
Kevin van Dijk 2b05e4f40b Resolve merge conflicts 2026-02-25 18:34:18 +01:00
Kevin van Dijk 42a7e019ef refactor: kilo compat for v1.2.11 2026-02-25 18:14:54 +01:00
Christiaan Arnoldus ea40081a56 Merge pull request #6337 from Kilo-Org/session/agent_2b4968a6-6808-4df7-9d6b-e11307fcadbb
Remove fixDuplicateReasoning function
2026-02-25 18:00:47 +01:00
Alex Alecu 7182d4c504 fix: Clear RPC channel for faster shutdown 2026-02-25 17:27:11 +02:00
Mark IJbema a8c693e8e8 use Anthropic prompt for kilo/auto model 2026-02-25 16:15:27 +01:00
Shantur Rathore 79b5ce58e9 feat(core): add message delete endpoint (#14417) 2026-02-25 09:25:26 -05:00
kiloconnect[bot] 7ba2fbdabc fix: restore Claude tool call ID normalization from upstream
The normalizeMessages function in transform.ts was missing a block that
normalizes tool call IDs for Claude models. This block exists in the
upstream OpenCode repo but was inadvertently removed in our fork.

The normalization replaces any characters that are not alphanumeric,
underscore, or hyphen with underscores in toolCallId fields. This
prevents Claude from rejecting messages with tool call IDs containing
invalid characters.
2026-02-25 13:53:25 +00:00
Alex Alecu 748cee0b02 fix: ensure MCP process tracking cleanup runs even if close rejects
Wrap originalClose() and child-process cleanup in try/finally so that
delete processes[key] always executes. Previously, if originalClose()
threw, the process map entry would be left stale, risking incorrect
PID references in later lifecycle operations.
2026-02-25 15:44:36 +02:00
Alex Alecu a2d182ab23 fix: unref shutdown timer in TUI worker to avoid keeping process alive
The setTimeout fallback in terminateWorker can keep the event loop open
even when the worker exits promptly, delaying shutdown paths triggered
by signals. Unref the timer so normal fast shutdown is not blocked by
this fallback.
2026-02-25 15:44:19 +02:00
Christiaan Arnoldus a678a84bb2 Merge branch 'main' into session/agent_2b4968a6-6808-4df7-9d6b-e11307fcadbb 2026-02-25 14:41:29 +01:00
Alex Alecu 5fe6b1eded fix: close existing MCP client before create() in add() to prevent process map corruption 2026-02-25 15:39:27 +02:00
Marius 8551d95447 perf: filter tool diagnostics to only edited files, reducing session payload 50-77% (#6241)
* perf: filter tool diagnostics to only edited files

Tools (edit, write, apply_patch) stored LSP diagnostics for ALL project
files in their metadata. In large projects this adds 100-500KB of
unrelated diagnostics per tool call, bloating session payloads by
50-77%.

The UI only renders diagnostics for the edited file(s), so the rest is
dead weight. Extract a filterDiagnostics utility that keeps only the
relevant files' diagnostics and use it in all three tools.

* add kilocode_change marker to diagnostics filter test
2026-02-25 14:32:42 +01:00
Ayush Thakur 088a81c116 fix: consume stdout concurrently with process exit in auth login (#15058) 2026-02-25 08:22:52 -05:00
Alex Alecu 3ab63cf234 Merge branch 'fix/memory-leak' of https://github.com/Kilo-Org/kilocode into fix/memory-leak 2026-02-25 13:23:46 +02:00
Alex Alecu bc63efdd81 fix: close existing MCP client before spawning replacement in connect()
Previously, connect() called create() (which spawns a new child process
and writes processes[key]) before closing the existing client. The old
client's close handler would then delete processes[key], removing the
*new* process entry from the map — losing track of the new child.

Move the existing client close to before create(), matching the pattern
already used in add().
2026-02-25 13:17:31 +02:00
Alex Alecu 5d22ab6368 fix: document SDK version for private _process field access
Add a comment noting that (transport as any)._process relies on a private
implementation detail of StdioClientTransport from @modelcontextprotocol/sdk@1.25.2.
Future SDK upgrades should verify this field still exists.
2026-02-25 13:17:07 +02:00
Alex Alecu ee6325d559 fix: guard terminateWorker against multiple invocations
terminateWorker is registered on SIGHUP, SIGTERM, and used in onExit.
If a signal fires and then onExit triggers (or two signals arrive),
worker.terminate() and client.call('shutdown') would fire redundantly.

Cache the pending promise so subsequent calls return the same operation.
2026-02-25 13:16:48 +02:00
Marian Alexandru Alecu 0b635fd726 Merge branch 'main' into fix/memory-leak 2026-02-25 13:07:43 +02:00
Alex Alecu 779121f9e7 fix: resolve /exit hang caused by undelivered worker RPC response
The shutdown RPC call to the worker thread never resolved because the worker's event loop drained after cleanup, preventing the postMessage result from being delivered back to the main thread. This left process.exit() unreachable and the process hanging indefinitely.

Replace the blocking await with a fire-and-forget shutdown RPC that waits for the worker's close event (up to 5s timeout) before calling worker.terminate().
2026-02-25 12:51:59 +02:00
Marian Alexandru Alecu d8ce43fcf8 Merge pull request #6240 from Kilo-Org/fix/fix-plan-mode-suggestions
fix(plan): Show implementation suggestions only when LLM has all the information
2026-02-25 12:18:04 +02:00
Marius 138f1bd95f feat(vscode): add diff viewer panel to Agent Manager (#6335)
* feat(vscode): add diff viewer panel to Agent Manager

* Update translations

* Fix comments
2026-02-25 10:16:14 +00:00
Evgeny Shurakov 860534ccbe Update kilocode_change 2026-02-25 10:49:04 +01:00
kiloconnect[bot] d9b5b3e771 Remove fixDuplicateReasoning function
Remove the fixDuplicateReasoning workaround function and its call site
from the message transform pipeline. This function was a workaround for
@openrouter/ai-sdk-provider v1 duplicating reasoning, which was fixed
upstream in OpenRouterTeam/ai-sdk-provider#344.
2026-02-25 09:45:25 +00:00
Evgeny Shurakov 477434506f Config - Fix plugin package name from @opencode-ai/plugin to @kilocode/plugin 2026-02-25 10:45:00 +01:00
Alex Alecu 32ddfe4b0a fix: prevent MCP child process orphaning on close/dispose 2026-02-25 11:09:46 +02:00
Alex Alecu 67e0694039 Merge branch 'fix/fix-plan-mode-suggestions' of https://github.com/Kilo-Org/kilocode into fix/fix-plan-mode-suggestions 2026-02-25 09:46:20 +02:00
Alex Alecu 7143683e20 fix: Fix plan_exit call 2026-02-25 09:46:17 +02:00
Marian Alexandru Alecu 3653c79395 Merge branch 'main' into fix/fix-plan-mode-suggestions 2026-02-25 09:45:49 +02:00
Dax Raad 561f9f5f05 opencode go copy 2026-02-25 01:54:28 -05:00
Dax Raad 3c6c74457d sync 2026-02-25 01:48:10 -05:00
Dax 637059a515 feat: show LSP errors for apply_patch tool (#14715) 2026-02-25 04:15:11 +00:00