Commit Graph
1826 Commits
Author SHA1 Message Date
Mark IJbema eaabc99625 fix: add kilocode_change markers and update nvidia-headers test for rebrand
- Adds 'new file' marker to check-forbidden-strings workflow
- Marks the SKIP_FILES addition in extract-source-links.ts
- Updates nvidia-headers test to assert the new kilo.ai/Kilo Code values
2026-05-18 17:00:05 +02:00
Catriel Müller 2aa1b95074 refactor: resolve comments 2026-05-18 11:45:36 -03:00
Imanol Maiztegui d7fcb894ed refactor(kilo-gateway): clean up proxy auth naming, error handling, and OpenAPI schema alignment
Rename `proxy` helper to `proxyAuth` for clarity, switch modes endpoint
to gracefully handle missing auth instead of returning BadRequest, remove
redundant Content-Type header from audio transcriptions response, and
fix OpenAPI parameter types:

- Change `worktrees` query param from string enum to boolean
- Add `^que.*` pattern to network endpoint requestID path params
- Register experimental session worktrees in query parameter schemas
- Re-enable and update Effect HttpApi route parity tests
2026-05-18 15:51:10 +02:00
Mark IJbema 3185e8d582 fix: rebrand upstream attribution and bug-report URLs
Replaces hardcoded opencode.ai/anomalyco URLs in production code paths:
LLM provider HTTP-Referer/X-Title attribution headers, the TUI error
dialog's bug-report URL, and the github-remote parser test fixtures.

Extends check-forbidden-strings with patterns for these leaks (with a
narrow allowlist for fork-lineage docs and upstream-merge tooling).
2026-05-18 15:25:16 +02:00
Catriel Müller ad8d57707d fix(cli): address network reconnect review 2026-05-18 10:14:43 -03:00
Catriel Müller 413222f013 fix(cli): auto-resume network reconnects 2026-05-18 09:46:37 -03:00
Imanol Maiztegui f560e5bd7a refactor(kilo-gateway): extract cloud sessions logic and wire up cloud sync endpoints
Move inline cloud-sessions fetch logic from Hono route handler into a
reusable getCloudSessions function in handlers.ts, and introduce new
Effect HttpApi endpoints for fetching and importing individual cloud
sessions.

- Extract getCloudSessions handler from routes.ts inline implementation
- Export fetchCloudSession, fetchCloudSessionForImport, importSessionToDb
  from kilo-gateway package
- Add cloudSession (GET /kilo/cloud/session/:id) endpoint for previewing
  remote session data
- Add cloudSessionImport (POST /kilo/cloud/session/import) endpoint to
  download and persist cloud sessions locally
- Define CloudSession, CloudSessionData, CloudMessage schemas in the
  kilo-gateway API group
- Change claw status error response from 500 InternalServerError to
  503 ServiceUnavailable
- Register new cloud routes in instance router
- Add test coverage for route disambiguation between import and :id paths
- Regenerate SDK types and OpenAPI spec
2026-05-18 14:38:21 +02:00
Imanol Maiztegui 09923fbe52 style: apply formatting and lint fixes across packages
Reformat code with consistent line breaks, trailing commas, semicolons,
and line-length compliance. No logic changes — purely whitespace,
indentation, and punctuation adjustments driven by the project formatter.

- Break long function signatures and conditionals across multiple lines
- Remove trailing blank lines and stray leading newlines
- Replace string-expression JSX whitespace with literal spaces
- Convert quoted object keys to unquoted where valid
- Remove erroneous shell command prefix from openapi.json
- Deduplicate SessionNetworkWait1 schema and simplify Finite unions to
  plain number type in OpenAPI spec
2026-05-18 12:40:16 +02:00
Imanol Maiztegui 0b41d2dc4b feat(kilocode): migrate kilo HTTP routes to Effect HttpApi layer
Introduce a structured Effect HttpApi surface for all Kilo-specific
endpoints, replacing inline Hono handler logic with declarative group
definitions, typed schemas, and composable handler layers.

Key changes:
- Add HttpApi group and handler modules for commit-message, enhance-prompt,
  indexing, kilocode, network, remote, session-import, suggestion, and
  telemetry
- Extract allow-everything permission logic into a reusable Effect function
- Register all Kilo HttpApi groups in InstanceHttpApi and wire route
  forwarding in the Hono instance router
- Export Suggestion.RequestSchema and annotate schemas with identifiers
- Use NonNegativeInt for indexing status fields and Schema.Finite for
  network wait timestamps
- Add httpapi-bridge test asserting parity between Hono and Effect specs
  for all 22 Kilo overlay routes
- Regenerate SDK types and openapi.json to reflect the new endpoints
2026-05-18 12:36:01 +02:00
kchantharuan 2bdee47819 fix(cli): provide spawner for nvidia header test 2026-05-15 21:58:08 -07:00
Joshua Lambert 3df80b48c9 Merge branch 'main' into nvidia-nim-origin-header 2026-05-15 16:56:04 -04:00
Marius 7e06c68e8a Merge pull request #10290 from shssoichiro/semantic-search-use
fix: improvements to semantic_search tool use
2026-05-15 16:47:52 +02:00
Josh Holmer 0d7bd4fb3d test: update assertions 2026-05-15 08:35:11 -04:00
Josh Holmer deddacf063 fix: only include semantic search tool hint when enabled 2026-05-15 08:14:56 -04:00
Imanol Maiztegui e68fd6781d resolve merge conflicts 2026-05-15 13:13:17 +02:00
marius-kilocode aeeea7cd52 Merge branch 'main' into fix/agent-manager-attribution 2026-05-15 12:47:37 +02:00
marius-kilocode a3769d83de fix(cli): keep prompt enhancement in rewrite mode 2026-05-15 10:10:34 +02:00
Imanol Maiztegui b7a7ecf449 refactor: kilo compat for v1.14.34 2026-05-15 09:25:13 +02:00
Catriel Müller 7bc46c54d8 Merge pull request #10263 from Kilo-Org/axiomatic-gouda
fix(cli): chunk oversized compactions
2026-05-14 15:16:26 -03:00
Catriel Müller c1a797c1f1 fix(cli): chunk oversized compactions 2026-05-14 11:26:28 -03:00
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
marius-kilocode 827e75acc8 refactor(cli): keep attribution lookups in memory 2026-05-13 19:59:05 +02:00
marius-kilocode ce64a962be fix(vscode): attribute Agent Manager sessions by root context 2026-05-13 19:49:48 +02:00
Catriel Müller 7f6fe7feac refactor: fix exit status code 2026-05-13 13:54:51 -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 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
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
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
Truffleandmarius-kilocode 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
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
Josh Holmer 9963b0271a fix(cli): apply --auto flag to subagents from Task tool 2026-05-10 00:50:32 -04:00