Commit Graph

24450 Commits

Author SHA1 Message Date
marius-kilocode 69e5cac6de chore(ci): compact bun junit test output 2026-06-29 17:36:43 +02:00
marius-kilocode bb9680bc22 chore(ci): reduce test log noise 2026-06-29 16:10:51 +02:00
Johnny Eric Amancio 7d64eb74f9 feat(cli): show credits and Kilo Pass in sidebar footer (#11729) 2026-06-29 14:08:42 +02:00
Marius db4fa053dc Merge pull request #11786 from Kilo-Org/vagabond-melody
feat(agent-manager): model and reasoning variant selection for tool-started sessions
2026-06-29 13:59:57 +02:00
Christiaan Arnoldus cbd22a39c5 Merge pull request #11773 from Kilo-Org/refactor/agent-typed-metadata-fields
refactor(cli): carry agent displayName/source as typed fields instead of provider options
2026-06-29 13:58:26 +02:00
Marius d1cce5b3b9 Merge branch 'main' into vagabond-melody 2026-06-29 13:43:38 +02:00
Marius 727ded7c0d Merge pull request #11646 from Kilo-Org/legend-bonnet
fix(cli): release disconnected event streams
2026-06-29 13:33:54 +02:00
Marius ddc7674a4b Update packages/opencode/src/kilocode/tool/agent-manager-models.ts
Co-authored-by: Christiaan Arnoldus <christiaan.arnoldus@outlook.com>
2026-06-29 13:30:56 +02:00
Christiaan Arnoldus 91092ce86d Merge branch 'main' into refactor/agent-typed-metadata-fields 2026-06-29 13:29:49 +02:00
Marius 05ce1b5a91 Merge pull request #11638 from Kilo-Org/cottony-fan
fix(cli): prefer .kilo config directory
2026-06-29 13:24:05 +02:00
Marius ed3c02611b Merge branch 'main' into legend-bonnet 2026-06-29 13:15:55 +02:00
Jean du Plessis d91a38f9b1 Merge pull request #11790 from Kilo-Org/jdp/gastown-docs-update
docs(kilo-docs): update DoltHub Wasteland auth docs
2026-06-29 13:13:06 +02:00
Marius 7eff0cafdc Merge branch 'main' into legend-bonnet 2026-06-29 13:08:38 +02:00
Marius 3037ef6af5 Merge pull request #11785 from Kilo-Org/bead-apogee
fix(agent-manager): color PR badge by state, show checks as icon
2026-06-29 12:55:32 +02:00
Marius b354e9941c Merge branch 'main' into bead-apogee 2026-06-29 12:52:48 +02:00
Marius 7edb9c5bdc Merge branch 'main' into vagabond-melody 2026-06-29 12:52:43 +02:00
Jean du Plessis e99312a611 docs(kilo-docs): update DoltHub Wasteland auth docs 2026-06-29 12:27:09 +02:00
Mark IJbema ac22b40fd7 Merge pull request #11218 from sylwester-liljegren/feat/file-links-2-fs-validation
feat(vscode): add filesystem validation protocol for file links
2026-06-29 12:17:51 +02:00
Mark IJbema f90ea35e5a Merge pull request #11781 from Kilo-Org/mark/allow-translated-readme-opencode-link
fix: allow upstream attribution in translated readmes
2026-06-29 12:17:23 +02:00
marius-kilocode 3b9ba6f634 Merge remote-tracking branch 'origin/main' into vagabond-melody 2026-06-29 12:05:54 +02:00
marius-kilocode c4a5030bdd fix(cli): drop duplicate nextBillingAt nullability now handled on main 2026-06-29 12:05:54 +02:00
marius-kilocode 341474a44c fix(agent-manager): define PR badge status icon colors in CSS 2026-06-29 12:04:34 +02:00
Marius f48a5eabbd Merge branch 'main' into bead-apogee 2026-06-29 12:01:16 +02:00
Christiaan Arnoldus e8ced08a5e Merge branch 'main' into refactor/agent-typed-metadata-fields 2026-06-29 11:56:19 +02:00
Imanol Maiztegui d89b1b6e16 Add Agent requirements (#11762)
* feat(agent-requirements): gate agents on declared requirements

* feat(cli): add agent requirements preflight helpers

Introduce a Kilo-owned CLI requirements module that preflights agent
declarations before session creation. The helper resolves requirement
status via the SDK, blocks agents with unmet skills, errored MCPs, or
VS Code extension dependencies, and produces grouped actionable
guidance for terminal users.

Includes planning documents and a focused test suite covering all
blocking and allow paths.

* chore: update kilo-vscode visual regression baselines

* fix(vscode): guard extension subscription and suppress empty invalidations

Wrap vscode.extensions.onDidChange in a typeof check so the subscribe
callback is undefined in environments where the API is unavailable.
Skip posting agentRequirementsInvalidated when the controller cache is
already empty to avoid spurious messages to the webview.

Update the associated test to seed cache state before asserting on the
clear-triggered invalidation flow.

* refactor(agent-requirements): replace numeric generations with object-identity tokens

Switch the controller's supersession tracking from incrementing counters
to ephemeral object references, ensuring stale tokens are cleaned up on
both success and failure paths. This eliminates a class of race
conditions where cleared counters could alias with fresh requests.

Conditionally emit the "Install the required skills..." footer in the
CLI formatter only when skills or MCPs are actually present, preventing
misleading guidance for extension-only requirement failures.

* test(httpapi): add exercise scenario for agent requirements endpoint

Cover the GET /kilocode/agent/requirements route in the HTTP API
exercise harness, asserting that the response echoes the requested
agent, uses the routed workspace directory, and correctly reports
the disabled state with empty skills/mcps/extensions arrays.

* feat(agent-requirements): enforce guard across all clients and relax ID validation

Lift the VS Code–only restriction from the requirements guard so
that blocked skills/MCPs fail for CLI and other clients as well.
VS Code extension requirements remain client-specific. The evaluate
function now accepts pre-decoded requirements as an explicit input
rather than decoding internally, and the schema switches from the
strict alphanumeric ID pattern to a permissive non-whitespace Name
pattern allowing slashes and spaces in skill/MCP identifiers.

Update prompt interfaces to surface RequirementBlockedError in the
typed error channel and preserve "ready" results in the webview
cache alongside blocked/error states.

* chore(opencode): fix requirement guard annotations

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-06-29 11:55:19 +02:00
marius-kilocode 123a9395d2 feat(agent-manager): model and reasoning variant selection for tool-started sessions
Let Agent Manager chat tools choose a model and reasoning effort per session,
discover what is available without loading the full catalog, and resolve the
provider automatically so the agent does not have to know provider plumbing.

- agent_manager tasks accept a `model` (by name) and a model-specific `variant`.
  Selection is resolved to a concrete provider/model, preferring the provider
  behind the user's default model and falling back to the Kilo Gateway, with a
  qualified provider/model accepted as an escape hatch. A model selection
  requires an initial prompt so the session persists it.
- New agent_manager_models tool searches models grouped by name (not provider),
  capped at 20 results per call and paginated, so the catalog never bloats the
  conversation context. Matching is lenient (case, punctuation and order
  insensitive) so an exact name is not required.
- Wrong guesses return closest-name suggestions and the success output echoes
  how each named model resolved (provider and variant) for transparency.
2026-06-29 11:53:28 +02:00
github-actions[bot] f9a977d520 chore: update kilo-vscode visual regression baselines 2026-06-29 09:45:21 +00:00
Mark IJbema 8cebfb474d Merge branch 'main' into feat/file-links-2-fs-validation 2026-06-29 11:45:03 +02:00
Christiaan Arnoldus 1b359bf912 Merge branch 'main' into refactor/agent-typed-metadata-fields 2026-06-29 11:44:05 +02:00
marius-kilocode 5e22a7b255 fix(agent-manager): color PR badge by state, show checks as icon
Badge color now reflects only the PR lifecycle state (open/draft/merged/closed),
so a failing check is no longer mistaken for a closed PR. CI and review results are
shown as a separate icon (failing checks, changes requested, approved), and an open
PR whose checks are still running keeps its pulsing amber badge.
2026-06-29 11:42:19 +02:00
Mark IJbema 63e270a9c7 Merge pull request #11602 from Kilo-Org/fix/autocomplete-error-messages-byok-credits
fix(vscode): improve autocomplete error messages to cover BYOK and credits scenarios
2026-06-29 11:40:35 +02:00
Marius 0a69b89b2e Merge pull request #11770 from Kilo-Org/ludicrous-circus
fix(vscode): stabilize sandbox button across session switches
2026-06-29 11:18:06 +02:00
Mark IJbema 833531f02d Merge pull request #11776 from Kilo-Org/mark/anaconda-i18n-translations
fix(vscode): translate Anaconda Desktop provider strings in all locales
2026-06-29 11:07:08 +02:00
Mark IJbema ff1a0b61e3 fix: allow upstream attribution in translated readmes 2026-06-29 11:06:57 +02:00
Christiaan Arnoldus 50435a44b2 Merge branch 'main' into refactor/agent-typed-metadata-fields 2026-06-29 10:50:37 +02:00
Marius 76ad88cf4a Merge pull request #11774 from Kilo-Org/dog-shovel
perf(vscode): open model, mode, and variant selectors instantly
2026-06-29 10:50:21 +02:00
Mark IJbema 2da40afed4 fix(vscode): translate Anaconda Desktop provider strings in all locales 2026-06-29 10:43:28 +02:00
github-actions[bot] be4f09c8a1 chore: update kilo-vscode visual regression baselines 2026-06-29 08:41:00 +00:00
marius-kilocode 4549623572 perf(vscode): open model, mode, and variant selectors instantly
Virtualize the model catalog so opening the picker mounts only the
visible window instead of the entire model list, and remove artificial
open latency from the mode and variant pickers.

The model selector built every catalog row up front (~6k DOM elements,
~11k transient nodes for a ~630-model catalog), blocking the main thread
on element creation, style recalculation, and layout before first paint.
The active-model lookup also re-scanned the list on every reactive read.
The mode and variant pickers were cheap to build but felt slow because of
the shared popover enter animation and a deferred focus frame.

Render the catalog through a virtualizer, memoize the active-model
lookup, anchor scroll restoration to virtual item offsets so favorite
toggles no longer jump when the anchored row is virtualized out, disable
the popover open animation for these selectors, and focus the selected
option during initial mount instead of a later frame.
2026-06-29 10:37:25 +02:00
chrarnoldus bf671bcf18 chore: drop changeset (internal refactor, no user-visible change)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-29 08:36:21 +00:00
chrarnoldus 06cad2b6a8 Merge remote-tracking branch 'origin/main' into refactor/agent-typed-metadata-fields
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-29 08:36:14 +00:00
Mark IJbema 2fc5df7b9c Merge pull request #11730 from Kilo-Org/mark/fix-jetbrains-workspace-flake
test(jetbrains): stabilize workspace reload lifecycle
2026-06-29 10:34:26 +02:00
chrarnoldus 808295fb81 refactor(cli): carry agent displayName/source as typed fields instead of provider options
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-29 08:30:55 +00:00
Mark IJbema a3b7ce4c96 test(jetbrains): name mock CLI virtual threads 2026-06-29 10:15:52 +02:00
marius-kilocode 60ac277721 fix(vscode): stabilize sandbox button across session switches
Cache sandbox status per session so switching worktrees or sessions shows the known state immediately instead of flickering, track in-flight toggles per session, and preserve the prompt textarea scroll position when toggling sandbox before the first message.
2026-06-29 10:04:53 +02:00
Marius 33b37592ac Merge pull request #11610 from Kilo-Org/radial-rock
fix(vscode): show full external permission paths
2026-06-29 09:55:31 +02:00
Mark IJbema b6afd1d788 Merge pull request #11719 from Kilo-Org/mark/show-german-i18n-diffs
chore: show german translation diffs
2026-06-29 09:46:35 +02:00
Marius 05f5702858 Merge pull request #11744 from Kilo-Org/legend-snap
fix(cli): allow importing cloud-only sessions
2026-06-29 09:41:38 +02:00
markijbema e7db09ed84 fix(vscode): improve autocomplete error messages to cover BYOK and credits scenarios
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-06-29 09:41:04 +02:00
Mark IJbema 7bd233d80d Merge pull request #11615 from Kilo-Org/docs/add-translated-readmes-directory
docs: add translated readmes in translations directory
2026-06-29 09:15:31 +02:00