codebase-context 1.8.1 → 1.9.0

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.
Files changed (42) hide show
  1. package/README.md +236 -15
  2. package/dist/cli.d.ts +1 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +12 -4
  5. package/dist/cli.js.map +1 -1
  6. package/dist/constants/codebase-context.d.ts +12 -0
  7. package/dist/constants/codebase-context.d.ts.map +1 -1
  8. package/dist/constants/codebase-context.js +36 -0
  9. package/dist/constants/codebase-context.js.map +1 -1
  10. package/dist/core/file-watcher.d.ts.map +1 -1
  11. package/dist/core/file-watcher.js +2 -12
  12. package/dist/core/file-watcher.js.map +1 -1
  13. package/dist/core/indexer.d.ts.map +1 -1
  14. package/dist/core/indexer.js +2 -9
  15. package/dist/core/indexer.js.map +1 -1
  16. package/dist/index.d.ts +10 -14
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +884 -192
  19. package/dist/index.js.map +1 -1
  20. package/dist/project-state.d.ts +24 -0
  21. package/dist/project-state.d.ts.map +1 -0
  22. package/dist/project-state.js +68 -0
  23. package/dist/project-state.js.map +1 -0
  24. package/dist/resources/uri.d.ts +4 -1
  25. package/dist/resources/uri.d.ts.map +1 -1
  26. package/dist/resources/uri.js +18 -1
  27. package/dist/resources/uri.js.map +1 -1
  28. package/dist/tools/index.d.ts.map +1 -1
  29. package/dist/tools/index.js +31 -1
  30. package/dist/tools/index.js.map +1 -1
  31. package/dist/tools/search-codebase.d.ts.map +1 -1
  32. package/dist/tools/search-codebase.js +14 -41
  33. package/dist/tools/search-codebase.js.map +1 -1
  34. package/dist/tools/types.d.ts +12 -0
  35. package/dist/tools/types.d.ts.map +1 -1
  36. package/dist/utils/project-discovery.d.ts +12 -0
  37. package/dist/utils/project-discovery.d.ts.map +1 -0
  38. package/dist/utils/project-discovery.js +183 -0
  39. package/dist/utils/project-discovery.js.map +1 -0
  40. package/docs/capabilities.md +37 -7
  41. package/docs/cli.md +3 -1
  42. package/package.json +1 -2
package/README.md CHANGED
@@ -22,17 +22,70 @@ One tool call returns all of it. Local-first - your code never leaves your machi
22
22
 
23
23
  The index auto-refreshes as you edit - a file watcher triggers incremental reindex in the background when the MCP server is running. No stale context between tool calls.
24
24
 
25
- <!-- TODO: Add demo GIF: search_codebase("How does this app attach the auth token to outgoing API calls?") -> AuthInterceptor top result + preflight + agent proceeds or asks -->
26
- <!-- ![Demo](./docs/assets/demo.gif) -->
25
+ ### What it looks like
26
+
27
+ Real CLI output against `angular-spotify`, the repo used for the launch screenshots.
28
+
29
+ **Lead signal: pattern drift and golden files**
30
+
31
+ ![codebase-context patterns screenshot](https://raw.githubusercontent.com/PatrickSys/codebase-context/master/docs/assets/patterns.png)
32
+
33
+ This is the part most tools miss: what the team is doing now, what it is moving away from, and which files are the best examples to follow.
34
+
35
+ **Before editing: preflight and impact**
36
+
37
+ ![codebase-context search preflight screenshot](https://raw.githubusercontent.com/PatrickSys/codebase-context/master/docs/assets/search-query.png)
38
+
39
+ When the agent searches with edit intent, it gets a compact decision card: confidence, whether it's safe to proceed, which patterns apply, the best example, and which files are likely to be affected.
40
+
41
+ More CLI examples:
42
+
43
+ - `refs --symbol "ComponentStore"` for concrete static references
44
+ - `metadata` for a quick codebase overview
45
+ - Full gallery in `docs/cli.md`
46
+
47
+ ## Table of Contents
48
+
49
+ - [Quick Start](#quick-start)
50
+ - [Multi-Project and Monorepos](#multi-project-and-monorepos)
51
+ - [Test It Yourself](#test-it-yourself)
52
+ - [Common First Commands](#common-first-commands)
53
+ - [What It Actually Does](#what-it-actually-does)
54
+ - [Evaluation Harness (`npm run eval`)](#evaluation-harness-npm-run-eval)
55
+ - [How the Search Works](#how-the-search-works)
56
+ - [Language Support](#language-support)
57
+ - [Configuration](#configuration)
58
+ - [Performance](#performance)
59
+ - [File Structure](#file-structure)
60
+ - [CLI Reference](#cli-reference)
61
+ - [What to add to your CLAUDE.md / AGENTS.md](#what-to-add-to-your-claudemd--agentsmd)
62
+ - [Links](#links)
63
+ - [License](#license)
27
64
 
28
65
  ## Quick Start
29
66
 
67
+ Start with the default setup:
68
+
69
+ - Configure one `codebase-context` server with no project path.
70
+ - If a tool call later returns `selection_required`, retry with `project`.
71
+ - If you only use one repo, you can also append that repo path up front.
72
+
73
+ ### Pick the right setup
74
+
75
+ | Situation | Recommended config |
76
+ | ------------------------------------- | ---------------------------------------------------------------------------------------------------- |
77
+ | Default setup | Run `npx -y codebase-context` with no project path |
78
+ | Single repo setup | Append one project path or set `CODEBASE_ROOT` |
79
+ | Multi-project call is still ambiguous | Retry with `project`, or keep separate server entries if your client cannot preserve project context |
80
+
81
+ ### Recommended setup
82
+
30
83
  Add it to the configuration of your AI Agent of preference:
31
84
 
32
85
  ### Claude Code
33
86
 
34
87
  ```bash
35
- claude mcp add codebase-context -- npx -y codebase-context /path/to/your/project
88
+ claude mcp add codebase-context -- npx -y codebase-context
36
89
  ```
37
90
 
38
91
  ### Claude Desktop
@@ -44,7 +97,7 @@ Add to `claude_desktop_config.json`:
44
97
  "mcpServers": {
45
98
  "codebase-context": {
46
99
  "command": "npx",
47
- "args": ["-y", "codebase-context", "/path/to/your/project"]
100
+ "args": ["-y", "codebase-context"]
48
101
  }
49
102
  }
50
103
  }
@@ -59,7 +112,7 @@ Add `.vscode/mcp.json` to your project root:
59
112
  "servers": {
60
113
  "codebase-context": {
61
114
  "command": "npx",
62
- "args": ["-y", "codebase-context", "/path/to/your/project"] // Or "${workspaceFolder}" if your workspace is one project only
115
+ "args": ["-y", "codebase-context"] // Or append "${workspaceFolder}" for single-project use
63
116
  }
64
117
  }
65
118
  }
@@ -74,7 +127,7 @@ Add to `.cursor/mcp.json` in your project:
74
127
  "mcpServers": {
75
128
  "codebase-context": {
76
129
  "command": "npx",
77
- "args": ["-y", "codebase-context", "/path/to/your/project"]
130
+ "args": ["-y", "codebase-context"]
78
131
  }
79
132
  }
80
133
  }
@@ -89,19 +142,187 @@ Open Settings > MCP and add:
89
142
  "mcpServers": {
90
143
  "codebase-context": {
91
144
  "command": "npx",
92
- "args": ["-y", "codebase-context", "/path/to/your/project"]
145
+ "args": ["-y", "codebase-context"]
146
+ }
147
+ }
148
+ }
149
+ ```
150
+
151
+ ### OpenCode
152
+
153
+ Add `opencode.json` to your project root:
154
+
155
+ ```json
156
+ {
157
+ "$schema": "https://opencode.ai/config.json",
158
+ "mcp": {
159
+ "codebase-context": {
160
+ "type": "local",
161
+ "command": ["npx", "-y", "codebase-context"],
162
+ "enabled": true
93
163
  }
94
164
  }
95
165
  }
96
166
  ```
97
167
 
168
+ OpenCode also supports interactive setup via `opencode mcp add`.
169
+
98
170
  ### Codex
99
171
 
172
+ ```bash
173
+ codex mcp add codebase-context npx -y codebase-context
174
+ ```
175
+
176
+ That single config entry is the intended starting point.
177
+
178
+ ### Fallback setup for single-project use
179
+
180
+ If you only use one repo, append a project path:
181
+
100
182
  ```bash
101
183
  codex mcp add codebase-context npx -y codebase-context "/path/to/your/project"
102
184
  ```
103
185
 
104
- ## New to this codebase?
186
+ Or set:
187
+
188
+ ```bash
189
+ CODEBASE_ROOT=/path/to/your/project
190
+ ```
191
+
192
+ ## Multi-Project and Monorepos
193
+
194
+ The MCP server can serve multiple projects in one session without requiring one MCP config entry per repo.
195
+
196
+ Three cases matter:
197
+
198
+ | Case | What happens |
199
+ | ------------------------------------------------------------------ | ------------------------------------------------------------- |
200
+ | One project | Routing is automatic |
201
+ | Multiple projects and the client provides enough workspace context | The server can route across those projects in one MCP session |
202
+ | Multiple projects and the target is still ambiguous | The server does not guess. Use `project` explicitly |
203
+
204
+ Important rules:
205
+
206
+ - `project` is the explicit override when routing is ambiguous.
207
+ - `project` accepts a project root path, file path, `file://` URI, or a relative subproject path under a configured workspace such as `apps/dashboard`.
208
+ - If a client reads `codebase://context` before any project is active, the server returns a workspace overview instead of guessing.
209
+ - The server does not rely on `cwd` walk-up in MCP mode.
210
+
211
+ Typical explicit retry in a monorepo:
212
+
213
+ ```json
214
+ {
215
+ "name": "search_codebase",
216
+ "arguments": {
217
+ "query": "auth interceptor",
218
+ "project": "apps/dashboard"
219
+ }
220
+ }
221
+ ```
222
+
223
+ Or target a repo directly:
224
+
225
+ ```json
226
+ {
227
+ "name": "search_codebase",
228
+ "arguments": {
229
+ "query": "auth interceptor",
230
+ "project": "/repos/customer-portal"
231
+ }
232
+ }
233
+ ```
234
+
235
+ Or pass a file path and let the server resolve the nearest trusted project boundary:
236
+
237
+ ```json
238
+ {
239
+ "name": "search_codebase",
240
+ "arguments": {
241
+ "query": "auth interceptor",
242
+ "project": "/repos/monorepo/apps/dashboard/src/auth/guard.ts"
243
+ }
244
+ }
245
+ ```
246
+
247
+ If you see `selection_required`, the server could not tell which project you meant. The response looks like this:
248
+
249
+ ```json
250
+ {
251
+ "status": "selection_required",
252
+ "errorCode": "selection_required",
253
+ "message": "Multiple projects are available and no active project could be inferred. Retry with project.",
254
+ "nextAction": "retry_with_project",
255
+ "availableProjects": [
256
+ { "label": "app-a", "project": "/repos/app-a", "indexStatus": "idle", "source": "root" },
257
+ { "label": "app-b", "project": "/repos/app-b", "indexStatus": "ready", "source": "root" }
258
+ ]
259
+ }
260
+ ```
261
+
262
+ Retry the call with `project` set to one of the listed paths.
263
+
264
+ `codebase://context` follows the active project in the session. In unresolved multi-project sessions it returns a workspace overview. Project-scoped resources are also available via the URIs listed in that overview.
265
+
266
+ The CLI stays intentionally simpler: it targets one repo per invocation via `CODEBASE_ROOT` or the current working directory. Multi-project discovery and routing are MCP-only features, not a second CLI session model.
267
+
268
+ ## Test It Yourself
269
+
270
+ Build the local branch first:
271
+
272
+ ```bash
273
+ pnpm build
274
+ ```
275
+
276
+ Then point your MCP client at the local build:
277
+
278
+ ```json
279
+ {
280
+ "mcpServers": {
281
+ "codebase-context": {
282
+ "command": "node",
283
+ "args": ["<path-to-local-build>/dist/index.js"]
284
+ }
285
+ }
286
+ }
287
+ ```
288
+
289
+ If the default setup is not enough for your client, use this instead:
290
+
291
+ ```json
292
+ {
293
+ "mcpServers": {
294
+ "codebase-context": {
295
+ "command": "node",
296
+ "args": ["<path-to-local-build>/dist/index.js", "/path/to/your/project"]
297
+ }
298
+ }
299
+ }
300
+ ```
301
+
302
+ Check these three flows:
303
+
304
+ 1. Single project
305
+ Ask for `search_codebase` or `metadata`.
306
+ Expected: routing is automatic.
307
+
308
+ 2. Multiple projects with one server entry
309
+ Open two repos or one monorepo workspace.
310
+ Ask for `codebase://context`.
311
+ Expected: workspace overview first, then automatic routing once one project is active or unambiguous.
312
+
313
+ 3. Ambiguous project selection
314
+ Start without a bootstrap path.
315
+ Ask for `search_codebase`.
316
+ Expected: `selection_required`.
317
+ Retry with `project`, for example `apps/dashboard` or `/repos/customer-portal`.
318
+
319
+ For monorepos, verify all three selector forms:
320
+
321
+ - relative subproject path: `apps/dashboard`
322
+ - repo path: `/repos/customer-portal`
323
+ - file path: `/repos/monorepo/apps/dashboard/src/auth/guard.ts`
324
+
325
+ ## Common First Commands
105
326
 
106
327
  Three commands to get what usually takes a new developer weeks to piece together:
107
328
 
@@ -304,12 +525,12 @@ Structured filters available: `framework`, `language`, `componentType`, `layer`
304
525
 
305
526
  ## Configuration
306
527
 
307
- | Variable | Default | Description |
308
- | ------------------------ | -------------------------- | --------------------------------------------------------------------------------------------- |
309
- | `EMBEDDING_PROVIDER` | `transformers` | `openai` (fast, cloud) or `transformers` (local, private) |
310
- | `OPENAI_API_KEY` | - | Required only if using `openai` provider |
311
- | `CODEBASE_ROOT` | - | Project root (CLI arg takes precedence) |
312
- | `CODEBASE_CONTEXT_DEBUG` | - | Set to `1` for verbose logging |
528
+ | Variable | Default | Description |
529
+ | ------------------------ | -------------------------- | ---------------------------------------------------------------------------------------------------------- |
530
+ | `EMBEDDING_PROVIDER` | `transformers` | `openai` (fast, cloud) or `transformers` (local, private) |
531
+ | `OPENAI_API_KEY` | - | Required only if using `openai` provider |
532
+ | `CODEBASE_ROOT` | - | Optional bootstrap root for CLI and single-project MCP clients without roots |
533
+ | `CODEBASE_CONTEXT_DEBUG` | - | Set to `1` for verbose logging |
313
534
  | `EMBEDDING_MODEL` | `Xenova/bge-small-en-v1.5` | Local embedding model override (e.g. `onnx-community/granite-embedding-small-english-r2-ONNX` for Granite) |
314
535
 
315
536
  ## Performance
@@ -340,7 +561,7 @@ Structured filters available: `framework`, `language`, `componentType`, `layer`
340
561
 
341
562
  ## CLI Reference
342
563
 
343
- All MCP tools are available as CLI commands — no AI agent required. Useful for onboarding, scripting, debugging, and CI workflows.
564
+ Repo-scoped analysis commands are available via the CLI — no AI agent required. MCP multi-project routing uses the shared `project` selector when needed; the CLI stays one-root-per-invocation.
344
565
  For formatted examples and “money shots”, see `docs/cli.md`.
345
566
 
346
567
  Set `CODEBASE_ROOT` to your project root, or run from the project directory.
package/dist/cli.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * CLI subcommands for codebase-context.
3
3
  * Memory list/add/remove — vendor-neutral access without any AI agent.
4
- * search/metadata/status/reindex/style-guide/patterns/refs/cycles — all MCP tools.
4
+ * search/metadata/status/reindex/style-guide/patterns/refs/cycles — human-facing wrappers over core read/query tools.
5
5
  */
6
6
  export { handleMemoryCli } from './cli-memory.js';
7
7
  export declare function handleCliCommand(argv: string[]): Promise<void>;
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoBH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AA6MlD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsLpE"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoBH,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAsNlD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsLpE"}
package/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * CLI subcommands for codebase-context.
3
3
  * Memory list/add/remove — vendor-neutral access without any AI agent.
4
- * search/metadata/status/reindex/style-guide/patterns/refs/cycles — all MCP tools.
4
+ * search/metadata/status/reindex/style-guide/patterns/refs/cycles — human-facing wrappers over core read/query tools.
5
5
  */
6
6
  import path from 'path';
7
7
  import { promises as fs } from 'fs';
@@ -62,12 +62,15 @@ function printUsage() {
62
62
  console.log(' --help Show this help');
63
63
  console.log('');
64
64
  console.log('Environment:');
65
- console.log(' CODEBASE_ROOT Project root path (default: cwd)');
65
+ console.log(' CODEBASE_ROOT Project root path (default: cwd for CLI only)');
66
66
  console.log(' CODEBASE_CONTEXT_ASCII=1 Force ASCII-only box output');
67
67
  console.log(' CODEBASE_CONTEXT_DEBUG=1 Enable verbose logs');
68
68
  }
69
+ function resolveCliRootPath() {
70
+ return path.resolve(process.env.CODEBASE_ROOT || process.cwd());
71
+ }
69
72
  async function initToolContext() {
70
- const rootPath = path.resolve(process.env.CODEBASE_ROOT || process.cwd());
73
+ const rootPath = resolveCliRootPath();
71
74
  const paths = {
72
75
  baseDir: path.join(rootPath, CODEBASE_CONTEXT_DIRNAME),
73
76
  memory: path.join(rootPath, CODEBASE_CONTEXT_DIRNAME, MEMORY_FILENAME),
@@ -118,7 +121,12 @@ async function initToolContext() {
118
121
  console.error('Indexing failed:', indexState.error);
119
122
  }
120
123
  };
121
- return { indexState, paths, rootPath, performIndexing };
124
+ return {
125
+ indexState,
126
+ paths,
127
+ rootPath,
128
+ performIndexing
129
+ };
122
130
  }
123
131
  function extractText(result) {
124
132
  return result.content?.[0]?.text ?? '';
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -18,4 +18,16 @@ export declare const INDEXING_STATS_FILENAME: "indexing-stats.json";
18
18
  export declare const VECTOR_DB_DIRNAME: "index";
19
19
  export declare const MANIFEST_FILENAME: "manifest.json";
20
20
  export declare const RELATIONSHIPS_FILENAME: "relationships.json";
21
+ /**
22
+ * Directories excluded from indexing, file-watching, and project discovery.
23
+ * Single source of truth — all three consumers import from here.
24
+ */
25
+ export declare const EXCLUDED_DIRECTORY_NAMES: readonly [".cache", ".claude", ".codebase-context", ".git", ".next", ".nx", ".planning", ".turbo", "build", "coverage", "dist", "node_modules", "target", "vendor", "worktrees"];
26
+ /** Glob patterns that match excluded directories at any nesting depth. */
27
+ export declare const EXCLUDED_GLOB_PATTERNS: readonly string[];
28
+ /**
29
+ * Additional directories skipped only during project discovery (not generated
30
+ * code, just not useful roots to recurse into).
31
+ */
32
+ export declare const DISCOVERY_ONLY_IGNORED: readonly [".hg", ".nuxt", ".svn", ".venv", ".yarn", "out", "tmp"];
21
33
  //# sourceMappingURL=codebase-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codebase-context.d.ts","sourceRoot":"","sources":["../../src/constants/codebase-context.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,wBAAwB,EAAG,mBAA4B,CAAC;AAErE;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAG,CAAU,CAAC;AAE/C,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,EAAG,CAAU,CAAC;AAE7C,eAAO,MAAM,mBAAmB,EAAG,iBAA0B,CAAC;AAE9D,eAAO,MAAM,eAAe,EAAG,aAAsB,CAAC;AACtD,eAAO,MAAM,qBAAqB,EAAG,mBAA4B,CAAC;AAClE,eAAO,MAAM,sBAAsB,EAAG,YAAqB,CAAC;AAC5D,eAAO,MAAM,uBAAuB,EAAG,qBAA8B,CAAC;AACtE,eAAO,MAAM,iBAAiB,EAAG,OAAgB,CAAC;AAClD,eAAO,MAAM,iBAAiB,EAAG,eAAwB,CAAC;AAC1D,eAAO,MAAM,sBAAsB,EAAG,oBAA6B,CAAC"}
1
+ {"version":3,"file":"codebase-context.d.ts","sourceRoot":"","sources":["../../src/constants/codebase-context.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,wBAAwB,EAAG,mBAA4B,CAAC;AAErE;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAG,CAAU,CAAC;AAE/C,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,EAAG,CAAU,CAAC;AAE7C,eAAO,MAAM,mBAAmB,EAAG,iBAA0B,CAAC;AAE9D,eAAO,MAAM,eAAe,EAAG,aAAsB,CAAC;AACtD,eAAO,MAAM,qBAAqB,EAAG,mBAA4B,CAAC;AAClE,eAAO,MAAM,sBAAsB,EAAG,YAAqB,CAAC;AAC5D,eAAO,MAAM,uBAAuB,EAAG,qBAA8B,CAAC;AACtE,eAAO,MAAM,iBAAiB,EAAG,OAAgB,CAAC;AAClD,eAAO,MAAM,iBAAiB,EAAG,eAAwB,CAAC;AAC1D,eAAO,MAAM,sBAAsB,EAAG,oBAA6B,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,wBAAwB,kLAgB3B,CAAC;AAEX,0EAA0E;AAC1E,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAEnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,mEAQzB,CAAC"}
@@ -20,4 +20,40 @@ export const INDEXING_STATS_FILENAME = 'indexing-stats.json';
20
20
  export const VECTOR_DB_DIRNAME = 'index';
21
21
  export const MANIFEST_FILENAME = 'manifest.json';
22
22
  export const RELATIONSHIPS_FILENAME = 'relationships.json';
23
+ /**
24
+ * Directories excluded from indexing, file-watching, and project discovery.
25
+ * Single source of truth — all three consumers import from here.
26
+ */
27
+ export const EXCLUDED_DIRECTORY_NAMES = [
28
+ '.cache',
29
+ '.claude',
30
+ '.codebase-context',
31
+ '.git',
32
+ '.next',
33
+ '.nx',
34
+ '.planning',
35
+ '.turbo',
36
+ 'build',
37
+ 'coverage',
38
+ 'dist',
39
+ 'node_modules',
40
+ 'target',
41
+ 'vendor',
42
+ 'worktrees'
43
+ ];
44
+ /** Glob patterns that match excluded directories at any nesting depth. */
45
+ export const EXCLUDED_GLOB_PATTERNS = EXCLUDED_DIRECTORY_NAMES.map((dir) => `**/${dir}/**`);
46
+ /**
47
+ * Additional directories skipped only during project discovery (not generated
48
+ * code, just not useful roots to recurse into).
49
+ */
50
+ export const DISCOVERY_ONLY_IGNORED = [
51
+ '.hg',
52
+ '.nuxt',
53
+ '.svn',
54
+ '.venv',
55
+ '.yarn',
56
+ 'out',
57
+ 'tmp'
58
+ ];
23
59
  //# sourceMappingURL=codebase-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codebase-context.js","sourceRoot":"","sources":["../../src/constants/codebase-context.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,2DAA2D;AAE3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAA4B,CAAC;AAErE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAU,CAAC;AAE/C,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAU,CAAC;AAE7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAA0B,CAAC;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,aAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAA4B,CAAC;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAqB,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,qBAA8B,CAAC;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAgB,CAAC;AAClD,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAA6B,CAAC"}
1
+ {"version":3,"file":"codebase-context.js","sourceRoot":"","sources":["../../src/constants/codebase-context.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,2DAA2D;AAE3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAA4B,CAAC;AAErE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAU,CAAC;AAE/C,qEAAqE;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAU,CAAC;AAE7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAA0B,CAAC;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,aAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAA4B,CAAC;AAClE,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAqB,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,qBAA8B,CAAC;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAgB,CAAC;AAClD,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAwB,CAAC;AAC1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAA6B,CAAC;AAEpE;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,QAAQ;IACR,SAAS;IACT,mBAAmB;IACnB,MAAM;IACN,OAAO;IACP,KAAK;IACL,WAAW;IACX,QAAQ;IACR,OAAO;IACP,UAAU;IACV,MAAM;IACN,cAAc;IACd,QAAQ;IACR,QAAQ;IACR,WAAW;CACH,CAAC;AAEX,0EAA0E;AAC1E,MAAM,CAAC,MAAM,sBAAsB,GAAsB,wBAAwB,CAAC,GAAG,CACnF,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,KAAK,CACxB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,KAAK;IACL,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,KAAK;IACL,KAAK;CACG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-watcher.d.ts","sourceRoot":"","sources":["../../src/core/file-watcher.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAeD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,IAAI,CA0CrE"}
1
+ {"version":3,"file":"file-watcher.d.ts","sourceRoot":"","sources":["../../src/core/file-watcher.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAeD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,IAAI,CA+BrE"}
@@ -1,5 +1,6 @@
1
1
  import chokidar from 'chokidar';
2
2
  import path from 'path';
3
+ import { EXCLUDED_GLOB_PATTERNS } from '../constants/codebase-context.js';
3
4
  import { getSupportedExtensions } from '../utils/language-detection.js';
4
5
  const TRACKED_EXTENSIONS = new Set(getSupportedExtensions().map((extension) => extension.toLowerCase()));
5
6
  const TRACKED_METADATA_FILES = new Set(['.gitignore']);
@@ -28,18 +29,7 @@ export function startFileWatcher(opts) {
28
29
  }, debounceMs);
29
30
  };
30
31
  const watcher = chokidar.watch(rootPath, {
31
- ignored: [
32
- '**/node_modules/**',
33
- '**/.codebase-context/**',
34
- '**/.git/**',
35
- '**/dist/**',
36
- '**/.nx/**',
37
- '**/.planning/**',
38
- '**/coverage/**',
39
- '**/.turbo/**',
40
- '**/.next/**',
41
- '**/.cache/**'
42
- ],
32
+ ignored: [...EXCLUDED_GLOB_PATTERNS],
43
33
  persistent: true,
44
34
  ignoreInitial: true,
45
35
  awaitWriteFinish: { stabilityThreshold: 200, pollInterval: 100 }
@@ -1 +1 @@
1
- {"version":3,"file":"file-watcher.js","sourceRoot":"","sources":["../../src/core/file-watcher.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAYxE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CACrE,CAAC;AAEF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;AAEvD,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAwB;IACvD,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACjE,IAAI,aAAwD,CAAC;IAE7D,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,EAAE;QACnC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC3C,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC7D,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,aAAa,GAAG,SAAS,CAAC;YAC1B,SAAS,EAAE,CAAC;QACd,CAAC,EAAE,UAAU,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE;QACvC,OAAO,EAAE;YACP,oBAAoB;YACpB,yBAAyB;YACzB,YAAY;YACZ,YAAY;YACZ,WAAW;YACX,iBAAiB;YACjB,gBAAgB;YAChB,cAAc;YACd,aAAa;YACb,cAAc;SACf;QACD,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,EAAE,kBAAkB,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE;KACjE,CAAC,CAAC;IAEH,OAAO;SACJ,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;SAC9B,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;SAClB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SACrB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SACrB,EAAE,CAAC,OAAO,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;IAE9E,OAAO,GAAG,EAAE;QACV,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC7D,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"file-watcher.js","sourceRoot":"","sources":["../../src/core/file-watcher.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAYxE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CACrE,CAAC;AAEF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;AAEvD,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAwB;IACvD,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACjE,IAAI,aAAwD,CAAC;IAE7D,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,EAAE;QACnC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC3C,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC7D,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,aAAa,GAAG,SAAS,CAAC;YAC1B,SAAS,EAAE,CAAC;QACd,CAAC,EAAE,UAAU,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE;QACvC,OAAO,EAAE,CAAC,GAAG,sBAAsB,CAAC;QACpC,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,EAAE,kBAAkB,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE;KACjE,CAAC,CAAC;IAEH,OAAO;SACJ,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;SAC9B,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;SAClB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SACrB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SACrB,EAAE,CAAC,OAAO,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;IAE9E,OAAO,GAAG,EAAE;QACV,IAAI,aAAa,KAAK,SAAS;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QAC7D,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/core/indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAChB,aAAa,EAEb,cAAc,EAIf,MAAM,mBAAmB,CAAC;AA4L3B,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AASD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAAuC;IAClE,OAAO,CAAC,eAAe,CAAU;gBAErB,OAAO,EAAE,cAAc;IAiBnC,OAAO,CAAC,WAAW;IAmFb,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;YAirBvB,SAAS;IAiEvB,OAAO,CAAC,cAAc;IAShB,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC;IA0FjD;;;OAGG;IACH,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,eAAe;IAavB,WAAW,IAAI,gBAAgB;CAGhC"}
1
+ {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/core/indexer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAChB,aAAa,EAEb,cAAc,EAIf,MAAM,mBAAmB,CAAC;AA6L3B,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AASD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAAuC;IAClE,OAAO,CAAC,eAAe,CAAU;gBAErB,OAAO,EAAE,cAAc;IAiBnC,OAAO,CAAC,WAAW;IA4Eb,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;YAirBvB,SAAS;IAiEvB,OAAO,CAAC,cAAc;IAShB,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC;IA0FjD;;;OAGG;IACH,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,eAAe;IAavB,WAAW,IAAI,gBAAgB;CAGhC"}
@@ -14,7 +14,7 @@ import { getStorageProvider } from '../storage/index.js';
14
14
  import { LibraryUsageTracker, PatternDetector, ImportGraph, InternalFileGraph } from '../utils/usage-tracker.js';
15
15
  import { mergeSmallChunks } from '../utils/chunking.js';
16
16
  import { getFileCommitDates } from '../utils/git-dates.js';
17
- import { CODEBASE_CONTEXT_DIRNAME, INDEX_FORMAT_VERSION, INDEXING_STATS_FILENAME, INDEX_META_FILENAME, INDEX_META_VERSION, INTELLIGENCE_FILENAME, KEYWORD_INDEX_FILENAME, MANIFEST_FILENAME, RELATIONSHIPS_FILENAME, VECTOR_DB_DIRNAME } from '../constants/codebase-context.js';
17
+ import { CODEBASE_CONTEXT_DIRNAME, EXCLUDED_GLOB_PATTERNS, INDEX_FORMAT_VERSION, INDEXING_STATS_FILENAME, INDEX_META_FILENAME, INDEX_META_VERSION, INTELLIGENCE_FILENAME, KEYWORD_INDEX_FILENAME, MANIFEST_FILENAME, RELATIONSHIPS_FILENAME, VECTOR_DB_DIRNAME } from '../constants/codebase-context.js';
18
18
  const STAGING_DIRNAME = '.staging';
19
19
  const PREVIOUS_DIRNAME = '.previous';
20
20
  import { computeFileHashes, readManifest, writeManifest, diffManifest } from './manifest.js';
@@ -196,14 +196,7 @@ export class CodebaseIndexer {
196
196
  '**/*.{sql,graphql,gql}',
197
197
  '**/*.{json,jsonc,yaml,yml,toml,xml}'
198
198
  ],
199
- exclude: [
200
- 'node_modules/**',
201
- 'dist/**',
202
- 'build/**',
203
- '.git/**',
204
- 'coverage/**',
205
- '.codebase-context/**'
206
- ],
199
+ exclude: [...EXCLUDED_GLOB_PATTERNS],
207
200
  respectGitignore: true,
208
201
  parsing: {
209
202
  maxFileSize: 1048576,