Commit Graph

7649 Commits

Author SHA1 Message Date
kiloconnect[bot] fc4cff6a74 fix(cli,vscode): normalize SSH git remote URLs to HTTPS for cloud session filter
Fixes the 'Only this repository' filter in the Cloud Sessions history panel
not working when the local git remote uses SSH format.

The CLI's normalizeGitUrl() was storing HTTPS sessions as
'https://github.com/org/repo.git' but when a user has an SSH remote
('git@github.com:org/repo.git'), the VS Code extension sent that raw SSH
URL as the filter, causing a mismatch with the stored HTTPS form.

Changes:
- kilo-sessions.ts: update normalizeGitUrl() to convert SSH format
  (git@host:owner/repo) to canonical HTTPS (https://host/owner/repo)
  so all remote formats produce the same stored URL
- KiloProvider.ts: add normalizeGitRemoteUrl() helper and apply it in
  getGitRemoteUrl() before forwarding the URL as a cloud session filter,
  ensuring the sent URL matches the stored canonical form

Closes #11008
2026-06-08 11:52:43 +00:00
Marius 741b00f2e0 fix(cli): restore subagent isolation in session forks (#11000) 2026-06-08 11:36:44 +00:00
Marius 12e83e1d3b Merge pull request #10998 from Kilo-Org/voltaic-veterinarian
fix(cli): restore automatic session titles
2026-06-08 13:21:41 +02:00
marius-kilocode a59b255b31 fix(cli): restore automatic session titles 2026-06-08 13:03:28 +02:00
marius-kilocode d71b1e3442 revert(sdk): keep generation on pinned Bun 2026-06-08 12:36:30 +02:00
marius-kilocode 97dd460482 fix(sdk): stabilize generated event ordering 2026-06-08 12:31:59 +02:00
marius-kilocode 4550e0d883 fix(cli): ignore legacy models snapshots 2026-06-08 11:50:27 +02:00
kilo-maintainer[bot] 1181567b26 release: v7.3.40 2026-06-06 02:29:27 +00: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
kilo-maintainer[bot] f018b8ffa9 release: v7.3.39 2026-06-05 21:13:04 +00: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
kilo-maintainer[bot] 5c6b83ad28 release: v7.3.33 2026-06-05 03:24:39 +00:00
Joshua Lambert 7afef4aa85 Merge branch 'main' into fix/cli-release-build-state 2026-06-04 23:00:29 -04:00
Josh Lambert 6cab5f18e7 fix(cli): isolate release target builds 2026-06-04 22:40:06 -04:00
kilo-maintainer[bot] 77c6b802c5 release: v7.3.32 2026-06-05 02:17:45 +00: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
kilo-maintainer[bot] 7341745449 release: v7.3.31 2026-06-04 22:12:32 +00:00
Josh Lambert 189f251866 fix(cli): temporarily disable session export 2026-06-04 17:28:28 -04:00
kilo-maintainer[bot] 3178592e0c release: v7.3.30 2026-06-04 19:53:43 +00:00
Catriel Müller b0f22d998e Merge pull request #10905 from Kilo-Org/npm-package-readme
docs(cli): refresh npm package README
2026-06-04 14:41:58 -03:00
Catriel Müller 0af454de08 fix(cli): preserve npm package metadata 2026-06-04 14:21:38 -03: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
Job Rietbergen 60059d5e66 chore(cli): normalize npm keywords 2026-06-04 11:25:03 +02:00
Job Rietbergen 10bf693c8e chore(cli): mark npm package publishable 2026-06-04 11:22:58 +02:00
Job Rietbergen e60a7562b9 docs(cli): use npm-safe readme image URL 2026-06-04 11:22:17 +02:00
Job Rietbergen d8d16ccff0 docs(cli): refresh npm package readme 2026-06-04 11:17:12 +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
kilo-maintainer[bot] b7ce077c91 release: v7.3.29 2026-06-04 07:50:57 +00:00
kilo-maintainer[bot] b6ba97a09f release: v7.3.28 2026-06-03 19:24:41 +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
marius-kilocode 8b1ee6628c fix: restore routed APIs and task restrictions 2026-06-03 20:36:51 +02:00