The upstream build script tries to bundle packages/app/ which was removed in #9845. Guard the embed step so the CLI build still works, and revert the --skip-embed-web-ui workaround from #9885 since it is no longer needed.
* feat(vscode): add dev launcher preserve settings flag
* fix(vscode): parse dev launcher settings as jsonc
* fix(vscode): keep dev launcher settings merge dependency-free
Add version tracking for the shared package alongside the opencode package to improve cache invalidation. Also update the app name from "opencode" to "kilo" in the shared global configuration.
This change ensures that the local binary build process tracks both the opencode and shared package versions, allowing for more accurate cache invalidation when either package changes. The app name update reflects the correct project branding.
* 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
Add a pre_release checkbox to the publish workflow that passes
--pre-release to vsce package, vsce publish, and ovsx publish.
This enables publishing to the VS Code Marketplace pre-release
channel without requiring a separate versioning scheme.
Closes#8156
Remove --pre-release flag from vsce package and vsce publish commands.
Previously the VS Code Marketplace received a pre-release VSIX while
Open VSX received a production VSIX. Now both receive the same
production VSIX built without --pre-release, eliminating the separate
out/prod/ directory.
local-bin.ts now tracks the latest git commit hash of packages/opencode/
in bin/.cli-version. On subsequent runs, if the hash differs, the binary
is automatically rebuilt instead of silently reusing a stale one.
- Add win32/arm64 target to packages/opencode/script/build.ts
- Add win32-arm64 target to packages/kilo-vscode/script/build.ts and publish.ts
- Add @parcel/watcher-win32-arm64@2.5.1 optional dev dependency to packages/opencode/package.json
- Update RELEASING.md to document win32-arm64 CLI and VSIX targets
Bun.file().exists() returns false for directories, so the dist
directory was never cleaned on --force. Stale prebuilt binaries
were reused instead of triggering a fresh build. Switch to
existsSync() which works for both files and directories.
* feat(kilo-vscode): add type safety infrastructure, typed message contracts, and CI typecheck
- Add typecheck script for CI (bun turbo typecheck now covers kilo-vscode)
- Type-check both extension (src/) and webview (webview-ui/) code
- Extend ESLint to cover .tsx files and webview-ui/src/
- Add typed discriminated unions for agent-manager extension<->webview messages
- Replace Record<string, unknown> with AgentManagerOutMessage/AgentManagerInMessage
- Fix 14 empty catch blocks with proper logging
- Fix 16 pre-existing webview type errors (icons, i18n keys, null coercion, etc.)
- Add SolidJS sortable directive type declaration, remove @ts-ignore
- Fix missing CreateMultiVersionRequest.name and AgentManagerSetSessionModelMessage
* fix: wire typecheck into compile/package and restore i18n selectAgent key
- compile and package scripts now use typecheck (extension + webview) instead of check-types (extension only)
- Restore settings.agentBehaviour.selectAgent key in all locales (used by AgentBehaviourTab dropdown)
- Add the key to en.ts which was missing it
* add selectAgent.title and selectAgent.description i18n keys
* fix: remove onBack prop from ProfileView stories (prop removed upstream)
* fix: replace bash/grep typecheck scripts with cross-platform Bun script
Addresses PR review feedback — the bash -c pipelines in check-types:extension
and check-types:webview break on Windows. The new script/typecheck.ts runs
tsc and filters errors in JS, so typecheck works on all platforms.