2033 Commits
Author SHA1 Message Date
kilo-maintainer[bot] 6509c66b4b release: v7.4.2 2026-07-08 20:39:16 +00:00
Marius 81c7bd18ee Merge branch 'main' into fix/10361-dismissed-question-visibility-vr2 2026-07-08 18:05:56 +02:00
V Keerthi Vikram dfa712d989 feat: add AI image generation tool (#11826)
* feat: add AI image generation tool

Port the legacy generate_image tool to the opencode-based CLI as a
Kilo-owned tool gated by experimental.image_generation config flag.

- New generate_image tool with prompt/path/image/model params
- Routes through Kilo Gateway (zero-config) or BYO OpenRouter key
- Supports text-to-image generation and image editing
- Dynamic model discovery via GET /kilo/models/images endpoint
- VS Code settings toggle + live model dropdown in Experimental tab
- Writes image to disk and returns inline FilePart attachment
- Fallback model catalog for offline resilience

* refactor: change default image model to openrouter/auto

* fix: address bot review feedback

- Remove unused fetchKiloImageModels import in tool
- Normalize jpg→jpeg MIME in parser, input image, and attachment
- Replace mismatched extensions in ensureExtension (not just append)
- Add assertExternalDirectoryEffect for output path traversal guard
- Map unauthorized errors to 401 (not 400) in image models handler
- Keep last known model list on fetch failure (don't overwrite with empty)
- Fix tool description (remove false web search claim, fix grammar)
- Remove duplicated provider resolver tests

* fix: add retry for image models request to handle backend startup race

* fix(image-generation): address kilo bot review comments

- ensureExtension replaces mismatched image extensions instead of
  appending (photo.jpg + PNG -> photo.png, not photo.jpg.png)
- Gateway /models/images normalizes errors to 400/401 matching every
  other gateway route (was leaking undeclared upstream statuses)
- Add 401 response to openapi.json + SDK types for /kilo/models/images
  to match the gateway's errors(400, 401) declaration

* fix(gateway): align /models/images error handling with other gateway routes

* refactor: switch image generation to effect HttpClient

* test: cover kilo models images endpoint in httpapi exercise scenarios

* Exclude POST-only and parameterized API endpoints from link checker

* Add ImageModelsProvider to agent manager context tree

* chore(deps): bump @openrouter/ai-sdk-provider to 2.10.0

Switches imageModel() to OpenRouter's POST /api/v1/images endpoint for
proper image usage/billing and image-specific params.

* fix: address image generation PR review feedback

- revert @openrouter/ai-sdk-provider 2.9.0->2.10.0 bump (image tool uses raw HTTP, not the SDK)
- translate image generation settings strings across all locales
- use central KILO_OPENROUTER_BASE instead of hardcoded URL fallback
- remove completed plan file

* chore: refresh source-links.md after URL refactor
2026-07-08 18:01:01 +02:00
github-actions[bot] bdb71652d5 chore: update kilo-vscode visual regression baselines 2026-07-08 14:52:13 +00:00
Kirill Kalishev 2b8d19617d Merge pull request #12023 from Kilo-Org/docs/jetbrains-installation-docs
docs(jetbrains): update plugin installation docs
2026-07-08 09:45:46 -04:00
Drilmoandmarius-kilocode adcbe0f373 feat(opencode): experimental SWE-Pruner for task-aware tool output pruning (#11980)
* feat(opencode): experimental SWE-Pruner for task-aware tool output pruning

Adds an experimental.swe_pruner config flag (default off). When enabled,
the read and grep tools advertise an optional context_focus_question
parameter; when the agent provides it, large outputs are skimmed by the
small model down to the lines relevant to the question, with omitted
sections marked inline. Failures fall back to the full output.

Based on SWE-Pruner (arXiv:2601.16746).

* chore: regenerate source-links for swe-pruner arxiv reference

* fix(opencode): address swe-pruner review suggestions

Harden the skimmer instruction against prompt injection from untrusted
tool output, and document that pruning runs before the tool.execute.after
hook so plugins observe the model-facing output.

* feat(ui): surface SWE-Pruner activity on read/grep tool rows

The read renderer hides tool output entirely, so pruning was invisible in
the webview even though the model received the pruned output. Show a
'SWE-Pruner · kept/total' row driven by the swePruner tool metadata.

* chore: retrigger CI (flaky windows/jetbrains tests, review service delivery error)

* feat(opencode): configurable SWE-Pruner skimming model

Adds experimental.swe_pruner_model (provider/model format) with a model
selector in the VS Code Experimental tab, shown when SWE-Pruner is
enabled. Falls back to the configured small model when unset or when the
configured model is unavailable.

* fix(ui): localize the SWE-Pruner pruning indicator

Replace the hardcoded label with a ui.tool.swePruned i18n key
(interpolated kept/total) added to all 20 shared UI locales.

* chore: retrigger CI (windows bun install network timeout on tree-sitter-powershell)

---------

Co-authored-by: marius-kilocode <marius@kilocode.ai>
2026-07-08 13:44:57 +00:00
markijbemaandkiloconnect[bot] 98bf848027 docs(cli): link opencode config notice to client-neutral settings page
Point the notification at getting-started/settings instead of the CLI
platform page, and add the opencode migration callout there so the
neutral page is self-contained for VS Code and JetBrains users too.

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-07-08 11:33:36 +00:00
markijbemaandkiloconnect[bot] 64c9b7e42f feat(opencode): warn users about leftover opencode configuration
Kilo no longer falls back to opencode configuration stored in `.opencode`
directories. This change adds detection for both global and project-level
opencode configuration directories and issues a warning to guide users
on how to migrate their settings to the new Kilo configuration paths.

- Implement `KilocodeConfig.detectOpencodeConfig` to identify legacy
  config locations.
- Add warning messages to the CLI configuration loading process.
- Update documentation to include migration instructions.
- Add tests to verify detection of global and project-level opencode
  configs.

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-07-08 09:36:45 +00:00
kirillk b9f107faa8 docs(jetbrains): move EAP anchor to EAP section 2026-07-07 17:51:01 -04:00
kirillk c8fe63f267 docs(jetbrains): preserve EAP migration anchor 2026-07-07 17:48:56 -04:00
kirillk ec886bfed8 docs(jetbrains): remove edition note 2026-07-07 17:45:25 -04:00
kirillk 29d53d6b69 docs(jetbrains): update plugin installation docs 2026-07-07 17:43:28 -04:00
Emilie Lima Schario ab8a839cca Merge branch 'main' into docs-improve-onboarding-flow 2026-07-07 15:34:14 -04:00
Emilie Lima Schario ea649b628a Merge pull request #11992 from Kilo-Org/docs/kilo-docs-style-guide
docs(kilo-docs): add documentation style guide
2026-07-07 15:16:07 -04:00
Emilie Lima Schario 47438dc5fc Merge pull request #11991 from Kilo-Org/docs/improve-kilo-docs-nav
docs(kilo-docs): improve navigation structure
2026-07-07 15:15:30 -04:00
Johnny Eric Amancioandgithub-actions[bot] b0348cbc01 feat(vscode): integrate project memory into the extension (#11954)
* feat(vscode): integrate project memory into the extension

Wire the kilo-memory system into the VS Code extension host and webview,
building on the shared client helpers and /memory command catalog in
@kilocode/kilo-memory.

Extension host:
- KiloProviderMemory bridges the SDK memory client (status/show/enable/
  disable/configure/rebuild/remember/correct/forget/purge, plus status
  and edit) with serialized operations and a small per-directory cache
- memory.status/updated/error events fan out to the active and tracked
  sessions and refresh the webview
- showMemory / toggleMemory commands, routed through the sidebar provider
  or the Agent Manager panel depending on which is active

Webview:
- MemoryProvider context, memory status controls in the Context settings
  tab, task-header and assistant-message affordances, and the /memory
  prompt command (help/show/operation) driven by the shared catalog
- message types and i18n strings across all locales

* fix(vscode): address memory PR review suggestions

- serialize toggleMemory's status pre-check via KiloProviderMemory.toggle()
  so rapid toggles can't double-apply the same operation
- collapse duplicate enabled/active memos in memory context
- extract shared formatCompactCount util (was triplicated K/M formatter)
- drop dead reject handler in serial() and never-produced member from
  MemoryOperationResultMessage.result union

* fix(memory): audit cleanups: inspect accuracy, shared marker decoder, dead i18n key

* chore: update kilo-vscode visual regression baselines

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-07-07 15:44:24 +02:00
Kirill Kalishev 5abae8ebee Merge pull request #11975 from Kilo-Org/triangular-saturday
feat(jetbrains): download pinned Kilo Core releases at runtime
2026-07-07 09:23:51 -04:00
Marius a87a4e027d Merge pull request #12004 from Kilo-Org/design-reload-feature
feat: add /reload action to reboot the instance from disk
2026-07-07 14:56:58 +02:00
github-actions[bot] a659bb2571 chore: update kilo-vscode visual regression baselines 2026-07-07 12:50:04 +00:00
github-actions[bot] 053b037f87 chore: update kilo-vscode visual regression baselines 2026-07-07 12:35:27 +00:00
Emilie Lima Schario 7cd09e651a Merge branch 'main' into docs-improve-onboarding-flow 2026-07-07 07:50:33 -04:00
kiloconnect[bot] 648fa2fb24 docs: fix nested code fence delimiters in STYLE_GUIDE.md 2026-07-07 11:50:01 +00:00
Emilie Lima Schario 70141fdfd9 Merge branch 'main' into docs/improve-kilo-docs-nav 2026-07-07 07:48:40 -04:00
marius-kilocode c0b2a24a25 docs: document /reload command and update skills doc
Add /reload to the CLI System Commands table and update the skills
documentation to mention /reload as an alternative to starting a new
session for picking up skill changes.
2026-07-07 13:48:15 +02:00
Emilie Lima Scharioandkilo-code-bot[bot] 683b06b0f8 Update packages/kilo-docs/lib/nav/code-with-ai.ts
Co-authored-by: kilo-code-bot[bot] <240665456+kilo-code-bot[bot]@users.noreply.github.com>
2026-07-07 07:47:34 -04:00
Mark IJbema 08f0bf6457 Merge pull request #11886 from Kilo-Org/mark/config-file-substitution-trust
fix(cli): block file/env references in untrusted project config
2026-07-07 13:37:17 +02:00
kiloconnect[bot] cd94ffe67e docs(kilo-docs): match Quickstart page title to nav label 2026-07-07 11:07:23 +00:00
kiloconnect[bot] 02cc08a884 docs(kilo-docs): match Authentication page title to nav label 2026-07-07 11:06:02 +00:00
75b994330f docs: add deprecation notice to App Builder page (#11997)
Co-authored-by: eshurakov <54751+eshurakov@users.noreply.github.com>
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-07-07 10:57:43 +02:00
Emilie Schario 6388f4b5be docs(kilo-docs): improve navigation structure
- Remove AI Providers link from Getting Started Configuration (has own section)
- Remove self-referencing subLinks throughout nav files
- Separate AI Adoption Dashboard into its own section in Collaborate
- Reduce redundant navigation entries for cleaner UX
2026-07-06 21:49:57 -04:00
Emilie Schario 6e19d5ca5a docs(kilo-docs): add documentation style guide 2026-07-06 21:47:40 -04:00
Emilie Schario 6ffd201bce docs(kilo-docs): improve onboarding flow 2026-07-06 21:43:43 -04:00
kirillk 4fff14dc29 fix(jetbrains): align runtime CLI download release flow 2026-07-06 16:58:43 -04:00
Vishal Kumar Singh 835500b4eb docs: clarify local Ollama setup (#11652) 2026-07-06 13:04:58 +02:00
Mark IJbema faa2bae104 docs: clarify project {file:} rejects paths that escape the project root
In-root absolute paths are intentionally allowed; only references that leave the root (absolute paths outside it, ../ traversal, symlinks) are rejected. Fix the docs wording and add a regression test for the in-root absolute case.
2026-07-06 10:03:15 +02:00
Mark IJbema e9f6b02084 docs: move trusted-config callout below the provider options table
The warning callout was inserted between table rows, breaking the timeout/chunkTimeout rows' rendering. Move it after the full table.
2026-07-06 09:52:05 +02:00
kilo-maintainer[bot] 4ed43ab7c5 release: v7.4.1 2026-07-03 17:10:11 +00:00
kilo-maintainer[bot] c78d44a143 release: v7.4.0 2026-07-03 14:40:55 +00:00
df55ff2b2f Update Requesty setup instructions for VSCode (#11888)
* Update Requesty setup instructions for VSCode

Clarified instructions for adding Requesty in VSCode settings.

The settings gear icon is inside the Kilo Code extension, not the native VS Code settings.   Need to click "show more providers" instead of adding "Custom providers" to find  Requesty.

* Update packages/kilo-docs/pages/ai-providers/requesty.md

Co-authored-by: kilo-code-bot[bot] <240665456+kilo-code-bot[bot]@users.noreply.github.com>

---------

Co-authored-by: Johnny Eric Amancio <johnnyeric@gmail.com>
Co-authored-by: kilo-code-bot[bot] <240665456+kilo-code-bot[bot]@users.noreply.github.com>
2026-07-03 12:12:33 +00:00
marius-kilocode 69ee5798e7 docs: fix broken OpenRouter provider routing link
The OpenRouter docs page at /docs/features/provider-routing returns
404. Update both references in the OpenRouter provider page to the
current location /docs/guides/routing/provider-selection, which resolves
the lychee link-check failure in CI.
2026-07-03 13:27:20 +02:00
github-actions[bot] de94694d93 chore: update kilo-vscode visual regression baselines 2026-07-02 18:47:48 +00:00
Mark IJbema 6dfbc54c85 refactor(cli): root-scope project {file:} instead of blocking; keep {env:} block
Adopt the file-scoping approach from #11883: untrusted project config may still read {file:...} as long as the target stays inside the project root (absolute paths, ../ traversal, and symlink escapes are rejected via realpath). Keep {env:} fully blocked in project config (no safe scoped form). Make the /proc/self/fd guard cross-platform. Thread fileScope through config.ts, agent.ts, tui.ts, and overlay.ts. Update docs and changeset.
2026-07-02 14:37:42 +02:00
github-actions[bot] 327e974b1e chore: update kilo-vscode visual regression baselines 2026-07-02 09:50:57 +00:00
github-actions[bot] 1ce95dc76f chore: update kilo-vscode visual regression baselines 2026-07-02 09:20:16 +00:00
Mark IJbema 66ab5eaccd Merge pull request #11723 from Kilo-Org/mark/filter-jetbrains-pre-push
fix: skip unrelated JetBrains pre-push checks
2026-07-02 08:34:41 +02:00
Kirill Kalishev 5f4c96bad4 Merge pull request #11869 from Kilo-Org/slimy-principal
chore(jetbrains): migrate to stable IntelliJ Gradle plugin
2026-07-01 15:23:40 -04:00
Iván Uruchurtu 5dd37c1981 Merge pull request #11522 from Kilo-Org/fix/vscode-subagent-output
fix(vscode): improve subagent output and block matrix coverage
2026-07-01 13:02:49 -06:00
kirillk 1285e54be1 chore(jetbrains): migrate to stable intellij gradle plugin 2026-07-01 13:42:17 -04:00
Marian Alexandru Alecu 8b7b69b551 Merge branch 'main' into main 2026-07-01 17:34:10 +03:00
Vishal Kumar Singh 98f873a42a docs: clarify MCP config fallback (#11661)
* docs: clarify MCP config fallback

* docs: include root MCP config fallback
2026-07-01 14:07:21 +02:00