Commit Graph

16717 Commits

Author SHA1 Message Date
Catriel Müller 7df2904b60 fix: vscode read tool align title 2026-04-14 13:52:10 -03:00
Imanol Maiztegui 6b2ed45466 style(vscode): normalize indentation and formatting in legacy utils and UI
Adjust boolean expression alignment in isCompletionResult to use
consistent indentation, and reformat PopupSelectorProps generic type
constraint to break the extends clause across multiple lines.
2026-04-14 18:39:59 +02:00
Imanol Maiztegui 7ccf624a82 feat(vscode): resolve diff content from patch field in UI components
Update DiffVirtualApp and PermissionDiff to reconstruct before/after
content from the patch field when explicit before/after values are not
provided. Export the `text` helper from kilo-ui session-diff and add
`patch` to the PermissionFileDiff type.

In message-v2, refine stripMessageMetadata to only strip oversized
patches (exceeding MAX_DIFF_SIZE) rather than all patches, preserving
small patches so the UI can render inline diffs without additional
fetches.
2026-04-14 18:39:59 +02:00
github-actions[bot] 1cf1e6f14c chore: update visual regression baselines 2026-04-14 16:28:23 +00:00
Imanol Maiztegui 4e115bf884 Merge branch 'main' into imanolmaiztegui/kilo-opencode-v1.4.0 2026-04-14 18:25:59 +02:00
Mark IJbema 34005d2f94 Merge pull request #8917 from Kilo-Org/mark/fix-modified-files-spacing
fix(vscode): add missing space between 'Modified' and file count
2026-04-14 18:05:45 +02:00
Mark IJbema 37c1ff2d65 fix(vscode): align diff bars to text baseline in diff summary header 2026-04-14 17:55:44 +02:00
Mark IJbema 4b66a9ccad fix(vscode): make diff summary title inline with flexbox so bars render on same line 2026-04-14 17:45:21 +02:00
github-actions[bot] 749337f75d chore: update kilo-vscode visual regression baselines 2026-04-14 15:44:03 +00:00
Mark IJbema f995fe092c fix(vscode): add missing space between 'Modified' and file count in diff summary 2026-04-14 17:40:11 +02:00
Imanol Maiztegui 0208a8880c feat: migrate diff schema to use patch field and consolidate model variant
Replace before/after content fields with unified patch field across
the diff pipeline. WorktreeDiff now generates patch strings via
createTwoFilesPatch, and all consumers (summary stripping, size
checks, content hashing, TUI sync, ingest queue) operate on the
patch field instead of before/after.

Consolidate model variant into the model object, removing the
separate variant field from MessageV2.User, PlanFollowup inject,
and resolveCodeModel interfaces.

Additional changes:
- Add session-diff module export to kilo-ui package
- Remove batch tool (batch.ts deleted)
- Fix WebSocket proxy to convert Uint8Array to ArrayBuffer
- Switch VscodeSessionTurn from useDiffComponent to useFileComponent
- Update SnapshotFileDiff type references in vscode extension
2026-04-14 17:33:06 +02:00
kilo-maintainer[bot] 4c038b17d2 release: v7.2.6 2026-04-14 15:19:03 +00:00
Imanol Maiztegui fb48b5eae4 feat(sdk): add before and after fields to WorktreeDiffItem schema
Extend WorktreeDiffItem with `before` and `after` string properties
across the OpenAPI spec, generated TypeScript types, and the Zod
schema in worktree-diff.ts. Both fields are marked as required in
the JSON schema definition.
2026-04-14 16:28:45 +02:00
Marian Alexandru Alecu c36e91f278 Merge pull request #8782 from Kilo-Org/fix/cli-error-boundary-no-renderer
fix(cli): guard ErrorComponent against missing renderer context
2026-04-14 17:26:48 +03:00
Alex Gold 54be78db55 Merge pull request #8749 from Kilo-Org/docs/workspace-bot-account-recommendation
docs: recommend creating KiloClaw bot Google account inside Workspace domain
2026-04-14 10:25:12 -04:00
Alex Alecu a828e1a1ee fix(cli): restore onBeforeExit in ErrorComponent 2026-04-14 17:10:03 +03:00
Alex Gold e0489f2f4b Apply suggestion from @alexkgold 2026-04-14 10:07:03 -04:00
Imanol Maiztegui cc2a03b2a0 refactor: align codebase with v1.4.0 upstream and update SDK schema
Remove stale ai-sdk patched dependencies, reformat code style
across i18n files, docs markdown tables, and TypeScript sources.
Update OpenAPI schema to rename FileDiff to SnapshotFileDiff,
replace before/after fields with patch, rebrand SDK code samples
from opencode to kilo, and add --dangerously-skip-permissions
CLI flag. Regenerate models snapshot.
2026-04-14 16:05:22 +02:00
Alex Gold 20c8f3e5be docs(kilo-docs): recommend dedicated Google account and remove suggested-configuration page
- Update google.md and end-to-end.md to recommend dedicated/Workspace bot accounts
- Remove suggested-configuration.md (duplicate of end-to-end.md)
- Add redirect from /docs/kiloclaw/suggested-configuration to /docs/kiloclaw/end-to-end
2026-04-14 10:04:52 -04:00
Alex Alecu f2cb0d7055 fix(cli): add kilocode_change markers and regenerate source-links 2026-04-14 17:02:11 +03:00
Thomas Brugman ddb2bba027 fix(tui): show progress indicators while subagent is initializing (#8807)
* fix(tui): show progress indicators while subagent is initializing

Show '↳ Starting...' in the parent session's Task entry when the
subagent is running but has not yet made any tool calls, and show
'↳ Initializing...' in the subagent session view when it has no
messages yet. Prevents the UI from appearing frozen during the
LLM thinking phase on startup.

Closes #8422

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(tui): annotate kilocode changes for CI

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(webview): show progress indicators while subagent is initializing

Mirror the TUI fix for the VS Code extension webview:

- TaskToolExpanded: show "Starting..." when the task tool is running
  but the child session has no tool calls yet (previously the expanded
  body was empty/blank).

- MessageList/ChatView: propagate the readonly flag so the subagent
  viewer shows "Initializing..." instead of the generic welcome screen
  when the session has no messages yet.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: add i18n translations for Initializing and Starting strings

Replace hardcoded 'Initializing...' and 'Starting...' strings in
webview components with language.t() calls. Add
session.messages.initializing and session.messages.taskStarting keys
to all 19 locale files.

Note: The TUI (packages/opencode) has no i18n framework — all strings
are hardcoded throughout the codebase, so the 'Initializing...' string
in the TUI session view remains as-is.

* fix: localize Initializing/Starting strings in all locale files

Replace English placeholder strings with proper translations in all
19 non-English locale files.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 16:00:39 +02:00
Imanol Maiztegui 9f4f0ba899 resolve merge conflicts 2026-04-14 15:58:28 +02:00
Alex Alecu 407f601373 Merge remote-tracking branch 'origin/main' into fix/cli-error-boundary-no-renderer
# Conflicts:
#	packages/opencode/src/cli/cmd/tui/app.tsx
2026-04-14 16:53:21 +03:00
Thomas Brugman 6290c11d3e feat(agent-manager): jump to changed line when clicking line number in diff (#8866)
* feat(agent-manager): jump to changed line when clicking line number in diff

When clicking a line number in the diff review panel (DiffPanel or
FullScreenDiffView), open the file in the editor at that exact line
instead of always landing on line 1.

Closes #6076

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* style: fix prettier formatting in AgentManagerApp

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 15:52:24 +02:00
Kirill Kalishev d2593ac708 Merge pull request #8849 from Kilo-Org/lime-dormouse
feat(jetbrains): backend architecture, OpenAPI client, and test suite
2026-04-14 09:09:29 -04:00
Kirill Kalishev bc5be5b3a2 Merge branch 'main' into lime-dormouse 2026-04-14 09:00:24 -04:00
Christiaan Arnoldus 242fe1a7c6 Merge pull request #8895 from Kilo-Org/remove-fix-duplicate-reasoning
fix(cli): remove fixDuplicateReasoning workaround
2026-04-14 14:47:34 +02:00
Marius 4888fe2046 fix(vscode): strip Electron env vars in dev launch script (#8906)
* fix(vscode): strip Electron env vars in dev launch script

When bun run extension is invoked from a VS Code task (e.g. the Agent
Manager run button), ELECTRON_* and VSCODE_* env vars leak into the
spawned process, causing VS Code to reuse the existing instance instead
of opening a new window. Strip these vars before spawning.

* fix(vscode): also strip Electron env vars in blocking launch path
2026-04-14 14:44:28 +02:00
Christiaan Arnoldus 71b6dc903d Merge pull request #8908 from Kilo-Org/feat/gateway-models-feature-header
feat(gateway): include feature header in models list request
2026-04-14 14:41:01 +02:00
Christiaan Arnoldus 75207ad11c Merge branch 'main' into remove-fix-duplicate-reasoning 2026-04-14 14:38:39 +02:00
kiloconnect[bot] fcbc344c3b chore(kilo-docs): refresh source-links.md after removing fixDuplicateReasoning 2026-04-14 12:18:25 +00:00
kiloconnect[bot] 4d2f55343b feat(gateway): include feature header in models list request 2026-04-14 12:14:40 +00:00
Marius 4a69a3e0d1 fix(cli): invalidate provider state after auth changes (#8898)
* fix(cli): invalidate provider state after auth changes

After the Effect migration in #8870, provider state is cached via
InstanceState/ScopedCache. The hasKey check that determines which
models are available ran once at init and was never re-evaluated.
When auth changed (login, logout, org switch), only ModelCache was
cleared but the provider state retained the stale hasKey decision,
causing authenticated users to be stuck on the free model.

* chore: add changeset

* fix(gateway): scope disposeAll to KiloRoutesDeps, not ImportDeps
2026-04-14 10:57:44 +00:00
Marius 824a39491d docs: clarify changeset descriptions should be concise and user-directed (#8901)
* docs: clarify changeset descriptions should be concise and user-directed

* docs: improve changeset example to be feature-oriented
2026-04-14 12:48:11 +02:00
Aarav e67ed3f17a perf: reduce git process load via adaptive polling and caching (#8703)
* perf: reduce git process load via adaptive polling and caching

Optimize GitStatsPoller and GitOps to mitigate heavy system load caused
by frequent git process spawns (~200+ processes/min).

- Implement adaptive backoff in GitStatsPoller: The polling interval
  now scales (5s -> 10s -> 30s -> 60s) based on consecutive polls with
  no detected changes.
- Add visibility awareness: The poller now switches to a 60s interval
  immediately when the Agent Manager or Kilo sidebar is hidden.
- Introduce resolution caching in GitOps: Added a 60s TTL cache for
  expensive operations (resolveRemote, resolveTrackingBranch,
  resolveDefaultBranch) to prevent redundant sub-process execution
  within a single polling cycle.
- Reset activity counters: Polling frequency returns to 5s immediately
  upon detecting local changes or when the UI becomes visible.

These changes significantly reduce the baseline CPU footprint of the
extension while maintaining responsiveness during active development.

* fix: resolve review issues for PR #8703 - adaptive polling

- Centralize consecutiveNoChanges tracking in fetch() to fix double increment
- Add onChanged callback to reset backoff when worktree stats change
- Restore stop() call in setEnabled(false) to reset cached state on disable

* perf(agent-manager): remove adaptive backoff, keep visibility + cache

Drop the consecutiveNoChanges-based interval scaling that degraded
stats freshness to 10-60s during normal agent use. The visibility
check (5s visible, 60s hidden) and resolution cache already provide
the bulk of the optimization (192 → 156/min visible, 13/min hidden)
without any UX regression in stats update latency.

* chore: add changeset for git stats polling optimization

---------

Co-authored-by: marius-kilocode <marius@kilocode.ai>
2026-04-14 12:31:36 +02:00
kilo-maintainer[bot] 11704bc3b7 chore: update nix node_modules hashes 2026-04-14 10:29:08 +00:00
Marius 52674fffe1 fix(vscode): prevent prompt autofocus stealing focus (#8872)
* fix(vscode): prevent prompt autofocus stealing focus

* revert: drop local-bin.ts workaround (no longer needed after main merge)
2026-04-14 10:19:16 +00:00
Imanol Maiztegui 4fc1e0263c refactor: kilo compat for v1.4.0 2026-04-14 12:17:20 +02:00
Imanol Maiztegui a1bd03d773 Merge pull request #8893 from Kilo-Org/imanolmaiztegui/kilo-opencode-v1.3.17
OpenCode v1.3.17
2026-04-14 12:16:22 +02:00
Marius 9fa90ee638 feat(vscode): support @terminal context mention in chat and agent manager (#8894)
* feat(vscode): support @terminal context mention in chat and agent manager

* docs: add @terminal to new extension docs tabs

* fix(vscode): revert toggleRemote extraction, remove plan file, extract terminal handler method

* chore: add changeset for @terminal feature and document changeset process in AGENTS.md
2026-04-14 10:10:42 +00:00
Mark IJbema b3af983439 Merge pull request #8889 from Kilo-Org/session/agent_a5acac3d-bd3b-4da4-98db-0ef22a1f9fe9
fix: suppress OpenRouter reasoning warning
2026-04-14 11:59:46 +02:00
kiloconnect[bot] 32e9c2934d fix(cli): remove fixDuplicateReasoning workaround now that @openrouter/ai-sdk-provider is updated 2026-04-14 09:45:21 +00:00
Imanol Maiztegui 76093d53a2 test(session): rename agent references from "build" to "code" in prompt-effect tests
Align test fixtures with the agent naming convention change
where the "build" agent identifier was replaced by "code"
across all prompt and session interactions.
2026-04-14 11:35:43 +02:00
Imanol Maiztegui f0eebe9b4d docs(kilo-docs): update source link path for dialog-provider component
Reflect directory restructure moving dialog-provider.tsx
from src/cli to src/kilocode/cli in source-links.md.
2026-04-14 11:11:23 +02:00
Imanol Maiztegui cd79db8a8d refactor: update sdk imports and fix type signatures for v1.3.17 compat
- Update `@kilocode/sdk` imports to use `@kilocode/sdk/v2` path
- Replace `@opencode-ai/sdk/v2` import with `@kilocode/sdk/v2`
- Change theme color types from `string` to `RGBA` in renderApiDescription
- Fix `build` return type in KiloToolRegistry to `Effect.Effect<T, never, any>`
2026-04-14 10:52:25 +02:00
Imanol Maiztegui 170889e951 resolve merge conflicts 2026-04-14 10:44:13 +02:00
Marius 1b0ccd52f4 fix(vscode): keep worktree sessions across project id changes (#8875)
* fix(vscode): keep worktree sessions across project id changes

* fix(cli): isolate session directory fallback
2026-04-14 10:35:04 +02:00
kiloconnect[bot] 5816eeac42 chore(deps): update @openrouter/ai-sdk-provider to 2.5.1 in kilo-gateway and opencode
update @openrouter/ai-sdk-provider to 2.5.1 in kilo-gateway
and opencode package to keep dependencies in sync
2026-04-14 08:29:57 +00:00
Imanol Maiztegui 73b6d9a6c9 refactor: kilo compat for v1.3.17 2026-04-14 09:35:34 +02:00
kilo-maintainer[bot] ba7b123f0f chore: update nix node_modules hashes 2026-04-14 07:28:26 +00:00