Commit Graph

7235 Commits

Author SHA1 Message Date
kchantharuan aeac494884 fix(cli): add NVIDIA NIM origin header 2026-05-13 13:08:15 -07:00
Marius e4e3a36174 Merge pull request #10218 from Kilo-Org/perpetual-parmesan
Configure auto compaction threshold
2026-05-13 21:33:16 +02:00
Catriel Müller 7f6fe7feac refactor: fix exit status code 2026-05-13 13:54:51 -03:00
Catriel Müller d541f851df refactor: fix test 2026-05-13 13:31:45 -03:00
Catriel Müller aab35c9d18 refactor: fix test // typecheck 2026-05-13 13:17:09 -03:00
marius-kilocode 4860e654ca feat: configure auto compaction threshold 2026-05-13 18:09:54 +02:00
Catriel Müller dbf938841b Merge branch 'main' into feat/roll-call-command 2026-05-13 12:40:24 -03:00
Catriel Müller e8078b88b9 refactor: fix test types 2026-05-13 12:24:12 -03:00
Catriel Müller 54916e9c44 refactor: address the comments 2026-05-13 12:19:15 -03:00
Catriel Müller 2886183aaf refactor: move the command to the kilo folder 2026-05-13 11:33:00 -03:00
Alex Alecu 4f13e85913 fix(cli): track /review completions in telemetry 2026-05-13 11:38:57 +03:00
Catriel Müller b04e1a1131 fix: kilocode markers 2026-05-13 00:36:33 -03:00
Catriel Müller 6281664038 fix: md scalar 2026-05-13 00:33:08 -03:00
Catriel Müller 5b61045de6 refactor: add kilocode markers 2026-05-13 00:29:16 -03:00
Catriel Müller 2d5f6f3478 refactor: rebase from main 2026-05-13 00:23:04 -03:00
Catriel Müller 109d59a312 refactor: add support for all markdown files 2026-05-12 23:54:43 -03:00
Catriel Müller 8d23e17141 refactor: isolate kilochange 2026-05-12 23:47:46 -03:00
Maksym Mospanenko 3ca9941bbf feat(config): add escapeJson parameter to substitute for raw content handling
Add optional `escapeJson` parameter to `ConfigPaths.substitute` to control
whether file content should be JSON-escaped. When `false`, multiline content
and special characters are preserved as-is, which is required for agent
markdown prompts that need raw file content rather than escaped strings.

Update agent config processing to pass `escapeJson: false` when substituting
file content into markdown prompts, ensuring proper handling of multiline
files without unwanted escape sequences.

Add comprehensive test coverage for the new parameter and existing
substitution functionality.
2026-05-12 23:44:06 -03:00
Maksym Mospanenko 80edeee58f feat(config): add {file:...} syntax support for agent markdown prompts
Enable file content substitution in agent configuration prompts using the
existing `ConfigPaths.substitute` utility. This allows agent markdown files
to reference external file contents via `{file:path}` syntax, with missing
files resolving to empty strings.

Export `substitute` function from ConfigPaths to support agent config
processing.
2026-05-12 23:39:07 -03:00
Kirill Kalishev 55abf13cfa Merge pull request #10095 from Kilo-Org/ionized-emmental
fix(vscode,cli): sync mode model selection and restore plan follow-up picker
2026-05-12 17:52:31 -04:00
Catriel Müller 305ec5c107 Merge branch 'main' into issue-7861 2026-05-12 11:21:32 -03:00
nimgrim af902eb359 fix: catch EEXIST from recursive mkdir on Windows (#9794)
* fix: catch EEXIST from recursive mkdir on Windows

fs.mkdir with { recursive: true } can still throw EEXIST on Windows
when the target directory is backed by an NTFS reparse point (OneDrive),
a directory junction, or a WSL-served path. libuv's recursive walk
doesn't treat these as regular directories, so mkdir with recursive:true
attempts to create an already-existing path segment and fails.

This adds a defensive EEXIST catch at both directory-creation origins:
- AppFileSystem.ensureDir / writeWithDirs (snapshots, config, plans)
- Encoding.write (all tool writes and edits)

No functional change on Linux/macOS where EEXIST is never thrown from
recursive mkdir.

Fixes #9618, #9755

* fix: remove extra arg from mkdirSafe call, add unit tests

* docs(kilo-docs): update auto-generated source links

Add 2 new GitHub issue references (9618, 9755) from encoding.ts
and update URL count from 84 to 86.

---------

Co-authored-by: nimgrim <nimgrim@users.noreply.github.com>
Co-authored-by: Imanol Maiztegui <imanol.mzd@gmail.com>
2026-05-12 13:17:49 +00:00
Marius 8af638e7e2 Fix expired Codex auth recovery (#10136)
* fix: recover expired Codex auth

* fix: minimize Codex auth shared changes

* fix: format Codex auth prompt
2026-05-12 09:27:32 +02:00
kilo-maintainer[bot] 645e805250 release: v7.2.52 2026-05-11 21:50:17 +00:00
Kirill Kalishev db097e44db Merge branch 'main' into ionized-emmental 2026-05-11 14:02:54 -04:00
kilo-maintainer[bot] 1f252acce1 release: v7.2.51 2026-05-11 16:59:59 +00:00
Kirill Kalishev 9c554f0330 Merge branch 'main' into ionized-emmental 2026-05-11 12:55:04 -04:00
Catriel Müller 41596c5565 Merge pull request #10152 from Kilo-Org/glittery-writer
fix(cli): normalize IDN hostnames to punycode in permission dialogs
2026-05-11 13:39:23 -03:00
Catriel Müller a0dcf76177 fix(cli): strip trailing sentence punctuation from URL matches in normalizeUrls
\S+ was greedily consuming trailing punctuation (. ! , ;) into the URL
match, causing new URL() to mutate clean ASCII URLs — e.g.
"see https://example.com." became "see https://example.com./".

Fix: strip trailing sentence punctuation before parsing, extract and
replace only the hostname (not href) to avoid adding trailing slashes to
bare origins, and restore the stripped tail afterward.
2026-05-11 13:18:49 -03:00
Catriel Müller 9064478949 test(cli): add unit tests for normalizeUrls homograph protection 2026-05-11 12:55:08 -03:00
Marius ea023b06dd fix(cli): prune tool outputs for large requests (#10143)
* fix(cli): prune tool outputs for large requests

* chore(cli): annotate pruning changes

* fix(cli): preserve transforms after payload pruning
2026-05-11 17:09:06 +02:00
Catriel Müller da92a30007 fix: add missing kilocode_change markers to all annotated lines 2026-05-11 12:07:48 -03:00
Catriel Müller 9fe37aeb39 refactor: extract normalizeUrls into src/kilocode/util/url.ts
Move Kilo-specific URL normalization logic out of shared upstream files
and into a mirror file under src/kilocode/, with kilocode_change markers
at each call site per the fork merge minimization convention.
2026-05-11 11:57:12 -03:00
Catriel Müller 862fed158f fix(cli): normalize IDN hostnames to punycode in permission dialogs
Prevent homograph attacks where visually identical Unicode characters
(e.g. Cyrillic а vs Latin a) could trick users into approving malicious
URLs in bash and webfetch permission prompts.
2026-05-11 11:50:52 -03:00
Truffle 00313bfcd4 fix(tool): clarify semantic_search returns snippets not file paths (#10142)
* fix(tool): clarify semantic_search returns snippets not file paths

The first description bullet read "Find files most relevant to the
search query using semantic search.", which led an AI agent to tell a
user that the tool returns file paths only. The tool actually returns
matching content with file paths, line ranges, and relevance scores.

Updates the first two description bullets to name the output shape
directly. No runtime change.

Closes #9767.

* test(cli): cover semantic_search description

---------

Co-authored-by: marius-kilocode <marius@kilocode.ai>
2026-05-11 14:15:41 +00:00
Catriel Müller f383258f80 Merge pull request #10121 from shssoichiro/apply-auto-to-subagents
fix(cli): apply `--auto` flag to subagents from Task tool
2026-05-11 11:02:53 -03:00
Josh Holmer 0676243df3 ux(cli): remove --dangerously-skip-permissions (#10114)
This flag currently does nothing. Presumably, it was recently added by
OpenCode upstream, but since Kilo already has the `--auto` flag, the
code that would handle `--dangerously-skip-permissions` is wired into
`--auto` instead.

Removing this useless flag avoids confusion for users.
2026-05-11 15:45:49 +02:00
Marius 33a233fd11 fix(cli): prevent nested subagent delegation (#10137) 2026-05-11 15:13:08 +02:00
Catriel Müller 8e90f29695 fix(cli): improve model info panel scrollbar padding and capabilities display 2026-05-11 09:50:01 -03:00
Catriel Müller f70ea87abe Merge branch 'main' into cli-model-picker-parity 2026-05-11 09:22:37 -03:00
kilo-maintainer[bot] 7a69410acc release: v7.2.50 2026-05-11 11:14:30 +00:00
Aarav Sharma 51b35d0b94 fix(model-info-panel): resolve review comments - merge imports, guard fmtDate, use Show render-prop 2026-05-10 22:29:08 -06:00
Aarav Sharma 3b44205a38 feat(cli): improve model info panel with modality and description support 2026-05-10 22:20:24 -06:00
Josh Holmer 9963b0271a fix(cli): apply --auto flag to subagents from Task tool 2026-05-10 00:50:32 -04:00
kirillk 931b803068 test(cli): update QuestionOption wire-shape snapshot to include mode field 2026-05-09 22:16:53 -04:00
kirillk c7fa827662 test(cli): add contract tests for QuestionOption Kilo-specific fields 2026-05-09 21:30:16 -04:00
kirillk f449375e09 fix: split kilocode_change markers for mode field in QuestionOption 2026-05-09 21:25:20 -04:00
kirillk b539c6920e fix(vscode): add mode field to plan follow-up Continue here option so picker updates instantly 2026-05-09 20:50:12 -04:00
kilo-maintainer[bot] 9d37a1aead release: v7.2.49 2026-05-09 20:12:04 +00:00
Christiaan Arnoldus 045fa89133 Merge pull request #10077 from Kilo-Org/fix/read-stream-utf8
fix(cli): stream UTF-8 reads in read tool again
2026-05-08 22:10:45 +02:00