token-pilot 0.4.1 → 0.5.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.
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +21 -0
- package/README.md +17 -16
- package/dist/core/validation.d.ts +20 -15
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +52 -45
- package/dist/core/validation.js.map +1 -1
- package/dist/formatters/structure.js +86 -13
- package/dist/formatters/structure.js.map +1 -1
- package/dist/handlers/outline.d.ts +11 -0
- package/dist/handlers/outline.d.ts.map +1 -0
- package/dist/handlers/outline.js +137 -0
- package/dist/handlers/outline.js.map +1 -0
- package/dist/handlers/read-for-edit.d.ts +17 -0
- package/dist/handlers/read-for-edit.d.ts.map +1 -0
- package/dist/handlers/read-for-edit.js +91 -0
- package/dist/handlers/read-for-edit.js.map +1 -0
- package/dist/handlers/read-symbol.d.ts +1 -0
- package/dist/handlers/read-symbol.d.ts.map +1 -1
- package/dist/handlers/read-symbol.js +53 -24
- package/dist/handlers/read-symbol.js.map +1 -1
- package/dist/handlers/related-files.d.ts +11 -0
- package/dist/handlers/related-files.d.ts.map +1 -0
- package/dist/handlers/related-files.js +114 -0
- package/dist/handlers/related-files.js.map +1 -0
- package/dist/index.js +4 -4
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +55 -134
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
package/dist/server.js
CHANGED
|
@@ -5,7 +5,6 @@ import { FileCache } from './core/file-cache.js';
|
|
|
5
5
|
import { ContextRegistry } from './core/context-registry.js';
|
|
6
6
|
import { SymbolResolver } from './core/symbol-resolver.js';
|
|
7
7
|
import { SessionAnalytics } from './core/session-analytics.js';
|
|
8
|
-
import { formatDuration } from './core/format-duration.js';
|
|
9
8
|
import { loadConfig } from './config/loader.js';
|
|
10
9
|
import { readFileSync } from 'node:fs';
|
|
11
10
|
import { GitWatcher } from './git/watcher.js';
|
|
@@ -14,17 +13,17 @@ import { handleSmartRead } from './handlers/smart-read.js';
|
|
|
14
13
|
import { handleReadSymbol } from './handlers/read-symbol.js';
|
|
15
14
|
import { handleReadRange } from './handlers/read-range.js';
|
|
16
15
|
import { handleReadDiff } from './handlers/read-diff.js';
|
|
17
|
-
import { handleSearchCode } from './handlers/search-code.js';
|
|
18
16
|
import { handleFindUsages } from './handlers/find-usages.js';
|
|
19
17
|
import { handleSmartReadMany } from './handlers/smart-read-many.js';
|
|
20
18
|
import { handleProjectOverview } from './handlers/project-overview.js';
|
|
21
19
|
import { handleNonCodeRead, isNonCodeStructured } from './handlers/non-code.js';
|
|
22
|
-
import { handleExportAstIndex } from './handlers/export-ast-index.js';
|
|
23
|
-
import { handleChangedSymbols } from './handlers/changed-symbols.js';
|
|
24
20
|
import { handleFindUnused } from './handlers/find-unused.js';
|
|
21
|
+
import { handleReadForEdit } from './handlers/read-for-edit.js';
|
|
22
|
+
import { handleRelatedFiles } from './handlers/related-files.js';
|
|
23
|
+
import { handleOutline } from './handlers/outline.js';
|
|
25
24
|
import { detectContextMode } from './integration/context-mode-detector.js';
|
|
26
25
|
import { estimateTokens } from './core/token-estimator.js';
|
|
27
|
-
import { validateSmartReadArgs, validateReadSymbolArgs, validateReadRangeArgs, validateReadDiffArgs,
|
|
26
|
+
import { validateSmartReadArgs, validateReadSymbolArgs, validateReadRangeArgs, validateReadDiffArgs, validateFindUsagesArgs, validateSmartReadManyArgs, validateReadForEditArgs, validateRelatedFilesArgs, validateOutlineArgs, validateFindUnusedArgs, } from './core/validation.js';
|
|
28
27
|
export async function createServer(projectRoot) {
|
|
29
28
|
const config = await loadConfig(projectRoot);
|
|
30
29
|
const astIndex = new AstIndexClient(projectRoot, config.astIndex.timeout, {
|
|
@@ -105,6 +104,7 @@ export async function createServer(projectRoot) {
|
|
|
105
104
|
symbol: { type: 'string', description: 'Symbol name, e.g. "UserService.updateUser"' },
|
|
106
105
|
context_before: { type: 'number', description: 'Lines of context before (default: 2)' },
|
|
107
106
|
context_after: { type: 'number', description: 'Lines of context after (default: 0)' },
|
|
107
|
+
show: { type: 'string', enum: ['full', 'head', 'tail', 'outline'], description: 'Display mode: full (all lines), head (first 50), tail (last 30), outline (head + methods + tail). Default: auto (full ≤300 lines, outline >300)' },
|
|
108
108
|
},
|
|
109
109
|
required: ['path', 'symbol'],
|
|
110
110
|
},
|
|
@@ -134,6 +134,20 @@ export async function createServer(projectRoot) {
|
|
|
134
134
|
required: ['path'],
|
|
135
135
|
},
|
|
136
136
|
},
|
|
137
|
+
{
|
|
138
|
+
name: 'read_for_edit',
|
|
139
|
+
description: 'Get minimal code context for editing. Returns RAW source (no line numbers) around a symbol or line — copy directly as old_string for Edit tool. 97% fewer tokens than reading full file before editing.',
|
|
140
|
+
inputSchema: {
|
|
141
|
+
type: 'object',
|
|
142
|
+
properties: {
|
|
143
|
+
path: { type: 'string', description: 'File path' },
|
|
144
|
+
symbol: { type: 'string', description: 'Symbol name to edit (e.g. "UserService.updateUser")' },
|
|
145
|
+
line: { type: 'number', description: 'Line number to edit (alternative to symbol)' },
|
|
146
|
+
context: { type: 'number', description: 'Lines of context around target (default: 5)' },
|
|
147
|
+
},
|
|
148
|
+
required: ['path'],
|
|
149
|
+
},
|
|
150
|
+
},
|
|
137
151
|
{
|
|
138
152
|
name: 'smart_read_many',
|
|
139
153
|
description: 'Read multiple files at once. Returns AST structural overview for each file in one call. ALWAYS use instead of multiple Read calls. Max 20 files.',
|
|
@@ -150,20 +164,6 @@ export async function createServer(projectRoot) {
|
|
|
150
164
|
},
|
|
151
165
|
},
|
|
152
166
|
// --- Search & navigation ---
|
|
153
|
-
{
|
|
154
|
-
name: 'search_code',
|
|
155
|
-
description: 'AST-indexed code search. Finds functions, classes, variables by name. Use for symbol search; use Grep for exact text patterns.',
|
|
156
|
-
inputSchema: {
|
|
157
|
-
type: 'object',
|
|
158
|
-
properties: {
|
|
159
|
-
query: { type: 'string', description: 'Search query (symbol name, pattern)' },
|
|
160
|
-
in_file: { type: 'string', description: 'Filter results to a specific file path' },
|
|
161
|
-
max_results: { type: 'number', description: 'Max results (default: 20)' },
|
|
162
|
-
fuzzy: { type: 'boolean', description: 'Enable fuzzy matching (default: false)' },
|
|
163
|
-
},
|
|
164
|
-
required: ['query'],
|
|
165
|
-
},
|
|
166
|
-
},
|
|
167
167
|
{
|
|
168
168
|
name: 'find_usages',
|
|
169
169
|
description: 'Find all usages of a symbol across the project. Use instead of Grep for symbol references. Groups by: definitions, imports, usages.',
|
|
@@ -183,72 +183,38 @@ export async function createServer(projectRoot) {
|
|
|
183
183
|
properties: {},
|
|
184
184
|
},
|
|
185
185
|
},
|
|
186
|
-
// --- Integration ---
|
|
187
|
-
{
|
|
188
|
-
name: 'export_ast_index',
|
|
189
|
-
description: 'Export AST structural data for cross-tool indexing. Outputs markdown or JSON that can be passed to context-mode\'s index() for BM25-searchable code structure. Use all_indexed=true to export all files from ast-index (not just cached ones).',
|
|
190
|
-
inputSchema: {
|
|
191
|
-
type: 'object',
|
|
192
|
-
properties: {
|
|
193
|
-
paths: {
|
|
194
|
-
type: 'array',
|
|
195
|
-
items: { type: 'string' },
|
|
196
|
-
description: 'Specific file paths to export (default: all cached files, or all indexed files when all_indexed=true)',
|
|
197
|
-
},
|
|
198
|
-
format: {
|
|
199
|
-
type: 'string',
|
|
200
|
-
enum: ['markdown', 'json'],
|
|
201
|
-
description: 'Output format: "markdown" (default, best for BM25) or "json"',
|
|
202
|
-
},
|
|
203
|
-
all_indexed: {
|
|
204
|
-
type: 'boolean',
|
|
205
|
-
description: 'When true, exports all files from ast-index (not just cached). For large projects (>50 files), returns a file list with hint to filter by paths.',
|
|
206
|
-
},
|
|
207
|
-
},
|
|
208
|
-
},
|
|
209
|
-
},
|
|
210
|
-
// --- Context management & analytics ---
|
|
211
|
-
{
|
|
212
|
-
name: 'session_analytics',
|
|
213
|
-
description: 'Show token savings report for this session: total tokens saved, per-tool breakdown, top files by savings.',
|
|
214
|
-
inputSchema: {
|
|
215
|
-
type: 'object',
|
|
216
|
-
properties: {},
|
|
217
|
-
},
|
|
218
|
-
},
|
|
219
186
|
{
|
|
220
|
-
name: '
|
|
221
|
-
description: 'Show what files
|
|
187
|
+
name: 'related_files',
|
|
188
|
+
description: 'Show import graph for a file: what it imports, what imports it, and its test files. Saves 3-5 Read calls when exploring module relationships.',
|
|
222
189
|
inputSchema: {
|
|
223
190
|
type: 'object',
|
|
224
191
|
properties: {
|
|
225
|
-
path: { type: 'string', description: '
|
|
192
|
+
path: { type: 'string', description: 'File path to analyze' },
|
|
226
193
|
},
|
|
194
|
+
required: ['path'],
|
|
227
195
|
},
|
|
228
196
|
},
|
|
229
197
|
{
|
|
230
|
-
name: '
|
|
231
|
-
description: '
|
|
198
|
+
name: 'outline',
|
|
199
|
+
description: 'Compact overview of all code files in a directory. One call instead of 5-6 smart_read calls. Shows classes, functions, methods, HTTP routes per file.',
|
|
232
200
|
inputSchema: {
|
|
233
201
|
type: 'object',
|
|
234
202
|
properties: {
|
|
235
|
-
path: { type: 'string', description: '
|
|
236
|
-
symbol: { type: 'string', description: 'Specific symbol to forget' },
|
|
237
|
-
all: { type: 'boolean', description: 'Forget everything' },
|
|
203
|
+
path: { type: 'string', description: 'Directory path' },
|
|
238
204
|
},
|
|
205
|
+
required: ['path'],
|
|
239
206
|
},
|
|
240
207
|
},
|
|
241
|
-
// ---
|
|
208
|
+
// --- Analytics ---
|
|
242
209
|
{
|
|
243
|
-
name: '
|
|
244
|
-
description: 'Show
|
|
210
|
+
name: 'session_analytics',
|
|
211
|
+
description: 'Show token savings report for this session: total tokens saved, per-tool breakdown, top files by savings.',
|
|
245
212
|
inputSchema: {
|
|
246
213
|
type: 'object',
|
|
247
|
-
properties: {
|
|
248
|
-
base: { type: 'string', description: 'Base branch to compare against (default: auto-detected, usually origin/main)' },
|
|
249
|
-
},
|
|
214
|
+
properties: {},
|
|
250
215
|
},
|
|
251
216
|
},
|
|
217
|
+
// --- Analysis ---
|
|
252
218
|
{
|
|
253
219
|
name: 'find_unused',
|
|
254
220
|
description: 'Find potentially unused symbols in the project. Detects dead code — functions, classes, and variables with no references.',
|
|
@@ -284,12 +250,7 @@ export async function createServer(projectRoot) {
|
|
|
284
250
|
}
|
|
285
251
|
}
|
|
286
252
|
const result = await handleSmartRead(validArgs, projectRoot, astIndex, fileCache, contextRegistry, config);
|
|
287
|
-
|
|
288
|
-
// Cross-index hint when context-mode is active
|
|
289
|
-
if (contextModeStatus.detected && config.contextMode.adviseDelegation) {
|
|
290
|
-
text += '\nCROSS-INDEX: Use export_ast_index to make this structure searchable via context-mode.';
|
|
291
|
-
result.content[0] = { type: 'text', text };
|
|
292
|
-
}
|
|
253
|
+
const text = result.content[0]?.text ?? '';
|
|
293
254
|
analytics.record({ tool: 'smart_read', path: validArgs.path, tokensReturned: estimateTokens(text), tokensWouldBe: estimateTokens(text) * 5, timestamp: Date.now() });
|
|
294
255
|
return result;
|
|
295
256
|
}
|
|
@@ -317,6 +278,14 @@ export async function createServer(projectRoot) {
|
|
|
317
278
|
analytics.record({ tool: 'read_diff', path: diffArgs.path, tokensReturned: diffTokens, tokensWouldBe: diffTokens * 5, timestamp: Date.now() });
|
|
318
279
|
return diffResult;
|
|
319
280
|
}
|
|
281
|
+
case 'read_for_edit': {
|
|
282
|
+
const editArgs = validateReadForEditArgs(args);
|
|
283
|
+
const editResult = await handleReadForEdit(editArgs, projectRoot, symbolResolver, fileCache, contextRegistry, astIndex);
|
|
284
|
+
const editText = editResult.content[0]?.text ?? '';
|
|
285
|
+
const editTokens = estimateTokens(editText);
|
|
286
|
+
analytics.record({ tool: 'read_for_edit', path: editArgs.path, tokensReturned: editTokens, tokensWouldBe: editTokens * 30, timestamp: Date.now() });
|
|
287
|
+
return editResult;
|
|
288
|
+
}
|
|
320
289
|
case 'smart_read_many': {
|
|
321
290
|
const manyArgs = validateSmartReadManyArgs(args);
|
|
322
291
|
const manyResult = await handleSmartReadMany(manyArgs, projectRoot, astIndex, fileCache, contextRegistry, config);
|
|
@@ -325,17 +294,6 @@ export async function createServer(projectRoot) {
|
|
|
325
294
|
analytics.record({ tool: 'smart_read_many', path: manyArgs.paths.join(', '), tokensReturned: manyTokens, tokensWouldBe: manyTokens * 5, timestamp: Date.now() });
|
|
326
295
|
return manyResult;
|
|
327
296
|
}
|
|
328
|
-
case 'search_code': {
|
|
329
|
-
const searchArgs = validateSearchCodeArgs(args);
|
|
330
|
-
const searchResult = await handleSearchCode(searchArgs, astIndex);
|
|
331
|
-
let searchText = searchResult.content[0]?.text ?? '';
|
|
332
|
-
if (contextModeStatus.detected && config.contextMode.adviseDelegation) {
|
|
333
|
-
searchText += '\nCROSS-INDEX: Pass these results to context-mode index(source: "token-pilot-search") for persistent BM25 search.';
|
|
334
|
-
searchResult.content[0] = { type: 'text', text: searchText };
|
|
335
|
-
}
|
|
336
|
-
analytics.record({ tool: 'search_code', path: searchArgs.query, tokensReturned: estimateTokens(searchText), tokensWouldBe: estimateTokens(searchText), timestamp: Date.now() });
|
|
337
|
-
return searchResult;
|
|
338
|
-
}
|
|
339
297
|
case 'find_usages': {
|
|
340
298
|
const usagesArgs = validateFindUsagesArgs(args);
|
|
341
299
|
const usagesResult = await handleFindUsages(usagesArgs, astIndex);
|
|
@@ -349,21 +307,22 @@ export async function createServer(projectRoot) {
|
|
|
349
307
|
overviewResult.content[0] = { type: 'text', text: `TOKEN PILOT v${pkgVersion}\n\n${overviewText}` };
|
|
350
308
|
return overviewResult;
|
|
351
309
|
}
|
|
352
|
-
case '
|
|
353
|
-
|
|
310
|
+
case 'related_files': {
|
|
311
|
+
const relArgs = validateRelatedFilesArgs(args);
|
|
312
|
+
const relResult = await handleRelatedFiles(relArgs, projectRoot, astIndex);
|
|
313
|
+
const relText = relResult.content[0]?.text ?? '';
|
|
314
|
+
analytics.record({ tool: 'related_files', path: relArgs.path, tokensReturned: estimateTokens(relText), tokensWouldBe: estimateTokens(relText) * 5, timestamp: Date.now() });
|
|
315
|
+
return relResult;
|
|
316
|
+
}
|
|
317
|
+
case 'outline': {
|
|
318
|
+
const outlineArgs = validateOutlineArgs(args);
|
|
319
|
+
const outlineResult = await handleOutline(outlineArgs, projectRoot, astIndex);
|
|
320
|
+
const outlineText = outlineResult.content[0]?.text ?? '';
|
|
321
|
+
analytics.record({ tool: 'outline', path: outlineArgs.path, tokensReturned: estimateTokens(outlineText), tokensWouldBe: estimateTokens(outlineText) * 5, timestamp: Date.now() });
|
|
322
|
+
return outlineResult;
|
|
323
|
+
}
|
|
354
324
|
case 'session_analytics':
|
|
355
325
|
return { content: [{ type: 'text', text: `TOKEN PILOT v${pkgVersion}\n\n${analytics.report()}` }] };
|
|
356
|
-
case 'context_status':
|
|
357
|
-
return handleContextStatus(contextRegistry, args);
|
|
358
|
-
case 'forget':
|
|
359
|
-
return handleForget(contextRegistry, fileCache, args);
|
|
360
|
-
case 'changed_symbols': {
|
|
361
|
-
const changedArgs = validateChangedSymbolsArgs(args);
|
|
362
|
-
const changedResult = await handleChangedSymbols(changedArgs, astIndex);
|
|
363
|
-
const changedText = changedResult.content[0]?.text ?? '';
|
|
364
|
-
analytics.record({ tool: 'changed_symbols', path: changedArgs.base ?? 'auto', tokensReturned: estimateTokens(changedText), tokensWouldBe: estimateTokens(changedText), timestamp: Date.now() });
|
|
365
|
-
return changedResult;
|
|
366
|
-
}
|
|
367
326
|
case 'find_unused': {
|
|
368
327
|
const unusedArgs = validateFindUnusedArgs(args);
|
|
369
328
|
const unusedResult = await handleFindUnused(unusedArgs, astIndex);
|
|
@@ -388,42 +347,4 @@ export async function createServer(projectRoot) {
|
|
|
388
347
|
});
|
|
389
348
|
return server;
|
|
390
349
|
}
|
|
391
|
-
function handleContextStatus(registry, args) {
|
|
392
|
-
const summary = registry.summary();
|
|
393
|
-
const lines = [
|
|
394
|
-
`CONTEXT STATUS (session: ${formatDuration(summary.sessionDuration)})`,
|
|
395
|
-
'',
|
|
396
|
-
`Files tracked: ${summary.files}`,
|
|
397
|
-
`Total tokens in context: ~${summary.totalTokens}`,
|
|
398
|
-
'',
|
|
399
|
-
];
|
|
400
|
-
for (const entry of summary.entries) {
|
|
401
|
-
if (args?.path && !entry.path.includes(args.path))
|
|
402
|
-
continue;
|
|
403
|
-
lines.push(` ${entry.path}:`);
|
|
404
|
-
for (const region of entry.loaded) {
|
|
405
|
-
const label = region.symbolName ?? region.type;
|
|
406
|
-
const elapsed = formatDuration(Date.now() - entry.loadedAt);
|
|
407
|
-
lines.push(` - ${label} (${region.tokens} tokens) — loaded ${elapsed} ago`);
|
|
408
|
-
}
|
|
409
|
-
lines.push('');
|
|
410
|
-
}
|
|
411
|
-
return { content: [{ type: 'text', text: lines.join('\n') }] };
|
|
412
|
-
}
|
|
413
|
-
function handleForget(registry, fileCache, args) {
|
|
414
|
-
if (args?.all) {
|
|
415
|
-
registry.forgetAll();
|
|
416
|
-
fileCache.invalidate();
|
|
417
|
-
return { content: [{ type: 'text', text: 'Forgot all tracked content and cleared file cache.' }] };
|
|
418
|
-
}
|
|
419
|
-
if (args?.path) {
|
|
420
|
-
registry.forget(args.path, args.symbol);
|
|
421
|
-
if (!args.symbol) {
|
|
422
|
-
fileCache.invalidate(args.path);
|
|
423
|
-
}
|
|
424
|
-
const what = args.symbol ? `${args.symbol} from ${args.path}` : args.path;
|
|
425
|
-
return { content: [{ type: 'text', text: `Forgot: ${what}` }] };
|
|
426
|
-
}
|
|
427
|
-
return { content: [{ type: 'text', text: 'Specify path, symbol, or all=true.' }] };
|
|
428
|
-
}
|
|
429
350
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|