feat(installer): add Kiro target#297
Open
dohkimOnAmz wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add Kiro (kiro.dev) as a
codegraph installtarget so Kiro users get the same auto-detect / install / uninstall flow that Claude Code, Cursor, Codex CLI, opencode, and Hermes Agent already get. The CodeGraph runtime is already agent-agnostic — this is purely an installer-layer addition.After install, codegraph appears in Kiro under
mcpServers.codegraphat:~/.kiro/settings/mcp.json(user-global —--location=global)./.kiro/settings/mcp.json(workspace —--location=local)Both are documented Kiro paths and Kiro merges them with workspace precedence (https://kiro.dev/docs/mcp/configuration/). Kiro auto-reconnects on file save, so no IDE restart is needed after install — no
notesare emitted.Implementation
Mirrors the Cursor target with two simplifications:
--pathinjection. Cursor needed it because its MCP launch cwd isn't the workspace; Kiro launches with the workspace as cwd, so the standardprocess.cwd()resolution finds.codegraph/correctly..kiro/steering/*.md) are deliberately out of scope for this PR — Hermes also ships no instructions surface, and adding one can be a follow-up viawireProjectSurfaces()if it proves valuable.KiroTargetreuses existing helpers fromtargets/shared.tsonly —getMcpServerConfig,readJsonFile,writeJsonFile,jsonDeepEqual. No new shared utilities, no new dependencies.Files changed
src/installer/targets/kiro.ts— new (~115 LOC)src/installer/targets/types.ts— add'kiro'toTargetIdsrc/installer/targets/registry.ts— import + appendkiroTargettoALL_TARGETSsrc/bin/codegraph.ts— add "Kiro" to theinstallcommand description__tests__/installer-targets.test.ts— Kiro-specific tests +getTarget('kiro')line in the registry testREADME.md— add Kiro to badges, supported-agents list, and the restart noteTest plan
npm run build— cleannpx vitest run __tests__/installer-targets.test.ts— 86 tests passing, including the parameterized contract suite which automatically covers Kiro × {global,local}: install writes files, idempotent re-run is byte-identical, sibling MCP servers in the same JSON survive, uninstall reverses install,printConfigdoesn't touch disk..kiro/settings/mcp.json(nested), not.kiro/mcp.json— guards against an accidental refactor of the path layout.mcpServers.someOther.codegraph install --target=kiro --location=local --yes→Created /tmp/.../.kiro/settings/mcp.jsonwith the expected JSON.Unchanged.codegraph.codegraph install --print-config kiroprints the snippet for bothglobalandlocalpaths without touching disk.Notes for the maintainer
I did not include a version bump / CHANGELOG entry / link footer in this PR — those felt like release-time territory. Happy to add a
### Unreleased–style line if that's the preference. Suggested CHANGELOG copy if useful: