@agent-plan/mcp 0.2.19-next.14 → 0.2.19-next.15
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/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -12
- package/package.json +3 -3
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AA4iCA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAItD"}
|
package/dist/index.js
CHANGED
|
@@ -124,7 +124,7 @@ server.registerTool("planner-export", {
|
|
|
124
124
|
const markdown = exportService.exportToMarkdown(plan, full);
|
|
125
125
|
const fs = await import("node:fs/promises");
|
|
126
126
|
await fs.writeFile(join(st.root, "EXPORT.md"), markdown, "utf-8");
|
|
127
|
-
return text(`Project export generated. Summary results:\n\n${markdown.slice(0, 1000)}${markdown.length > 1000 ? "... (full report in .planner/EXPORT.md)" : ""}
|
|
127
|
+
return text(`Project export generated. Summary results:\n\n${markdown.slice(0, 1000)}${markdown.length > 1000 ? "... (full report in .planner/EXPORT.md)" : ""}`);
|
|
128
128
|
});
|
|
129
129
|
server.registerTool("planner-authorize-bypass", {
|
|
130
130
|
description: "Authorize a temporary guard bypass (default 15 minutes) so edit/write tools can proceed even when no task is in-progress. Use ONLY after the user explicitly authorizes proceeding without a task. Harness-agnostic: stored in resume.json so all adapters (Pi, Claude Code, Codex, ...) respect it.",
|
|
@@ -165,19 +165,43 @@ server.registerTool("planner-init", {
|
|
|
165
165
|
return writeAndSummarize(st, `.planner/ initialized for "${project.name}"`);
|
|
166
166
|
});
|
|
167
167
|
server.registerTool("planner-show", {
|
|
168
|
-
description: "Show
|
|
168
|
+
description: "Show a compact planner overview: project metadata, counts, and a one-line summary of each feature (F00x · shortId — name (status; N phases, M tasks)). Does NOT include full descriptions, phases, or tasks — use planner-feature-list / planner-phase-list / planner-task-list for discovery and planner-*-show for full detail of a single entity. Keeps the result small to avoid token overflow.",
|
|
169
169
|
}, async () => {
|
|
170
170
|
const st = await requireStore();
|
|
171
|
-
const
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
`
|
|
180
|
-
|
|
171
|
+
const features = (await st.loadFeatures()).features;
|
|
172
|
+
const phases = await st.loadAllPhases();
|
|
173
|
+
const totalTasks = phases.reduce((total, phase) => total + phase.tasks.length, 0);
|
|
174
|
+
const project = await st.loadProject();
|
|
175
|
+
const manifest = await st.loadManifest();
|
|
176
|
+
const featureLines = features.map((feature) => {
|
|
177
|
+
const featurePhases = phases.filter((phase) => phase.featureId === feature.id);
|
|
178
|
+
const taskCount = featurePhases.reduce((total, phase) => total + phase.tasks.length, 0);
|
|
179
|
+
return `- ${formatFeatureRef(feature.number)}${feature.shortId ? ` · ${feature.shortId}` : ""} — ${feature.name} (${feature.status}; ${featurePhases.length} phases, ${taskCount} tasks)`;
|
|
180
|
+
});
|
|
181
|
+
const summary = [
|
|
182
|
+
`📋 ${project.name}`,
|
|
183
|
+
`Description: ${project.description || "(not set)"}`,
|
|
184
|
+
`Goal: ${project.goal || "(not set)"}`,
|
|
185
|
+
`Features: ${features.length} | Phases: ${phases.length} | Tasks: ${totalTasks}`,
|
|
186
|
+
`Updated: ${manifest.updatedAt || "(unknown)"}`,
|
|
187
|
+
"",
|
|
188
|
+
"Features:",
|
|
189
|
+
featureLines.join("\n") || "(none)",
|
|
190
|
+
].join("\n");
|
|
191
|
+
// Compact structured overview (no full plan: avoids 1M+ char token overflow).
|
|
192
|
+
const overview = {
|
|
193
|
+
project: { name: project.name, description: project.description || null, goal: project.goal || null, updatedAt: manifest.updatedAt || null },
|
|
194
|
+
counts: { features: features.length, phases: phases.length, tasks: totalTasks },
|
|
195
|
+
features: features.map((feature) => ({
|
|
196
|
+
ref: formatFeatureRef(feature.number),
|
|
197
|
+
shortId: feature.shortId || null,
|
|
198
|
+
name: feature.name,
|
|
199
|
+
status: feature.status,
|
|
200
|
+
phases: phases.filter((p) => p.featureId === feature.id).length,
|
|
201
|
+
tasks: phases.filter((p) => p.featureId === feature.id).reduce((t, p) => t + p.tasks.length, 0),
|
|
202
|
+
})),
|
|
203
|
+
};
|
|
204
|
+
return text(summary, { overview });
|
|
181
205
|
});
|
|
182
206
|
server.registerTool("planner-repair", {
|
|
183
207
|
description: "Repair dangling feature→phase references, rebuild phase containment from each task's own phaseId (heals the migrateToGlobalSequence task-shuffle bug where tasks land in the wrong phase file), and report integrity.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-plan/mcp",
|
|
3
|
-
"version": "0.2.19-next.
|
|
3
|
+
"version": "0.2.19-next.15",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "MCP server for Agent Plan, exposing planner-* tools over stdio.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@modelcontextprotocol/sdk": "^1.17.0",
|
|
43
43
|
"zod": "^3.24.0",
|
|
44
|
-
"@agent-plan/core": "0.2.19-next.
|
|
45
|
-
"@agent-plan/server": "0.2.19-next.
|
|
44
|
+
"@agent-plan/core": "0.2.19-next.15",
|
|
45
|
+
"@agent-plan/server": "0.2.19-next.15"
|
|
46
46
|
},
|
|
47
47
|
"scripts": {
|
|
48
48
|
"build": "tsc -p tsconfig.json",
|