token-pilot 0.4.0 → 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 +35 -4
- package/README.md +54 -25
- 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 +10 -4
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +63 -142
- 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, {
|
|
@@ -80,10 +79,10 @@ export async function createServer(projectRoot) {
|
|
|
80
79
|
const server = new Server({ name: 'token-pilot', version: pkgVersion }, { capabilities: { tools: {} } });
|
|
81
80
|
server.setRequestHandler(ListToolsRequestSchema, () => ({
|
|
82
81
|
tools: [
|
|
83
|
-
// ---
|
|
82
|
+
// --- Core reading tools (USE INSTEAD OF Read/cat) ---
|
|
84
83
|
{
|
|
85
84
|
name: 'smart_read',
|
|
86
|
-
description: '
|
|
85
|
+
description: 'ALWAYS use instead of Read/cat for code files. Returns AST structural overview: classes, functions, methods with signatures and line ranges. Saves 80-99% tokens. After reading structure, use read_symbol() to load specific functions.',
|
|
87
86
|
inputSchema: {
|
|
88
87
|
type: 'object',
|
|
89
88
|
properties: {
|
|
@@ -97,7 +96,7 @@ export async function createServer(projectRoot) {
|
|
|
97
96
|
},
|
|
98
97
|
{
|
|
99
98
|
name: 'read_symbol',
|
|
100
|
-
description: 'Read
|
|
99
|
+
description: 'Read source code of a specific function/method/class. Use after smart_read() — loads only the code you need instead of the entire file. Supports Class.method syntax.',
|
|
101
100
|
inputSchema: {
|
|
102
101
|
type: 'object',
|
|
103
102
|
properties: {
|
|
@@ -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
|
},
|
|
@@ -124,7 +124,7 @@ export async function createServer(projectRoot) {
|
|
|
124
124
|
},
|
|
125
125
|
{
|
|
126
126
|
name: 'read_diff',
|
|
127
|
-
description: '
|
|
127
|
+
description: 'After editing a file, use this instead of re-reading it. Shows only changed hunks since last smart_read. Saves 80-95% tokens on re-reads.',
|
|
128
128
|
inputSchema: {
|
|
129
129
|
type: 'object',
|
|
130
130
|
properties: {
|
|
@@ -135,38 +135,38 @@ export async function createServer(projectRoot) {
|
|
|
135
135
|
},
|
|
136
136
|
},
|
|
137
137
|
{
|
|
138
|
-
name: '
|
|
139
|
-
description: '
|
|
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
140
|
inputSchema: {
|
|
141
141
|
type: 'object',
|
|
142
142
|
properties: {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
},
|
|
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)' },
|
|
148
147
|
},
|
|
149
|
-
required: ['
|
|
148
|
+
required: ['path'],
|
|
150
149
|
},
|
|
151
150
|
},
|
|
152
|
-
// --- Phase 2: Search & navigation ---
|
|
153
151
|
{
|
|
154
|
-
name: '
|
|
155
|
-
description: '
|
|
152
|
+
name: 'smart_read_many',
|
|
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.',
|
|
156
154
|
inputSchema: {
|
|
157
155
|
type: 'object',
|
|
158
156
|
properties: {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
157
|
+
paths: {
|
|
158
|
+
type: 'array',
|
|
159
|
+
items: { type: 'string' },
|
|
160
|
+
description: 'Array of file paths',
|
|
161
|
+
},
|
|
163
162
|
},
|
|
164
|
-
required: ['
|
|
163
|
+
required: ['paths'],
|
|
165
164
|
},
|
|
166
165
|
},
|
|
166
|
+
// --- Search & navigation ---
|
|
167
167
|
{
|
|
168
168
|
name: 'find_usages',
|
|
169
|
-
description: 'Find all usages of a symbol across the project. Groups
|
|
169
|
+
description: 'Find all usages of a symbol across the project. Use instead of Grep for symbol references. Groups by: definitions, imports, usages.',
|
|
170
170
|
inputSchema: {
|
|
171
171
|
type: 'object',
|
|
172
172
|
properties: {
|
|
@@ -177,78 +177,44 @@ export async function createServer(projectRoot) {
|
|
|
177
177
|
},
|
|
178
178
|
{
|
|
179
179
|
name: 'project_overview',
|
|
180
|
-
description: '
|
|
181
|
-
inputSchema: {
|
|
182
|
-
type: 'object',
|
|
183
|
-
properties: {},
|
|
184
|
-
},
|
|
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.',
|
|
180
|
+
description: 'Start here. Shows project type, architecture, framework detection, directory structure with symbol counts. Use before exploring unfamiliar codebases.',
|
|
214
181
|
inputSchema: {
|
|
215
182
|
type: 'object',
|
|
216
183
|
properties: {},
|
|
217
184
|
},
|
|
218
185
|
},
|
|
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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"}
|