codesift-mcp 0.2.5 → 0.2.6

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 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 64 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.
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 (63 total — 13 core + 51 discoverable)
188
+ ## MCP tools (66 total — 14 core + 52 discoverable)
189
189
 
190
- When running as an MCP server, CodeSift exposes 13 core tools directly. The remaining 50 tools are discoverable via `discover_tools` and `describe_tools` to minimize system prompt token overhead.
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` | 51 tools hidden by default — search by keyword, get full schema |
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 64 tools to AI agents (13 core visible + 50 discoverable). The fastest setup method is `codesift setup <platform>` which handles everything automatically. Manual configuration is also supported:
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, 895+ tests)
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` — 895+ tests pass
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 (64) | src/register-tools.ts (62 in TOOL_DEFINITIONS + discover_tools + describe_tools) |
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 |
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "codesift-mcp",
3
- "version": "0.2.5",
4
- "description": "MCP server for code intelligence — 63 tools for symbol search, call graph, semantic search, route tracing, community detection, LSP bridge, secret detection, and conversation search",
3
+ "version": "0.2.6",
4
+ "description": "MCP server for code intelligence — 66 tools for symbol search, call graph, semantic search, route tracing, community detection, LSP bridge, secret detection, and conversation search",
5
5
  "license": "BSL-1.1",
6
6
  "author": "Greg Laskowski",
7
7
  "type": "module",
package/rules/codesift.md CHANGED
@@ -10,17 +10,28 @@ Run once per session:
10
10
  2. If the repo is missing: `index_folder(path=<root>)` once to index it.
11
11
  3. Use `"local/<folder-name>"` as the `repo` parameter for all tool calls.
12
12
 
13
+ ## PREFER CodeSift over Bash/Glob/Grep
14
+
15
+ When CodeSift MCP tools are available, ALWAYS prefer them over shell commands:
16
+ - `Bash(find ... -name)` → use `get_file_tree(repo, compact=true, name_pattern="*.ts")`
17
+ - `Bash(grep -r ...)` or `Bash(rg ...)` → use `search_text(repo, query, file_pattern=)`
18
+ - `Glob(pattern)` for code discovery → use `get_file_tree(repo, name_pattern=)`
19
+ - `Grep(pattern)` for code search → use `search_text(repo, query)`
20
+
21
+ This applies to ALL agents including sub-agents spawned via the Agent tool.
22
+ Call `list_repos()` once to get the repo identifier, then use CodeSift tools for all exploration.
23
+
13
24
  ## Tool Discovery
14
25
 
15
- **63 MCP tools total** (13 core visible + 50 deferred/hidden).
26
+ **66 MCP tools total** (14 core + 52 discoverable).
16
27
 
17
- Only ~13 core tools appear in ListTools. Hidden tools are discovered on demand:
28
+ Only 14 core tools appear in ListTools. Hidden tools are discovered on demand:
18
29
 
19
- - `discover_tools(query="dead code")` — keyword search across all 63 tools
30
+ - `discover_tools(query="dead code")` — keyword search across all 66 tools
20
31
  - `describe_tools(names=["find_dead_code"])` — get full parameter schema
21
32
  - `describe_tools(names=["find_dead_code"], reveal=true)` — also reveal in ListTools
22
33
 
23
- Core tools always visible: `search_text`, `search_symbols`, `get_file_outline`, `get_file_tree`, `get_symbol`, `get_symbols`, `find_references`, `find_and_show`, `codebase_retrieval`, `semantic_search`, `list_repos`, `index_file`, `discover_tools`, `describe_tools`.
34
+ Core tools always visible: `search_text`, `codebase_retrieval`, `get_file_outline`, `search_symbols`, `list_repos`, `get_file_tree`, `index_file`, `get_symbol`, `index_conversations`, `search_patterns`, `index_folder`, `discover_tools`, `get_session_snapshot`, `describe_tools`.
24
35
 
25
36
  ## Tool Mapping
26
37
 
@@ -180,9 +191,11 @@ Setup auto-indexing and read-redirect hooks for Claude Code:
180
191
  codesift setup claude --hooks
181
192
  ```
182
193
 
183
- Installs two hooks in `.claude/settings.local.json`:
194
+ Installs hooks in `.claude/settings.local.json` and rules in `~/.claude/rules/codesift.md`:
184
195
 
185
196
  - **PreToolUse** (`precheck-read`) — redirects `Read` on large code files to CodeSift tools
197
+ - **PreToolUse** (`precheck-bash`) — redirects `find`/`grep`/`rg` in Bash to CodeSift tools
186
198
  - **PostToolUse** (`postindex-file`) — auto-runs `index_file` after `Edit` or `Write`
199
+ - **PreCompact** (`precompact-snapshot`) — injects session snapshot before context compaction
187
200
 
188
- This ensures the index stays current without manual `index_file` calls after every edit.
201
+ This ensures the index stays current and sub-agents use CodeSift tools automatically.
@@ -17,15 +17,15 @@ Run once per session:
17
17
 
18
18
  ## Tool Discovery
19
19
 
20
- **63 MCP tools total** (13 core visible + 50 deferred/hidden).
20
+ **66 MCP tools total** (14 core + 52 discoverable).
21
21
 
22
- Only ~13 core tools appear in ListTools. Hidden tools are discovered on demand:
22
+ Only 14 core tools appear in ListTools. Hidden tools are discovered on demand:
23
23
 
24
- - `discover_tools(query="dead code")` — keyword search across all 63 tools
24
+ - `discover_tools(query="dead code")` — keyword search across all 66 tools
25
25
  - `describe_tools(names=["find_dead_code"])` — get full parameter schema
26
26
  - `describe_tools(names=["find_dead_code"], reveal=true)` — also reveal in ListTools
27
27
 
28
- Core tools always visible: `search_text`, `search_symbols`, `get_file_outline`, `get_file_tree`, `get_symbol`, `get_symbols`, `find_references`, `find_and_show`, `codebase_retrieval`, `semantic_search`, `list_repos`, `index_file`, `discover_tools`, `describe_tools`.
28
+ Core tools always visible: `search_text`, `codebase_retrieval`, `get_file_outline`, `search_symbols`, `list_repos`, `get_file_tree`, `index_file`, `get_symbol`, `index_conversations`, `search_patterns`, `index_folder`, `discover_tools`, `get_session_snapshot`, `describe_tools`.
29
29
 
30
30
  ## Tool Mapping
31
31
 
package/rules/codex.md CHANGED
@@ -12,15 +12,15 @@ Run once per session:
12
12
 
13
13
  ## Tool Discovery
14
14
 
15
- **63 MCP tools total** (13 core visible + 50 deferred/hidden).
15
+ **66 MCP tools total** (14 core + 52 discoverable).
16
16
 
17
- Only ~13 core tools appear in ListTools. Hidden tools are discovered on demand:
17
+ Only 14 core tools appear in ListTools. Hidden tools are discovered on demand:
18
18
 
19
- - `discover_tools(query="dead code")` — keyword search across all 63 tools
19
+ - `discover_tools(query="dead code")` — keyword search across all 66 tools
20
20
  - `describe_tools(names=["find_dead_code"])` — get full parameter schema
21
21
  - `describe_tools(names=["find_dead_code"], reveal=true)` — also reveal in ListTools
22
22
 
23
- Core tools always visible: `search_text`, `search_symbols`, `get_file_outline`, `get_file_tree`, `get_symbol`, `get_symbols`, `find_references`, `find_and_show`, `codebase_retrieval`, `semantic_search`, `list_repos`, `index_file`, `discover_tools`, `describe_tools`.
23
+ Core tools always visible: `search_text`, `codebase_retrieval`, `get_file_outline`, `search_symbols`, `list_repos`, `get_file_tree`, `index_file`, `get_symbol`, `index_conversations`, `search_patterns`, `index_folder`, `discover_tools`, `get_session_snapshot`, `describe_tools`.
24
24
 
25
25
  ## Tool Mapping
26
26
 
package/rules/gemini.md CHANGED
@@ -12,15 +12,15 @@ Run once per session:
12
12
 
13
13
  ## Tool Discovery
14
14
 
15
- **63 MCP tools total** (13 core visible + 50 deferred/hidden).
15
+ **66 MCP tools total** (14 core + 52 discoverable).
16
16
 
17
- Only ~13 core tools appear in ListTools. Hidden tools are discovered on demand:
17
+ Only 14 core tools appear in ListTools. Hidden tools are discovered on demand:
18
18
 
19
- - `discover_tools(query="dead code")` — keyword search across all 63 tools
19
+ - `discover_tools(query="dead code")` — keyword search across all 66 tools
20
20
  - `describe_tools(names=["find_dead_code"])` — get full parameter schema
21
21
  - `describe_tools(names=["find_dead_code"], reveal=true)` — also reveal in ListTools
22
22
 
23
- Core tools always visible: `search_text`, `search_symbols`, `get_file_outline`, `get_file_tree`, `get_symbol`, `get_symbols`, `find_references`, `find_and_show`, `codebase_retrieval`, `semantic_search`, `list_repos`, `index_file`, `discover_tools`, `describe_tools`.
23
+ Core tools always visible: `search_text`, `codebase_retrieval`, `get_file_outline`, `search_symbols`, `list_repos`, `get_file_tree`, `index_file`, `get_symbol`, `index_conversations`, `search_patterns`, `index_folder`, `discover_tools`, `get_session_snapshot`, `describe_tools`.
24
24
 
25
25
  ## Tool Mapping
26
26