codesift-mcp 0.11.0 → 0.13.1
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 +44 -1
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +80 -8
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/embed-child.js +3 -0
- package/dist/cli/embed-child.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +25 -2
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/orphan-guard.d.ts +34 -0
- package/dist/cli/orphan-guard.d.ts.map +1 -0
- package/dist/cli/orphan-guard.js +52 -0
- package/dist/cli/orphan-guard.js.map +1 -0
- package/dist/cli/owner-only-file.d.ts +51 -0
- package/dist/cli/owner-only-file.d.ts.map +1 -0
- package/dist/cli/owner-only-file.js +121 -0
- package/dist/cli/owner-only-file.js.map +1 -0
- package/dist/cli/service.d.ts +17 -1
- package/dist/cli/service.d.ts.map +1 -1
- package/dist/cli/service.js +28 -12
- package/dist/cli/service.js.map +1 -1
- package/dist/cli/setup/codex.d.ts.map +1 -1
- package/dist/cli/setup/codex.js +14 -7
- package/dist/cli/setup/codex.js.map +1 -1
- package/dist/cli/setup/fs.d.ts +12 -0
- package/dist/cli/setup/fs.d.ts.map +1 -1
- package/dist/cli/setup/fs.js +17 -2
- package/dist/cli/setup/fs.js.map +1 -1
- package/dist/cli/setup/mcp.d.ts +37 -1
- package/dist/cli/setup/mcp.d.ts.map +1 -1
- package/dist/cli/setup/mcp.js +78 -3
- package/dist/cli/setup/mcp.js.map +1 -1
- package/dist/cli/setup/types.d.ts +24 -0
- package/dist/cli/setup/types.d.ts.map +1 -1
- package/dist/register-tool-groups/handler-wrappers.d.ts.map +1 -1
- package/dist/register-tool-groups/handler-wrappers.js +20 -6
- package/dist/register-tool-groups/handler-wrappers.js.map +1 -1
- package/dist/register-tools/runtime.d.ts +18 -9
- package/dist/register-tools/runtime.d.ts.map +1 -1
- package/dist/register-tools/runtime.js +54 -20
- package/dist/register-tools/runtime.js.map +1 -1
- package/dist/register-tools.d.ts +1 -1
- package/dist/register-tools.d.ts.map +1 -1
- package/dist/register-tools.js +12 -6
- package/dist/register-tools.js.map +1 -1
- package/dist/server-helpers/repo-resolution.d.ts.map +1 -1
- package/dist/server-helpers/repo-resolution.js +22 -1
- package/dist/server-helpers/repo-resolution.js.map +1 -1
- package/dist/server-helpers/request-context.d.ts +59 -0
- package/dist/server-helpers/request-context.d.ts.map +1 -0
- package/dist/server-helpers/request-context.js +31 -0
- package/dist/server-helpers/request-context.js.map +1 -0
- package/dist/server-helpers/response-hints.d.ts.map +1 -1
- package/dist/server-helpers/response-hints.js +2 -1
- package/dist/server-helpers/response-hints.js.map +1 -1
- package/dist/server.d.ts +1 -11
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +124 -76
- package/dist/server.js.map +1 -1
- package/dist/storage/embedding-store.d.ts +26 -6
- package/dist/storage/embedding-store.d.ts.map +1 -1
- package/dist/storage/embedding-store.js +85 -4
- package/dist/storage/embedding-store.js.map +1 -1
- package/dist/storage/index-store.d.ts +31 -0
- package/dist/storage/index-store.d.ts.map +1 -1
- package/dist/storage/index-store.js +293 -10
- package/dist/storage/index-store.js.map +1 -1
- package/dist/storage/shared-embedding-cache.d.ts +29 -0
- package/dist/storage/shared-embedding-cache.d.ts.map +1 -0
- package/dist/storage/shared-embedding-cache.js +120 -0
- package/dist/storage/shared-embedding-cache.js.map +1 -0
- package/dist/storage/sqlite-index-store.d.ts +89 -0
- package/dist/storage/sqlite-index-store.d.ts.map +1 -0
- package/dist/storage/sqlite-index-store.js +593 -0
- package/dist/storage/sqlite-index-store.js.map +1 -0
- package/dist/tools/index-tools/file-indexer.js +19 -19
- package/dist/tools/index-tools/file-indexer.js.map +1 -1
- package/dist/tools/index-tools/folder-indexer.d.ts.map +1 -1
- package/dist/tools/index-tools/folder-indexer.js +29 -1
- package/dist/tools/index-tools/folder-indexer.js.map +1 -1
- package/dist/tools/index-tools/folder-merge.d.ts.map +1 -1
- package/dist/tools/index-tools/folder-merge.js +47 -1
- package/dist/tools/index-tools/folder-merge.js.map +1 -1
- package/dist/tools/index-tools/parse.d.ts.map +1 -1
- package/dist/tools/index-tools/parse.js +10 -3
- package/dist/tools/index-tools/parse.js.map +1 -1
- package/dist/tools/index-tools/registry.d.ts.map +1 -1
- package/dist/tools/index-tools/registry.js +47 -1
- package/dist/tools/index-tools/registry.js.map +1 -1
- package/dist/tools/index-tools/types.d.ts +7 -0
- package/dist/tools/index-tools/types.d.ts.map +1 -1
- package/dist/tools/search-tools/ripgrep.d.ts.map +1 -1
- package/dist/tools/search-tools/ripgrep.js +32 -2
- package/dist/tools/search-tools/ripgrep.js.map +1 -1
- package/dist/tools/status-tools.d.ts +10 -0
- package/dist/tools/status-tools.d.ts.map +1 -1
- package/dist/tools/status-tools.js +57 -16
- package/dist/tools/status-tools.js.map +1 -1
- package/dist/tools/workspace-scope-helper.d.ts.map +1 -1
- package/dist/tools/workspace-scope-helper.js +8 -1
- package/dist/tools/workspace-scope-helper.js.map +1 -1
- package/dist/tools/workspace-tools.d.ts.map +1 -1
- package/dist/tools/workspace-tools.js +9 -1
- package/dist/tools/workspace-tools.js.map +1 -1
- package/dist/utils/loopback.d.ts +23 -0
- package/dist/utils/loopback.d.ts.map +1 -0
- package/dist/utils/loopback.js +71 -0
- package/dist/utils/loopback.js.map +1 -0
- package/dist/utils/walk/filters.d.ts.map +1 -1
- package/dist/utils/walk/filters.js +22 -1
- package/dist/utils/walk/filters.js.map +1 -1
- package/package.json +4 -1
|
@@ -16,6 +16,16 @@ export interface IndexStatusResult {
|
|
|
16
16
|
actual_version: string;
|
|
17
17
|
mismatch_detail?: string;
|
|
18
18
|
};
|
|
19
|
+
/** When the index store exists but could not be read at all — locked, corrupt, permissions.
|
|
20
|
+
* Same principle as `stale`, one step further: an agent told "not indexed" will rebuild,
|
|
21
|
+
* which is wrong (and destructive) for a database that is merely busy. `indexed` stays
|
|
22
|
+
* false because nothing could be read, but this field is what says why. */
|
|
23
|
+
unreadable?: {
|
|
24
|
+
reason: "storage_error";
|
|
25
|
+
/** SQLITE_* or errno code. SQLITE_BUSY is worth retrying; SQLITE_CORRUPT is not. */
|
|
26
|
+
code: string;
|
|
27
|
+
message: string;
|
|
28
|
+
};
|
|
19
29
|
}
|
|
20
30
|
export declare function indexStatus(repo: string): Promise<IndexStatusResult>;
|
|
21
31
|
//# sourceMappingURL=status-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-tools.d.ts","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status-tools.d.ts","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;+CAG2C;IAC3C,KAAK,CAAC,EAAE;QACN,MAAM,EAAE,4BAA4B,CAAC;QACrC,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF;;;gFAG4E;IAC5E,UAAU,CAAC,EAAE;QACX,MAAM,EAAE,eAAe,CAAC;QACxB,oFAAoF;QACpF,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAmBD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqD1E"}
|
|
@@ -2,10 +2,18 @@ import { getCodeIndex } from "./index-tools.js";
|
|
|
2
2
|
import { loadConfig } from "../config.js";
|
|
3
3
|
import { resolveRegisteredRepoMeta } from "../storage/registry.js";
|
|
4
4
|
import { loadIndexOrStale } from "../storage/index-store.js";
|
|
5
|
+
import { isIndexStorageError } from "../storage/sqlite-index-store.js";
|
|
5
6
|
import { EXTRACTOR_VERSIONS } from "./index-shared.js";
|
|
6
7
|
// ---------------------------------------------------------------------------
|
|
7
8
|
// Tool implementation
|
|
8
9
|
// ---------------------------------------------------------------------------
|
|
10
|
+
/**
|
|
11
|
+
* One translation from a storage fault to the reported field.
|
|
12
|
+
* Three copies of this literal drifted apart is exactly how the code and the type stop agreeing.
|
|
13
|
+
*/
|
|
14
|
+
function toUnreadable(fault) {
|
|
15
|
+
return { unreadable: { reason: "storage_error", code: fault.code, message: fault.message } };
|
|
16
|
+
}
|
|
9
17
|
const TEXT_STUB_LANGUAGES = new Set([
|
|
10
18
|
"kotlin", "swift", "dart", "scala", "groovy",
|
|
11
19
|
"elixir", "lua", "zig", "nim", "gradle", "sbt",
|
|
@@ -14,7 +22,24 @@ export async function indexStatus(repo) {
|
|
|
14
22
|
// Status check should NOT block on freshness — telemetry showed p99=43s
|
|
15
23
|
// because ensureIndexFresh triggers git-diff + reindex of changed files.
|
|
16
24
|
// Stale-but-fast metadata is the right tradeoff for a status call.
|
|
17
|
-
|
|
25
|
+
let index;
|
|
26
|
+
try {
|
|
27
|
+
index = await getCodeIndex(repo, { skipFreshness: true });
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
// getCodeIndex throws on an unreadable store so that ordinary tools cannot render a storage
|
|
31
|
+
// fault as an empty result. This tool is the exception: reporting index health IS its job,
|
|
32
|
+
// so it describes the fault instead of propagating it — straight from the caught error, with
|
|
33
|
+
// no second read. Re-probing would hit an already-struggling store again and could observe a
|
|
34
|
+
// different outcome than the one being reported.
|
|
35
|
+
if (isIndexStorageError(err)) {
|
|
36
|
+
return {
|
|
37
|
+
indexed: false,
|
|
38
|
+
...toUnreadable(err),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
throw err;
|
|
42
|
+
}
|
|
18
43
|
if (!index) {
|
|
19
44
|
// getCodeIndex returns null both for "no index file" and for stale-version
|
|
20
45
|
// mismatches. Disambiguate by reading the index path directly: if the file
|
|
@@ -23,9 +48,9 @@ export async function indexStatus(repo) {
|
|
|
23
48
|
// run index_folder, but agents acting on "stale" can be told the same fix
|
|
24
49
|
// applies AND that some data is still on disk — useful for reasoning about
|
|
25
50
|
// partial coverage during the rebuild.
|
|
26
|
-
const
|
|
27
|
-
if (
|
|
28
|
-
return { indexed: false,
|
|
51
|
+
const problem = await probeIndexProblem(repo);
|
|
52
|
+
if (problem)
|
|
53
|
+
return { indexed: false, ...problem };
|
|
29
54
|
return { indexed: false };
|
|
30
55
|
}
|
|
31
56
|
const languageBreakdown = {};
|
|
@@ -47,11 +72,16 @@ export async function indexStatus(repo) {
|
|
|
47
72
|
result.text_stub_languages = [...stubLangs].sort();
|
|
48
73
|
return result;
|
|
49
74
|
}
|
|
50
|
-
/** Probe the on-disk index
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* `
|
|
54
|
-
|
|
75
|
+
/** Probe the on-disk index and describe why it did not load: drifted extractor versions, or a
|
|
76
|
+
* storage fault. Returns null for the genuine "never indexed" case.
|
|
77
|
+
*
|
|
78
|
+
* It reports `unreadable` as well as `stale` because this path is reachable with a fault: a
|
|
79
|
+
* store that read fine a moment ago (so `getCodeIndex` returned null rather than throwing) can
|
|
80
|
+
* be locked by the time this probe runs. Falling through to a bare `{indexed:false}` there
|
|
81
|
+
* would reintroduce exactly the misdiagnosis this change removes.
|
|
82
|
+
*
|
|
83
|
+
* Uses `resolveRegisteredRepoMeta` so registry resolution stays aligned with `getCodeIndex`. */
|
|
84
|
+
async function probeIndexProblem(repo) {
|
|
55
85
|
const config = loadConfig();
|
|
56
86
|
let result;
|
|
57
87
|
try {
|
|
@@ -60,16 +90,27 @@ async function detectStale(repo) {
|
|
|
60
90
|
return null;
|
|
61
91
|
result = await loadIndexOrStale(resolved.meta.index_path, { ...EXTRACTOR_VERSIONS });
|
|
62
92
|
}
|
|
63
|
-
catch {
|
|
64
|
-
|
|
93
|
+
catch (err) {
|
|
94
|
+
if (isIndexStorageError(err)) {
|
|
95
|
+
return toUnreadable(err);
|
|
96
|
+
}
|
|
97
|
+
// Anything else here (registry I/O, an unexpected TypeError) is a live fault. Returning
|
|
98
|
+
// null would render it as {indexed:false} — an authoritative "nothing indexed" over a
|
|
99
|
+
// problem nobody can see. Let it propagate.
|
|
100
|
+
throw err;
|
|
101
|
+
}
|
|
102
|
+
if (result?.status === "unreadable") {
|
|
103
|
+
return toUnreadable(result);
|
|
65
104
|
}
|
|
66
105
|
if (result?.status === "stale") {
|
|
67
106
|
return {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
107
|
+
stale: {
|
|
108
|
+
reason: "extractor_version_mismatch",
|
|
109
|
+
language: result.language,
|
|
110
|
+
expected_version: result.expected_version,
|
|
111
|
+
actual_version: result.actual_version,
|
|
112
|
+
...(result.mismatch_detail ? { mismatch_detail: result.mismatch_detail } : {}),
|
|
113
|
+
},
|
|
73
114
|
};
|
|
74
115
|
}
|
|
75
116
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-tools.js","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"status-tools.js","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-scope-helper.d.ts","sourceRoot":"","sources":["../../src/tools/workspace-scope-helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-scope-helper.d.ts","sourceRoot":"","sources":["../../src/tools/workspace-scope-helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,WAAW,sBAAsB;IACrC,4FAA4F;IAC5F,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8DAA8D;IAC9D,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;sEAMsE;AACtE,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,sBAAsB,GAAG,mBAAmB,CAAC,CAyCvD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getCodeIndex } from "./index-tools.js";
|
|
2
|
+
import { isIndexStorageError } from "../storage/sqlite-index-store.js";
|
|
2
3
|
/** Resolve a `workspace=` argument against the active CodeIndex.
|
|
3
4
|
* - When `workspace` is provided: look up by exact name or id; return
|
|
4
5
|
* { error: "unknown_workspace" } if not found.
|
|
@@ -11,7 +12,13 @@ export async function resolveWorkspaceScope(repo, workspace, framework) {
|
|
|
11
12
|
try {
|
|
12
13
|
index = await getCodeIndex(repo, { skipFreshness: true });
|
|
13
14
|
}
|
|
14
|
-
catch {
|
|
15
|
+
catch (err) {
|
|
16
|
+
// Same reason as workspace-tools' getIndexOrEmpty: this feeds the `workspace=` parameter on
|
|
17
|
+
// framework_audit, nextjs_route_map, nextjs_metadata_audit, analyze_hono_app, nest_audit and
|
|
18
|
+
// astro_audit. Collapsing a storage fault to null here makes all of them report an empty
|
|
19
|
+
// workspace set over an index that could not be read.
|
|
20
|
+
if (isIndexStorageError(err))
|
|
21
|
+
throw err;
|
|
15
22
|
index = null;
|
|
16
23
|
}
|
|
17
24
|
const workspaces = index?.workspaces;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-scope-helper.js","sourceRoot":"","sources":["../../src/tools/workspace-scope-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-scope-helper.js","sourceRoot":"","sources":["../../src/tools/workspace-scope-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAevE;;;;;;sEAMsE;AACtE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAY,EACZ,SAA6B,EAC7B,SAAkB;IAElB,IAAI,KAAK,CAAC;IACV,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,4FAA4F;QAC5F,6FAA6F;QAC7F,yFAAyF;QACzF,sDAAsD;QACtD,IAAI,mBAAmB,CAAC,GAAG,CAAC;YAAE,MAAM,GAAG,CAAC;QACxC,KAAK,GAAG,IAAI,CAAC;IACf,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,CAAC;IACrC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC3C,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAC9E,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YACxD,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QACrE,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,KAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,6BAA6B;IAC7B,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACpF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,KAAM,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,GAAG;oBAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,SAAiB;IACjD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-tools.d.ts","sourceRoot":"","sources":["../../src/tools/workspace-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAa,SAAS,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-tools.d.ts","sourceRoot":"","sources":["../../src/tools/workspace-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAa,SAAS,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAuD/F,eAAO,MAAM,oBAAoB;IAC/B,IAAI;CACL,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CASlG;AAMD,eAAO,MAAM,oBAAoB;IAC/B,IAAI;IACJ,MAAM;;;;;CACP,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC;CACrC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA8BhC;AAmCD,eAAO,MAAM,wBAAwB;IACnC,IAAI;IACJ,KAAK;IACL,kBAAkB;CACnB,CAAC;AAEF,wBAAsB,yBAAyB,CAAC,IAAI,EAAE;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,cAAc,CAAC,CAsI1B;AAMD,eAAO,MAAM,yBAAyB;IACpC,IAAI;IACJ,KAAK;;;;CAQN,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,qBAAqB,CAAC;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,0BAA0B,EAAE,CAAC;IACzC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,qBAAqB,EAAE,CAAC;CAChC,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAmFrC"}
|
|
@@ -3,6 +3,7 @@ import { promisify } from "node:util";
|
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { getCodeIndex } from "./index-tools.js";
|
|
5
5
|
import { collectImportEdges, buildWorkspaceAliasResolver } from "../utils/import-graph.js";
|
|
6
|
+
import { isIndexStorageError } from "../storage/sqlite-index-store.js";
|
|
6
7
|
const execFileAsync = promisify(execFile);
|
|
7
8
|
// ---------------------------------------------------------------------------
|
|
8
9
|
// Shared helpers
|
|
@@ -359,7 +360,14 @@ async function getIndexOrEmpty(repo) {
|
|
|
359
360
|
try {
|
|
360
361
|
return await getCodeIndex(repo ?? "", { skipFreshness: true });
|
|
361
362
|
}
|
|
362
|
-
catch {
|
|
363
|
+
catch (err) {
|
|
364
|
+
// A storage fault must NOT become "this repo has no workspaces". `getCodeIndex` throws
|
|
365
|
+
// IndexStorageError for a locked or corrupt index precisely so callers stop rendering it
|
|
366
|
+
// as an empty result; swallowing it here would put every workspace tool
|
|
367
|
+
// (list_workspaces, workspace_graph, affected_workspaces, workspace_boundaries) right back
|
|
368
|
+
// to answering "no workspaces" with full confidence over a database that is merely busy.
|
|
369
|
+
if (isIndexStorageError(err))
|
|
370
|
+
throw err;
|
|
363
371
|
return null;
|
|
364
372
|
}
|
|
365
373
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../src/tools/workspace-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-tools.js","sourceRoot":"","sources":["../../src/tools/workspace-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Literal addresses only.
|
|
3
|
+
*
|
|
4
|
+
* A prefix test like `/^127\./` reads as loopback for `127.attacker.example` and for
|
|
5
|
+
* `127.0.0.1@attacker.example` (that `@` is URL userinfo, so the request goes to
|
|
6
|
+
* `attacker.example`) — either one turns this exemption into a way to post a bearer token to an
|
|
7
|
+
* attacker-controlled host. `isIP` returns 0 for anything that is not a bare address literal, so
|
|
8
|
+
* the whole class falls through.
|
|
9
|
+
*
|
|
10
|
+
* `localhost` stays exempt. It is resolver-dependent in principle, but anyone who can rewrite
|
|
11
|
+
* your hosts file already owns the machine, and dropping it would break the common local case in
|
|
12
|
+
* exchange for a threat this does not mitigate.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isLoopbackHost(host: string): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Reject a host string that can smuggle authority into a URL.
|
|
17
|
+
*
|
|
18
|
+
* `@` is the dangerous one: `127.0.0.1@evil.example` parses as userinfo + host, so the client
|
|
19
|
+
* connects to `evil.example` while the string looks local. `/`, `?`, `#` can move the path or
|
|
20
|
+
* query. None of these belong in a hostname.
|
|
21
|
+
*/
|
|
22
|
+
export declare function assertPlainHost(host: string): void;
|
|
23
|
+
//# sourceMappingURL=loopback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loopback.d.ts","sourceRoot":"","sources":["../../src/utils/loopback.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAyBpD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAQlD"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The single definition of "this address does not leave the machine".
|
|
3
|
+
*
|
|
4
|
+
* There were three: `server.ts` gated its bind on a 3-string set, `cli/service.ts` had its own
|
|
5
|
+
* copy of the same 3 strings, and `cli/setup/mcp.ts` had a fuller one (all of 127.0.0.0/8 plus
|
|
6
|
+
* the IPv4-mapped IPv6 forms). They disagreed, and the disagreement was reachable: binding the
|
|
7
|
+
* daemon to `127.0.0.2` — a perfectly ordinary loopback alias, the usual way to run two daemons
|
|
8
|
+
* on one port — was accepted by setup and refused by the server as "non-loopback without a
|
|
9
|
+
* token". Safe direction, but a deployment that looks valid from one layer and cannot start at
|
|
10
|
+
* another.
|
|
11
|
+
*
|
|
12
|
+
* A predicate that decides whether a credential may travel in plaintext should exist once.
|
|
13
|
+
*/
|
|
14
|
+
import { isIP } from "node:net";
|
|
15
|
+
/**
|
|
16
|
+
* Literal addresses only.
|
|
17
|
+
*
|
|
18
|
+
* A prefix test like `/^127\./` reads as loopback for `127.attacker.example` and for
|
|
19
|
+
* `127.0.0.1@attacker.example` (that `@` is URL userinfo, so the request goes to
|
|
20
|
+
* `attacker.example`) — either one turns this exemption into a way to post a bearer token to an
|
|
21
|
+
* attacker-controlled host. `isIP` returns 0 for anything that is not a bare address literal, so
|
|
22
|
+
* the whole class falls through.
|
|
23
|
+
*
|
|
24
|
+
* `localhost` stays exempt. It is resolver-dependent in principle, but anyone who can rewrite
|
|
25
|
+
* your hosts file already owns the machine, and dropping it would break the common local case in
|
|
26
|
+
* exchange for a threat this does not mitigate.
|
|
27
|
+
*/
|
|
28
|
+
export function isLoopbackHost(host) {
|
|
29
|
+
// Strip brackets only as a matched pair: accepting a lone `[` or `]` let a malformed authority
|
|
30
|
+
// like `[::1` classify as loopback here while failing later in URL construction.
|
|
31
|
+
const trimmed = host.trim();
|
|
32
|
+
const unwrapped = /^\[.*\]$/.test(trimmed) ? trimmed.slice(1, -1) : trimmed;
|
|
33
|
+
const bare = unwrapped.toLowerCase();
|
|
34
|
+
if (bare === "localhost")
|
|
35
|
+
return true;
|
|
36
|
+
const kind = isIP(bare);
|
|
37
|
+
if (kind === 4)
|
|
38
|
+
return bare.startsWith("127."); // 127.0.0.0/8, and isIP proved it is a literal
|
|
39
|
+
if (kind === 6) {
|
|
40
|
+
if (bare === "::1" || bare === "0:0:0:0:0:0:0:1")
|
|
41
|
+
return true;
|
|
42
|
+
// The IPv4-mapped loopback has two spellings for one address: dotted (`::ffff:127.0.0.1`)
|
|
43
|
+
// and hex (`::ffff:7f00:1`). Recognising only the dotted form rejected a valid loopback
|
|
44
|
+
// config in a way nobody would think to diagnose.
|
|
45
|
+
const mapped = bare.match(/^(?:0*:)*:?ffff:(.+)$/);
|
|
46
|
+
if (mapped?.[1]) {
|
|
47
|
+
const tail = mapped[1];
|
|
48
|
+
if (isIP(tail) === 4)
|
|
49
|
+
return tail.startsWith("127.");
|
|
50
|
+
const hex = tail.match(/^([0-9a-f]{1,4}):([0-9a-f]{1,4})$/);
|
|
51
|
+
if (hex)
|
|
52
|
+
return parseInt(hex[1], 16) >>> 8 === 0x7f;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Reject a host string that can smuggle authority into a URL.
|
|
59
|
+
*
|
|
60
|
+
* `@` is the dangerous one: `127.0.0.1@evil.example` parses as userinfo + host, so the client
|
|
61
|
+
* connects to `evil.example` while the string looks local. `/`, `?`, `#` can move the path or
|
|
62
|
+
* query. None of these belong in a hostname.
|
|
63
|
+
*/
|
|
64
|
+
export function assertPlainHost(host) {
|
|
65
|
+
if (/[@/?#\s]/.test(host)) {
|
|
66
|
+
throw new Error(`Invalid daemon host ${JSON.stringify(host)}: a host cannot contain '@', '/', '?', '#' or ` +
|
|
67
|
+
`whitespace. A host like "127.0.0.1@example.com" looks local but sends the request — and ` +
|
|
68
|
+
`the token — to example.com.`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=loopback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loopback.js","sourceRoot":"","sources":["../../src/utils/loopback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,+FAA+F;IAC/F,iFAAiF;IACjF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC5E,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAErC,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,+CAA+C;IAC/F,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAC9D,0FAA0F;QAC1F,wFAAwF;QACxF,kDAAkD;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YAC5D,IAAI,GAAG;gBAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gDAAgD;YACzF,0FAA0F;YAC1F,6BAA6B,CAChC,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/utils/walk/filters.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/utils/walk/filters.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA4B9C,eAAO,MAAM,WAAW,aAGtB,CAAC;AAEH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED,eAAO,MAAM,oBAAoB,EAAE,MAAM,EAQxC,CAAC;AAEF,UAAU,UAAU;IAClB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3C,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5D;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,UAAU,CA+BnF"}
|
|
@@ -1,11 +1,32 @@
|
|
|
1
1
|
import { extname, relative } from "node:path";
|
|
2
2
|
import picomatch from "picomatch";
|
|
3
|
-
|
|
3
|
+
const ALWAYS_IGNORED = [
|
|
4
4
|
"node_modules", ".git", "dist", "build", "coverage",
|
|
5
5
|
".codesift", ".next", "__pycache__", ".pytest_cache",
|
|
6
6
|
".venv", "venv", ".tox", ".mypy_cache", ".turbo",
|
|
7
7
|
"generated", "audit-results", ".backup", "jscpd-report",
|
|
8
8
|
"helpscout_export", ".output", ".pnpm",
|
|
9
|
+
];
|
|
10
|
+
/**
|
|
11
|
+
* Third-party code that is `node_modules` under a different name — Composer,
|
|
12
|
+
* Go, Ruby and Rust all install into `vendor/`.
|
|
13
|
+
*
|
|
14
|
+
* Measured on real indexes before this was excluded: `tgm-mobi` 44,534 of
|
|
15
|
+
* 50,006 files (89%, 377 MB), `Mobi3` 89%, `tgm-collect` 10,083 of 11,622
|
|
16
|
+
* (87%). Two of those sat exactly on the 50,000-file indexing cap, which means
|
|
17
|
+
* dependency code was not merely slowing things down — it was pushing the
|
|
18
|
+
* project's own source OUT of the index, silently. Graph tools then walked the
|
|
19
|
+
* whole vendored tree and hit the 90s tool timeout, so they were unusable on
|
|
20
|
+
* every PHP project.
|
|
21
|
+
*
|
|
22
|
+
* Escape hatch for the rare repo whose `vendor/` really is first-party source:
|
|
23
|
+
* `CODESIFT_INDEX_VENDOR=1`. Read once at module load, like the other walk
|
|
24
|
+
* toggles.
|
|
25
|
+
*/
|
|
26
|
+
const VENDOR_DIRS = ["vendor"];
|
|
27
|
+
export const IGNORE_DIRS = new Set([
|
|
28
|
+
...ALWAYS_IGNORED,
|
|
29
|
+
...(process.env["CODESIFT_INDEX_VENDOR"] === "1" ? [] : VENDOR_DIRS),
|
|
9
30
|
]);
|
|
10
31
|
export function toIgnorePatterns() {
|
|
11
32
|
return [...IGNORE_DIRS].map((dir) => `**/${dir}/**`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/utils/walk/filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,SAAS,MAAM,WAAW,CAAC;AAGlC,MAAM,
|
|
1
|
+
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/utils/walk/filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,SAAS,MAAM,WAAW,CAAC;AAGlC,MAAM,cAAc,GAAG;IACrB,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;IACnD,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe;IACpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ;IAChD,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc;IACvD,kBAAkB,EAAE,SAAS,EAAE,OAAO;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,CAAC;AAE/B,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IACjC,GAAG,cAAc;IACjB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;CACrE,CAAC,CAAC;AAEH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAa;IAC5C,aAAa;IACb,SAAS;IACT,UAAU;IACV,IAAI;IACJ,SAAS;IACT,SAAS;IACT,aAAa;CACd,CAAC;AAOF,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,OAAoB;IACrE,IAAI,UAAU,GAAuC,IAAI,CAAC;IAC1D,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC;YACH,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,OAAO;QACL,mBAAmB,CAAC,IAAY;YAC9B,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;QACD,iBAAiB,CAAC,QAAgB,EAAE,IAAY;YAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG;gBAC5C,oBAAoB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC/D,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YAEvE,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC7C,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;gBACvD,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACvE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codesift-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.1",
|
|
4
4
|
"description": "MCP server for code intelligence — 146 tools for symbol search, call graph, semantic search, route tracing, community detection, LSP bridge, secret detection, conversation search, and Hono framework intelligence",
|
|
5
5
|
"license": "BSL-1.1",
|
|
6
6
|
"author": "Greg Laskowski",
|
|
@@ -32,7 +32,10 @@
|
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@manypkg/get-packages": "^3.1.0",
|
|
35
|
+
"@modelcontextprotocol/core": "^2.0.0",
|
|
36
|
+
"@modelcontextprotocol/node": "^2.0.0",
|
|
35
37
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
38
|
+
"@modelcontextprotocol/server": "^2.0.0",
|
|
36
39
|
"@mrleebo/prisma-ast": "^0.15.0",
|
|
37
40
|
"@parcel/watcher": "^2.5.6",
|
|
38
41
|
"@sanity-labs/secret-scan": "^1.1.0",
|