@context-forge/mcp 0.8.4 → 0.8.5
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/package.json +2 -2
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -51
- package/dist/index.js.map +0 -1
- package/dist/tools/agentGuideTool.d.ts +0 -3
- package/dist/tools/agentGuideTool.d.ts.map +0 -1
- package/dist/tools/agentGuideTool.js +0 -83
- package/dist/tools/agentGuideTool.js.map +0 -1
- package/dist/tools/agentOnboardTool.d.ts +0 -3
- package/dist/tools/agentOnboardTool.d.ts.map +0 -1
- package/dist/tools/agentOnboardTool.js +0 -85
- package/dist/tools/agentOnboardTool.js.map +0 -1
- package/dist/tools/agentQuickstartTool.d.ts +0 -3
- package/dist/tools/agentQuickstartTool.d.ts.map +0 -1
- package/dist/tools/agentQuickstartTool.js +0 -60
- package/dist/tools/agentQuickstartTool.js.map +0 -1
- package/dist/tools/configTools.d.ts +0 -3
- package/dist/tools/configTools.d.ts.map +0 -1
- package/dist/tools/configTools.js +0 -76
- package/dist/tools/configTools.js.map +0 -1
- package/dist/tools/contextTools.d.ts +0 -28
- package/dist/tools/contextTools.d.ts.map +0 -1
- package/dist/tools/contextTools.js +0 -229
- package/dist/tools/contextTools.js.map +0 -1
- package/dist/tools/guideTools.d.ts +0 -3
- package/dist/tools/guideTools.d.ts.map +0 -1
- package/dist/tools/guideTools.js +0 -130
- package/dist/tools/guideTools.js.map +0 -1
- package/dist/tools/introspectionTools.d.ts +0 -3
- package/dist/tools/introspectionTools.d.ts.map +0 -1
- package/dist/tools/introspectionTools.js +0 -276
- package/dist/tools/introspectionTools.js.map +0 -1
- package/dist/tools/projectTools.d.ts +0 -3
- package/dist/tools/projectTools.d.ts.map +0 -1
- package/dist/tools/projectTools.js +0 -264
- package/dist/tools/projectTools.js.map +0 -1
- package/dist/tools/resolveOperationPath.d.ts +0 -28
- package/dist/tools/resolveOperationPath.d.ts.map +0 -1
- package/dist/tools/resolveOperationPath.js +0 -56
- package/dist/tools/resolveOperationPath.js.map +0 -1
- package/dist/tools/resolveProjectId.d.ts +0 -14
- package/dist/tools/resolveProjectId.d.ts.map +0 -1
- package/dist/tools/resolveProjectId.js +0 -86
- package/dist/tools/resolveProjectId.js.map +0 -1
- package/dist/tools/stateTools.d.ts +0 -3
- package/dist/tools/stateTools.d.ts.map +0 -1
- package/dist/tools/stateTools.js +0 -55
- package/dist/tools/stateTools.js.map +0 -1
- package/dist/tools/versionTool.d.ts +0 -3
- package/dist/tools/versionTool.d.ts.map +0 -1
- package/dist/tools/versionTool.js +0 -11
- package/dist/tools/versionTool.js.map +0 -1
- package/dist/tools/workflowTools.d.ts +0 -3
- package/dist/tools/workflowTools.d.ts.map +0 -1
- package/dist/tools/workflowTools.js +0 -270
- package/dist/tools/workflowTools.js.map +0 -1
- package/dist/tools/worktreeTools.d.ts +0 -3
- package/dist/tools/worktreeTools.d.ts.map +0 -1
- package/dist/tools/worktreeTools.js +0 -234
- package/dist/tools/worktreeTools.js.map +0 -1
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { FileProjectStore, createContextPipeline, SystemPromptParser, resolvePromptFilePath } from '@context-forge/core/node';
|
|
3
|
-
import { resolveProjectId } from './resolveProjectId.js';
|
|
4
|
-
import { resolveProject } from '@context-forge/core';
|
|
5
|
-
// --- Shared helpers ---
|
|
6
|
-
export function errorResult(message) {
|
|
7
|
-
return { content: [{ type: 'text', text: message }], isError: true };
|
|
8
|
-
}
|
|
9
|
-
export function textResult(text) {
|
|
10
|
-
return { content: [{ type: 'text', text }] };
|
|
11
|
-
}
|
|
12
|
-
export function jsonResult(data) {
|
|
13
|
-
return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Shared context generation helper used by context_build and template_preview.
|
|
17
|
-
* Loads a project, applies optional overrides, generates context via core pipeline.
|
|
18
|
-
*/
|
|
19
|
-
export async function generateContext(projectId, overrides, additionalInstructions, worktreeId) {
|
|
20
|
-
const store = new FileProjectStore();
|
|
21
|
-
const project = await store.getById(projectId);
|
|
22
|
-
if (!project) {
|
|
23
|
-
throw new Error(`Project not found: '${projectId}'. Use the project_list tool to see available projects and their IDs.`);
|
|
24
|
-
}
|
|
25
|
-
if (!project.projectPath) {
|
|
26
|
-
throw new Error(`Project '${project.name}' has no configured project path. Set a project path before generating context.`);
|
|
27
|
-
}
|
|
28
|
-
// Create working copy with overrides applied
|
|
29
|
-
const workingCopy = { ...project };
|
|
30
|
-
if (overrides) {
|
|
31
|
-
for (const [key, value] of Object.entries(overrides)) {
|
|
32
|
-
if (value !== undefined) {
|
|
33
|
-
workingCopy[key] = value;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
const { integrator } = createContextPipeline(workingCopy.projectPath);
|
|
38
|
-
let contextString = await integrator.generateContextFromProject(workingCopy, worktreeId);
|
|
39
|
-
if (additionalInstructions) {
|
|
40
|
-
contextString = `${contextString}\n\n${additionalInstructions}`;
|
|
41
|
-
}
|
|
42
|
-
return contextString;
|
|
43
|
-
}
|
|
44
|
-
/** Zod schema for optional project parameter overrides */
|
|
45
|
-
const contextOverridesSchema = {
|
|
46
|
-
projectId: z.string().optional().describe('Project ID. Use project_list to find IDs. Omit to resolve from CWD.'),
|
|
47
|
-
fileSlice: z.string().optional().describe('Override the current slice name'),
|
|
48
|
-
fileTasks: z.string().optional().describe('Override the task file name'),
|
|
49
|
-
instruction: z.string().optional().describe('Override the instruction type (e.g., implementation, design, review)'),
|
|
50
|
-
instructionType: z.string().optional().describe('Override instruction type for profile-aware filtering (ephemeral — does not write to store). Takes precedence over instruction if both are provided.'),
|
|
51
|
-
developmentPhase: z.string().optional().describe('Override the current development phase'),
|
|
52
|
-
workType: z.enum(['start', 'continue']).optional().describe('Override whether starting or continuing work'),
|
|
53
|
-
worktree: z.string().optional().describe('Worktree ID or name. When provided, overlays worktree fields onto the project before applying explicit overrides.'),
|
|
54
|
-
additionalInstructions: z.string().optional().describe('Additional instructions to append to the generated context'),
|
|
55
|
-
};
|
|
56
|
-
/**
|
|
57
|
-
* Resolve the prompt file path for prompt_list/prompt_get.
|
|
58
|
-
* Requires a resolvable project with guides installed.
|
|
59
|
-
*/
|
|
60
|
-
async function resolvePromptFileForTools(projectId) {
|
|
61
|
-
const resolvedId = await resolveProjectId(projectId);
|
|
62
|
-
const store = new FileProjectStore();
|
|
63
|
-
const project = await store.getById(resolvedId);
|
|
64
|
-
if (!project) {
|
|
65
|
-
throw new Error(`Project not found: '${resolvedId}'. Use project_list to see available projects.`);
|
|
66
|
-
}
|
|
67
|
-
if (!project.projectPath) {
|
|
68
|
-
throw new Error(`Project '${project.name}' has no configured path. Set a project path with project_update before using prompt tools.`);
|
|
69
|
-
}
|
|
70
|
-
return resolvePromptFilePath(project.projectPath);
|
|
71
|
-
}
|
|
72
|
-
// --- Tool registration ---
|
|
73
|
-
export function registerContextTools(server) {
|
|
74
|
-
// --- context_build ---
|
|
75
|
-
server.registerTool('context_build', {
|
|
76
|
-
title: 'Build Context',
|
|
77
|
-
description: 'Build a complete context prompt for a Context Forge project. This is the primary tool for generating structured context blocks. Optionally override project parameters (fileSlice, instruction, etc.) without modifying the stored project. Returns the assembled context ready for use.',
|
|
78
|
-
inputSchema: contextOverridesSchema,
|
|
79
|
-
annotations: { readOnlyHint: false, idempotentHint: true, openWorldHint: false },
|
|
80
|
-
}, async ({ projectId, additionalInstructions, instructionType, worktree: worktreeIdOrName, ...overrideFields }) => {
|
|
81
|
-
try {
|
|
82
|
-
const resolvedId = await resolveProjectId(projectId);
|
|
83
|
-
// Resolve worktree overlay fields as overrides for generateContext
|
|
84
|
-
let worktreeOverrides;
|
|
85
|
-
let resolvedWorktreeId;
|
|
86
|
-
if (worktreeIdOrName) {
|
|
87
|
-
const store = new FileProjectStore();
|
|
88
|
-
const resolved = await resolveProject(store, resolvedId, worktreeIdOrName);
|
|
89
|
-
if (!resolved) {
|
|
90
|
-
return errorResult(`Project not found: '${resolvedId}'. Use the project_list tool to see available projects.`);
|
|
91
|
-
}
|
|
92
|
-
resolvedWorktreeId = resolved.resolvedWorktree?.id;
|
|
93
|
-
worktreeOverrides = {
|
|
94
|
-
projectPath: resolved.projectPath,
|
|
95
|
-
fileSlice: resolved.fileSlice,
|
|
96
|
-
fileTasks: resolved.fileTasks,
|
|
97
|
-
instruction: resolved.instruction,
|
|
98
|
-
developmentPhase: resolved.developmentPhase,
|
|
99
|
-
workType: resolved.workType,
|
|
100
|
-
fileArch: resolved.fileArch,
|
|
101
|
-
fileSlicePlan: resolved.fileSlicePlan,
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
// Collect defined explicit overrides (these win over worktree overlay)
|
|
105
|
-
const explicitOverrides = {};
|
|
106
|
-
for (const [key, value] of Object.entries(overrideFields)) {
|
|
107
|
-
if (value !== undefined) {
|
|
108
|
-
explicitOverrides[key] = value;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
if (instructionType !== undefined) {
|
|
112
|
-
explicitOverrides.instruction = instructionType;
|
|
113
|
-
}
|
|
114
|
-
// Merge: worktree overlay first, then explicit overrides win
|
|
115
|
-
const mergedOverrides = {
|
|
116
|
-
...worktreeOverrides,
|
|
117
|
-
...explicitOverrides,
|
|
118
|
-
};
|
|
119
|
-
const contextString = await generateContext(resolvedId, Object.keys(mergedOverrides).length > 0 ? mergedOverrides : undefined, additionalInstructions, resolvedWorktreeId);
|
|
120
|
-
return textResult(contextString);
|
|
121
|
-
}
|
|
122
|
-
catch (error) {
|
|
123
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
124
|
-
return errorResult(message);
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
// --- template_preview ---
|
|
128
|
-
server.registerTool('template_preview', {
|
|
129
|
-
title: 'Preview Context',
|
|
130
|
-
description: 'Preview a context prompt with specified parameters without modifying the stored project or triggering any side effects. Use this to explore what context would be generated with different configurations before committing to a context_build.',
|
|
131
|
-
inputSchema: contextOverridesSchema,
|
|
132
|
-
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
|
|
133
|
-
}, async ({ projectId, additionalInstructions, worktree: wtIdOrName, instructionType, ...overrideFields }) => {
|
|
134
|
-
try {
|
|
135
|
-
const resolvedId = await resolveProjectId(projectId);
|
|
136
|
-
// Worktree overlay (same logic as context_build)
|
|
137
|
-
let worktreeOverrides;
|
|
138
|
-
let resolvedWtId;
|
|
139
|
-
if (wtIdOrName) {
|
|
140
|
-
const store = new FileProjectStore();
|
|
141
|
-
const resolved = await resolveProject(store, resolvedId, wtIdOrName);
|
|
142
|
-
if (resolved?.resolvedWorktree) {
|
|
143
|
-
resolvedWtId = resolved.resolvedWorktree.id;
|
|
144
|
-
worktreeOverrides = {
|
|
145
|
-
projectPath: resolved.projectPath,
|
|
146
|
-
fileSlice: resolved.fileSlice,
|
|
147
|
-
fileTasks: resolved.fileTasks,
|
|
148
|
-
instruction: resolved.instruction,
|
|
149
|
-
developmentPhase: resolved.developmentPhase,
|
|
150
|
-
workType: resolved.workType,
|
|
151
|
-
fileArch: resolved.fileArch,
|
|
152
|
-
fileSlicePlan: resolved.fileSlicePlan,
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
const explicitOverrides = {};
|
|
157
|
-
for (const [key, value] of Object.entries(overrideFields)) {
|
|
158
|
-
if (value !== undefined) {
|
|
159
|
-
explicitOverrides[key] = value;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
if (instructionType !== undefined) {
|
|
163
|
-
explicitOverrides.instruction = instructionType;
|
|
164
|
-
}
|
|
165
|
-
const mergedOverrides = { ...worktreeOverrides, ...explicitOverrides };
|
|
166
|
-
const contextString = await generateContext(resolvedId, Object.keys(mergedOverrides).length > 0 ? mergedOverrides : undefined, additionalInstructions, resolvedWtId);
|
|
167
|
-
return textResult(contextString);
|
|
168
|
-
}
|
|
169
|
-
catch (error) {
|
|
170
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
171
|
-
return errorResult(message);
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
// --- prompt_list ---
|
|
175
|
-
server.registerTool('prompt_list', {
|
|
176
|
-
title: 'List Prompts',
|
|
177
|
-
description: 'List available prompt templates from the project-local ai-project-guide. Requires guides to be installed (cf guide install). Returns template names and metadata. Use prompt_get to retrieve the full content of a specific template.',
|
|
178
|
-
inputSchema: {
|
|
179
|
-
projectId: z.string().optional().describe('Project ID. Use project_list to find IDs. Omit to resolve from CWD.'),
|
|
180
|
-
},
|
|
181
|
-
annotations: { readOnlyHint: true, openWorldHint: false },
|
|
182
|
-
}, async ({ projectId }) => {
|
|
183
|
-
try {
|
|
184
|
-
const promptFilePath = await resolvePromptFileForTools(projectId);
|
|
185
|
-
const parser = new SystemPromptParser(promptFilePath);
|
|
186
|
-
const prompts = await parser.getAllPrompts();
|
|
187
|
-
const templates = prompts.map((p) => ({
|
|
188
|
-
name: p.name,
|
|
189
|
-
key: p.key,
|
|
190
|
-
parameterCount: p.parameters.length,
|
|
191
|
-
}));
|
|
192
|
-
return jsonResult({ templates, count: templates.length, promptFile: promptFilePath });
|
|
193
|
-
}
|
|
194
|
-
catch (error) {
|
|
195
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
196
|
-
return errorResult(message);
|
|
197
|
-
}
|
|
198
|
-
});
|
|
199
|
-
// --- prompt_get ---
|
|
200
|
-
server.registerTool('prompt_get', {
|
|
201
|
-
title: 'Get Prompt',
|
|
202
|
-
description: 'Get the full content of a specific prompt template from the project-local ai-project-guide. Requires guides to be installed (cf guide install). Returns the raw template text.',
|
|
203
|
-
inputSchema: {
|
|
204
|
-
projectId: z.string().optional().describe('Project ID. Use project_list to find IDs. Omit to resolve from CWD.'),
|
|
205
|
-
templateName: z.string().describe('Template name or key to match. Use prompt_list to see available templates.'),
|
|
206
|
-
},
|
|
207
|
-
annotations: { readOnlyHint: true, openWorldHint: false },
|
|
208
|
-
}, async ({ projectId, templateName }) => {
|
|
209
|
-
try {
|
|
210
|
-
const promptFilePath = await resolvePromptFileForTools(projectId);
|
|
211
|
-
const parser = new SystemPromptParser(promptFilePath);
|
|
212
|
-
const prompts = await parser.getAllPrompts();
|
|
213
|
-
// Match by name (case-insensitive) or key (exact)
|
|
214
|
-
const templateNameLower = templateName.toLowerCase();
|
|
215
|
-
const match = prompts.find((p) => p.name.toLowerCase() === templateNameLower || p.key === templateName);
|
|
216
|
-
if (!match) {
|
|
217
|
-
return errorResult(`Template not found: '${templateName}'. Use the prompt_list tool to see available templates.`);
|
|
218
|
-
}
|
|
219
|
-
// Return metadata header followed by template content
|
|
220
|
-
const header = `# ${match.name}\nKey: ${match.key}\nParameters: ${match.parameters.join(', ') || 'none'}\n\n---\n\n`;
|
|
221
|
-
return textResult(header + match.content);
|
|
222
|
-
}
|
|
223
|
-
catch (error) {
|
|
224
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
225
|
-
return errorResult(message);
|
|
226
|
-
}
|
|
227
|
-
});
|
|
228
|
-
}
|
|
229
|
-
//# sourceMappingURL=contextTools.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contextTools.js","sourceRoot":"","sources":["../../src/tools/contextTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"guideTools.d.ts","sourceRoot":"","sources":["../../src/tools/guideTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgCpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgI1D"}
|
package/dist/tools/guideTools.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { FileProjectStore, GuideManager, ConfigManager } from '@context-forge/core/node';
|
|
3
|
-
import { GuideDetector } from '@context-forge/core/node';
|
|
4
|
-
import { resolveProjectId } from './resolveProjectId.js';
|
|
5
|
-
import { errorResult, jsonResult } from './contextTools.js';
|
|
6
|
-
/** Resolve projectId to projectPath and project data, throwing actionable errors */
|
|
7
|
-
async function resolveProjectWithData(projectId) {
|
|
8
|
-
const resolvedId = await resolveProjectId(projectId);
|
|
9
|
-
const store = new FileProjectStore();
|
|
10
|
-
const project = await store.getById(resolvedId);
|
|
11
|
-
if (!project) {
|
|
12
|
-
throw new Error(`Project not found: '${resolvedId}'. Use project_list to see available projects.`);
|
|
13
|
-
}
|
|
14
|
-
if (!project.projectPath) {
|
|
15
|
-
throw new Error(`Project '${project.name}' has no configured project path. Set a project path first.`);
|
|
16
|
-
}
|
|
17
|
-
return { projectPath: project.projectPath, project };
|
|
18
|
-
}
|
|
19
|
-
export function registerGuideTools(server) {
|
|
20
|
-
// --- guide_status ---
|
|
21
|
-
server.registerTool('guide_status', {
|
|
22
|
-
title: 'Guide Status',
|
|
23
|
-
description: 'Check the installation status of the AI project guide for a project. ' +
|
|
24
|
-
'Returns whether the guide is installed, what method was used (submodule/clone/manual), ' +
|
|
25
|
-
'current version, latest available version, and whether an update is available.',
|
|
26
|
-
inputSchema: {
|
|
27
|
-
projectId: z
|
|
28
|
-
.string()
|
|
29
|
-
.optional()
|
|
30
|
-
.describe('Project ID or name. Omit to resolve from CWD.'),
|
|
31
|
-
},
|
|
32
|
-
annotations: { readOnlyHint: true, openWorldHint: false },
|
|
33
|
-
}, async ({ projectId }) => {
|
|
34
|
-
try {
|
|
35
|
-
const { projectPath, project } = await resolveProjectWithData(projectId);
|
|
36
|
-
const cm = new ConfigManager(projectPath);
|
|
37
|
-
const manager = new GuideManager(projectPath, cm);
|
|
38
|
-
const info = await manager.status();
|
|
39
|
-
// Report per-worktree sync status when worktrees exist and method is submodule
|
|
40
|
-
let worktreeSync;
|
|
41
|
-
if (info.method === 'submodule' && project.worktrees?.length) {
|
|
42
|
-
const detector = new GuideDetector();
|
|
43
|
-
worktreeSync = [];
|
|
44
|
-
for (const wt of project.worktrees) {
|
|
45
|
-
if (wt.worktreePath) {
|
|
46
|
-
const syncStatus = await detector.checkSyncStatus(wt.worktreePath);
|
|
47
|
-
worktreeSync.push({ name: wt.name, path: wt.worktreePath, status: syncStatus });
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return jsonResult(worktreeSync ? { ...info, worktreeSync } : info);
|
|
52
|
-
}
|
|
53
|
-
catch (error) {
|
|
54
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
55
|
-
return errorResult(message);
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
// --- guide_install ---
|
|
59
|
-
server.registerTool('guide_install', {
|
|
60
|
-
title: 'Install Guide',
|
|
61
|
-
description: 'Install the AI project guide into a project directory. ' +
|
|
62
|
-
'Supports three strategies: "submodule" (default, requires git repo), ' +
|
|
63
|
-
'"clone" (standalone git clone), or "manual" (tarball download, no git needed). ' +
|
|
64
|
-
'Error if the guide is already installed — use guide_update instead.',
|
|
65
|
-
inputSchema: {
|
|
66
|
-
projectId: z
|
|
67
|
-
.string()
|
|
68
|
-
.optional()
|
|
69
|
-
.describe('Project ID or name. Omit to resolve from CWD.'),
|
|
70
|
-
strategy: z
|
|
71
|
-
.enum(['submodule', 'clone', 'manual'])
|
|
72
|
-
.optional()
|
|
73
|
-
.describe('Installation strategy. Overrides guide.git_strategy config for this call.'),
|
|
74
|
-
source: z
|
|
75
|
-
.string()
|
|
76
|
-
.optional()
|
|
77
|
-
.describe('Source repository URL. Overrides guide.source config for this call.'),
|
|
78
|
-
},
|
|
79
|
-
annotations: { readOnlyHint: false, openWorldHint: true },
|
|
80
|
-
}, async ({ projectId, strategy, source }) => {
|
|
81
|
-
try {
|
|
82
|
-
const { projectPath } = await resolveProjectWithData(projectId);
|
|
83
|
-
const cm = new ConfigManager(projectPath);
|
|
84
|
-
const manager = new GuideManager(projectPath, cm);
|
|
85
|
-
const result = await manager.install(strategy, source);
|
|
86
|
-
return jsonResult(result);
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
90
|
-
return errorResult(message);
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
// --- guide_update ---
|
|
94
|
-
server.registerTool('guide_update', {
|
|
95
|
-
title: 'Update Guide',
|
|
96
|
-
description: 'Update an existing AI project guide installation to the latest version. ' +
|
|
97
|
-
'Uses the same strategy that was used for installation. ' +
|
|
98
|
-
'Error if the guide is not installed — use guide_install first.',
|
|
99
|
-
inputSchema: {
|
|
100
|
-
projectId: z
|
|
101
|
-
.string()
|
|
102
|
-
.optional()
|
|
103
|
-
.describe('Project ID or name. Omit to resolve from CWD.'),
|
|
104
|
-
},
|
|
105
|
-
annotations: { readOnlyHint: false, openWorldHint: true },
|
|
106
|
-
}, async ({ projectId }) => {
|
|
107
|
-
try {
|
|
108
|
-
const { projectPath, project } = await resolveProjectWithData(projectId);
|
|
109
|
-
const cm = new ConfigManager(projectPath);
|
|
110
|
-
const manager = new GuideManager(projectPath, cm);
|
|
111
|
-
const result = await manager.update();
|
|
112
|
-
// Auto-sync all worktrees with registered paths
|
|
113
|
-
let syncResults;
|
|
114
|
-
if (project.worktrees?.length) {
|
|
115
|
-
const worktreePaths = project.worktrees
|
|
116
|
-
.map((wt) => wt.worktreePath)
|
|
117
|
-
.filter((p) => !!p);
|
|
118
|
-
if (worktreePaths.length > 0) {
|
|
119
|
-
syncResults = await manager.syncWorktrees(worktreePaths);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
return jsonResult(syncResults ? { ...result, syncResults } : result);
|
|
123
|
-
}
|
|
124
|
-
catch (error) {
|
|
125
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
126
|
-
return errorResult(message);
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
//# sourceMappingURL=guideTools.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"guideTools.js","sourceRoot":"","sources":["../../src/tools/guideTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"introspectionTools.d.ts","sourceRoot":"","sources":["../../src/tools/introspectionTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyFpE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2PlE"}
|