Commit Graph

6234 Commits

Author SHA1 Message Date
marius-kilocode 27d2c148d0 fix: complete OpenCode v1.14.51 integration 2026-06-09 11:53:08 +02:00
marius-kilocode 0e21edbca0 Merge remote-tracking branch 'origin/main' into marius-kilocode/kilo-opencode-v1.14.51 2026-06-09 10:18:20 +02:00
marius-kilocode 1d23dc2171 resolve merge conflicts 2026-06-09 10:17:21 +02:00
Marius dbddefd2df Merge pull request #10109 from IamCoder18/fix/session-prompt-queue-memory-leak
fix: prevent memory leak in KiloSessionPromptQueue.cancel for sessions without active tails
2026-06-09 09:29:05 +02:00
marius-kilocode 6ecaaab48a refactor: kilo compat for v1.14.51 2026-06-09 08:29:02 +02:00
marius-kilocode da67373ad5 Merge remote-tracking branch 'origin/main' into marius-kilocode/kilo-opencode-v1.14.48
# Conflicts:
#	packages/opencode/src/session/processor.ts
2026-06-08 21:45:00 +02:00
Marius 08d0dd4c7a Merge pull request #11010 from Kilo-Org/button-viburnum
fix(cli): compact before configured context threshold
2026-06-08 21:38:11 +02:00
marius-kilocode 9a1f424e35 fix(cli): harden proactive compaction replay 2026-06-08 19:52:13 +02:00
marius-kilocode e7ac3bf151 Merge remote-tracking branch 'origin/main' into marius-kilocode/kilo-opencode-v1.14.48
# Conflicts:
#	packages/opencode/test/kilocode/session-export/e2e.test.ts
2026-06-08 19:22:31 +02:00
marius-kilocode 18c3020ab2 fix(cli): annotate proactive compaction hooks 2026-06-08 18:06:17 +02:00
Joshua Lambert 4b8992112b Merge branch 'main' into feat/terminal-bench-model-details 2026-06-08 12:05:28 -04:00
marius-kilocode 5505a567a7 Merge remote-tracking branch 'origin/main' into button-viburnum 2026-06-08 17:53:57 +02:00
Igor Šćekić 6ee090b5a4 Restore cloud session diffs on import (#10948)
* feat(cli): restore cloud session diffs on import

* fix(cli): hide git diff restore subprocesses

* fix(cli): harden session diff path guard

* test(cli): keep diff restore test synchronous

* test(cli): normalize diff restore line endings

* fix(cli): preserve imported diffs across session forks

* chore: remove session ingest findings doc

* fix(cli): avoid duplicate cumulative session diffs

* test(cli): isolate session export test failures

* fix(cli): preserve cumulative cloud fork diffs

* fix(cli): avoid cumulative diff prefix duplication
2026-06-08 15:44:03 +00:00
marius-kilocode cc03ffc581 fix: harden OpenCode v1.14.48 integration 2026-06-08 14:38:13 +02:00
marius-kilocode a13064167d fix(cli): compact before context threshold overflow 2026-06-08 14:02:20 +02:00
Josh Holmer ece8453ad0 fix(core): avoid copying visible planning chat into new sessions (#10991) 2026-06-08 13:56:59 +02:00
Marius 2f3e32895d Merge pull request #11004 from Kilo-Org/fix-worktree-project-skills
fix(cli): discover project skills in worktree sessions
2026-06-08 13:45:58 +02:00
Marius 741b00f2e0 fix(cli): restore subagent isolation in session forks (#11000) 2026-06-08 11:36:44 +00:00
marius-kilocode 16e334ff8c fix(cli): discover project skills in worktree sessions 2026-06-08 13:30:20 +02:00
marius-kilocode a59b255b31 fix(cli): restore automatic session titles 2026-06-08 13:03:28 +02:00
marius-kilocode 5706abce76 chore(cli): normalize upstream annotations 2026-06-08 12:45:47 +02:00
marius-kilocode cf08de3f44 resolve merge conflicts 2026-06-08 12:04:21 +02:00
marius-kilocode e610b1d390 refactor: kilo compat for v1.14.48 2026-06-08 10:58:10 +02:00
Johnny Eric Amancio be5f42f158 fix: support custom plan exit paths (#10952) 2026-06-06 00:50:58 +02:00
Catriel Müller 011477a915 Merge pull request #10925 from Kilo-Org/improvement/cli-suggest-skills
Suggest skill slash commands in CLI
2026-06-05 18:38:30 -03:00
Josh Lambert 706aa5fba6 Merge remote-tracking branch 'origin/main' into resolve-terminal-bench-kilo
# Conflicts:
#	packages/sdk/js/src/v2/gen/types.gen.ts
2026-06-05 16:51:49 -04:00
Catriel Müller 8b5fd89708 refactor(cli): drop morphsdk compat layer and CJS build plugin
The compat re-export and the build's CJS-redirect plugin only existed to work
around the 'G9' crash that's actually a Bun --splitting bug (now fixed by
splitting:false). With splitting off the morphsdk ESM barrel bundles cleanly,
so import it directly in warpgrep.ts and remove the indirection.
2026-06-05 16:49:16 -03:00
Catriel Müller 4ca4700359 fix(cli): disable Bun code-splitting to fix baseline startup crash
The real cause of the 'Exported binding G9 needs to refer to a top-level
declared variable' SyntaxError is a Bun 1.3.14 --splitting codegen bug
(oven-sh/bun#25621), not @morphllm/morphsdk. With splitting:true Bun emits
invalid cross-chunk re-exports (import{vn as G9}) that crash the compiled
baseline binary at startup. Disabling splitting produces a valid binary;
verified the 'as G9' artifact is gone from the compiled output.
2026-06-05 16:35:18 -03:00
Catriel Müller d7df07a1eb fix(cli): resolve morphsdk client.cjs via exported subpath
The morphsdkCjsPlugin called require.resolve on the raw dist/.../client.cjs
path, which is not an exported subpath in the package's exports map, so Bun
aborted the release build with 'Cannot find module ...client.cjs'.

Resolve through the public specifier @morphllm/morphsdk/tools/warp-grep/client
instead — require.resolve uses the package's "require" condition, mapping it
straight to client.cjs.
2026-06-05 16:22:01 -03:00
Catriel Müller bd1e3e4a14 fix(cli): use build plugin to redirect morphsdk ESM barrel to CJS
The createRequire approach from #10955 did not prevent the Bun ESM
splitter from generating invalid output. Bun 1.3.14 with
`conditions: ["browser"]` resolves @morphllm/morphsdk via the "import"
condition (pre-split ESM barrel) even inside createRequire() calls,
pulling in 52 chunk-*.js files that cause:

  SyntaxError: Exported binding 'G9' needs to refer to a top-level declared variable.

Fix: add a morphsdkCjsPlugin in script/build.ts using Bun's onResolve
API to redirect the module specifier to the absolute path of client.cjs
before the ESM splitter is invoked. client.cjs is a self-contained
~2300-line CJS bundle with no chunk-*.js imports.

morphsdk.ts is simplified to a plain re-export — the CJS redirection
happens at build time, no source-level workaround needed.
2026-06-05 15:52:14 -03:00
Catriel Müller f7970c99ed fix(cli): prevent Bun ESM splitter crash and Alpine musl validation
Two independent release validation failures introduced by kilo-opencode-v1.14.33 (morphsdk) and the new all-arch validation jobs.

**@morphllm/morphsdk pre-split ESM (intermittent SyntaxError on Windows)**

@morphllm/morphsdk/tools/warp-grep/client ships as a 805-byte ESM barrel that
re-exports from 13 internal chunk-*.js files (52 chunks total). When Bun 1.3.14
bundles the CLI with splitting+minify enabled, merging these external pre-split
chunks into its own chunk graph intermittently produces invalid minified ESM:

  SyntaxError: Exported binding 'G9' needs to refer to a top-level declared variable.

Non-deterministic because Bun's parallel bundler uses different orderings per run;
same build sometimes succeeds, sometimes fails on Windows x64.

Fix: load morphsdk via createRequire (forces CJS bundle, client.cjs 2292 lines,
self-contained) instead of the ESM barrel. Wrapper lives in kilocode/compat/ with
a comment explaining how to detect and fix this pattern for future third-party deps.

Scanned all 40+ third-party packages imported by packages/opencode/src — morphsdk
is the only one with pre-split ESM; all others ship single-file ESM or CJS only.

**Alpine musl validation (libstdc++/libgcc missing)**

Bun's musl target (bun-linux-{arch}-musl) is not fully static — it links against
libstdc++.so.6 and libgcc_s.so.1 (GCC C++ runtime). Alpine base does not ship
these by default. The fix adds apk add --no-cache libstdc++ libgcc at the start of
the Alpine Docker smoke test, matching the runtime requirement that any Alpine user
of the CLI would also need.
2026-06-05 15:10:16 -03:00
Catriel Müller 2e2c07b292 Merge pull request #10949 from Kilo-Org/alder-xenoposeidon
Fix CLI models snapshot release validation
2026-06-05 13:48:56 -03:00
Joshua Lambert e2e070da2f Merge pull request #10924 from Kilo-Org/fix/temporarily-disable-session-export
fix(cli): temporarily disable session export
2026-06-05 10:00:36 -04:00
Catriel Müller f828478689 Merge pull request #10933 from Kilo-Org/fix/mcp-json-strict-output
fix(cli): write strict JSON for MCP config
2026-06-05 10:25:35 -03:00
Catriel Müller 78117d1a25 fix: validate CLI models snapshot before release builds 2026-06-05 09:28:40 -03:00
Christiaan Arnoldus b198441247 Merge pull request #10901 from Kilo-Org/fix/webfetch-unsupported-images
fix(cli): reject unsupported webfetch images
2026-06-05 10:56:13 +02:00
Evan Jacobson c992b92842 fix(cli): annotate command Kilo changes 2026-06-04 23:20:33 -06:00
Evan Jacobson 2099feba9b fix(cli): disambiguate skill slash commands 2026-06-04 22:38:19 -06:00
Catriel Müller a0eb3b7cb6 fix(cli): write strict JSON for MCP config 2026-06-04 22:50:37 -03:00
Evan Jacobson 8094ba6ab3 feat(cli): suggest skill slash commands 2026-06-04 16:30:01 -06:00
Josh Lambert 189f251866 fix(cli): temporarily disable session export 2026-06-04 17:28:28 -04:00
yanalialiuk 2d109462db Add Atomic Chat as a first-class local provider. (#10555)
* Add Atomic Chat as a first-class local provider.

Ship the atomic-chat plugin with auto-discovery on localhost:1337, register the provider in models.dev fixtures, and document setup for VS Code and CLI.

* Remove dead code

Removed atomicChat provider mapping from legacy migration.

* Update Atomic Chat provider icon to theme-colored vector.

Replace the embedded raster icon with a currentColor SVG symbol so it matches provider icon styling and inherits UI color consistently.

* Allow optional API key for local Atomic Chat and LM Studio providers.

Load the atomic-chat plugin despite named constant exports, register local-server auth in the plugin, and let CLI and VS Code connect with an empty key on localhost.

* Gate Atomic Chat discovery behind explicit opt-in

* Update packages/plugin-atomic-chat/src/utils/should-probe-atomic-chat.ts

* Remove dead branch in atomic-chat model ref probe.

Drop the modelID check (never equals provider key) and the duplicate providerID branch.

* Fix PR CI: register atomic chat plugin and complete i18n.

Restore atomic-chat in default-plugins after main merge, add missing sidebar locale keys, and annotate shared upstream diffs.

* Format i18n locale files and ProviderConnectDialog with Prettier.

* Address PR review: docs order, narrow annotations, plugin fixes.

Reorder local-models providers per maintainer feedback; use inline kilocode_change markers in dialog-provider. Share ModelStatusCache, fix config discovery abort/timeout, throw on fetch failure, and resolve bot review warnings.

* Align dialog-provider with upstream keymap bindings after rebase.

Restore useBindings instead of useKeyboard so shared-file diff stays minimal and passes annotation checks.

* Update packages/kilo-vscode/webview-ui/src/components/settings/ProviderConnectDialog.tsx

* Deduplicate Atomic Chat /v1/models fetch on config discovery.

Use a single shared models endpoint request in enhanceConfig instead of separate health and discovery calls.

* Fix kilo-code-bot review: import provider key and log cache errors.

Export ATOMIC_CHAT_PROVIDER_KEY from local-providers for the webview, log cache warm failures, and throw on network errors in fetchModelsEndpoint.

* fix(plugin-atomic-chat): harden discovery and reduce chat toasts

Reuse auto-detect model list to avoid duplicate /v1/models calls, wire AbortSignal into fetch, replace silent catches with logging, and only surface validation errors in chat.params.

* fix(plugin-atomic-chat): refresh model cache on chat validation retries

Bypass the 15s model list cache after the first failed attempt so retryWithBackoff can observe newly loaded models.

* Update packages/plugin-atomic-chat/src/utils/index.ts

* fix(plugin-atomic-chat): repair categorizeError not_found branch

Restore return statement and map "not loaded" validation errors to not_found after bot commit broke the if block.

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: kilo-code-bot[bot] <240665456+kilo-code-bot[bot]@users.noreply.github.com>
2026-06-04 16:03:00 +02:00
chrarnoldus 714f920b1e fix(cli): report unsupported icons as tool errors
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-04 12:43:30 +00:00
chrarnoldus 165009df5f refactor(cli): clarify icon mime handling
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-04 12:13:46 +00:00
Christiaan Arnoldus 0f61fd6724 Merge pull request #10881 from Kilo-Org/christiaan/mistral
Add Mistral Kilo gateway provider
2026-06-04 12:48:29 +02:00
chrarnoldus 1a1c0bd86a fix(cli): narrow webfetch image rejection
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-04 10:45:51 +00:00
Joshua Lambert 2e1945c287 fix(cli): resolve plan exit approval submissions (#10895)
* fix(cli): resolve plan exit approval submissions

* refactor(cli): remove plan followup question fallback
2026-06-04 12:08:33 +02:00
Christiaan Arnoldus 38eb5879f5 Merge pull request #10862 from Kilo-Org/chrarnoldus-patch-1
Add additional Mistral model IDs for reasoning
2026-06-04 11:48:13 +02:00
chrarnoldus a8a8dd8724 fix(cli): reject unsupported webfetch images
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-04 08:30:11 +00:00
Marius ac02d821b1 Merge pull request #10822 from Kilo-Org/marius-kilocode/kilo-opencode-v1.14.46
OpenCode v1.14.46
2026-06-03 20:54:22 +02:00