Commit Graph

6424 Commits

Author SHA1 Message Date
Alex Alecu 16abe9679f chore(cli): fix type error after main merge
Add missing 'variant' property to task tool metadata in prompt-effect test, required after upstream added model variant support to the task tool's ExecuteResult type.
2026-04-27 13:11:31 +03:00
Alex Alecu 67993d094e Merge remote-tracking branch 'origin/main' into fix/costs-of-subagents 2026-04-27 13:03:15 +03:00
Marius a5bca011a1 Allow ChatGPT login over OpenAI provider config (#9549)
* fix: allow ChatGPT login over OpenAI provider config

Let users with inherited or globally configured OpenAI API keys sign in with ChatGPT for Codex without first removing their existing provider setup.

* fix: satisfy provider login ci checks

Annotate Kilo-specific shared CLI changes and apply webview formatting so the existing ChatGPT login flow passes CI.
2026-04-27 11:17:04 +02:00
Marius dbf113524e fix(cli): guard external directory boundaries (#9484)
* fix(cli): guard external directory boundaries

* test(cli): move boundary regressions to kilocode tests

* fix(cli): scope root guard to permission prompts

* test(cli): isolate boundary regression fixtures

* test(cli): simplify boundary regression coverage
2026-04-27 11:15:57 +02:00
kilo-maintainer[bot] 6965d56918 release: v7.2.25 2026-04-27 08:58:51 +00:00
Marian Alexandru Alecu a2b72044e0 Merge branch 'main' into fix/queued-messages-test 2026-04-27 11:48:19 +03:00
Imanol Maiztegui 94f47d452e Merge branch 'main' into fix/openrouter-deepseek-reasoning 2026-04-27 09:54:31 +02:00
kiloconnect[bot] f631338576 chore(cli): add kilocode_change markers to ported shell cwd fix 2026-04-27 07:38:01 +00:00
kiloconnect[bot] e8c13e0ee8 fix(cli): preserve shell cwd after login startup 2026-04-27 07:31:57 +00:00
Alex Alecu 778c5a84e0 test(cli): guard queued prompt request tail (#9492)
Strengthen the Kilo queue integration test to capture each LLM
request body and assert the second request ends with the queued
user message, not a prior-turn assistant tail. Update the skipped
upstream prompt-effect active-run test comment to reference #9492
and point at the Kilo-specific authoritative coverage.
2026-04-27 10:22:03 +03:00
Alex Alecu 1eaf409143 refactor(cli): simplify stats cost 2026-04-27 10:21:36 +03:00
Josh Lambert 55ddf87040 Revert "fix(cli): also skip interleaved reasoning transform for @kilocode/kilo-gateway"
This reverts commit 1dd436d61a.
2026-04-26 19:55:56 -04:00
Josh Lambert 1dd436d61a fix(cli): also skip interleaved reasoning transform for @kilocode/kilo-gateway
The gateway wraps @openrouter/ai-sdk-provider internally, so the same
openrouter SDK-side reasoning handling applies. Without this, users
routing through api.kilo.ai still see DeepSeek 400 'reasoning_content
must be passed back' errors.
2026-04-26 11:29:26 -04:00
Josh Lambert a1557d1a1f chore: annotate cherry-picked upstream changes with kilocode_change markers 2026-04-26 11:09:07 -04:00
Aiden Cline c884cea5ba fix: ensure openrouter behaves correctly 2026-04-26 10:55:41 -04:00
Aiden Cline be25acb17a fix: bump openrouter sdk version to resolve deepseek reasoning issue (bug was in sdk pkg) 2026-04-26 10:55:36 -04:00
Aiden Cline f724b8f3af fix: ensure assistant messages always have reasoning on them for deepseek (#24180) 2026-04-26 10:54:59 -04:00
Aiden Cline 3d219b5ff0 fix: support max for deepseek (#24163) 2026-04-26 10:54:54 -04:00
Aiden Cline 67de590e71 fix: deepseek variants (#24157) 2026-04-26 10:54:48 -04:00
kilo-maintainer[bot] f6be4ee44e release: v7.2.24 2026-04-25 17:45:18 +00:00
kilo-maintainer[bot] 30867df079 release: v7.2.23 2026-04-24 21:00:20 +00:00
Josh Holmer a356f3a923 fix(cli): respect configured model for subagents (#7549)
* fix(cli): respect configured model for subagents

* fix(cli): also respect configured variant for subagents
2026-04-24 21:44:08 +02:00
Alex Alecu 7a9da3fd61 chore(cli): mark stats cost line 2026-04-24 19:20:25 +03:00
Alex Alecu bc90a50597 fix(cli): count subagent stats 2026-04-24 19:19:41 +03:00
Alex Alecu 1230a3af8b fix(cli): ignore deleted cost sync 2026-04-24 19:19:35 +03:00
Alex Alecu 195ef4e54f fix(cli): exclude subagent sessions from stats aggregate
The task tool propagates each child session's total cost into the parent's tool-wrapper assistant message. Counting both root and child sessions in `kilo stats` would double-count that contribution. Filter `getAllSessions()` to root sessions (parent_id IS NULL), matching how the TUI session list and web sidebar already treat child sessions.
2026-04-24 19:06:08 +03:00
Marian Alexandru Alecu 7767673432 Merge pull request #9418 from Kilo-Org/feat/show-pr-in-cli
feat(cli): show branch pr in sidebar (rename test)
2026-04-24 18:07:45 +03:00
Christiaan Arnoldus ef209e0877 Merge pull request #9470 from Kilo-Org/fix/cli-preserve-empty-reasoning-content
fix(cli): preserve empty reasoning_content in interleaved transform
2026-04-24 17:07:13 +02:00
Alex Alecu 418fe78f5d fix(cli): sync processor cost after subagent propagation
finish-step and cleanup previously re-wrote the parent assistant message with a stale in-memory cost, clobbering the subagent cost written by task.ts during tool execution. Refresh from DB before each write so the propagated cost is preserved across steps. Verified live via side-by-side `kilo serve` vs dev `bun serve` with 2 parallel subagents; parent now shows own LLM + children, matching real spend.
2026-04-24 18:05:45 +03:00
Alex Alecu a5baf2988c fix(cli): detect fork parent repo 2026-04-24 17:34:37 +03:00
heimoshuiyu 439cba7879 fix(cli): preserve empty reasoning_content in interleaved transform
DeepSeek thinking mode may return empty reasoning_content on assistant
messages in a tool call chain, which must be sent back in subsequent
requests. The interleaved transform's truthy check was dropping it.

Always set providerOptions.openaiCompatible[field] for assistant
messages so the AI SDK's metadata spread carries it through.

Cherry-picked from anomalyco/opencode#24146 (931e6ed).
2026-04-24 14:30:54 +00:00
Alex Alecu 4381d58dde fix(cli): find fork prs in sidebar 2026-04-24 17:30:13 +03:00
dependabot[bot] 33416eee4b chore(deps): bump @hono/node-server in /packages/opencode (#8927)
Bumps [@hono/node-server](https://github.com/honojs/node-server) from 1.19.11 to 1.19.13.
- [Release notes](https://github.com/honojs/node-server/releases)
- [Commits](https://github.com/honojs/node-server/compare/v1.19.11...v1.19.13)

---
updated-dependencies:
- dependency-name: "@hono/node-server"
  dependency-version: 1.19.13
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-24 16:18:14 +02:00
Marian Alexandru Alecu bd8fe57692 Merge branch 'main' into feat/show-pr-in-cli 2026-04-24 16:37:15 +03:00
Imanol Maiztegui 8eb0bb3e84 fix(read): skip binary detection for UTF-16 BOM encoded files
Add a check for UTF-16 byte order marks before the NUL/control-char
heuristic so that legitimate UTF-16 encoded files are not incorrectly
classified as binary. Also update Opus 4.7 transform test to expect
the `display: "summarized"` property in xhigh reasoning config.
2026-04-24 13:49:10 +02:00
Imanol Maiztegui 6d14264b1f fix(opencode): remove unused imports from read tool
Remove unused `open` from fs/promises and `readDirectoryFiles` from
kilocode read-directory module to clean up dead imports in the
compatibility layer.
2026-04-24 13:38:29 +02:00
Imanol Maiztegui 258fe2c8a3 Merge branch 'main' into imanolmaiztegui/kilo-opencode-v1.14.17 2026-04-24 13:31:41 +02:00
kilo-maintainer[bot] ad1cdb550c release: v7.2.22 2026-04-24 10:20:41 +00:00
Imanol Maiztegui a2ae026f50 test(tui): trim verbose backstory from slot reactivity test header
Remove implementation history paragraph from the test file's doc
comment, keeping only the concise description of what the test
validates.
2026-04-24 11:24:02 +02:00
Imanol Maiztegui 07024a0341 fix(tui): preserve SolidJS prop reactivity in Slot wrapper
Replace object spread (`{...props}`) with `mergeProps` when forwarding
props through the plugin Slot wrapper. Spreading props in SolidJS
evaluates each prop once at mount time, freezing reactive values like
`ref`, `visible`, `disabled`, and `on_submit`. This caused handlers to
bind against stale closures after overlay transitions, breaking Enter
submission on the session_prompt slot.

Add regression tests verifying the wrapper uses `mergeProps` (not
spread) and that reactive prop tracking is preserved at runtime.
2026-04-24 11:22:30 +02:00
Imanol Maiztegui 93a1a00361 refactor: adapt kilo compat layer for v1.14.17 API changes
- Switch ConfigCommand validation from Zod to Effect Schema using
  StandardSchemaV1 interface
- Fix toConfig permission merging to avoid mutating shared object
- Wrap saveAlwaysRules route handler with jsonRequest/Effect generator
- Update Typescript.spawn call sites to pass InstanceContext parameter
- Fix Npm import path in config-gitignore test
2026-04-24 10:30:50 +02:00
Imanol Maiztegui 7d1c046f10 resolve merge conflicts 2026-04-24 10:06:31 +02:00
Marian Alexandru Alecu ccb02d8e10 Merge pull request #9455 from Kilo-Org/fix/cli-sync-ready-debug-leftover
fix(cli): fix slow CLI startup
2026-04-24 10:27:54 +03:00
Alex Alecu 3d6db134f0 docs(cli): keep ready debug note 2026-04-24 10:19:58 +03:00
Marian Alexandru Alecu 1f4d238436 Merge pull request #9425 from Kilo-Org/fix/input-text-dismiss-question
fix(cli): preserve prompt text on dismiss
2026-04-24 09:51:19 +03:00
Alex Alecu 567ca0d341 fix(cli): remove unreachable return true in sync.ready
Drop a debug short-circuit shipped upstream in #23037 that flipped `sync.ready` before sync actually finished, producing a 1-2s delay before home content (agents, news, tips) appeared in the TUI. Bisected from origin/main.
2026-04-24 09:43:41 +03:00
Alex Alecu ae0c437791 fix(cli): serialize concurrent subagent cost propagation 2026-04-24 07:26:09 +03:00
Alex Alecu 0fb7b8a43d perf(cli): replace gh probe subprocess with Bun.which
Swap the gh --version spawn for a cached Bun.which("gh") lookup so the sidebar PR plugin costs one fewer subprocess per session mount.
2026-04-24 07:01:31 +03:00
Alex Alecu 73ab363f9a fix(cli): include subagent costs in session total (#6321)
When a session spawned subagents via the task tool, the displayed cost reflected only the parent's own LLM steps. Propagate each subagent's total up to the invoking assistant message so every UI sums the full tree.
2026-04-24 06:17:02 +03:00
Marian Alexandru Alecu 0612739a54 Merge branch 'main' into feat/show-pr-in-cli 2026-04-24 06:07:16 +03:00