codetree-claude 1.5.0 → 1.5.2
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 +137 -121
- package/dist/cli.js +69 -83
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +126 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +22 -0
- package/dist/config.js.map +1 -1
- package/dist/diff.d.ts +37 -0
- package/dist/diff.d.ts.map +1 -0
- package/dist/diff.js +181 -0
- package/dist/diff.js.map +1 -0
- package/dist/doctor.d.ts +5 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +139 -0
- package/dist/doctor.js.map +1 -0
- package/dist/hook/post-compact.js +1 -23
- package/dist/hook/post-compact.js.map +1 -1
- package/dist/hook/post-tool-use.js +11 -27
- package/dist/hook/post-tool-use.js.map +1 -1
- package/dist/hook/pre-compact.js +1 -22
- package/dist/hook/pre-compact.js.map +1 -1
- package/dist/hook/pre-tool-use.bundled.js +49 -77
- package/dist/hook/pre-tool-use.js +23 -90
- package/dist/hook/pre-tool-use.js.map +1 -1
- package/dist/hook/session-start.js +19 -23
- package/dist/hook/session-start.js.map +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/indexer/extractor-registry.d.ts.map +1 -1
- package/dist/indexer/extractor-registry.js +6 -0
- package/dist/indexer/extractor-registry.js.map +1 -1
- package/dist/indexer/extractors/csharp.d.ts +12 -0
- package/dist/indexer/extractors/csharp.d.ts.map +1 -0
- package/dist/indexer/extractors/csharp.js +165 -0
- package/dist/indexer/extractors/csharp.js.map +1 -0
- package/dist/indexer/extractors/go.js +44 -1
- package/dist/indexer/extractors/go.js.map +1 -1
- package/dist/indexer/extractors/java.d.ts.map +1 -1
- package/dist/indexer/extractors/java.js +41 -3
- package/dist/indexer/extractors/java.js.map +1 -1
- package/dist/indexer/extractors/javascript.d.ts.map +1 -1
- package/dist/indexer/extractors/javascript.js +67 -3
- package/dist/indexer/extractors/javascript.js.map +1 -1
- package/dist/indexer/extractors/python.d.ts.map +1 -1
- package/dist/indexer/extractors/python.js +31 -2
- package/dist/indexer/extractors/python.js.map +1 -1
- package/dist/indexer/extractors/ruby.d.ts +10 -0
- package/dist/indexer/extractors/ruby.d.ts.map +1 -0
- package/dist/indexer/extractors/ruby.js +145 -0
- package/dist/indexer/extractors/ruby.js.map +1 -0
- package/dist/indexer/extractors/rust.d.ts +10 -0
- package/dist/indexer/extractors/rust.d.ts.map +1 -0
- package/dist/indexer/extractors/rust.js +194 -0
- package/dist/indexer/extractors/rust.js.map +1 -0
- package/dist/indexer/indexer.d.ts +15 -0
- package/dist/indexer/indexer.d.ts.map +1 -1
- package/dist/indexer/indexer.js +168 -4
- package/dist/indexer/indexer.js.map +1 -1
- package/dist/server/ipc.d.ts +10 -4
- package/dist/server/ipc.d.ts.map +1 -1
- package/dist/server/ipc.js +190 -109
- package/dist/server/ipc.js.map +1 -1
- package/dist/server/mcp-server.js +36 -27
- package/dist/server/mcp-server.js.map +1 -1
- package/dist/server/tools/codetree-find-refs.d.ts.map +1 -1
- package/dist/server/tools/codetree-find-refs.js +23 -14
- package/dist/server/tools/codetree-find-refs.js.map +1 -1
- package/dist/server/tools/codetree-memory.d.ts +3 -6
- package/dist/server/tools/codetree-memory.d.ts.map +1 -1
- package/dist/server/tools/codetree-memory.js +9 -10
- package/dist/server/tools/codetree-memory.js.map +1 -1
- package/dist/server/tools/codetree-outline.d.ts +57 -0
- package/dist/server/tools/codetree-outline.d.ts.map +1 -0
- package/dist/server/tools/codetree-outline.js +76 -0
- package/dist/server/tools/codetree-outline.js.map +1 -0
- package/dist/server/tools/codetree-probe.d.ts +53 -0
- package/dist/server/tools/codetree-probe.d.ts.map +1 -0
- package/dist/server/tools/codetree-probe.js +81 -0
- package/dist/server/tools/codetree-probe.js.map +1 -0
- package/dist/server/tools/codetree-read.d.ts +52 -3
- package/dist/server/tools/codetree-read.d.ts.map +1 -1
- package/dist/server/tools/codetree-read.js +237 -55
- package/dist/server/tools/codetree-read.js.map +1 -1
- package/dist/server/tools/codetree-search.d.ts +13 -1
- package/dist/server/tools/codetree-search.d.ts.map +1 -1
- package/dist/server/tools/codetree-search.js +80 -52
- package/dist/server/tools/codetree-search.js.map +1 -1
- package/dist/server/tools/codetree-structure.d.ts +25 -1
- package/dist/server/tools/codetree-structure.d.ts.map +1 -1
- package/dist/server/tools/codetree-structure.js +92 -42
- package/dist/server/tools/codetree-structure.js.map +1 -1
- package/dist/server/tools/codetree-summary.d.ts +2 -0
- package/dist/server/tools/codetree-summary.d.ts.map +1 -1
- package/dist/server/tools/codetree-summary.js +5 -0
- package/dist/server/tools/codetree-summary.js.map +1 -1
- package/dist/setup/install.d.ts +45 -1
- package/dist/setup/install.d.ts.map +1 -1
- package/dist/setup/install.js +163 -58
- package/dist/setup/install.js.map +1 -1
- package/dist/setup/template-load.d.ts +9 -0
- package/dist/setup/template-load.d.ts.map +1 -0
- package/dist/setup/template-load.js +39 -0
- package/dist/setup/template-load.js.map +1 -0
- package/dist/storage/database.d.ts +49 -0
- package/dist/storage/database.d.ts.map +1 -1
- package/dist/storage/database.js +383 -43
- package/dist/storage/database.js.map +1 -1
- package/dist/storage/disk-manager.d.ts.map +1 -1
- package/dist/storage/disk-manager.js +1 -5
- package/dist/storage/disk-manager.js.map +1 -1
- package/dist/utils.d.ts +23 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +102 -0
- package/dist/utils.js.map +1 -0
- package/package.json +46 -10
- package/templates/README.md +15 -0
- package/templates/agents-codetree.snippet.md +24 -0
- package/templates/claude-md-codetree.snippet.md +22 -0
- package/templates/claude-rules-codetree.md +23 -0
- package/templates/cursor-codetree.mdc +31 -0
- package/templates/gemini-codetree.snippet.md +6 -0
package/dist/setup/install.js
CHANGED
|
@@ -1,8 +1,43 @@
|
|
|
1
1
|
import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
|
|
2
2
|
import { join, dirname } from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
+
import TOML from "@iarna/toml";
|
|
5
|
+
import { readRequiredTemplate } from "./template-load.js";
|
|
4
6
|
const __filename = fileURLToPath(import.meta.url);
|
|
5
7
|
const __dirname = dirname(__filename);
|
|
8
|
+
/** Idempotent replace for CLAUDE.md / AGENTS.md / GEMINI.md blocks shipped in `templates/`. */
|
|
9
|
+
const CLAUDE_MD_BLOCK_RE = /<!-- codetree-instructions -->[\s\S]*?<!-- \/codetree-instructions -->/;
|
|
10
|
+
const AGENTS_BLOCK_RE = /<!-- codetree-agents -->[\s\S]*?<!-- \/codetree-agents -->/;
|
|
11
|
+
const GEMINI_BLOCK_RE = /<!-- codetree-gemini -->[\s\S]*?<!-- \/codetree-gemini -->/;
|
|
12
|
+
/** Shared MCP server entry for stdio (Claude `.mcp.json`, Cursor, Antigravity, etc.). */
|
|
13
|
+
export function buildCodetreeMcpServerEntry(projectRoot, serverScriptPath) {
|
|
14
|
+
const normalizedPath = serverScriptPath.replace(/\\/g, "/");
|
|
15
|
+
const normalizedRoot = projectRoot.replace(/\\/g, "/");
|
|
16
|
+
return {
|
|
17
|
+
command: "node",
|
|
18
|
+
args: [normalizedPath],
|
|
19
|
+
cwd: normalizedRoot,
|
|
20
|
+
env: {
|
|
21
|
+
CODETREE_PROJECT_ROOT: normalizedRoot,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function mergeJsonMcpFile(mcpConfigPath, projectRoot, serverScriptPath) {
|
|
26
|
+
let config = {};
|
|
27
|
+
if (existsSync(mcpConfigPath)) {
|
|
28
|
+
try {
|
|
29
|
+
config = JSON.parse(readFileSync(mcpConfigPath, "utf-8"));
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
// Invalid JSON, start fresh
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (!config.mcpServers)
|
|
36
|
+
config.mcpServers = {};
|
|
37
|
+
config.mcpServers.codetree = buildCodetreeMcpServerEntry(projectRoot, serverScriptPath);
|
|
38
|
+
mkdirSync(dirname(mcpConfigPath), { recursive: true });
|
|
39
|
+
writeFileSync(mcpConfigPath, JSON.stringify(config, null, 2), "utf-8");
|
|
40
|
+
}
|
|
6
41
|
function addHookIfMissing(hooks, matcher, command) {
|
|
7
42
|
const exists = hooks.find((h) => h.hooks?.some((hook) => hook.command?.includes("codetree")));
|
|
8
43
|
if (!exists) {
|
|
@@ -85,17 +120,7 @@ export function installMcpServer(projectRoot, serverScriptPath) {
|
|
|
85
120
|
if (!config.mcpServers)
|
|
86
121
|
config.mcpServers = {};
|
|
87
122
|
// Always update — don't skip, paths may have changed
|
|
88
|
-
|
|
89
|
-
const normalizedPath = serverScriptPath.replace(/\\/g, "/");
|
|
90
|
-
const normalizedRoot = projectRoot.replace(/\\/g, "/");
|
|
91
|
-
config.mcpServers.codetree = {
|
|
92
|
-
command: "node",
|
|
93
|
-
args: [normalizedPath],
|
|
94
|
-
cwd: normalizedRoot,
|
|
95
|
-
env: {
|
|
96
|
-
CODETREE_PROJECT_ROOT: normalizedRoot,
|
|
97
|
-
},
|
|
98
|
-
};
|
|
123
|
+
config.mcpServers.codetree = buildCodetreeMcpServerEntry(projectRoot, serverScriptPath);
|
|
99
124
|
writeFileSync(mcpConfigPath, JSON.stringify(config, null, 2), "utf-8");
|
|
100
125
|
return { success: true, message: `MCP server registered in ${mcpConfigPath}` };
|
|
101
126
|
}
|
|
@@ -132,53 +157,23 @@ export function createDefaultConfig(projectRoot) {
|
|
|
132
157
|
}
|
|
133
158
|
/**
|
|
134
159
|
* Generate CLAUDE.md that instructs Claude to use CodeTree MCP tools.
|
|
135
|
-
*
|
|
160
|
+
* Text is loaded from packaged `templates/claude-md-codetree.snippet.md`.
|
|
136
161
|
*/
|
|
137
162
|
export function installClaudeMd(projectRoot) {
|
|
138
163
|
const claudeMdPath = join(projectRoot, "CLAUDE.md");
|
|
139
|
-
const
|
|
140
|
-
const codetreeBlock = `
|
|
141
|
-
${marker}
|
|
142
|
-
## CodeTree — Cached Codebase Access
|
|
143
|
-
|
|
144
|
-
This project has CodeTree MCP tools for faster, token-efficient codebase access.
|
|
145
|
-
**Use these instead of native Read/Grep/Glob whenever possible:**
|
|
146
|
-
|
|
147
|
-
| Instead of | Use | Why |
|
|
148
|
-
|-----------|-----|-----|
|
|
149
|
-
| \`Read\` | \`codetree_read\` | Cached content + symbol metadata |
|
|
150
|
-
| \`Grep\` | \`codetree_search\` | Instant symbol index search. Set \`content_search=true\` for line matches |
|
|
151
|
-
| \`Glob\` | \`codetree_structure\` | Indexed project tree with language stats |
|
|
152
|
-
|
|
153
|
-
**Other tools:**
|
|
154
|
-
- \`codetree_find_refs\` — Find all references to a symbol
|
|
155
|
-
- \`codetree_summary\` — Project overview (call at session start)
|
|
156
|
-
- \`codetree_memory\` — Save/recall insights across sessions
|
|
157
|
-
|
|
158
|
-
**Session workflow:**
|
|
159
|
-
1. Start: call \`codetree_summary\` and \`codetree_memory\` with \`action: "get_context"\`
|
|
160
|
-
2. During work: use \`codetree_read\`/\`codetree_search\` instead of native tools
|
|
161
|
-
3. Save discoveries: \`codetree_memory\` with \`action: "save_insight"\`
|
|
162
|
-
<!-- /codetree-instructions -->`;
|
|
164
|
+
const codetreeBlock = readRequiredTemplate("claude-md-codetree.snippet.md").trim();
|
|
163
165
|
if (existsSync(claudeMdPath)) {
|
|
164
166
|
let content = readFileSync(claudeMdPath, "utf-8");
|
|
165
|
-
if (
|
|
166
|
-
|
|
167
|
-
const startIdx = content.indexOf(marker);
|
|
168
|
-
const endMarker = "<!-- /codetree-instructions -->";
|
|
169
|
-
const endIdx = content.indexOf(endMarker);
|
|
170
|
-
if (endIdx > startIdx) {
|
|
171
|
-
content = content.slice(0, startIdx) + codetreeBlock.trim() + "\n" + content.slice(endIdx + endMarker.length);
|
|
172
|
-
}
|
|
167
|
+
if (CLAUDE_MD_BLOCK_RE.test(content)) {
|
|
168
|
+
content = content.replace(CLAUDE_MD_BLOCK_RE, codetreeBlock);
|
|
173
169
|
}
|
|
174
170
|
else {
|
|
175
|
-
|
|
176
|
-
content = content.trimEnd() + "\n\n" + codetreeBlock.trim() + "\n";
|
|
171
|
+
content = content.trimEnd() + "\n\n" + codetreeBlock + "\n";
|
|
177
172
|
}
|
|
178
173
|
writeFileSync(claudeMdPath, content, "utf-8");
|
|
179
174
|
}
|
|
180
175
|
else {
|
|
181
|
-
writeFileSync(claudeMdPath, codetreeBlock
|
|
176
|
+
writeFileSync(claudeMdPath, codetreeBlock + "\n", "utf-8");
|
|
182
177
|
}
|
|
183
178
|
}
|
|
184
179
|
/**
|
|
@@ -191,19 +186,129 @@ export function installClaudeRules(projectRoot) {
|
|
|
191
186
|
mkdirSync(rulesDir, { recursive: true });
|
|
192
187
|
}
|
|
193
188
|
const rulePath = join(rulesDir, "codetree.md");
|
|
194
|
-
const ruleContent =
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
189
|
+
const ruleContent = readRequiredTemplate("claude-rules-codetree.md").trimEnd() + "\n";
|
|
190
|
+
writeFileSync(rulePath, ruleContent, "utf-8");
|
|
191
|
+
}
|
|
192
|
+
// ─── Cursor (MCP + rules) — does not modify Claude paths ─────────────────
|
|
193
|
+
/**
|
|
194
|
+
* Register CodeTree in `.cursor/mcp.json` (Cursor IDE).
|
|
195
|
+
*/
|
|
196
|
+
export function installCursorMcp(projectRoot, serverScriptPath) {
|
|
197
|
+
const mcpConfigPath = join(projectRoot, ".cursor", "mcp.json");
|
|
198
|
+
mergeJsonMcpFile(mcpConfigPath, projectRoot, serverScriptPath);
|
|
199
|
+
return { success: true, message: `Cursor MCP registered in ${mcpConfigPath}` };
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Cursor rules so the agent prefers CodeTree tools (steering; not hook enforcement).
|
|
203
|
+
* Source: packaged `templates/cursor-codetree.mdc`.
|
|
204
|
+
*/
|
|
205
|
+
export function installCursorRules(projectRoot) {
|
|
206
|
+
const rulesDir = join(projectRoot, ".cursor", "rules");
|
|
207
|
+
if (!existsSync(rulesDir)) {
|
|
208
|
+
mkdirSync(rulesDir, { recursive: true });
|
|
209
|
+
}
|
|
210
|
+
const rulePath = join(rulesDir, "codetree.mdc");
|
|
211
|
+
const ruleContent = readRequiredTemplate("cursor-codetree.mdc").trimEnd() + "\n";
|
|
205
212
|
writeFileSync(rulePath, ruleContent, "utf-8");
|
|
206
213
|
}
|
|
214
|
+
// ─── Google Antigravity (project MCP) ─────────────────────────────────────
|
|
215
|
+
/**
|
|
216
|
+
* Register CodeTree in `.antigravity/mcp.json` (project-level; common Antigravity convention).
|
|
217
|
+
* Does not modify global ~/.gemini/... (avoid clobbering user-wide config).
|
|
218
|
+
*/
|
|
219
|
+
export function installAntigravityMcp(projectRoot, serverScriptPath) {
|
|
220
|
+
const mcpConfigPath = join(projectRoot, ".antigravity", "mcp.json");
|
|
221
|
+
mergeJsonMcpFile(mcpConfigPath, projectRoot, serverScriptPath);
|
|
222
|
+
return { success: true, message: `Antigravity MCP registered in ${mcpConfigPath}` };
|
|
223
|
+
}
|
|
224
|
+
// ─── OpenAI Codex (project .codex/config.toml) ────────────────────────────
|
|
225
|
+
/**
|
|
226
|
+
* Merge CodeTree into `.codex/config.toml`. Skips write if existing file is invalid TOML.
|
|
227
|
+
*/
|
|
228
|
+
export function installCodexMcp(projectRoot, serverScriptPath) {
|
|
229
|
+
const codexDir = join(projectRoot, ".codex");
|
|
230
|
+
const codexPath = join(codexDir, "config.toml");
|
|
231
|
+
mkdirSync(codexDir, { recursive: true });
|
|
232
|
+
let doc = {};
|
|
233
|
+
if (existsSync(codexPath)) {
|
|
234
|
+
const raw = readFileSync(codexPath, "utf-8");
|
|
235
|
+
if (raw.trim()) {
|
|
236
|
+
try {
|
|
237
|
+
doc = TOML.parse(raw);
|
|
238
|
+
}
|
|
239
|
+
catch {
|
|
240
|
+
return {
|
|
241
|
+
success: false,
|
|
242
|
+
message: `Skipped Codex: existing ${codexPath} is not valid TOML — fix it or merge [mcp_servers.codetree] manually`,
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
const entry = buildCodetreeMcpServerEntry(projectRoot, serverScriptPath);
|
|
248
|
+
const rawMcp = doc.mcp_servers;
|
|
249
|
+
const mcpServers = rawMcp !== undefined &&
|
|
250
|
+
rawMcp !== null &&
|
|
251
|
+
typeof rawMcp === "object" &&
|
|
252
|
+
!Array.isArray(rawMcp)
|
|
253
|
+
? { ...rawMcp }
|
|
254
|
+
: {};
|
|
255
|
+
mcpServers.codetree = {
|
|
256
|
+
command: entry.command,
|
|
257
|
+
args: entry.args,
|
|
258
|
+
cwd: entry.cwd,
|
|
259
|
+
enabled: true,
|
|
260
|
+
startup_timeout_sec: 10,
|
|
261
|
+
tool_timeout_sec: 120,
|
|
262
|
+
env: {
|
|
263
|
+
CODETREE_PROJECT_ROOT: entry.env.CODETREE_PROJECT_ROOT,
|
|
264
|
+
},
|
|
265
|
+
};
|
|
266
|
+
doc.mcp_servers = mcpServers;
|
|
267
|
+
writeFileSync(codexPath, TOML.stringify(doc), "utf-8");
|
|
268
|
+
return { success: true, message: `Codex MCP registered in ${codexPath}` };
|
|
269
|
+
}
|
|
270
|
+
// ─── AGENTS.md / GEMINI.md (portable instructions) ───────────────────────
|
|
271
|
+
// Sources: templates/agents-codetree.snippet.md, templates/gemini-codetree.snippet.md
|
|
272
|
+
/**
|
|
273
|
+
* Idempotent AGENTS.md block (Cursor, OpenAI Codex, Google Antigravity, and other agents that read AGENTS.md).
|
|
274
|
+
*/
|
|
275
|
+
export function installAgentsMd(projectRoot) {
|
|
276
|
+
const pathMd = join(projectRoot, "AGENTS.md");
|
|
277
|
+
const agentsBlock = readRequiredTemplate("agents-codetree.snippet.md").trim();
|
|
278
|
+
if (existsSync(pathMd)) {
|
|
279
|
+
let content = readFileSync(pathMd, "utf-8");
|
|
280
|
+
if (AGENTS_BLOCK_RE.test(content)) {
|
|
281
|
+
content = content.replace(AGENTS_BLOCK_RE, agentsBlock);
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
content = content.trimEnd() + "\n\n" + agentsBlock + "\n";
|
|
285
|
+
}
|
|
286
|
+
writeFileSync(pathMd, content, "utf-8");
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
writeFileSync(pathMd, agentsBlock + "\n", "utf-8");
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* GEMINI.md — short pointer for **Google Antigravity** / Gemini-first flows (see also AGENTS.md).
|
|
294
|
+
*/
|
|
295
|
+
export function installGeminiMd(projectRoot) {
|
|
296
|
+
const pathMd = join(projectRoot, "GEMINI.md");
|
|
297
|
+
const block = readRequiredTemplate("gemini-codetree.snippet.md").trim();
|
|
298
|
+
if (existsSync(pathMd)) {
|
|
299
|
+
let content = readFileSync(pathMd, "utf-8");
|
|
300
|
+
if (GEMINI_BLOCK_RE.test(content)) {
|
|
301
|
+
content = content.replace(GEMINI_BLOCK_RE, block);
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
content = content.trimEnd() + "\n\n" + block + "\n";
|
|
305
|
+
}
|
|
306
|
+
writeFileSync(pathMd, content, "utf-8");
|
|
307
|
+
}
|
|
308
|
+
else {
|
|
309
|
+
writeFileSync(pathMd, block + "\n", "utf-8");
|
|
310
|
+
}
|
|
311
|
+
}
|
|
207
312
|
/**
|
|
208
313
|
* Add .codetree/ to .gitignore.
|
|
209
314
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/setup/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/setup/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Package root: .../dist/setup -> ../.. */
|
|
2
|
+
export declare const CODE_TREE_PACKAGE_ROOT: string;
|
|
3
|
+
export declare const TEMPLATES_DIR: string;
|
|
4
|
+
/**
|
|
5
|
+
* Read a file from `templates/`. Throws if missing (broken or partial install).
|
|
6
|
+
* Resolves path and ensures the result stays inside `templates/` (directory escape safe).
|
|
7
|
+
*/
|
|
8
|
+
export declare function readRequiredTemplate(filename: string): string;
|
|
9
|
+
//# sourceMappingURL=template-load.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-load.d.ts","sourceRoot":"","sources":["../../src/setup/template-load.ts"],"names":[],"mappings":"AAUA,4CAA4C;AAC5C,eAAO,MAAM,sBAAsB,QAAiC,CAAC;AAErE,eAAO,MAAM,aAAa,QAA4C,CAAC;AAcvE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAa7D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bundled templates live in `templates/` at the package root (next to `dist/`).
|
|
3
|
+
* They are included in the published npm package via package.json "files".
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
6
|
+
import { join, resolve, dirname, relative, isAbsolute } from "node:path";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
8
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
9
|
+
/** Package root: .../dist/setup -> ../.. */
|
|
10
|
+
export const CODE_TREE_PACKAGE_ROOT = resolve(__dirname, "..", "..");
|
|
11
|
+
export const TEMPLATES_DIR = join(CODE_TREE_PACKAGE_ROOT, "templates");
|
|
12
|
+
/**
|
|
13
|
+
* Only flat filenames under `templates/` (no path traversal).
|
|
14
|
+
*/
|
|
15
|
+
function assertSafeTemplateFilename(filename) {
|
|
16
|
+
if (!filename || isAbsolute(filename)) {
|
|
17
|
+
throw new Error("CodeTree: invalid template name (empty or absolute path).");
|
|
18
|
+
}
|
|
19
|
+
if (filename.includes("..") || /[/\\]/.test(filename)) {
|
|
20
|
+
throw new Error(`CodeTree: invalid template name: ${filename}`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Read a file from `templates/`. Throws if missing (broken or partial install).
|
|
25
|
+
* Resolves path and ensures the result stays inside `templates/` (directory escape safe).
|
|
26
|
+
*/
|
|
27
|
+
export function readRequiredTemplate(filename) {
|
|
28
|
+
assertSafeTemplateFilename(filename);
|
|
29
|
+
const p = resolve(TEMPLATES_DIR, filename);
|
|
30
|
+
const rel = relative(TEMPLATES_DIR, p);
|
|
31
|
+
if (rel.startsWith("..") || rel === "") {
|
|
32
|
+
throw new Error(`CodeTree: invalid template path for ${filename}`);
|
|
33
|
+
}
|
|
34
|
+
if (!existsSync(p)) {
|
|
35
|
+
throw new Error(`CodeTree: missing bundled template "${filename}". Expected: ${p}. Reinstall: npm i codetree-claude`);
|
|
36
|
+
}
|
|
37
|
+
return readFileSync(p, "utf-8").replace(/\r\n/g, "\n");
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=template-load.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-load.js","sourceRoot":"","sources":["../../src/setup/template-load.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE1D,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAErE,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;AAEvE;;GAEG;AACH,SAAS,0BAA0B,CAAC,QAAgB;IAClD,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IACvC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,gBAAgB,CAAC,oCAAoC,CACrG,CAAC;IACJ,CAAC;IACD,OAAO,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -40,19 +40,52 @@ export declare class Database {
|
|
|
40
40
|
getFileCount(): number;
|
|
41
41
|
upsertSymbols(filePath: string, symbols: SymbolRecord[]): void;
|
|
42
42
|
searchSymbols(query: string, kind?: string, limit?: number): SymbolRecord[];
|
|
43
|
+
private rowToSymbol;
|
|
44
|
+
private searchSymbolsExact;
|
|
43
45
|
getSymbolsForFile(filePath: string): SymbolRecord[];
|
|
44
46
|
upsertDependencies(sourcePath: string, deps: DependencyRecord[]): void;
|
|
45
47
|
findDependents(targetPath: string): DependencyRecord[];
|
|
46
48
|
cacheContent(path: string, content: Buffer): void;
|
|
47
49
|
getCachedContent(path: string): Buffer | null;
|
|
48
50
|
evictContentCache(maxSizeMB: number): void;
|
|
51
|
+
/**
|
|
52
|
+
* Look up cached content for a file that previously had a given hash.
|
|
53
|
+
* Used for diff-based reads: find old version to compute delta.
|
|
54
|
+
* Checks the previous_content table first, then falls back to content_cache.
|
|
55
|
+
* Returns decompressed content or null if not found.
|
|
56
|
+
*/
|
|
57
|
+
getCachedContentByHash(hash: string): string | null;
|
|
58
|
+
/**
|
|
59
|
+
* Save previous content before overwriting, keyed by hash.
|
|
60
|
+
* Used for diff-based reads.
|
|
61
|
+
*
|
|
62
|
+
* Cleanup strategy:
|
|
63
|
+
* - TTL: 24h (long enough to survive long sessions / compaction).
|
|
64
|
+
* - Hard cap: 200 rows; oldest evicted first.
|
|
65
|
+
* Both run AFTER the insert so we never delete the row we just saved.
|
|
66
|
+
*/
|
|
67
|
+
savePreviousContent(hash: string, compressedContent: Buffer): void;
|
|
68
|
+
/**
|
|
69
|
+
* Get the total size of the content_cache table in bytes (compressed content).
|
|
70
|
+
*/
|
|
71
|
+
getContentCacheSize(): number;
|
|
49
72
|
searchFiles(pattern: string): FileRecord[];
|
|
50
73
|
createSession(sessionId: string, taskDescription?: string): void;
|
|
51
74
|
updateSessionAccess(sessionId: string): void;
|
|
52
75
|
endSession(sessionId: string, summary?: string): void;
|
|
76
|
+
/**
|
|
77
|
+
* Most recent read timestamp by a session for a file (any tool).
|
|
78
|
+
* Returns 0 if there is no prior read.
|
|
79
|
+
*/
|
|
80
|
+
getLastSessionReadAt(sessionId: string, filePath: string): number;
|
|
53
81
|
logSessionRead(sessionId: string, filePath: string, toolName: string, lineStart?: number, lineEnd?: number): void;
|
|
82
|
+
/**
|
|
83
|
+
* Get list of unique files read in a session (from session_reads table, not JSON column).
|
|
84
|
+
*/
|
|
85
|
+
getSessionFilesRead(sessionId: string): string[];
|
|
54
86
|
logSessionModified(sessionId: string, filePath: string): void;
|
|
55
87
|
logSessionSearch(sessionId: string, symbol: string): void;
|
|
88
|
+
logSessionGrep(sessionId: string, pattern: string): void;
|
|
56
89
|
addSessionInsight(sessionId: string, category: string, content: string, filePaths?: string[]): void;
|
|
57
90
|
getSession(sessionId: string): any | null;
|
|
58
91
|
getRecentSessions(limit?: number): any[];
|
|
@@ -106,6 +139,22 @@ export declare class Database {
|
|
|
106
139
|
grepPatterns: string[];
|
|
107
140
|
fileSummaries: Record<string, string>;
|
|
108
141
|
};
|
|
142
|
+
saveTokenPostings(filePath: string, tokens: Set<string>): void;
|
|
143
|
+
deleteTokenPostings(filePath: string): void;
|
|
144
|
+
loadAllTokenPostings(): Map<string, Set<string>>;
|
|
145
|
+
getTokenPostingsFileMap(): Map<string, Set<string>>;
|
|
146
|
+
saveTrigrams(filePath: string, content: string): void;
|
|
147
|
+
deleteTrigrams(filePath: string): void;
|
|
148
|
+
/**
|
|
149
|
+
* Find files that contain ALL trigrams from the query string.
|
|
150
|
+
* This narrows candidates before doing actual content search.
|
|
151
|
+
*/
|
|
152
|
+
searchByTrigrams(query: string, limit?: number): string[];
|
|
153
|
+
getSymbolCount(): number;
|
|
154
|
+
/**
|
|
155
|
+
* Get symbol counts per file in a single query (avoids N+1).
|
|
156
|
+
*/
|
|
157
|
+
getSymbolCountsByFile(): Map<string, number>;
|
|
109
158
|
close(): void;
|
|
110
159
|
}
|
|
111
160
|
//# sourceMappingURL=database.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/storage/database.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/storage/database.ts"],"names":[],"mappings":"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"}
|