Commit Graph
14580 Commits
Author SHA1 Message Date
Alex Alecu a2151478ee fix(cli): check movePath in apply_patch config guard 2026-03-26 17:03:58 +02:00
Alex Alecu 6105e356a9 fix(cli): detect nested config dirs in isRelative 2026-03-26 17:03:39 +02:00
Marian Alexandru Alecu ed03c64710 Merge branch 'main' into feat/config-permission-protection 2026-03-26 17:01:41 +02:00
Catriel Müller dcab290055 Publish release on OpenVSX (#7608)
* feat: Prod Release only to OpenVSX

* feat: build as a prod release

* feat: dual vsx build
2026-03-26 15:54:19 +01:00
Marius f2dcafc2c5 fix(cli): strip bloated file contents from tool metadata to fix session loading perf (#7706)
Edit, apply_patch, and user message summary were storing full before/after
file contents in metadata — causing sessions to balloon to 90+ MB and crash
the VS Code extension on load.

Strip before/after from edit filediff, apply_patch files[], and
summary.diffs both at write time (new data) and read time (existing data).
2026-03-26 15:47:04 +01:00
kilo-maintainer[bot] f65429df6c chore: update nix node_modules hashes 2026-03-26 14:31:02 +00:00
Evgeny Shurakov b63a9393dc Merge pull request #7689 from Kilo-Org/eshurakov/retry-limit
Cli - Add configurable session retry limit
2026-03-26 15:23:59 +01:00
Alex Gold 6588e90fff Merge pull request #7058 from Kilo-Org/docs/answer-kiloclaw-questions
Docs/answer kiloclaw questions
2026-03-26 10:16:56 -04:00
Alex Gold 84c0a62462 Merge branch 'main' into docs/answer-kiloclaw-questions 2026-03-26 10:14:43 -04:00
Christiaan Arnoldus 091a9e048c Merge pull request #7653 from Kilo-Org/christiaan/ai-sdk
Update Vercel AI SDK OpenAI Provider for phase support
2026-03-26 15:14:15 +01:00
Evgeny Shurakov b7fdbe63ea fix(cli): use load-time constant for KILO_SESSION_RETRY_LIMIT 2026-03-26 14:54:27 +01:00
Kirill Kalishev f8628974a2 Merge pull request #7699 from Kilo-Org/kirillk/icons
fix(vscode): revert agent manager icon to circuit-board
2026-03-26 09:49:57 -04:00
Kirill Kalishev 5d44b670f0 Merge pull request #7701 from Kilo-Org/kirillk/model-price-bug
fix(vscode): correct model price display inflated by double 1M multiplication
2026-03-26 09:48:56 -04:00
kirillk 606b380ee5 test(vscode): add unit tests for model price display formatting 2026-03-26 09:45:50 -04:00
kirillk 472efa57dc fix(vscode): correct model price display inflated by double 1M multiplication 2026-03-26 09:33:43 -04:00
kirillk ad12f73b6e fix(vscode): revert agent manager icon to circuit-board 2026-03-26 09:16:09 -04:00
Marius 79d2567e6c fix(cli): hide commit-message git windows on Windows (#7692)
Prevent cmd.exe flashes when commit message generation shells out to git on Windows and add a regression test for the subprocess flags.
2026-03-26 13:59:04 +01:00
Mark IJbema 589e7a08e0 Merge pull request #7615 from Kilo-Org/mark/7594-hidden-disable-toggles
feat(vscode): add hidden/disable toggles for agents in settings
2026-03-26 13:51:51 +01:00
Mark IJbema 61d3ab7465 Merge pull request #7609 from Kilo-Org/mark/7592-import-export-modes
feat(vscode): add import/export for agent mode definitions
2026-03-26 13:47:30 +01:00
Mark IJbema 5d6d569121 fix(vscode): handle null JSON and nested permission rules in import
Address kilo-code-bot review feedback:
- Guard against JSON.parse returning non-object values (null, arrays,
  strings, numbers) which would crash on property access
- Support nested per-pattern permission rules like
  bash: { "*": "ask", uname: "allow" } which PermissionRule allows
  but were previously silently dropped

Add 5 tests for non-object JSON rejection and nested permission
round-trip.
2026-03-26 13:42:35 +01:00
Mark IJbema d6329ae9e8 fix(vscode): preserve permission config during agent import/export
The permission field on AgentConfig was silently dropped during import
because parseImport did not extract it. This caused a round-trip
(export then import) to lose all per-tool permission overrides like
read:allow, edit:deny, etc.

Add parsePermission() that validates each entry against the allowed
levels (allow/ask/deny) and drops invalid values. Add 4 tests
covering valid permissions, invalid values, non-object input, and
round-trip preservation.
2026-03-26 13:37:05 +01:00
Mark IJbema 1c1d3ed6bc style(vscode): revert unintended PopupSelector format change 2026-03-26 13:31:52 +01:00
Mark IJbema af577537b9 refactor(vscode): extract import/export logic into mode-io module
Extract parseImport() and buildExport() from AgentBehaviourTab and
ModeEditView into a standalone mode-io.ts module that has no UI
dependencies and can be unit tested directly. Add 15 tests covering
valid parsing, name validation, mode validation, duplicate detection,
invalid JSON, type coercion, and export serialisation.

Addresses review feedback from marius-kilocode to extract the
import/export logic and write tests.
2026-03-26 13:27:40 +01:00
Mark IJbema 485de5d730 fix(vscode): clear default_agent when hiding or disabling it
Automatically unset default_agent config when the user hides or
disables the agent that is currently set as the default, preventing
an invalid reference in the config.
2026-03-26 13:26:25 +01:00
Mark IJbema 0b9f4f8078 feat(vscode): add hidden/disable toggles for agents in settings
Add Hidden and Disabled toggle switches to the agent edit view.
Hidden agents are excluded from the mode switcher but remain in
settings. Disabled agents are visually dimmed in the agent list
with badge indicators.

Adds hidden and disable fields to the webview AgentConfig type
and writes to config.agent[name].hidden / config.agent[name].disable.

Closes #7594
2026-03-26 13:26:25 +01:00
Mark IJbema b53ce2117d fix(vscode): reject agent imports larger than 1 MB
Add a file size guard in importMode to refuse files over 1 MB before
reading. This prevents the webview from freezing or crashing when a
user accidentally selects a very large file. Adds the tooLarge i18n
string across all 18 locale files.
2026-03-26 13:25:41 +01:00
Marian Alexandru Alecu ab66954f4d Merge pull request #7617 from Kilo-Org/fix/session-diff-memory-leak
fix(cli): prevent CLI memory leaks from oversized diffs and session accumulation
2026-03-26 14:24:32 +02:00
Marius 73b0e0f017 fix(vscode): keep /new sessions in the active worktree (#7683)
Remember the last selected session when a tab is cleared so the next session still resolves to the same worktree instead of falling back to the repo root. Add a regression test for worktree directory resolution.
2026-03-26 13:23:26 +01:00
Marius 8a17cd73ce fix(vscode): repair apply_patch tool display (#7682)
* fix(vscode): repair apply_patch tool display

* fix(vscode): preserve apply_patch diff metadata
2026-03-26 13:22:53 +01:00
Joshua Lambert 6a8f852356 Merge pull request #7497 from Kilo-Org/docs/platform-tabs-infrastructure
docs(kilo-docs): add platform tabs infrastructure + getting-started pages
2026-03-26 08:14:49 -04:00
Alex Alecu 1cb4b5c8c0 refactor(cli): clean up code quality issues 2026-03-26 14:11:54 +02:00
Alex Alecu 664ceecc32 refactor(cli): reuse MAX_DIFF_SIZE constant 2026-03-26 14:06:16 +02:00
Alex Alecu 721b3d0630 chore(cli): add missing kilocode_change markers 2026-03-26 13:59:08 +02:00
Evgeny Shurakov 435d82ca08 fix(cli): add configurable session retry limit 2026-03-26 12:54:28 +01:00
Alex Alecu bfbfbb967c chore(cli): add kilocode_change markers 2026-03-26 13:52:48 +02:00
Alex Alecu 3ed648d566 refactor(cli): extract max diff size constant 2026-03-26 13:51:24 +02:00
github-actions[bot] f95e1a9be9 chore: update kilo-vscode visual regression baselines 2026-03-26 11:29:19 +00:00
Mark IJbema 66a9358cda test(vscode): add visual regression story for ModeEditView export button 2026-03-26 12:26:55 +01:00
Mark IJbema edee114122 fix(vscode): restrict export to custom modes and validate mode field on import
Hide export button for native/built-in agents since their full
definition is not available from config overrides alone. Validate
the mode field on import against the allowed values (subagent,
primary, all) instead of blindly casting.
2026-03-26 12:26:07 +01:00
Mark IJbema 3898716a36 feat(vscode): add import/export for agent mode definitions
Add an Export button (download icon) to the agent edit view that
serializes the agent config to a .agent.json file. Add an Import
button to the agents list view that opens a file picker, validates
the JSON structure, and creates the agent in config.

Import validates the name format, checks for duplicates, and shows
error messages for invalid files. The JSON format includes name,
description, prompt, model, mode, temperature, top_p, and steps.

Closes #7592
2026-03-26 12:26:07 +01:00
Mark IJbema 9c4c441d51 Merge pull request #7648 from Kilo-Org/mark/7601-workflows-subtab
feat(vscode): implement Workflows sub-tab in Agent Behaviour settings
2026-03-26 12:13:57 +01:00
Mark IJbema da48f21a3f Merge pull request #7675 from Kilo-Org/mark/fix-language-dropdown-empty-display
fix(ui): show selected label in Language dropdown when set to Auto
2026-03-26 12:06:15 +01:00
github-actions[bot] 2c0c83ad7a chore: update kilo-vscode visual regression baselines 2026-03-26 10:51:21 +00:00
Mark IJbema ebe7eb2ad7 fix(vscode): show "Auto" label in language dropdown when no override set
Kobalte Select treats empty string "" as an empty selection and renders
the placeholder instead of calling the label function. Changed the Auto
option to use "auto" as its value instead of "", and map it back to ""
when calling setLocale. This ensures the dropdown trigger displays
"Auto (VS Code language)" when the dropdown is closed.

Also reverts the ineffective select.tsx nullish check since Kobalte
short-circuits before the render function is called.
2026-03-26 11:51:06 +01:00
Mark IJbema 8beb615795 feat(vscode): add chevron expand/collapse to workflow items
Workflow commands are now collapsed by default, showing only the name
and description. Clicking the chevron or row expands the full detail
view with description and template (using pre-wrap, not truncated).
Matches the existing MCP server expand/collapse pattern.

Adds i18n keys for workflow detail labels across all 18 locales.
2026-03-26 11:49:22 +01:00
Mark IJbema 694e175bdd fix(vscode): remove hardcoded 420px width from settings stories to fix clipping
The StoryProviders wrapper adds 12px padding on each side, so a 420px
inner div inside a 420px viewport overflows by 24px, clipping content
on the right edge. Remove the width constraint and let the content
fill the padded container naturally.
2026-03-26 11:45:34 +01:00
Mark IJbema f3494e3f4e refactor(vscode): wire WorkflowsTab and remove inline renderWorkflowsSubtab
Replace the inline renderWorkflowsSubtab function in AgentBehaviourTab
with the extracted WorkflowsTab component from agent-behaviour/.
2026-03-26 11:45:34 +01:00
Mark IJbema 627c5867bf feat(vscode): extract WorkflowsTab into agent-behaviour subdirectory
Create a dedicated agent-behaviour directory within settings components
and add a standalone WorkflowsTab component, preparing for further
extraction of subtab content from the monolithic AgentBehaviourTab.
2026-03-26 11:45:34 +01:00
github-actions[bot] 6b846fb7a5 chore: update kilo-vscode visual regression baselines 2026-03-26 11:45:34 +01:00
Mark IJbema b0b9d00110 test(vscode): add visual regression stories for Workflows subtab
Add two stories for the Workflows subtab in AgentBehaviourTab:
- AgentBehaviourWorkflows: shows commands list with descriptions
- AgentBehaviourWorkflowsEmpty: shows empty state

Also adds a reusable SubtabWrapper helper that clicks into a
specific subtab on mount, similar to EditModeWrapper.
2026-03-26 11:45:34 +01:00