Commit Graph
286 Commits
Author SHA1 Message Date
marius-kilocode e3e2327803 fix(vscode): align xterm terminal on narrow sidebar width 2026-08-07 12:41:05 +02:00
Johnny Eric Amancio 154b1ae53c fix(cli): avoid startup database lock crashes 2026-08-06 14:09:04 +02:00
Marius 81ddf2d9f8 Merge pull request #12882 from Kilo-Org/reintroduce-optimization-with-agent-safety-tests
fix(cli): safely restore grep signal controls
2026-08-06 10:01:00 +02:00
marius-kilocode a67b120d21 fix(core): avoid shadowing process settlement helper 2026-08-06 08:50:52 +02:00
Aarav 0b96332bb3 Merge branch 'main' into feat/privacy-mode-tui 2026-08-05 07:40:31 -06:00
marius-kilocode 9bfbc35c5c fix(cli): safely restore grep signal controls 2026-08-05 09:39:16 +02:00
Johnny Eric Amancio ea3cc176af Merge remote-tracking branch 'origin/main' into johnnyeric/kilo-opencode-v1.17.13
# Conflicts:
#	packages/core/src/filesystem/search.ts
#	packages/opencode/src/command/index.ts
2026-08-04 18:36:43 +02:00
Johnny Eric Amancio 10a3eec7bd fix: address upstream merge regressions 2026-08-04 18:14:39 +02:00
marius-kilocode fe16f7c866 fix(core): close lazy file picker acquisition gap 2026-08-04 18:10:31 +02:00
marius-kilocode afdcf09cf0 fix(core): retry failed lazy file indexes 2026-08-04 17:07:09 +02:00
marius-kilocode d33ef4fdcd fix(core): await initial file index scan 2026-08-04 16:54:44 +02:00
marius-kilocode 35801cbeed fix(vscode): defer unused worktree watchers 2026-08-04 16:28:59 +02:00
Marius 849f92ecd6 Merge pull request #12848 from Kilo-Org/fix-pty-non-ascii-flake
fix(pty): stabilize non-ASCII output round-trip test
2026-08-04 13:11:15 +02:00
Johnny Eric Amancio 6c138449d5 Merge remote-tracking branch 'origin/main' into johnnyeric/kilo-opencode-v1.17.13
# Conflicts:
#	package.json
#	packages/core/schema.json
#	packages/core/src/command.ts
#	packages/core/src/config/plugin/command.ts
#	packages/core/src/database/schema.gen.ts
#	packages/core/src/session/sql.ts
#	packages/core/src/v1/session.ts
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/agentmanager/full-screen-diff-with-changes-chromium-linux.png
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/labs-tool-call-lab/search-previews-chromium-linux.png
#	packages/opencode/src/command/index.ts
#	packages/opencode/test/server/httpapi-ui.test.ts
#	packages/sdk/js/src/v2/gen/types.gen.ts
#	packages/sdk/openapi.json
#	packages/tui/src/routes/session/index.tsx
2026-08-04 12:57:20 +02:00
kilo-maintainer[bot] 62baedd258 release: v7.4.20 2026-08-04 10:23:57 +00:00
Marius c7d4a12367 Merge pull request #12846 from Kilo-Org/rough-makemake
fix(cli): allow explicit external markdown sources
2026-08-04 11:56:23 +02:00
marius-kilocode 4c48bfb256 fix(pty): stabilize non-ASCII output round-trip test
The round-trips non-ASCII output test printed the fixture and exited
immediately. On loaded CI runners bun-pty can observe the child-exit End
message before its reader thread has drained the last output bytes, dropping
the trailing UTF-8 marker and timing the test out.

Keep the child alive after printing (printf ...; sleep 5), matching the
sibling explicit-arguments test, so output is fully consumed before the
process can exit. Also include the received output in the waitForOutput
timeout error to make any future failure self-diagnosing.
2026-08-04 11:44:36 +02:00
marius-kilocode 9ed716a5b8 revert(cli): restore stable grep behavior 2026-08-04 11:39:59 +02:00
marius-kilocode 8c84f8ae5e fix(cli): allow explicit external markdown sources 2026-08-04 11:31:10 +02:00
kilo-maintainer[bot] 20aead0d87 release: v7.4.19 2026-08-04 07:56:10 +00:00
Marius ce7984fc42 feat(agent-manager): assign models to workflows (#12729)
* feat(agent-manager): assign models to workflows

* fix(agent-manager): address workflow model review findings

* fix(cli): handle command source aliases safely

* test(pty): allow slower macOS startup

* test(cli): tolerate transient Windows response reads

* test(cli): bound transient stall response retries

* test(pty): include replayed output in wait helper

* test(pty): stabilize buffered output waits

* test(pty): avoid locale-dependent UTF-8 fixture
2026-08-03 16:46:07 +02:00
Marius 989f7f06a0 feat: add signal-to-noise controls to grep tool (#12811)
* feat: add signal-to-noise controls to grep tool

Add configurable options to reduce noise in grep results:
- context: show N lines before/after each match
- limit: bound maximum matches (default 100) with early termination
- literal: treat pattern as plain text instead of regex
- ignoreCase: case-insensitive matching

These controls help models avoid overwhelming context windows with too
many matches and provide clear guidance when results are truncated.

Implementation preserves upstream ripgrep structure with minimal Kilo
hooks for additive behavior only. Shared-file changes reduced from 183
to 60 lines compared to initial implementation.

* test(core): tolerate PTY event publication race

* fix(cli): count grep matches independently of context
2026-08-03 10:32:40 -04:00
Marius 9955efd861 feat(cli): adopt upstream reasoningVariants from v1.18.11 (#12800) 2026-08-03 13:24:25 +02:00
Marius 2fbd380dfc fix(cli): speed up local recall searches (#12726)
* fix(cli): speed up local recall searches

* fix(cli): bound local recall scans

* fix(cli): make recall index initialization lazy
2026-08-03 12:22:42 +02:00
kilo-maintainer[bot] f00da9a75b release: v7.4.18 2026-07-31 19:59:08 +00:00
kilo-maintainer[bot] 5ca97417a0 chore: update kilo-vscode visual regression baselines 2026-07-31 02:55:59 +02:00
Johnny Amancio 76d06fd8ba fix: name the auto-approve commands by scope and repair CI failures
Restore packages/ui/src/components/markdown.css. Upstream moved markdown
styling into the new session-ui package and deleted this file, but Kilo still
ships packages/ui's markdown component to the VS Code webview, so the rules
went missing while their consumer stayed. The copy button lost
position: absolute and opacity: 0, so it rendered below every code block
instead of in its corner, and showed the copy and check icons at once because
nothing hid the check state.

The palette showed "Enable auto-approve permissions" next to "Enable
auto-approve mode", which reads as the same command twice. They are not: one
lasts for the TUI run and is what --auto and --yolo seed, the other saves a
rule to global config. Both now say which they are and carry a desc, which
the palette already renders. The saved one is enforced server side, so its
desc says it covers every client. No behaviour change, and the command names
are untouched so the slash aliases still work.

Tests no longer depend on the developer's credential store. Credential
imports Global.data/auth.json on startup, and the catalog, plugin and
models-dev layers built Credential.node without overriding Global, so results
changed depending on whether the machine was logged in. They now use a temp
data directory, as the integration suite already did. That suite in turn set
KILO_AUTH_CONTENT at module scope; bun shares one process across test files,
so it leaked into credential.test.ts, whose auth.json cases then read "{}"
and found no credentials. Scoped with beforeAll/afterAll.

macOS-only failures, all merge gaps in Kilo tests:

- sandbox/state.test.ts runs a script in a subprocess; the LayerNode
  migration put AppNodeBuilder.build in it without adding the import
- sandbox/session-tools.test.ts mocked MCP without clients(), which
  upstream's resource tools now call
- sandbox/session.test.ts built SessionV2 without binding SessionExecution

Generated files: schema.gen.ts was formatted by an older prettier than the
one main's dependency bump resolves, so the generator no longer reproduced it
and the migration check called the schema stale. packages/client was missing
Pty.sessionID and the compaction include field. Both regenerated.

Also corrected the listener comment: it claimed application services still
come from AppRuntime, but the SessionV2 and MoveSession builds sit inside
KiloListener's Layer.fresh boundary and self-provide their subtrees, which is
deliberate since both bind this listener's own LocationServiceMap.
2026-07-30 22:01:05 +02:00
Johnny Amancio 5c9da0816f Merge remote-tracking branch 'origin/main' into johnnyeric/kilo-opencode-v1.17.13
# Conflicts:
#	package.json
2026-07-30 20:24:34 +02:00
Johnny Amancio 7d0089bb26 Merge remote-tracking branch 'origin/main' into johnnyeric/kilo-opencode-v1.17.13
# Conflicts:
#	packages/opencode/src/kilocode/server/httpapi/server.ts
#	packages/opencode/src/server/routes/instance/httpapi/server.ts
2026-07-30 20:11:31 +02:00
Christiaan Arnoldus 52e17568e7 Merge branch 'main' into equable-stinger 2026-07-30 20:01:32 +02:00
Johnny Amancio a606a91e69 fix: restore Kilo deltas the merge dropped
- tool-input delta/end no longer recreate a settled call as a pending part
- outputTokenMax is back in overflow accounting, with RuntimeFlags rewired
- MCP server instructions reach the system prompt again (sys.mcp call site)
- session revert decodes stored messages through the Kilo normalize boundary
- shell tool titles runs with the model description and keeps it in metadata
- subdirectory snapshots drop newly ignored files: the ignore check and the
  index removal ran from the instance dir, but candidates are worktree
  relative
- customize-opencode builtin stays unregistered after the boot.ts rename
- --auto is interpreted in one place; the flag beside it now covers only
  --yolo and --dangerously-skip-permissions
- --cloud-fork works again, validateSession had landed before the import
- TUI block tool skips the empty title row, opencode catalog gate reads
  credentials per reload, TUI worker logs crashes, Snowflake OAuth uses the
  Kilo page, annotations guard covers the shared packages
- tests: startRun spawned without the solid preload so every run under it
  died on the JSX runtime; two upstream tests get a permission fixture since
  headless auto-rejects bash; one expected a single error record where Kilo
  emits two, as it did before this merge
- changeset for the range, help snapshot, llmgateway indentation
2026-07-30 19:52:20 +02:00
marius-kilocode 5076b62974 feat(agent-manager): run setup scripts in panel terminal 2026-07-30 18:16:17 +02:00
Marius 166d04e846 Merge pull request #12566 from Kilo-Org/abalone-bactrosaurus
feat(vscode): multi-project Agent Manager
2026-07-30 18:07:46 +02:00
Marius 1d1630b346 fix(cli): settle signal-terminated shell commands as 128 + signum (#12698) 2026-07-30 17:26:57 +02:00
Christiaan Arnoldus 0e3ce11862 fix: align ai core with provider packages in lockstep, drop bedrock bump 2026-07-30 17:09:31 +02:00
Christiaan Arnoldus f695425328 fix: surface provider error details from Responses API stream failures 2026-07-30 16:35:49 +02:00
Johnny Amancio db000fef1c Merge remote-tracking branch 'origin/main' into johnnyeric/kilo-opencode-v1.17.13
# Conflicts:
#	bun.lock
#	packages/core/src/v1/permission.ts
#	packages/opencode/src/acp/permission.ts
#	packages/opencode/src/cli/cmd/tui.ts
#	packages/opencode/src/skill/discovery.ts
#	packages/opencode/src/skill/index.ts
#	packages/opencode/test/cli/run/run-process.test.ts
#	packages/opencode/test/skill/discovery.test.ts
#	packages/opencode/test/tool/registry.test.ts
#	packages/sdk/openapi.json
#	packages/server/src/handlers/pty.ts
2026-07-30 16:32:39 +02:00
Johnny Amancio 61b2f1d0cb fix: repair generated artifacts and branding after the v1.17.13 merge
Generation was failing. Upstream added a guard in this range that rejects
duplicate session event variants, and Kilo's tool-content codec on the shared
event schema was tripping it, so openapi.json and the SDK were stale and a temp
packages/sdk/js/openapi.json got committed by accident.

Move the codec off the event schema into core/src/kilocode/event-storage.ts,
keyed by event type and applied only at the SQL boundary. Session events are on
the wire now (SessionEvent.Durable backs /api/session/{id}/history), so a
transform there forked the generated API. Shipped readers still parse old rows
and the wire contract goes back to upstream's. Drops the consumer-side
normalizers in the TUI and sync-v2 that existed only to undo the widening.

Also: restore the Kilo HttpApi title and a few branding strings, balance five
kilocode_change markers, drop a duplicate TUI palette entry, and teach
check-model-tool-network about the LayerNode wiring that replaced
Layer.provide(ToolNetwork.httpLayer).
2026-07-30 16:20:25 +02:00
Marius 7fcdd110c1 Merge branch 'main' into abalone-bactrosaurus 2026-07-30 16:05:40 +02:00
bagatao@anaconda.com 1511eb6419 Merge pull request #12604 from Kilo-Org/feat/execute-cmds-in-skill-context
feat(tui): execute cmds in skill context
2026-07-30 15:21:53 +02:00
marius-kilocode e0d42fc5ea fix(core): re-check models.dev cache under the flock before refetching
The corrupted-cache recovery in ModelsDev.populate acquired the flock and
fetched unconditionally, while the background refresh fiber runs the same
recovery on layer build. When refresh won the lock race it rewrote a valid
cache file, but populate still fetched again because it never re-read the
cache after acquiring the lock. The result was a duplicated network call,
which the corrupted-cache test catches as calls.length == 2 on slow CI
runners (fast local machines almost always take the single-fetch path).

Re-run loadFromDisk under the flock, mirroring the re-check refresh
already performs, so whichever fiber recovers second reuses the valid
cache instead of refetching.
2026-07-30 14:35:22 +02:00
Johnny Amancio 518501a994 resolve merge conflicts 2026-07-30 14:24:24 +02:00
Christiaan Arnoldus 70eeaff383 Merge pull request #12684 from Kilo-Org/gilded-impulse
fix(core): include underlying reason in ripgrep execution failures
2026-07-30 14:05:47 +02:00
Joshua Lambert bd0d1f08ae Merge pull request #12369 from Kilo-Org/feat/websearch-config-setting
feat: configure web search availability for all providers
2026-07-30 07:30:12 -04:00
marius-kilocode a6f6655c56 fix(agent-manager): address run terminal review findings 2026-07-30 11:39:43 +02:00
Christiaan Arnoldus d7f8da917e fix(core): include underlying reason in ripgrep execution failures 2026-07-30 11:35:32 +02:00
marius-kilocode 49223b3ade feat(agent-manager): run project scripts in the embedded side terminal 2026-07-30 10:16:51 +02:00
Josh Lambert 623cba4b99 Merge remote-tracking branch 'origin/main' into feat/websearch-config-setting 2026-07-29 14:36:36 -04:00
Bruno Agatao b29bb95602 Merge remote-tracking branch 'origin/main' into feat/execute-cmds-in-skill-context 2026-07-29 16:53:37 +02:00
kilo-maintainer[bot] a0364858a6 release: v7.4.17 2026-07-29 11:29:05 +00:00