| name | kit-cli-navigator |
| description | Run focused `kit` CLI commands (file-tree, symbols, search, semantic discovery, dependency analysis, and exports) to build high-signal repository context fast. Use when you need to understand an unfamiliar codebase, prep context for Claude, plan refactors, audit dependencies, or answer “where is X implemented?” without manually grepping. |
Kit CLI Navigator
Use the kit command-line interface to interrogate repositories with deterministic tooling before handing context back to Claude. kit bundles structure-aware commands (file trees, symbol extraction, semantic search, dependency graphs, exports) that make “context engineering” repeatable for any language mix. See the reference sheet when you need flag-level detail.
When to activate
- You or the user need a fast mental model of an unfamiliar repo.
- The task is “find where this behavior lives”, “trace symbol usage”, or “surface related code” or any similar request about any codebase.
- Preparing briefs for refactors, dependency upgrades, incident reviews, or onboarding guides.
- Creating exportable context bundles (JSON, DOT, Markdown) for Claude or collaborators.
Prerequisites
- Install/upgrade kit (requires Python ≥3.9):
pipx install cased-kit # or: pip install --upgrade cased-kit kit --version - Run commands from the repository root (or pass an absolute path).
- For
kit search-semantic, ensuresentence-transformersis available; kit prompts for installation if missing. - Optional: set
KIT_CACHE_DIRwhen working across large monorepos to reuse indexes.
Core workflow
Always pair this skill with subagent-orchestration: dispatch each kit CLI command to a focused subagent, have it run the command from the repo root, and post a concise result bundle (command, exit status, key findings, saved file paths) back to the main agent thread before proceeding.
Confirm scope
- Ask which repo/directory matters and whether remote refs/tags are relevant.
- Record success criteria (e.g., “find queue consumers”, “map Terraform modules”).
Baseline snapshot
- Subagent:
kit git-info /abs/path→ capture branch, SHA, remotes and summarize back. - Subagent:
kit file-tree /abs/path --path src --output tree.json→ structural overview (pipe throughjq/lessfor quick scans) and link the output file. - Subagent:
kit file-content /abs/path package.json(or other manifest) to read dependencies without opening an editor; paste only the relevant snippet.
- Subagent:
Surface APIs and hotspots
- Subagent:
kit symbols /abs/path --format tableto list top-level functions/classes. - Narrow with
--filewhen the repo is large; switch to--format jsonwhen Claude needs machine-readable structure (delegate each targeted run to its own subagent). - Subagent:
kit usages /abs/path ConfigLoader --type classto see definitions + references and return a bulleted digest. - Subagent:
kit chunk-symbols /abs/path path/to/file.pyfor precise copy/paste-ready blocks; attach only the relevant chunks.
- Subagent:
Search by text AND meaning
- Subagent: run literal filters (
kit search /abs/path "retryPolicy" --pattern "src/**/*.ts"orkit grep /abs/path "TODO" --include "*.py") and post paths with short excerpts. - Subagent: run semantic recall
kit search-semantic /abs/path "where do we sanitize user input" --top-k 10 --chunk-by lines; include embedding settings + highlights. - Subagent:
kit context /abs/path api/routes.py 128(± surrounding lines) instead of quoting entire files; return condensed snippets.
- Subagent: run literal filters (
Understand relationships
- Subagent:
kit dependencies /abs/path --language python --format dot --output deps.dotto visualize imports/modules (render with Graphviz or open in VS Code plug-ins) and record where the asset lives. - For Terraform, spin a dedicated subagent with
--language terraformand--cyclesto smoke-test architectural issues. - Subagent:
kit index /abs/path --output repo-index.jsonbuilds a full-text + symbol inventory for bulk analysis; report file size + location.
- Subagent:
Package and hand off context
- Subagent: run exports (
kit export /abs/path index out/index.jsonorkit export /abs/path symbol-usages out/queue.json --symbol QueueWorker) and confirm saved path + checksum. - Subagent: create slices for Claude using
kit chunk-lines ... --max-lines 80, returning only the refined snippets. - Store outputs under
debug/or another ignored directory so they do not pollute Git, and have the subagent mention the folder.
- Subagent: run exports (
Cache + iterate
- Subagent:
kit cache warm /abs/path(seereference.md) so heavy operations reuse embeddings/ASTs, then report cache status. - Keep a scratchpad of helpful commands for the session log; reuse them as new questions arise.
- Subagent:
Examples
Example 1: Trace where auth tokens are validated
Goal: “Find every spot we touch validateToken and summarize behavior.”
kit symbols /repo --file src/auth/index.ts --format json→ locate symbol signature.kit usages /repo validateToken --type function --output tmp/validate.json.kit context /repo src/auth/middleware.ts 57for a targeted snippet you can quote back to the user.- Summarize findings + attach the JSON so Claude can ingest it without rerunning expensive scans.
Example 2: Prepare a refactor brief for Terraform modules
kit file-tree /repo --path infra/terraform --output tmp/tree.json.kit dependencies /repo --language terraform --cycles --llm-context --output tmp/terraform.md.kit search-semantic /repo "state bucket" --top-k 5 --chunk-by symbols.- Use the markdown export + semantic hits to outline which modules share remote state and where to sand down coupling.
Example 3: Build a context pack for Claude
kit index /repo --output tmp/index.json.kit export /repo symbol-usages tmp/payment_init.json --symbol PaymentClient.kit chunk-lines /repo services/payment.py --max-lines 60 --output tmp/payment_chunks.json.- Feed the JSON bundle into Claude when answering synthesis questions (“Why do payments fail on retries?”).
Best practices
- Prefer absolute repo paths so skills run consistently (
kit ... /Users/bleikamp/work/app). - Use subagents for every CLI run so commands execute in parallel without blocking; ensure each subagent returns the command, exit status, and key findings to the main thread.
- Capture command output snippets in markdown fences when relaying back to Claude; keep them concise.
- Combine literal + semantic search: run
kit searchfirst for obvious hits, fall back tokit search-semanticfor conceptual matches. - Export artifacts once per session and reuse them; kit’s deterministic CLI makes outputs easy to diff/share.
- Keep raw command transcripts outside SKILL context (store in
debug/kit/and reference paths).
Common pitfalls & recoveries
- Running from the wrong directory → Always pass the repo path explicitly or
cdinto it before invoking kit. - Huge outputs flooding Claude → Use
--format json+ summarize, orkit chunk-linesto slice manageable blocks. Use subagents whenever possible to avoid polluting the main thread. - Semantic search unavailable → Install
sentence-transformers(kit prompts) or fall back to textual search. - Dependency visualization fails → Ensure Graphviz (
brew install graphviz) is available when using--visualize. - Stale caches →
kit cache clear /repoif outputs look outdated before rebuilding. - Silent subagents → If a subagent finishes without reporting, explicitly ask for its summary so the main thread has authoritative context.
References
- Command matrix and additional flags: reference.md
- Kit CLI docs and release notes: https://kit.cased.com