codesift-mcp 0.2.5 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +5 -1
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/help.d.ts +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +14 -0
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/hooks.d.ts +1 -0
- package/dist/cli/hooks.d.ts.map +1 -1
- package/dist/cli/hooks.js +170 -61
- package/dist/cli/hooks.js.map +1 -1
- package/dist/cli/platform.d.ts +12 -0
- package/dist/cli/platform.d.ts.map +1 -0
- package/dist/cli/platform.js +36 -0
- package/dist/cli/platform.js.map +1 -0
- package/dist/cli/setup.d.ts +6 -0
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +161 -121
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/shell-templates.d.ts +4 -0
- package/dist/cli/shell-templates.d.ts.map +1 -0
- package/dist/cli/shell-templates.js +86 -0
- package/dist/cli/shell-templates.js.map +1 -0
- package/dist/instructions.d.ts +1 -1
- package/dist/instructions.d.ts.map +1 -1
- package/dist/instructions.js +4 -4
- package/dist/register-tools.d.ts.map +1 -1
- package/dist/register-tools.js +68 -42
- package/dist/register-tools.js.map +1 -1
- package/dist/server-helpers.d.ts.map +1 -1
- package/dist/server-helpers.js +13 -1
- package/dist/server-helpers.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +17 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/project-tools.d.ts +107 -0
- package/dist/tools/project-tools.d.ts.map +1 -0
- package/dist/tools/project-tools.js +535 -0
- package/dist/tools/project-tools.js.map +1 -0
- package/package.json +2 -2
- package/rules/codesift.md +24 -13
- package/rules/codesift.mdc +10 -12
- package/rules/codex.md +10 -12
- package/rules/gemini.md +10 -12
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# CodeSift -- Token-efficient code intelligence for AI agents
|
|
2
2
|
|
|
3
|
-
CodeSift indexes your codebase with tree-sitter AST parsing and gives AI agents
|
|
3
|
+
CodeSift indexes your codebase with tree-sitter AST parsing and gives AI agents 66 search, retrieval, and analysis tools via CLI or MCP server. It uses 61-95% fewer tokens than raw grep/Read workflows on typical code navigation tasks.
|
|
4
4
|
|
|
5
5
|
**Works with:** Claude Code, Cursor, Codex, Gemini CLI, Zed, Aider, Continue — any MCP client.
|
|
6
6
|
|
|
@@ -185,9 +185,9 @@ codesift retrieve local/my-project \
|
|
|
185
185
|
| `codesift generate-claude-md <repo>` | Generate CLAUDE.md project summary |
|
|
186
186
|
| `codesift list-patterns` | List all built-in anti-pattern names |
|
|
187
187
|
|
|
188
|
-
## MCP tools (
|
|
188
|
+
## MCP tools (66 total — 14 core + 52 discoverable)
|
|
189
189
|
|
|
190
|
-
When running as an MCP server, CodeSift exposes
|
|
190
|
+
When running as an MCP server, CodeSift exposes 14 core tools directly. The remaining 52 tools are discoverable via `discover_tools` and `describe_tools` to minimize system prompt token overhead.
|
|
191
191
|
|
|
192
192
|
| Category | Tools |
|
|
193
193
|
|----------|-------|
|
|
@@ -291,7 +291,7 @@ scan_secrets(repo="local/my-project", file_pattern="src/config/**")
|
|
|
291
291
|
| Rename across files | `rename_symbol` | LSP type-safe rename in all files at once |
|
|
292
292
|
| Detect hardcoded secrets | `scan_secrets` | ~1,100 rules, AST-aware, masked output, auto-cached |
|
|
293
293
|
| Ranked text search | `search_text(ranked=true)` | Classifies hits by function, saves follow-up get_symbol calls |
|
|
294
|
-
| Find hidden tools | `discover_tools` + `describe_tools` |
|
|
294
|
+
| Find hidden tools | `discover_tools` + `describe_tools` | 52 tools hidden by default — search by keyword, get full schema |
|
|
295
295
|
| Find ALL occurrences | `grep -rn` | Exhaustive, no top_k cap |
|
|
296
296
|
| Count matches | `grep -c` | Simple exact count |
|
|
297
297
|
|
|
@@ -315,7 +315,7 @@ Custom regex is also supported: `codesift patterns local/project "Promise<.*any>
|
|
|
315
315
|
|
|
316
316
|
## MCP server setup
|
|
317
317
|
|
|
318
|
-
CodeSift runs as an [MCP](https://modelcontextprotocol.io) server, exposing
|
|
318
|
+
CodeSift runs as an [MCP](https://modelcontextprotocol.io) server, exposing 66 tools to AI agents (14 core + 52 discoverable). The fastest setup method is `codesift setup <platform>` which handles everything automatically. Manual configuration is also supported:
|
|
319
319
|
|
|
320
320
|
### OpenAI Codex
|
|
321
321
|
|
|
@@ -502,7 +502,7 @@ cd codesift-mcp
|
|
|
502
502
|
npm install
|
|
503
503
|
npm run download-wasm # Download tree-sitter WASM grammars
|
|
504
504
|
npm run build # TypeScript compilation
|
|
505
|
-
npm test # Run tests (Vitest,
|
|
505
|
+
npm test # Run tests (Vitest, 944+ tests)
|
|
506
506
|
npm run test:coverage # Coverage report
|
|
507
507
|
npm run lint # Type check (tsc --noEmit)
|
|
508
508
|
```
|
|
@@ -555,7 +555,7 @@ If using `npx -y codesift-mcp` (the default in MCP config), the latest version i
|
|
|
555
555
|
### Checklist before publishing
|
|
556
556
|
|
|
557
557
|
- [ ] `npm run build` — 0 TypeScript errors
|
|
558
|
-
- [ ] `npm test` —
|
|
558
|
+
- [ ] `npm test` — 944+ tests pass
|
|
559
559
|
- [ ] `rules/codesift.md` updated if hints or tools changed
|
|
560
560
|
- [ ] `src/instructions.ts` updated if rules changed (compact version)
|
|
561
561
|
- [ ] `README.md` updated if features added
|
|
@@ -570,7 +570,7 @@ BSL-1.1
|
|
|
570
570
|
<!-- Evidence Map
|
|
571
571
|
| Section | Source file(s) |
|
|
572
572
|
|---------|---------------|
|
|
573
|
-
| Tool count (
|
|
573
|
+
| Tool count (66) | src/register-tools.ts (64 in TOOL_DEFINITIONS + discover_tools + describe_tools) |
|
|
574
574
|
| Quick install | package.json:bin (line 8-11) |
|
|
575
575
|
| Quick start | src/cli/commands.ts |
|
|
576
576
|
| Benchmark | benchmarks/ directory, previously measured |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIvC,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAse7E,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIvC,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAse7E,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CA+CtD,CAAC"}
|
package/dist/cli/commands.js
CHANGED
|
@@ -373,7 +373,7 @@ async function handleSetup(args, flags) {
|
|
|
373
373
|
const options = { hooks, rules, force };
|
|
374
374
|
if (platform === "all") {
|
|
375
375
|
for (const p of SUPPORTED_PLATFORMS) {
|
|
376
|
-
const lines = await formatSetupLines(p,
|
|
376
|
+
const lines = await formatSetupLines(p, options);
|
|
377
377
|
for (const line of lines)
|
|
378
378
|
process.stdout.write(line + "\n");
|
|
379
379
|
}
|
|
@@ -432,6 +432,10 @@ export const COMMAND_MAP = {
|
|
|
432
432
|
const { handlePrecheckRead } = await import("./hooks.js");
|
|
433
433
|
await handlePrecheckRead();
|
|
434
434
|
},
|
|
435
|
+
"precheck-bash": async () => {
|
|
436
|
+
const { handlePrecheckBash } = await import("./hooks.js");
|
|
437
|
+
await handlePrecheckBash();
|
|
438
|
+
},
|
|
435
439
|
"postindex-file": async () => {
|
|
436
440
|
const { handlePostindexFile } = await import("./hooks.js");
|
|
437
441
|
await handlePostindexFile();
|
package/dist/cli/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/help.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const MAIN_HELP = "codesift \u2014 CLI for CodeSift code intelligence\n\nUsage: codesift <command> [options]\n\nCommands:\n index <path> Index a local folder\n index-repo <url> Clone and index a remote git repository\n repos List all indexed repositories\n invalidate <repo> Clear index cache for a repository\n index-conversations [path] Index Claude Code conversations for the current project\n\n search <repo> <query> Full-text search across all files\n symbols <repo> <query> Search symbols by name/signature\n tree <repo> Get file tree with symbol counts\n outline <repo> <file> Get symbol outline of a single file\n repo-outline <repo> High-level repository outline\n\n symbol <repo> <id> Get a single symbol by ID\n symbols-batch <repo> <ids...> Get multiple symbols by ID\n\n find <repo> <query> Find symbol and show source\n refs <repo> <name> Find all references to a symbol\n trace <repo> <name> Trace call chain (callers/callees)\n\n impact <repo> --since <ref> Analyze blast radius of git changes\n context <repo> <query> Assemble relevant code context\n knowledge-map <repo> Module dependency map\n\n diff <repo> --since <ref> Structural diff outline between git refs\n changed <repo> --since <ref> List changed symbols between git refs\n\n retrieve <repo> --queries <json> Batch multiple queries in one call\n stats Show usage statistics\n generate-claude-md <repo> Generate CLAUDE.md project summary\n\n complexity <repo> Analyze cyclomatic complexity of functions\n dead-code <repo> Find potentially dead (unreferenced) exports\n hotspots <repo> Analyze git churn hotspots\n communities <repo> Detect code clusters via community detection\n patterns <repo> --pattern <name> Search for structural code patterns\n find-clones <repo> Find copy-paste code clones\n\n setup <platform> Configure codesift-mcp in an AI coding tool\n Platforms: codex, claude, cursor, gemini, all\n precheck-read PreToolUse hook: deny large file reads (hook handler)\n postindex-file PostToolUse hook: re-index edited files (hook handler)\n\nFlags:\n --help Show help for a command\n --version Show version\n --compact Compact JSON output (no indentation)\n --json Full JSON output (for refs, trace commands)\n --include-source Include source code in output (trace, impact)\n\nExamples:\n codesift setup codex Set up MCP in OpenAI Codex\n codesift setup claude Set up MCP in Claude Code\n codesift setup gemini Set up MCP in Gemini CLI\n codesift setup all Set up MCP in all platforms\n codesift index /path/to/project\n codesift repos\n codesift search local/my-project \"createUser\"\n codesift symbols local/my-project \"handleRequest\" --kind function\n codesift tree local/my-project --path src/lib --depth 2\n codesift trace local/my-project \"createRisk\" --direction callers --depth 2\n";
|
|
1
|
+
export declare const MAIN_HELP = "codesift \u2014 CLI for CodeSift code intelligence\n\nUsage: codesift <command> [options]\n\nCommands:\n index <path> Index a local folder\n index-repo <url> Clone and index a remote git repository\n repos List all indexed repositories\n invalidate <repo> Clear index cache for a repository\n index-conversations [path] Index Claude Code conversations for the current project\n\n search <repo> <query> Full-text search across all files\n symbols <repo> <query> Search symbols by name/signature\n tree <repo> Get file tree with symbol counts\n outline <repo> <file> Get symbol outline of a single file\n repo-outline <repo> High-level repository outline\n\n symbol <repo> <id> Get a single symbol by ID\n symbols-batch <repo> <ids...> Get multiple symbols by ID\n\n find <repo> <query> Find symbol and show source\n refs <repo> <name> Find all references to a symbol\n trace <repo> <name> Trace call chain (callers/callees)\n\n impact <repo> --since <ref> Analyze blast radius of git changes\n context <repo> <query> Assemble relevant code context\n knowledge-map <repo> Module dependency map\n\n diff <repo> --since <ref> Structural diff outline between git refs\n changed <repo> --since <ref> List changed symbols between git refs\n\n retrieve <repo> --queries <json> Batch multiple queries in one call\n stats Show usage statistics\n generate-claude-md <repo> Generate CLAUDE.md project summary\n\n complexity <repo> Analyze cyclomatic complexity of functions\n dead-code <repo> Find potentially dead (unreferenced) exports\n hotspots <repo> Analyze git churn hotspots\n communities <repo> Detect code clusters via community detection\n patterns <repo> --pattern <name> Search for structural code patterns\n find-clones <repo> Find copy-paste code clones\n\n setup <platform> Configure codesift-mcp in an AI coding tool\n Platforms: codex, claude, cursor, gemini, all\n precheck-read PreToolUse hook: deny large file reads (hook handler)\n precheck-bash PreToolUse hook: redirect find/grep to CodeSift (hook handler)\n postindex-file PostToolUse hook: re-index edited files (hook handler)\n\nFlags:\n --help Show help for a command\n --version Show version\n --compact Compact JSON output (no indentation)\n --json Full JSON output (for refs, trace commands)\n --include-source Include source code in output (trace, impact)\n\nExamples:\n codesift setup codex Set up MCP in OpenAI Codex\n codesift setup claude Set up MCP in Claude Code\n codesift setup gemini Set up MCP in Gemini CLI\n codesift setup all Set up MCP in all platforms\n codesift index /path/to/project\n codesift repos\n codesift search local/my-project \"createUser\"\n codesift symbols local/my-project \"handleRequest\" --kind function\n codesift tree local/my-project --path src/lib --depth 2\n codesift trace local/my-project \"createRisk\" --direction callers --depth 2\n";
|
|
2
2
|
export declare const COMMAND_HELP: Record<string, string>;
|
|
3
3
|
//# sourceMappingURL=help.d.ts.map
|
package/dist/cli/help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,64GAkErB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkZ/C,CAAC"}
|
package/dist/cli/help.js
CHANGED
|
@@ -46,6 +46,7 @@ Commands:
|
|
|
46
46
|
setup <platform> Configure codesift-mcp in an AI coding tool
|
|
47
47
|
Platforms: codex, claude, cursor, gemini, all
|
|
48
48
|
precheck-read PreToolUse hook: deny large file reads (hook handler)
|
|
49
|
+
precheck-bash PreToolUse hook: redirect find/grep to CodeSift (hook handler)
|
|
49
50
|
postindex-file PostToolUse hook: re-index edited files (hook handler)
|
|
50
51
|
|
|
51
52
|
Flags:
|
|
@@ -377,6 +378,19 @@ This command is designed to be installed as a Claude Code PreToolUse hook via:
|
|
|
377
378
|
Env vars:
|
|
378
379
|
HOOK_TOOL_INPUT JSON with tool_input.file_path (set by Claude Code)
|
|
379
380
|
CODESIFT_READ_HOOK_MIN_LINES Override line threshold (default: 200)`,
|
|
381
|
+
"precheck-bash": `codesift precheck-bash
|
|
382
|
+
|
|
383
|
+
PreToolUse hook handler for the Bash tool.
|
|
384
|
+
Exits 2 (deny) when the agent attempts to run file-finding (find ... -name) or
|
|
385
|
+
content-searching (grep -r, rg) commands, redirecting to CodeSift tools instead.
|
|
386
|
+
Exits 0 (allow) for all other Bash commands.
|
|
387
|
+
|
|
388
|
+
This ensures sub-agents (Explore, Plan, etc.) use the CodeSift index rather than
|
|
389
|
+
raw shell commands. Installed as a Claude Code PreToolUse hook via:
|
|
390
|
+
codesift setup claude --hooks
|
|
391
|
+
|
|
392
|
+
Env vars:
|
|
393
|
+
HOOK_TOOL_INPUT JSON with tool_input.command (set by Claude Code)`,
|
|
380
394
|
"postindex-file": `codesift postindex-file
|
|
381
395
|
|
|
382
396
|
PostToolUse hook handler for Write/Edit tools.
|
package/dist/cli/help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkExB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,KAAK,EAAE;;;;;;;;;;iEAUwD;IAE/D,YAAY,EAAE;;;;;;;;;6DAS6C;IAE3D,qBAAqB,EAAE;;;;;;;;;wEAS+C;IAEtE,KAAK,EAAE;;6CAEoC;IAE3C,UAAU,EAAE;;;;;0DAK4C;IAExD,MAAM,EAAE;;;;;;;;;;;;qEAY2D;IAEnE,OAAO,EAAE;;;;;;;;;;;;;mEAawD;IAEjE,IAAI,EAAE;;;;;;;;;;;;+DAYuD;IAE7D,OAAO,EAAE;;;;;;qDAM0C;IAEnD,cAAc,EAAE;;;;;kCAKgB;IAEhC,MAAM,EAAE;;;;;;qCAM2B;IAEnC,eAAe,EAAE;;;;;;iDAM8B;IAE/C,IAAI,EAAE;;;;;;;;;iEASyD;IAE/D,IAAI,EAAE;;;;;;;;;;8DAUsD;IAE5D,KAAK,EAAE;;;;;;;;;;;;;6DAaoD;IAE3D,MAAM,EAAE;;;;;;;;;;mDAUyC;IAEjD,OAAO,EAAE;;;;;;;;;6DASkD;IAE3D,eAAe,EAAE;;;;;;;;;mDASgC;IAEjD,IAAI,EAAE;;;;;;;;;mDAS2C;IAEjD,OAAO,EAAE;;;;;;;;;mDASwC;IAEjD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;+GAoBmG;IAE7G,KAAK,EAAE;;mDAE0C;IAEjD,oBAAoB,EAAE;;;;;;;;sCAQc;IAEpC,UAAU,EAAE;;;;;;;;;;;0DAW4C;IAExD,WAAW,EAAE;;;;;;;;;iEASkD;IAE/D,QAAQ,EAAE;;;;;;;;;;kEAUsD;IAEhE,WAAW,EAAE;;;;;;;;;;kEAUmD;IAEhE,QAAQ,EAAE;;;;;;;;;;;;;;2DAc+C;IAEzD,aAAa,EAAE;;;;;;;;;;;yDAWwC;IAEvD,eAAe,EAAE;;;;;;;;;;;yEAWsD;IAEvE,eAAe,EAAE;;;;;;;;;;;;uEAYoD;IAErE,gBAAgB,EAAE;;;;;;;;;;yEAUqD;IAEvE,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAmCY;CACpB,CAAC"}
|
package/dist/cli/hooks.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare function handlePrecheckRead(): Promise<void>;
|
|
2
|
+
export declare function handlePrecheckBash(): Promise<void>;
|
|
2
3
|
export declare function handlePostindexFile(): Promise<void>;
|
|
3
4
|
export declare function handlePrecompactSnapshot(): Promise<void>;
|
|
4
5
|
//# sourceMappingURL=hooks.d.ts.map
|
package/dist/cli/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"AAqJA,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAmDxD;AAkCD,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAyCxD;AAcD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CA+BzD;AAeD,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CA4C9D"}
|
package/dist/cli/hooks.js
CHANGED
|
@@ -1,13 +1,106 @@
|
|
|
1
1
|
// ---------------------------------------------------------------------------
|
|
2
|
-
// CLI hooks —
|
|
2
|
+
// CLI hooks — Cross-platform PreToolUse / PostToolUse hook handlers
|
|
3
3
|
// ---------------------------------------------------------------------------
|
|
4
|
+
// Supports Claude Code, Codex, Gemini CLI, and Cline.
|
|
5
|
+
//
|
|
6
|
+
// Input sources:
|
|
7
|
+
// Claude Code / Codex: HOOK_TOOL_INPUT env var (JSON)
|
|
8
|
+
// Gemini CLI / Cline: stdin (JSON), triggered by --stdin flag
|
|
9
|
+
//
|
|
4
10
|
// Exit codes: 0 = allow, 2 = deny (with redirect message on stdout)
|
|
5
|
-
// The hook command receives tool input via HOOK_TOOL_INPUT env var as JSON.
|
|
6
11
|
// ---------------------------------------------------------------------------
|
|
7
12
|
import { readFileSync } from "node:fs";
|
|
8
13
|
import { extname, join } from "node:path";
|
|
9
14
|
import { homedir } from "node:os";
|
|
10
15
|
// ---------------------------------------------------------------------------
|
|
16
|
+
// Cross-platform input parsing
|
|
17
|
+
// ---------------------------------------------------------------------------
|
|
18
|
+
/**
|
|
19
|
+
* Read raw hook input from env var (Claude/Codex) or stdin (Gemini/Cline).
|
|
20
|
+
*/
|
|
21
|
+
function readRawInput() {
|
|
22
|
+
const envInput = process.env["HOOK_TOOL_INPUT"];
|
|
23
|
+
if (envInput)
|
|
24
|
+
return envInput;
|
|
25
|
+
if (process.argv.includes("--stdin")) {
|
|
26
|
+
try {
|
|
27
|
+
return readFileSync(0, "utf-8");
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
const EMPTY_INPUT = Object.freeze({ filePath: null, sessionId: null, command: null });
|
|
36
|
+
/**
|
|
37
|
+
* Parse hook input JSON once, extracting all fields across all platforms.
|
|
38
|
+
*
|
|
39
|
+
* Supported formats:
|
|
40
|
+
* Claude Code / Codex: { tool_input: { file_path, command }, session_id }
|
|
41
|
+
* Gemini CLI: { tool: { input: { path|file_path, command } }, sessionId }
|
|
42
|
+
* Cline: { preToolUse|postToolUse: { args: { file_path } } }
|
|
43
|
+
*/
|
|
44
|
+
function parseHookInput(raw) {
|
|
45
|
+
let parsed;
|
|
46
|
+
try {
|
|
47
|
+
parsed = JSON.parse(raw);
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return EMPTY_INPUT;
|
|
51
|
+
}
|
|
52
|
+
if (parsed === null || typeof parsed !== "object")
|
|
53
|
+
return EMPTY_INPUT;
|
|
54
|
+
const obj = parsed;
|
|
55
|
+
let filePath = null;
|
|
56
|
+
let command = null;
|
|
57
|
+
// Claude Code / Codex: { tool_input: { file_path, command } }
|
|
58
|
+
if (obj["tool_input"] && typeof obj["tool_input"] === "object") {
|
|
59
|
+
const ti = obj["tool_input"];
|
|
60
|
+
if (typeof ti["file_path"] === "string")
|
|
61
|
+
filePath = ti["file_path"];
|
|
62
|
+
if (typeof ti["command"] === "string")
|
|
63
|
+
command = ti["command"];
|
|
64
|
+
}
|
|
65
|
+
// Gemini CLI: { tool: { input: { path|file_path, command } } }
|
|
66
|
+
if (obj["tool"] && typeof obj["tool"] === "object") {
|
|
67
|
+
const tool = obj["tool"];
|
|
68
|
+
if (tool["input"] && typeof tool["input"] === "object") {
|
|
69
|
+
const input = tool["input"];
|
|
70
|
+
if (filePath === null) {
|
|
71
|
+
if (typeof input["path"] === "string")
|
|
72
|
+
filePath = input["path"];
|
|
73
|
+
else if (typeof input["file_path"] === "string")
|
|
74
|
+
filePath = input["file_path"];
|
|
75
|
+
}
|
|
76
|
+
if (command === null && typeof input["command"] === "string")
|
|
77
|
+
command = input["command"];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Cline: { preToolUse|postToolUse: { args: { file_path } } }
|
|
81
|
+
if (filePath === null) {
|
|
82
|
+
for (const key of ["preToolUse", "postToolUse"]) {
|
|
83
|
+
if (obj[key] && typeof obj[key] === "object") {
|
|
84
|
+
const hook = obj[key];
|
|
85
|
+
if (hook["args"] && typeof hook["args"] === "object") {
|
|
86
|
+
const args = hook["args"];
|
|
87
|
+
if (typeof args["file_path"] === "string") {
|
|
88
|
+
filePath = args["file_path"];
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// Session ID: top-level { session_id } or { sessionId }
|
|
96
|
+
let sessionId = null;
|
|
97
|
+
if (typeof obj["session_id"] === "string")
|
|
98
|
+
sessionId = obj["session_id"];
|
|
99
|
+
else if (typeof obj["sessionId"] === "string")
|
|
100
|
+
sessionId = obj["sessionId"];
|
|
101
|
+
return { filePath, sessionId, command };
|
|
102
|
+
}
|
|
103
|
+
// ---------------------------------------------------------------------------
|
|
11
104
|
// Constants
|
|
12
105
|
// ---------------------------------------------------------------------------
|
|
13
106
|
const CODE_EXTENSIONS = new Set([
|
|
@@ -43,29 +136,12 @@ const DEFAULT_MIN_LINES = 200;
|
|
|
43
136
|
// ---------------------------------------------------------------------------
|
|
44
137
|
export async function handlePrecheckRead() {
|
|
45
138
|
try {
|
|
46
|
-
const
|
|
47
|
-
if (!
|
|
48
|
-
process.exit(0);
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
let parsed;
|
|
52
|
-
try {
|
|
53
|
-
parsed = JSON.parse(input);
|
|
54
|
-
}
|
|
55
|
-
catch {
|
|
56
|
-
// Malformed JSON — allow (never block the agent on hook errors)
|
|
139
|
+
const raw = readRawInput();
|
|
140
|
+
if (!raw) {
|
|
57
141
|
process.exit(0);
|
|
58
142
|
return;
|
|
59
143
|
}
|
|
60
|
-
const filePath =
|
|
61
|
-
typeof parsed === "object" &&
|
|
62
|
-
"tool_input" in parsed &&
|
|
63
|
-
parsed.tool_input !== null &&
|
|
64
|
-
typeof parsed.tool_input === "object" &&
|
|
65
|
-
"file_path" in parsed.tool_input &&
|
|
66
|
-
typeof parsed.tool_input.file_path === "string"
|
|
67
|
-
? parsed.tool_input.file_path
|
|
68
|
-
: null;
|
|
144
|
+
const { filePath } = parseHookInput(raw);
|
|
69
145
|
if (!filePath) {
|
|
70
146
|
process.exit(0);
|
|
71
147
|
return;
|
|
@@ -105,6 +181,69 @@ export async function handlePrecheckRead() {
|
|
|
105
181
|
}
|
|
106
182
|
}
|
|
107
183
|
// ---------------------------------------------------------------------------
|
|
184
|
+
// handlePrecheckBash
|
|
185
|
+
//
|
|
186
|
+
// PreToolUse hook for the Bash tool. When the agent attempts to run file-
|
|
187
|
+
// finding (find ... -name) or content-searching (grep -r, rg) commands,
|
|
188
|
+
// deny and redirect to CodeSift tools instead.
|
|
189
|
+
//
|
|
190
|
+
// This ensures sub-agents (Explore, Plan, etc.) use the CodeSift index
|
|
191
|
+
// rather than raw shell commands, even when they don't have CodeSift rules
|
|
192
|
+
// in their context.
|
|
193
|
+
//
|
|
194
|
+
// Env vars:
|
|
195
|
+
// HOOK_TOOL_INPUT — JSON string with tool_input.command
|
|
196
|
+
// ---------------------------------------------------------------------------
|
|
197
|
+
function isFileFindCommand(cmd) {
|
|
198
|
+
const hasFind = /\bfind\s/.test(cmd);
|
|
199
|
+
const hasNameFilter = /\s-i?name\s/.test(cmd);
|
|
200
|
+
// Don't intercept destructive operations
|
|
201
|
+
const hasDestructive = /\s-(?:exec|delete|ok)\b|\brm\s|\bmv\s/.test(cmd);
|
|
202
|
+
return hasFind && hasNameFilter && !hasDestructive;
|
|
203
|
+
}
|
|
204
|
+
function isContentGrepCommand(cmd) {
|
|
205
|
+
// grep -r/-R/--recursive (but not git grep)
|
|
206
|
+
const hasRecursiveGrep = /\bgrep\b.*(?:\s-\w*[rR]\w*\s|--recursive)/.test(cmd) && !/\bgit\s+grep\b/.test(cmd);
|
|
207
|
+
// standalone rg (not as part of another word like "org")
|
|
208
|
+
const hasRg = /(?:^|[\s;&|])rg\s/.test(cmd);
|
|
209
|
+
return hasRecursiveGrep || hasRg;
|
|
210
|
+
}
|
|
211
|
+
export async function handlePrecheckBash() {
|
|
212
|
+
try {
|
|
213
|
+
const raw = readRawInput();
|
|
214
|
+
if (!raw) {
|
|
215
|
+
process.exit(0);
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
const { command } = parseHookInput(raw);
|
|
219
|
+
if (!command) {
|
|
220
|
+
process.exit(0);
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
if (isFileFindCommand(command)) {
|
|
224
|
+
process.stdout.write(`CodeSift has repos pre-indexed. Use CodeSift MCP tools instead of find:\n` +
|
|
225
|
+
` list_repos() — get repo identifier (call once)\n` +
|
|
226
|
+
` get_file_tree(repo="local/<name>", compact=true, name_pattern="*.ts")\n` +
|
|
227
|
+
` search_symbols(repo="local/<name>", query="test", kind="function")\n`);
|
|
228
|
+
process.exit(2);
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
if (isContentGrepCommand(command)) {
|
|
232
|
+
process.stdout.write(`CodeSift has repos pre-indexed. Use CodeSift MCP tools instead of grep/rg:\n` +
|
|
233
|
+
` list_repos() — get repo identifier (call once)\n` +
|
|
234
|
+
` search_text(repo="local/<name>", query="pattern", file_pattern="*.ts")\n` +
|
|
235
|
+
` search_symbols(repo="local/<name>", query="name", include_source=true)\n`);
|
|
236
|
+
process.exit(2);
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
process.exit(0);
|
|
240
|
+
}
|
|
241
|
+
catch {
|
|
242
|
+
// CQ8: never crash — always fall back to allow
|
|
243
|
+
process.exit(0);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
// ---------------------------------------------------------------------------
|
|
108
247
|
// handlePostindexFile
|
|
109
248
|
//
|
|
110
249
|
// PostToolUse hook for Write/Edit tools. When the agent writes or edits a
|
|
@@ -117,28 +256,12 @@ export async function handlePrecheckRead() {
|
|
|
117
256
|
// ---------------------------------------------------------------------------
|
|
118
257
|
export async function handlePostindexFile() {
|
|
119
258
|
try {
|
|
120
|
-
const
|
|
121
|
-
if (!
|
|
122
|
-
process.exit(0);
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
let parsed;
|
|
126
|
-
try {
|
|
127
|
-
parsed = JSON.parse(input);
|
|
128
|
-
}
|
|
129
|
-
catch {
|
|
259
|
+
const raw = readRawInput();
|
|
260
|
+
if (!raw) {
|
|
130
261
|
process.exit(0);
|
|
131
262
|
return;
|
|
132
263
|
}
|
|
133
|
-
const filePath =
|
|
134
|
-
typeof parsed === "object" &&
|
|
135
|
-
"tool_input" in parsed &&
|
|
136
|
-
parsed.tool_input !== null &&
|
|
137
|
-
typeof parsed.tool_input === "object" &&
|
|
138
|
-
"file_path" in parsed.tool_input &&
|
|
139
|
-
typeof parsed.tool_input.file_path === "string"
|
|
140
|
-
? parsed.tool_input.file_path
|
|
141
|
-
: null;
|
|
264
|
+
const { filePath } = parseHookInput(raw);
|
|
142
265
|
if (!filePath) {
|
|
143
266
|
process.exit(0);
|
|
144
267
|
return;
|
|
@@ -175,26 +298,12 @@ export async function handlePostindexFile() {
|
|
|
175
298
|
// ---------------------------------------------------------------------------
|
|
176
299
|
export async function handlePrecompactSnapshot() {
|
|
177
300
|
try {
|
|
178
|
-
const
|
|
179
|
-
if (!
|
|
180
|
-
process.exit(0);
|
|
181
|
-
return;
|
|
182
|
-
}
|
|
183
|
-
let parsed;
|
|
184
|
-
try {
|
|
185
|
-
parsed = JSON.parse(input);
|
|
186
|
-
}
|
|
187
|
-
catch {
|
|
301
|
+
const raw = readRawInput();
|
|
302
|
+
if (!raw) {
|
|
188
303
|
process.exit(0);
|
|
189
304
|
return;
|
|
190
305
|
}
|
|
191
|
-
|
|
192
|
-
const sessionId = parsed !== null &&
|
|
193
|
-
typeof parsed === "object" &&
|
|
194
|
-
"session_id" in parsed &&
|
|
195
|
-
typeof parsed.session_id === "string"
|
|
196
|
-
? parsed.session_id
|
|
197
|
-
: null;
|
|
306
|
+
const { sessionId } = parseHookInput(raw);
|
|
198
307
|
if (!sessionId || !/^[a-f0-9-]+$/i.test(sessionId)) {
|
|
199
308
|
process.exit(0);
|
|
200
309
|
return;
|
|
@@ -202,10 +311,10 @@ export async function handlePrecompactSnapshot() {
|
|
|
202
311
|
// Read sidecar file
|
|
203
312
|
const dataDir = process.env["CODESIFT_DATA_DIR"] ?? join(homedir(), ".codesift");
|
|
204
313
|
const sidecarPath = join(dataDir, `session-${sessionId}.json`);
|
|
205
|
-
let
|
|
314
|
+
let sidecarData;
|
|
206
315
|
try {
|
|
207
316
|
const content = readFileSync(sidecarPath, "utf-8");
|
|
208
|
-
|
|
317
|
+
sidecarData = JSON.parse(content);
|
|
209
318
|
}
|
|
210
319
|
catch {
|
|
211
320
|
// Sidecar missing or invalid — exit gracefully
|
|
@@ -214,7 +323,7 @@ export async function handlePrecompactSnapshot() {
|
|
|
214
323
|
}
|
|
215
324
|
// Deserialize and format snapshot
|
|
216
325
|
const { deserializeState, formatSnapshot } = await import("../storage/session-state.js");
|
|
217
|
-
const sessionState = deserializeState(
|
|
326
|
+
const sessionState = deserializeState(sidecarData);
|
|
218
327
|
const snapshot = formatSnapshot(sessionState);
|
|
219
328
|
if (snapshot) {
|
|
220
329
|
process.stdout.write(snapshot, () => process.exit(0));
|
package/dist/cli/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/cli/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type HookPlatform = "claude" | "codex" | "gemini" | "cline" | "continue" | "unknown";
|
|
2
|
+
/**
|
|
3
|
+
* Detect platform from environment variables (available immediately at startup).
|
|
4
|
+
* Falls back to "unknown" — use detectPlatformFromClientInfo() after MCP initialize.
|
|
5
|
+
*/
|
|
6
|
+
export declare function detectPlatform(): HookPlatform;
|
|
7
|
+
/**
|
|
8
|
+
* Detect platform from MCP initialize clientInfo.name.
|
|
9
|
+
* More reliable than env vars but only available after connection.
|
|
10
|
+
*/
|
|
11
|
+
export declare function detectPlatformFromClientInfo(clientName: string): HookPlatform;
|
|
12
|
+
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/cli/platform.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5F;;;GAGG;AACH,wBAAgB,cAAc,IAAI,YAAY,CAK7C;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CAe7E"}
|