vexp-cli 1.2.15 → 1.2.16
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 -8
- package/dist/agent-config.js +199 -224
- package/dist/agent-config.js.map +1 -1
- package/dist/binary.js +1 -0
- package/dist/binary.js.map +1 -1
- package/dist/cli.js +131 -47
- package/dist/cli.js.map +1 -1
- package/dist/license.d.ts +23 -0
- package/dist/license.js +87 -0
- package/dist/license.js.map +1 -0
- package/package.json +17 -2
package/dist/agent-config.js
CHANGED
|
@@ -16,6 +16,7 @@ const VEXP_MARKER_RE = /<!-- vexp(?:\s+v[\d.]+)? -->/;
|
|
|
16
16
|
const VEXP_MARKER_END = "<!-- /vexp -->";
|
|
17
17
|
// All vexp MCP tools (all read-only — safe to pre-approve).
|
|
18
18
|
const VEXP_TOOLS = [
|
|
19
|
+
"run_pipeline",
|
|
19
20
|
"get_context_capsule",
|
|
20
21
|
"get_impact_graph",
|
|
21
22
|
"search_logic_flow",
|
|
@@ -149,8 +150,8 @@ export function configureAgents(workspaceRoot, binaryPath, version, agentFilter)
|
|
|
149
150
|
customCommands: [
|
|
150
151
|
{
|
|
151
152
|
name: "vexp-context",
|
|
152
|
-
description: "Get vexp context
|
|
153
|
-
prompt: "{{{ input }}}\n\nFirst, call
|
|
153
|
+
description: "Get vexp context for current task",
|
|
154
|
+
prompt: "{{{ input }}}\n\nFirst, call run_pipeline with the above task description.",
|
|
154
155
|
},
|
|
155
156
|
],
|
|
156
157
|
contextProviders: [
|
|
@@ -229,12 +230,19 @@ function appendOrCreate(filePath, content, version) {
|
|
|
229
230
|
fs.appendFileSync(filePath, "\n\n" + content);
|
|
230
231
|
return "appended";
|
|
231
232
|
}
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
const
|
|
233
|
+
// Find start of the LINE containing the marker (not the marker itself).
|
|
234
|
+
// The marker may be mid-line (e.g. `## heading <!-- vexp v1.2.14 -->`),
|
|
235
|
+
// so we walk backwards to the previous newline to avoid duplicating the heading.
|
|
236
|
+
const markerIdx = existing.indexOf(markerMatch[0]);
|
|
237
|
+
let startIdx = markerIdx;
|
|
238
|
+
while (startIdx > 0 && existing[startIdx - 1] !== '\n') {
|
|
239
|
+
startIdx--;
|
|
240
|
+
}
|
|
236
241
|
const endIdx = existing.indexOf(VEXP_MARKER_END);
|
|
237
242
|
if (endIdx !== -1) {
|
|
243
|
+
const existingSection = existing.substring(startIdx, endIdx + VEXP_MARKER_END.length);
|
|
244
|
+
if (existingSection === content)
|
|
245
|
+
return "skipped"; // truly identical → no write
|
|
238
246
|
const before = existing.substring(0, startIdx);
|
|
239
247
|
const after = existing.substring(endIdx + VEXP_MARKER_END.length);
|
|
240
248
|
fs.writeFileSync(filePath, before + content + after, "utf-8");
|
|
@@ -255,27 +263,31 @@ function mergeJsonConfig(filePath, mergePayload, version) {
|
|
|
255
263
|
// Malformed JSON: overwrite
|
|
256
264
|
}
|
|
257
265
|
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
return "skipped";
|
|
266
|
+
// Build the merged result first, then compare to avoid unnecessary writes.
|
|
267
|
+
const merged = { ...existing };
|
|
261
268
|
for (const [key, value] of Object.entries(mergePayload)) {
|
|
262
269
|
if (typeof value === "object" && value !== null && !Array.isArray(value)) {
|
|
263
|
-
|
|
264
|
-
...(
|
|
270
|
+
merged[key] = {
|
|
271
|
+
...(merged[key] ?? {}),
|
|
265
272
|
...value,
|
|
266
273
|
};
|
|
267
274
|
}
|
|
268
|
-
else if (Array.isArray(value) && Array.isArray(
|
|
269
|
-
|
|
275
|
+
else if (Array.isArray(value) && Array.isArray(merged[key])) {
|
|
276
|
+
merged[key] = [...merged[key], ...value];
|
|
270
277
|
}
|
|
271
278
|
else {
|
|
272
|
-
|
|
279
|
+
merged[key] = value;
|
|
273
280
|
}
|
|
274
281
|
}
|
|
275
|
-
delete
|
|
276
|
-
|
|
282
|
+
delete merged.__vexp;
|
|
283
|
+
merged.__vexp_version = version;
|
|
284
|
+
// Compare serialized output — skip if truly identical
|
|
285
|
+
const mergedStr = JSON.stringify(merged, null, 2);
|
|
286
|
+
const existingStr = JSON.stringify(existing, null, 2);
|
|
287
|
+
if (mergedStr === existingStr)
|
|
288
|
+
return "skipped";
|
|
277
289
|
fs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
278
|
-
fs.writeFileSync(filePath,
|
|
290
|
+
fs.writeFileSync(filePath, mergedStr, "utf-8");
|
|
279
291
|
return "merged";
|
|
280
292
|
}
|
|
281
293
|
// ---------------------------------------------------------------------------
|
|
@@ -433,95 +445,90 @@ function generateAgentConfig(template, vars) {
|
|
|
433
445
|
function claudeCodeTemplate(vars) {
|
|
434
446
|
return `## vexp — Context-Aware AI Coding <!-- vexp v${vars.version} -->
|
|
435
447
|
|
|
436
|
-
### MANDATORY: use vexp
|
|
437
|
-
For every task —
|
|
438
|
-
**call
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
- \`
|
|
447
|
-
|
|
448
|
+
### MANDATORY: use vexp pipeline — do NOT grep, glob, or Read files
|
|
449
|
+
For every task — bug fixes, features, refactors, debugging:
|
|
450
|
+
**call \`run_pipeline\` FIRST**. It executes context search + impact analysis +
|
|
451
|
+
memory recall in a single call, returning compressed results.
|
|
452
|
+
|
|
453
|
+
Do NOT use grep, glob, Bash, Read, or cat to search/explore the codebase.
|
|
454
|
+
vexp returns pre-indexed, graph-ranked context that is more relevant and
|
|
455
|
+
uses fewer tokens than manual file reading.
|
|
456
|
+
|
|
457
|
+
### Primary Tool
|
|
458
|
+
- \`run_pipeline\` — **USE THIS FOR EVERYTHING**. Single call that runs
|
|
459
|
+
capsule + impact + memory server-side. Returns compressed results.
|
|
460
|
+
Auto-detects intent (debug/modify/refactor/explore) from your task.
|
|
461
|
+
Includes full file content for pivots (no need to Read files).
|
|
462
|
+
Examples:
|
|
463
|
+
- \`run_pipeline({ "task": "fix JWT validation bug" })\` — auto-detect
|
|
464
|
+
- \`run_pipeline({ "task": "refactor db layer", "preset": "refactor" })\` — explicit
|
|
465
|
+
- \`run_pipeline({ "task": "add auth", "observation": "using JWT" })\` — save insight in same call
|
|
466
|
+
|
|
467
|
+
### Other MCP tools (use only when run_pipeline is insufficient)
|
|
468
|
+
- \`get_context_capsule\` — lightweight alternative for simple questions only
|
|
469
|
+
- \`get_impact_graph\` — standalone deep impact analysis of a specific symbol
|
|
470
|
+
- \`search_logic_flow\` — trace execution paths between two specific symbols
|
|
471
|
+
- \`get_skeleton\` — token-efficient file structure for a specific file
|
|
448
472
|
- \`index_status\` — indexing status and health check
|
|
449
|
-
- \`workspace_setup\` — bootstrap vexp config for a new project
|
|
450
|
-
- \`submit_lsp_edges\` — submit type-resolved call edges (used by VS Code extension)
|
|
451
473
|
- \`get_session_context\` — recall observations from current/previous sessions
|
|
452
|
-
- \`search_memory\` — cross-session search for past decisions
|
|
453
|
-
- \`save_observation\` — persist
|
|
454
|
-
|
|
455
|
-
### Smart Features (automatic — no action needed)
|
|
456
|
-
- **Intent Detection**: vexp auto-detects query intent from your prompt keywords.
|
|
457
|
-
"fix bug" → Debug mode (follows error paths), "refactor" → blast-radius mode,
|
|
458
|
-
"add feature" → Modify mode, default → Read mode. Each mode optimizes result ranking.
|
|
459
|
-
- **Hybrid Search**: combines keyword matching (FTS) + semantic similarity (TF-IDF) + graph
|
|
460
|
-
centrality for better results. Finds \`validateCredentials\` when searching "authentication".
|
|
461
|
-
- **Session Memory**: every tool call is auto-captured as an observation. Relevant memories
|
|
462
|
-
from previous sessions are auto-surfaced inside \`get_context_capsule\` results. Observations
|
|
463
|
-
linked to code symbols are auto-flagged stale when that code changes.
|
|
464
|
-
- **Feedback Loop**: repeated queries with similar terms auto-expand the result budget.
|
|
465
|
-
- **LSP Bridge**: VS Code captures type-resolved call edges for high-confidence call graphs.
|
|
466
|
-
- **Change Coupling**: files modified together in git history are included as related context.
|
|
467
|
-
- **Context Lineage**: frequently modified code gets a boost in relevance ranking.
|
|
474
|
+
- \`search_memory\` — cross-session search for past decisions
|
|
475
|
+
- \`save_observation\` — persist insights (prefer using run_pipeline's observation param instead)
|
|
468
476
|
|
|
469
477
|
### Workflow
|
|
470
|
-
1. \`
|
|
471
|
-
2.
|
|
472
|
-
3.
|
|
473
|
-
4.
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
478
|
+
1. \`run_pipeline("your task")\` — ALWAYS FIRST. Returns pivots + impact + memories in 1 call
|
|
479
|
+
2. Make targeted changes based on the context returned
|
|
480
|
+
3. \`run_pipeline\` again ONLY if you need more context during implementation
|
|
481
|
+
4. Do NOT chain multiple vexp calls — one \`run_pipeline\` replaces capsule + impact + memory + observation
|
|
482
|
+
|
|
483
|
+
### Smart Features (automatic — no action needed)
|
|
484
|
+
- **Intent Detection**: auto-detects from your task keywords. "fix bug" → Debug, "refactor" → blast-radius, "add" → Modify
|
|
485
|
+
- **Hybrid Search**: keyword + semantic + graph centrality ranking
|
|
486
|
+
- **Session Memory**: auto-captures observations; memories auto-surfaced in results
|
|
487
|
+
- **LSP Bridge**: VS Code captures type-resolved call edges
|
|
488
|
+
- **Change Coupling**: co-changed files included as related context
|
|
477
489
|
|
|
478
490
|
### Advanced Parameters
|
|
479
|
-
- \`
|
|
480
|
-
- \`
|
|
481
|
-
- \`
|
|
482
|
-
- \`
|
|
491
|
+
- \`preset: "debug"\` — forces debug mode (capsule+tests+impact+memory)
|
|
492
|
+
- \`preset: "refactor"\` — deep impact analysis (depth 5)
|
|
493
|
+
- \`max_tokens: 12000\` — increase total budget for complex tasks
|
|
494
|
+
- \`include_tests: true\` — include test files in results
|
|
495
|
+
- \`include_file_content: false\` — omit full file content (lighter response)
|
|
483
496
|
|
|
484
497
|
### Multi-Repo Workspaces
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
- Use \`repos: ["alias"]\` to restrict queries to specific repos
|
|
488
|
-
- Use \`cross_repo: true\` on \`get_impact_graph\` and \`search_logic_flow\` to trace across repo boundaries
|
|
489
|
-
- Use \`index_status\` to discover available repo aliases
|
|
490
|
-
- \`get_skeleton\` accepts \`repo: "alias"\` to target a specific repo's files
|
|
498
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope.
|
|
499
|
+
Use \`index_status\` to discover available repo aliases.
|
|
491
500
|
<!-- /vexp -->`;
|
|
492
501
|
}
|
|
493
502
|
function cursorTemplate(vars) {
|
|
494
503
|
return `## vexp rules for Cursor <!-- vexp v${vars.version} -->
|
|
495
504
|
|
|
496
|
-
**MANDATORY: use
|
|
497
|
-
|
|
498
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
505
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
506
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
499
507
|
|
|
500
508
|
### Workflow
|
|
501
|
-
1. \`
|
|
502
|
-
2.
|
|
503
|
-
3.
|
|
504
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
509
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
510
|
+
2. Make targeted changes based on the context returned
|
|
511
|
+
3. \`run_pipeline\` again only if you need more context
|
|
505
512
|
|
|
506
513
|
### Available MCP tools
|
|
507
|
-
- \`
|
|
508
|
-
-
|
|
514
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
515
|
+
Auto-detects intent. Includes file content. Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
516
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
517
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
509
518
|
- \`search_logic_flow\` — execution paths between functions
|
|
510
|
-
- \`get_skeleton\` —
|
|
519
|
+
- \`get_skeleton\` — compact file structure
|
|
511
520
|
- \`index_status\` — indexing status
|
|
512
|
-
- \`
|
|
513
|
-
- \`
|
|
514
|
-
- \`
|
|
515
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
521
|
+
- \`get_session_context\` — recall observations from sessions
|
|
522
|
+
- \`search_memory\` — cross-session search
|
|
523
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
516
524
|
|
|
517
525
|
### Tips
|
|
518
|
-
- vexp uses hybrid search (
|
|
519
|
-
- Add \`include_tests: true\` when debugging
|
|
520
|
-
-
|
|
521
|
-
- Session memory auto-captures observations; use \`save_observation\` for important decisions
|
|
526
|
+
- Natural language queries work well — vexp uses hybrid search (keyword + semantic + graph)
|
|
527
|
+
- Add \`include_tests: true\` when debugging
|
|
528
|
+
- Use \`preset: "refactor"\` for deep impact analysis
|
|
522
529
|
|
|
523
530
|
### Multi-Repo
|
|
524
|
-
\`
|
|
531
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
525
532
|
|
|
526
533
|
> **Tip:** To avoid confirmation prompts on every tool call, enable Yolo mode:
|
|
527
534
|
> Cursor Settings → Features → Agent → Enable Yolo Mode.
|
|
@@ -530,40 +537,31 @@ Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
|
530
537
|
function windsurfTemplate(vars) {
|
|
531
538
|
return `## vexp for Windsurf <!-- vexp v${vars.version} -->
|
|
532
539
|
|
|
533
|
-
**MANDATORY: use
|
|
534
|
-
|
|
535
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
540
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
541
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
536
542
|
|
|
537
543
|
### Workflow
|
|
538
|
-
1. \`
|
|
539
|
-
2.
|
|
540
|
-
3.
|
|
541
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
544
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
545
|
+
2. Make targeted changes based on the context returned
|
|
546
|
+
3. \`run_pipeline\` again only if you need more context
|
|
542
547
|
|
|
543
548
|
### Available MCP tools
|
|
544
|
-
- \`
|
|
545
|
-
-
|
|
549
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
550
|
+
Auto-detects intent. Includes file content. Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
551
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
552
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
546
553
|
- \`search_logic_flow\` — execution paths between functions
|
|
547
|
-
- \`get_skeleton\` —
|
|
554
|
+
- \`get_skeleton\` — compact file structure
|
|
548
555
|
- \`index_status\` — indexing status
|
|
549
|
-
- \`
|
|
550
|
-
- \`
|
|
551
|
-
- \`
|
|
552
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
556
|
+
- \`get_session_context\` — recall observations from sessions
|
|
557
|
+
- \`search_memory\` — cross-session search
|
|
558
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
553
559
|
|
|
554
|
-
### Smart Features
|
|
555
|
-
|
|
556
|
-
- **Hybrid Search**: keyword + semantic + graph centrality ranking
|
|
557
|
-
- **Session Memory**: auto-captures observations; use \`save_observation\` for important decisions
|
|
558
|
-
- **Feedback Loop**: repeated queries auto-expand result budget
|
|
560
|
+
### Smart Features
|
|
561
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
559
562
|
|
|
560
|
-
### Multi-Repo
|
|
561
|
-
|
|
562
|
-
- \`get_context_capsule\` queries **all repos** automatically — results show repo alias per file
|
|
563
|
-
- Use \`repos: ["alias"]\` to restrict queries to specific repos
|
|
564
|
-
- Use \`cross_repo: true\` on \`get_impact_graph\` and \`search_logic_flow\` to trace across repo boundaries
|
|
565
|
-
- Use \`index_status\` to discover available repo aliases
|
|
566
|
-
- \`get_skeleton\` accepts \`repo: "alias"\` to target a specific repo's files
|
|
563
|
+
### Multi-Repo
|
|
564
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
567
565
|
<!-- /vexp -->`;
|
|
568
566
|
}
|
|
569
567
|
function continueTemplate(vars) {
|
|
@@ -571,8 +569,8 @@ function continueTemplate(vars) {
|
|
|
571
569
|
customCommands: [
|
|
572
570
|
{
|
|
573
571
|
name: "vexp-context",
|
|
574
|
-
description: "
|
|
575
|
-
prompt: "{{{ input }}}\n\nFirst, call
|
|
572
|
+
description: "Run vexp pipeline for current task",
|
|
573
|
+
prompt: "{{{ input }}}\n\nFirst, call run_pipeline with the above task description.",
|
|
576
574
|
},
|
|
577
575
|
],
|
|
578
576
|
mcpServers: [
|
|
@@ -588,204 +586,181 @@ function continueTemplate(vars) {
|
|
|
588
586
|
function augmentTemplate(vars) {
|
|
589
587
|
return `## vexp for Augment <!-- vexp v${vars.version} -->
|
|
590
588
|
|
|
591
|
-
**MANDATORY: use
|
|
592
|
-
|
|
593
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
589
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
590
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
594
591
|
|
|
595
592
|
When working on this codebase:
|
|
596
|
-
1.
|
|
597
|
-
2.
|
|
598
|
-
3.
|
|
593
|
+
1. \`run_pipeline\` with task description — ALWAYS FIRST
|
|
594
|
+
2. Make targeted changes based on the context returned
|
|
595
|
+
3. \`run_pipeline\` again only if you need more context
|
|
599
596
|
|
|
600
597
|
### Available MCP tools
|
|
601
|
-
- \`
|
|
602
|
-
|
|
598
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
599
|
+
Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
600
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
601
|
+
- \`get_impact_graph\` — standalone impact analysis
|
|
603
602
|
- \`search_logic_flow\` — execution paths between functions
|
|
604
603
|
- \`get_skeleton\` — token-efficient file structure
|
|
605
604
|
- \`index_status\` — indexing status
|
|
606
|
-
- \`
|
|
607
|
-
- \`
|
|
608
|
-
- \`
|
|
609
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
605
|
+
- \`get_session_context\` — recall observations from sessions
|
|
606
|
+
- \`search_memory\` — cross-session search
|
|
607
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
610
608
|
|
|
611
609
|
### Smart Features
|
|
612
|
-
|
|
613
|
-
(keyword + semantic + graph centrality). Session memory auto-captures observations.
|
|
614
|
-
Repeated queries auto-expand result budget.
|
|
610
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
615
611
|
|
|
616
|
-
### Multi-Repo
|
|
617
|
-
|
|
618
|
-
- \`get_context_capsule\` queries **all repos** automatically — results show repo alias per file
|
|
619
|
-
- Use \`repos: ["alias"]\` to restrict queries to specific repos
|
|
620
|
-
- Use \`cross_repo: true\` on \`get_impact_graph\` and \`search_logic_flow\` to trace across repo boundaries
|
|
621
|
-
- Use \`index_status\` to discover available repo aliases
|
|
622
|
-
- \`get_skeleton\` accepts \`repo: "alias"\` to target a specific repo's files
|
|
612
|
+
### Multi-Repo
|
|
613
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
623
614
|
<!-- /vexp -->`;
|
|
624
615
|
}
|
|
625
616
|
function copilotTemplate(vars) {
|
|
626
617
|
return `## vexp context tools <!-- vexp v${vars.version} -->
|
|
627
618
|
|
|
628
|
-
**MANDATORY: use
|
|
629
|
-
|
|
630
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
619
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
620
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
631
621
|
|
|
632
622
|
### Workflow
|
|
633
|
-
1. \`
|
|
634
|
-
2.
|
|
635
|
-
3.
|
|
636
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
623
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
624
|
+
2. Make targeted changes based on the context returned
|
|
625
|
+
3. \`run_pipeline\` again only if you need more context
|
|
637
626
|
|
|
638
627
|
### Available MCP tools
|
|
639
|
-
- \`
|
|
640
|
-
-
|
|
641
|
-
- \`
|
|
642
|
-
- \`
|
|
628
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
629
|
+
Auto-detects intent. Includes file content. Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
630
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
631
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
632
|
+
- \`search_logic_flow\` — execution paths between functions
|
|
633
|
+
- \`get_skeleton\` — compact file structure
|
|
643
634
|
- \`index_status\` — indexing status
|
|
644
|
-
- \`
|
|
645
|
-
- \`
|
|
646
|
-
- \`
|
|
647
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
635
|
+
- \`get_session_context\` — recall observations from sessions
|
|
636
|
+
- \`search_memory\` — cross-session search
|
|
637
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
648
638
|
|
|
649
639
|
### Smart Features
|
|
650
|
-
|
|
651
|
-
(keyword + semantic + graph centrality). Session memory auto-captures observations.
|
|
652
|
-
Repeated queries auto-expand result budget.
|
|
640
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
653
641
|
|
|
654
642
|
### Multi-Repo
|
|
655
|
-
\`
|
|
643
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
656
644
|
<!-- /vexp -->`;
|
|
657
645
|
}
|
|
658
646
|
function zedTemplate(vars) {
|
|
659
647
|
return `## vexp for Zed <!-- vexp v${vars.version} -->
|
|
660
648
|
|
|
661
|
-
**MANDATORY: use
|
|
662
|
-
|
|
663
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
649
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
650
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
664
651
|
|
|
665
652
|
### Workflow
|
|
666
|
-
1. \`
|
|
667
|
-
2.
|
|
668
|
-
3.
|
|
669
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
653
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
654
|
+
2. Make targeted changes based on the context returned
|
|
655
|
+
3. \`run_pipeline\` again only if you need more context
|
|
670
656
|
|
|
671
657
|
### Available MCP tools
|
|
672
|
-
- \`
|
|
673
|
-
|
|
658
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
659
|
+
Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
660
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
661
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
674
662
|
- \`search_logic_flow\` — execution paths between functions
|
|
675
|
-
- \`get_skeleton\` — compact
|
|
663
|
+
- \`get_skeleton\` — compact file structure
|
|
676
664
|
- \`index_status\` — indexing status
|
|
677
|
-
- \`
|
|
678
|
-
- \`
|
|
679
|
-
- \`
|
|
680
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
665
|
+
- \`get_session_context\` — recall observations from sessions
|
|
666
|
+
- \`search_memory\` — cross-session search
|
|
667
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
681
668
|
|
|
682
669
|
### Smart Features
|
|
683
|
-
|
|
684
|
-
(keyword + semantic + graph centrality). Session memory auto-captures observations.
|
|
685
|
-
Repeated queries auto-expand result budget.
|
|
670
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
686
671
|
|
|
687
672
|
### Multi-Repo
|
|
688
|
-
\`
|
|
673
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
689
674
|
<!-- /vexp -->`;
|
|
690
675
|
}
|
|
691
676
|
function agentsMdTemplate(vars) {
|
|
692
677
|
return `## vexp <!-- vexp v${vars.version} -->
|
|
693
678
|
|
|
694
|
-
**MANDATORY: use
|
|
695
|
-
|
|
696
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
697
|
-
|
|
698
|
-
Before any code change or question, call \`get_context_capsule\` with a description of your task.
|
|
699
|
-
This provides the most relevant source files and their skeletons with minimal token usage.
|
|
679
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or Read files.**
|
|
680
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
700
681
|
|
|
701
682
|
### Workflow
|
|
702
|
-
1. \`
|
|
703
|
-
2.
|
|
704
|
-
3.
|
|
705
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
683
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
684
|
+
2. Make targeted changes based on the context returned
|
|
685
|
+
3. \`run_pipeline\` again only if you need more context
|
|
706
686
|
|
|
707
687
|
### Available MCP tools
|
|
708
|
-
- \`
|
|
709
|
-
-
|
|
688
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
689
|
+
Auto-detects intent. Includes file content. Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
690
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
691
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
710
692
|
- \`search_logic_flow\` — execution paths between functions
|
|
711
|
-
- \`get_skeleton\` —
|
|
693
|
+
- \`get_skeleton\` — compact file structure
|
|
712
694
|
- \`index_status\` — indexing status
|
|
713
|
-
- \`
|
|
714
|
-
- \`
|
|
715
|
-
- \`
|
|
716
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
695
|
+
- \`get_session_context\` — recall observations from sessions
|
|
696
|
+
- \`search_memory\` — cross-session search
|
|
697
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
717
698
|
|
|
718
699
|
### Smart Features
|
|
719
|
-
|
|
720
|
-
(keyword + semantic + graph centrality). Session memory auto-captures observations.
|
|
721
|
-
Repeated queries auto-expand result budget. Use \`include_tests: true\` when debugging.
|
|
700
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
722
701
|
|
|
723
702
|
### Multi-Repo
|
|
724
|
-
\`
|
|
703
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
725
704
|
<!-- /vexp -->`;
|
|
726
705
|
}
|
|
727
706
|
function kiroTemplate(vars) {
|
|
728
707
|
return `# vexp steering <!-- vexp v${vars.version} -->
|
|
729
708
|
|
|
730
|
-
**MANDATORY: use
|
|
731
|
-
|
|
732
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
733
|
-
|
|
734
|
-
Always start tasks by calling \`get_context_capsule\` with a description of what you need.
|
|
709
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or read files manually.**
|
|
710
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
735
711
|
|
|
736
712
|
## Workflow
|
|
737
|
-
1. \`
|
|
738
|
-
2.
|
|
739
|
-
3.
|
|
740
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
713
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
714
|
+
2. Make targeted changes based on the context returned
|
|
715
|
+
3. \`run_pipeline\` again only if you need more context
|
|
741
716
|
|
|
742
717
|
## Available vexp tools
|
|
743
|
-
- \`
|
|
744
|
-
|
|
718
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
719
|
+
Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
720
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
721
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
745
722
|
- \`search_logic_flow\` — trace execution paths
|
|
746
723
|
- \`get_skeleton\` — compact file structure
|
|
747
724
|
- \`index_status\` — indexing status
|
|
748
|
-
- \`
|
|
749
|
-
- \`
|
|
750
|
-
- \`
|
|
751
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
725
|
+
- \`get_session_context\` — recall observations from sessions
|
|
726
|
+
- \`search_memory\` — cross-session search
|
|
727
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
752
728
|
|
|
753
729
|
## Smart Features
|
|
754
|
-
Intent detection
|
|
730
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
755
731
|
|
|
756
732
|
## Multi-Repo
|
|
757
|
-
\`
|
|
733
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
758
734
|
<!-- /vexp -->`;
|
|
759
735
|
}
|
|
760
736
|
function genericTemplate(vars) {
|
|
761
737
|
return `## vexp <!-- vexp v${vars.version} -->
|
|
762
738
|
|
|
763
|
-
**MANDATORY: use
|
|
764
|
-
|
|
765
|
-
Use vexp MCP tools instead — they return pre-indexed, relevant context.
|
|
739
|
+
**MANDATORY: use \`run_pipeline\` — do NOT grep, glob, or Read files.**
|
|
740
|
+
vexp returns pre-indexed, graph-ranked context in a single call.
|
|
766
741
|
|
|
767
742
|
### Workflow
|
|
768
|
-
1. \`
|
|
769
|
-
2.
|
|
770
|
-
3.
|
|
771
|
-
4. \`get_impact_graph\` before refactoring exported symbols
|
|
743
|
+
1. \`run_pipeline\` with your task description — ALWAYS FIRST (replaces all other tools)
|
|
744
|
+
2. Make targeted changes based on the context returned
|
|
745
|
+
3. \`run_pipeline\` again only if you need more context
|
|
772
746
|
|
|
773
747
|
### Available MCP tools
|
|
774
|
-
- \`
|
|
775
|
-
|
|
748
|
+
- \`run_pipeline\` — **PRIMARY TOOL**. Runs capsule + impact + memory in 1 call.
|
|
749
|
+
Example: \`run_pipeline({ "task": "fix auth bug" })\`
|
|
750
|
+
- \`get_context_capsule\` — lightweight, for simple questions only
|
|
751
|
+
- \`get_impact_graph\` — impact analysis of a specific symbol
|
|
776
752
|
- \`search_logic_flow\` — execution paths between functions
|
|
777
|
-
- \`get_skeleton\` —
|
|
753
|
+
- \`get_skeleton\` — compact file structure
|
|
778
754
|
- \`index_status\` — indexing status
|
|
779
|
-
- \`
|
|
780
|
-
- \`
|
|
781
|
-
- \`
|
|
782
|
-
- \`save_observation\` — persist important insights with optional code symbol linking
|
|
755
|
+
- \`get_session_context\` — recall observations from sessions
|
|
756
|
+
- \`search_memory\` — cross-session search
|
|
757
|
+
- \`save_observation\` — persist insights (prefer run_pipeline's observation param)
|
|
783
758
|
|
|
784
759
|
### Smart Features
|
|
785
|
-
Intent detection
|
|
760
|
+
Intent auto-detection, hybrid ranking, session memory, auto-expanding budget.
|
|
786
761
|
|
|
787
762
|
### Multi-Repo
|
|
788
|
-
\`
|
|
763
|
+
\`run_pipeline\` auto-queries all indexed repos. Use \`repos: ["alias"]\` to scope. Run \`index_status\` to see aliases.
|
|
789
764
|
<!-- /vexp -->`;
|
|
790
765
|
}
|
|
791
766
|
//# sourceMappingURL=agent-config.js.map
|