@engramm/dev-workflow 0.1.5 → 0.1.6
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 +2 -1
- package/dist/cli/task.d.ts.map +1 -1
- package/dist/cli/task.js +35 -0
- package/dist/cli/task.js.map +1 -1
- package/dist/mcp/handlers.d.ts +1 -0
- package/dist/mcp/handlers.d.ts.map +1 -1
- package/dist/mcp/handlers.js +7 -0
- package/dist/mcp/handlers.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +11 -0
- package/dist/mcp/tools.js.map +1 -1
- package/dist/tasks/phase-tasks.d.ts +8 -0
- package/dist/tasks/phase-tasks.d.ts.map +1 -0
- package/dist/tasks/phase-tasks.js +35 -0
- package/dist/tasks/phase-tasks.js.map +1 -0
- package/package.json +1 -1
- package/templates/agents/architect.md +9 -3
- package/templates/agents/coder.md +9 -3
- package/templates/agents/committer.md +8 -0
- package/templates/agents/debugger.md +8 -2
- package/templates/agents/planner.md +8 -2
- package/templates/agents/reader.md +7 -0
- package/templates/agents/reviewer.md +8 -1
- package/templates/agents/tester.md +8 -2
- package/templates/claude/commands/session/handover.md +6 -5
- package/templates/claude/commands/session/resume.md +8 -0
- package/templates/claude/commands/session/review.md +7 -6
- package/templates/claude/commands/vault/analyze.md +7 -6
- package/templates/claude/commands/vault/from-spec.md +9 -6
- package/templates/claude/commands/workflow/dev.md +8 -0
- package/templates/claude/commands/workflow/steps/preflight.md +10 -5
- package/templates/claude/commands/workflow/steps/vault-updates.md +50 -0
package/README.md
CHANGED
|
@@ -145,7 +145,7 @@ dev-workflow serve # Start MCP server
|
|
|
145
145
|
|
|
146
146
|
## MCP Tools
|
|
147
147
|
|
|
148
|
-
|
|
148
|
+
14 tools available via MCP server:
|
|
149
149
|
|
|
150
150
|
| Tool | Description |
|
|
151
151
|
|------|------------|
|
|
@@ -159,6 +159,7 @@ dev-workflow serve # Start MCP server
|
|
|
159
159
|
| `task_list` | List tasks |
|
|
160
160
|
| `task_update` | Update task |
|
|
161
161
|
| `task_start` | Start task (link to branch) |
|
|
162
|
+
| `task_create_from_phase` | Parse phase file and create missing tasks |
|
|
162
163
|
| `workflow_status` | Current workflow status |
|
|
163
164
|
| `agent_list` | List agents with permissions |
|
|
164
165
|
| `agent_run` | Generate agent prompt with vault context |
|
package/dist/cli/task.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"AAcA,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CA2CzC"}
|
package/dist/cli/task.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { detectContext } from "../lib/context.js";
|
|
2
2
|
import { TaskManager } from "../tasks/manager.js";
|
|
3
3
|
import { TaskTracker } from "../tasks/tracker.js";
|
|
4
|
+
import { join } from "node:path";
|
|
4
5
|
import { icon, statusIcon, table } from "../lib/output.js";
|
|
6
|
+
import { createTasksFromPhase } from "../tasks/phase-tasks.js";
|
|
5
7
|
function parseFlag(args, flag) {
|
|
6
8
|
const index = args.indexOf(flag);
|
|
7
9
|
if (index === -1 || index >= args.length - 1)
|
|
@@ -21,6 +23,9 @@ export function task(args) {
|
|
|
21
23
|
case "create":
|
|
22
24
|
taskCreate(manager, args.slice(1));
|
|
23
25
|
break;
|
|
26
|
+
case "create-from-phase":
|
|
27
|
+
taskCreateFromPhase(manager, context.projectRoot, args[1]);
|
|
28
|
+
break;
|
|
24
29
|
case "list":
|
|
25
30
|
taskList(manager, args.slice(1));
|
|
26
31
|
break;
|
|
@@ -150,4 +155,34 @@ function taskBlock(manager, id) {
|
|
|
150
155
|
process.exitCode = 1;
|
|
151
156
|
}
|
|
152
157
|
}
|
|
158
|
+
function taskCreateFromPhase(manager, projectRoot, phaseFile) {
|
|
159
|
+
if (!phaseFile) {
|
|
160
|
+
console.error("Usage: dev-workflow task create-from-phase <phase-file>");
|
|
161
|
+
process.exitCode = 1;
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
const fullPath = phaseFile.startsWith("/") ? phaseFile : join(projectRoot, phaseFile);
|
|
165
|
+
try {
|
|
166
|
+
const result = createTasksFromPhase(fullPath, manager);
|
|
167
|
+
if (result.created.length > 0) {
|
|
168
|
+
console.log(`Created ${result.created.length} tasks:`);
|
|
169
|
+
for (const title of result.created) {
|
|
170
|
+
console.log(` + ${title}`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
if (result.skipped.length > 0) {
|
|
174
|
+
console.log(`Skipped ${result.skipped.length} (already exist):`);
|
|
175
|
+
for (const title of result.skipped) {
|
|
176
|
+
console.log(` = ${title}`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
if (result.created.length === 0 && result.skipped.length === 0) {
|
|
180
|
+
console.log("No tasks found in phase file.");
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
console.error(error instanceof Error ? error.message : "Failed to parse phase file");
|
|
185
|
+
process.exitCode = 1;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
153
188
|
//# sourceMappingURL=task.js.map
|
package/dist/cli/task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/cli/task.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/handlers.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/mcp/handlers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/mcp/handlers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAkE7D,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;gBAGxC,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,cAAc,EACvB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,mBAAmB,EACnC,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,WAAW;IAYpB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAsEjF,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,WAAW;IA0CnB,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,SAAS;IAkBjB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,QAAQ;CAQjB"}
|
package/dist/mcp/handlers.js
CHANGED
|
@@ -4,6 +4,7 @@ import { renderTemplate } from "../lib/templates.js";
|
|
|
4
4
|
import { WorkflowState } from "../workflow/state.js";
|
|
5
5
|
import { topN } from "../intelligence/ranker.js";
|
|
6
6
|
import { syncFromVault } from "../intelligence/sync.js";
|
|
7
|
+
import { createTasksFromPhase } from "../tasks/phase-tasks.js";
|
|
7
8
|
function requireString(params, key) {
|
|
8
9
|
const value = params[key];
|
|
9
10
|
if (typeof value !== "string" || value === "") {
|
|
@@ -93,6 +94,8 @@ export class ToolHandlers {
|
|
|
93
94
|
return this.intelligenceQuery(optionalString(params, "branch"), optionalString(params, "task"), params["limit"]);
|
|
94
95
|
case "task_start":
|
|
95
96
|
return this.taskStart(requireString(params, "id"));
|
|
97
|
+
case "task_create_from_phase":
|
|
98
|
+
return this.taskCreateFromPhase(requireString(params, "phaseFile"));
|
|
96
99
|
case "task_create":
|
|
97
100
|
return this.taskCreate(requireString(params, "title"), optionalString(params, "description"));
|
|
98
101
|
case "task_list":
|
|
@@ -208,6 +211,10 @@ export class ToolHandlers {
|
|
|
208
211
|
lastAccessed: entry.node.lastAccessed,
|
|
209
212
|
}));
|
|
210
213
|
}
|
|
214
|
+
taskCreateFromPhase(phaseFile) {
|
|
215
|
+
const fullPath = phaseFile.startsWith("/") ? phaseFile : join(this.context.projectRoot, phaseFile);
|
|
216
|
+
return createTasksFromPhase(fullPath, this.taskManager);
|
|
217
|
+
}
|
|
211
218
|
taskStart(id) {
|
|
212
219
|
const task = this.taskManager.get(id);
|
|
213
220
|
const slug = task.title
|
package/dist/mcp/handlers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/mcp/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAI3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/mcp/handlers.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CA6JrD"}
|
package/dist/mcp/tools.js
CHANGED
|
@@ -123,6 +123,17 @@ export function getToolDefinitions() {
|
|
|
123
123
|
required: ["id"],
|
|
124
124
|
},
|
|
125
125
|
},
|
|
126
|
+
{
|
|
127
|
+
name: "task_create_from_phase",
|
|
128
|
+
description: "Parse ## Tasks from a phase file and create missing tasks",
|
|
129
|
+
inputSchema: {
|
|
130
|
+
type: "object",
|
|
131
|
+
properties: {
|
|
132
|
+
phaseFile: { type: "string", description: "Path to phase file, e.g. .dev-vault/phases/phase-3-core.md" },
|
|
133
|
+
},
|
|
134
|
+
required: ["phaseFile"],
|
|
135
|
+
},
|
|
136
|
+
},
|
|
126
137
|
{
|
|
127
138
|
name: "agent_list",
|
|
128
139
|
description: "List available agents with their capabilities",
|
package/dist/mcp/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { TaskManager } from "./manager.js";
|
|
2
|
+
export interface PhaseTaskResult {
|
|
3
|
+
created: string[];
|
|
4
|
+
skipped: string[];
|
|
5
|
+
}
|
|
6
|
+
export declare function parseTasksFromPhase(phaseFilePath: string): string[];
|
|
7
|
+
export declare function createTasksFromPhase(phaseFilePath: string, taskManager: TaskManager): PhaseTaskResult;
|
|
8
|
+
//# sourceMappingURL=phase-tasks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phase-tasks.d.ts","sourceRoot":"","sources":["../../src/tasks/phase-tasks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAcnE;AAED,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,WAAW,GACvB,eAAe,CAuBjB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { readFileSync, existsSync } from "node:fs";
|
|
2
|
+
export function parseTasksFromPhase(phaseFilePath) {
|
|
3
|
+
if (!existsSync(phaseFilePath)) {
|
|
4
|
+
throw new Error(`Phase file not found: ${phaseFilePath}`);
|
|
5
|
+
}
|
|
6
|
+
const content = readFileSync(phaseFilePath, "utf-8");
|
|
7
|
+
const tasksMatch = content.match(/## Tasks\n([\s\S]*?)(?=\n## |\n---|\Z)/);
|
|
8
|
+
if (!tasksMatch)
|
|
9
|
+
return [];
|
|
10
|
+
const tasksSection = tasksMatch[1];
|
|
11
|
+
return tasksSection
|
|
12
|
+
.split("\n")
|
|
13
|
+
.map((line) => line.replace(/^\d+\.\s*/, "").trim())
|
|
14
|
+
.filter((line) => line.length > 0 && !line.startsWith("#"));
|
|
15
|
+
}
|
|
16
|
+
export function createTasksFromPhase(phaseFilePath, taskManager) {
|
|
17
|
+
const taskTitles = parseTasksFromPhase(phaseFilePath);
|
|
18
|
+
const existingTasks = taskManager.list();
|
|
19
|
+
const existingTitles = existingTasks.map((t) => t.title.toLowerCase());
|
|
20
|
+
const created = [];
|
|
21
|
+
const skipped = [];
|
|
22
|
+
for (const title of taskTitles) {
|
|
23
|
+
const alreadyExists = existingTitles.some((existing) => existing.includes(title.toLowerCase().slice(0, 20))
|
|
24
|
+
|| title.toLowerCase().includes(existing.slice(0, 20)));
|
|
25
|
+
if (alreadyExists) {
|
|
26
|
+
skipped.push(title);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
taskManager.create(title, "");
|
|
30
|
+
created.push(title);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return { created, skipped };
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=phase-tasks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phase-tasks.js","sourceRoot":"","sources":["../../src/tasks/phase-tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAQnD,MAAM,UAAU,mBAAmB,CAAC,aAAqB;IACvD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,aAAa,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC3E,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;IACpC,OAAO,YAAY;SAChB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;SACnD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,aAAqB,EACrB,WAAwB;IAExB,MAAM,UAAU,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CACvC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;eAC5D,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACzD,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC"}
|
package/package.json
CHANGED
|
@@ -12,9 +12,15 @@ You are an architect agent for {{projectName}}.
|
|
|
12
12
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
|
-
Analyze the codebase and design system architecture.
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
Analyze the codebase and design system architecture.
|
|
16
|
+
Evaluate trade-offs, MUST propose 2-3 solutions with pros/cons.
|
|
17
|
+
|
|
18
|
+
## Permissions (VIOLATION = ABORT)
|
|
19
|
+
|
|
20
|
+
- Read files: YES
|
|
21
|
+
- Write/Edit files: FORBIDDEN
|
|
22
|
+
- Bash commands: FORBIDDEN
|
|
23
|
+
- You MUST NOT create, modify, or delete any file. Analysis only.
|
|
18
24
|
|
|
19
25
|
## Project Context
|
|
20
26
|
|
|
@@ -12,9 +12,15 @@ You are a coder agent for {{projectName}}.
|
|
|
12
12
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
|
-
Write code strictly following the plan.
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
Write code strictly following the plan. The ONLY agent allowed to modify project files.
|
|
16
|
+
|
|
17
|
+
## Permissions (VIOLATION = ABORT)
|
|
18
|
+
|
|
19
|
+
- Read files: YES (any file)
|
|
20
|
+
- Write/Edit: ONLY src/** and tests/** — FORBIDDEN outside these paths
|
|
21
|
+
- Bash: ONLY build/test/lint commands — FORBIDDEN: git commit, git push, git reset
|
|
22
|
+
- git: FORBIDDEN — committer agent handles all git operations
|
|
23
|
+
- Scope: ONLY changes in the plan. Scope creep FORBIDDEN.
|
|
18
24
|
|
|
19
25
|
## Project Context
|
|
20
26
|
|
|
@@ -15,6 +15,14 @@ You are a committer agent for {{projectName}}.
|
|
|
15
15
|
Create a clean git commit. Review staged changes, write a
|
|
16
16
|
descriptive commit message, and commit.
|
|
17
17
|
|
|
18
|
+
## Permissions (VIOLATION = ABORT)
|
|
19
|
+
|
|
20
|
+
- Read files: FORBIDDEN
|
|
21
|
+
- Write/Edit files: FORBIDDEN
|
|
22
|
+
- Bash: ONLY `git add`, `git diff --staged`, `git commit` — 3 commands total
|
|
23
|
+
- FORBIDDEN: git push, git pull, git reset, git checkout, git rebase, git merge
|
|
24
|
+
- FORBIDDEN: any non-git bash command
|
|
25
|
+
|
|
18
26
|
## Branch: {{branch}}
|
|
19
27
|
{{branchContext}}
|
|
20
28
|
|
|
@@ -13,8 +13,14 @@ You are a debugger agent for {{projectName}}.
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
15
|
Systematically diagnose bugs by tracing execution, inspecting state,
|
|
16
|
-
and identifying root causes.
|
|
17
|
-
|
|
16
|
+
and identifying root causes. Your output is the diagnosis and fix recommendation.
|
|
17
|
+
|
|
18
|
+
## Permissions (VIOLATION = ABORT)
|
|
19
|
+
|
|
20
|
+
- Read files: YES
|
|
21
|
+
- Write/Edit files: FORBIDDEN — describe the fix, do NOT apply it
|
|
22
|
+
- Bash commands: FORBIDDEN
|
|
23
|
+
- You MUST NOT create, modify, or delete any file. Diagnosis only.
|
|
18
24
|
|
|
19
25
|
## Project Context
|
|
20
26
|
|
|
@@ -12,8 +12,14 @@ You are a planner agent for {{projectName}}.
|
|
|
12
12
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
|
-
Create a detailed implementation plan.
|
|
16
|
-
|
|
15
|
+
Create a detailed implementation plan. Your output is the plan itself.
|
|
16
|
+
|
|
17
|
+
## Permissions (VIOLATION = ABORT)
|
|
18
|
+
|
|
19
|
+
- Read files: YES
|
|
20
|
+
- Write/Edit files: FORBIDDEN
|
|
21
|
+
- Bash commands: FORBIDDEN
|
|
22
|
+
- You MUST NOT create, modify, or delete any files
|
|
17
23
|
|
|
18
24
|
## Project Context
|
|
19
25
|
|
|
@@ -15,6 +15,13 @@ You are a reader agent for {{projectName}}.
|
|
|
15
15
|
Gather and summarize project context. You read code, documentation,
|
|
16
16
|
and vault data to build a complete picture of the current state.
|
|
17
17
|
|
|
18
|
+
## Permissions (VIOLATION = ABORT)
|
|
19
|
+
|
|
20
|
+
- Read files: YES
|
|
21
|
+
- Write/Edit files: FORBIDDEN
|
|
22
|
+
- Bash commands: FORBIDDEN
|
|
23
|
+
- Max files: 10, max 500 lines each
|
|
24
|
+
|
|
18
25
|
## Project Context
|
|
19
26
|
|
|
20
27
|
### Stack
|
|
@@ -13,7 +13,14 @@ You are a reviewer agent for {{projectName}}.
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
15
|
Review code changes for quality, security, and convention compliance.
|
|
16
|
-
|
|
16
|
+
Your output is a review report. You NEVER fix code — only report issues.
|
|
17
|
+
|
|
18
|
+
## Permissions (VIOLATION = ABORT)
|
|
19
|
+
|
|
20
|
+
- Read files: YES
|
|
21
|
+
- Write/Edit files: FORBIDDEN — you MUST NOT modify, create, or delete any file
|
|
22
|
+
- Bash commands: FORBIDDEN
|
|
23
|
+
- If you see a problem: describe it and suggest a fix. Do NOT apply the fix.
|
|
17
24
|
|
|
18
25
|
## Project Context
|
|
19
26
|
|
|
@@ -12,8 +12,14 @@ You are a tester agent for {{projectName}}.
|
|
|
12
12
|
|
|
13
13
|
## Your Role
|
|
14
14
|
|
|
15
|
-
Write tests and verify they pass.
|
|
16
|
-
|
|
15
|
+
Write tests and verify they pass.
|
|
16
|
+
|
|
17
|
+
## Permissions (VIOLATION = ABORT)
|
|
18
|
+
|
|
19
|
+
- Read files: YES (any file)
|
|
20
|
+
- Write/Edit: ONLY files in tests/ — FORBIDDEN outside tests/
|
|
21
|
+
- Bash: ONLY test commands (npm test, cargo test, pytest) — no other bash
|
|
22
|
+
- You MUST NOT modify source code. Only tests.
|
|
17
23
|
|
|
18
24
|
## Project Context
|
|
19
25
|
|
|
@@ -49,8 +49,9 @@ Capture the current session's work into `.dev-vault/` for future sessions.
|
|
|
49
49
|
|
|
50
50
|
## Rules
|
|
51
51
|
|
|
52
|
-
- **APPEND ONLY** —
|
|
53
|
-
-
|
|
54
|
-
-
|
|
55
|
-
-
|
|
56
|
-
-
|
|
52
|
+
- **APPEND ONLY** — NEVER overwrite existing vault files. Read first, then Edit to append.
|
|
53
|
+
- **Edit tool ONLY** — NEVER use Write tool on existing files (it overwrites entirely)
|
|
54
|
+
- **Max 3 sentences per section** — reference material, not essays
|
|
55
|
+
- **MUST include** file paths or commit hashes in "Done" section — no vague descriptions
|
|
56
|
+
- **MUST create** vault records (/vault:bug, /vault:adr, /vault:debt) if findings qualify — not "offer", DO IT
|
|
57
|
+
- NEVER include secrets or tokens
|
|
@@ -41,3 +41,11 @@ Use this exact format (markdown, not code block):
|
|
|
41
41
|
- **New branch without context** → ask user about goal, create branch file
|
|
42
42
|
- **No vault** → suggest `dev-workflow init`
|
|
43
43
|
- **Empty vault files** → suggest `/vault:analyze`
|
|
44
|
+
|
|
45
|
+
## Rules
|
|
46
|
+
|
|
47
|
+
- **MUST read ALL 4 vault files** (stack, conventions, knowledge, gameplan) — do not skip any
|
|
48
|
+
- **MUST check** for active tasks and paused workflows — not optional
|
|
49
|
+
- **MUST display** branch context if not on main — not optional
|
|
50
|
+
- **Resume complete when:** all vault sections shown + branch context + tasks + workflow status
|
|
51
|
+
- Read-only — NEVER modify vault files during resume
|
|
@@ -74,9 +74,10 @@ If perspectives disagree (e.g., Pragmatism says "good enough" but Quality says "
|
|
|
74
74
|
|
|
75
75
|
## Rules
|
|
76
76
|
|
|
77
|
-
- Read-only —
|
|
78
|
-
-
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
77
|
+
- **Read-only** — NEVER modify project code. VIOLATION = ABORT.
|
|
78
|
+
- **All 5 perspectives REQUIRED** — do not skip any. Each MUST produce a verdict.
|
|
79
|
+
- **Reference specific files and line numbers** — no vague "there might be issues"
|
|
80
|
+
- **Each finding MUST be tagged** with source perspective (Security/Quality/Conventions/Completeness/Pragmatism)
|
|
81
|
+
- **Conflict resolution:** Security > Correctness > Conventions > Pragmatism. Higher priority wins.
|
|
82
|
+
- **Critical from ANY perspective** → overall REQUEST_CHANGES
|
|
83
|
+
- **APPEND ONLY** for vault updates — use Edit tool, NEVER Write tool on existing files
|
|
@@ -100,11 +100,12 @@ For each phase:
|
|
|
100
100
|
|
|
101
101
|
## Rules
|
|
102
102
|
|
|
103
|
-
- **Gate criteria:** each phase
|
|
104
|
-
- **
|
|
105
|
-
- **Be specific** — "functions use snake_case" not "standard naming"
|
|
106
|
-
- **Reference files** — "error handling in cli/src/main.rs uses anyhow"
|
|
103
|
+
- **Gate criteria:** each phase REQUIRES explicit user approval. Do NOT skip.
|
|
104
|
+
- **APPEND ONLY** — use Edit tool. NEVER use Write tool on existing vault files.
|
|
105
|
+
- **Be specific** — "functions use snake_case" not "standard naming". Vague = rewrite.
|
|
106
|
+
- **Reference files** — MUST include file path: "error handling in cli/src/main.rs uses anyhow"
|
|
107
107
|
- **Skip gameplan.md** — roadmap is human-authored
|
|
108
108
|
- **Don't add utility crates/packages to stack.md** — only frameworks, ORMs, test runners
|
|
109
|
-
-
|
|
110
|
-
-
|
|
109
|
+
- **MUST read minimum 10 files, maximum 15** — not fewer, not "a few"
|
|
110
|
+
- **Verification:** after each phase, verify no contradictions with existing vault content
|
|
111
|
+
- NEVER include secrets or credentials
|
|
@@ -300,12 +300,15 @@ After creation:
|
|
|
300
300
|
|
|
301
301
|
## Rules
|
|
302
302
|
|
|
303
|
-
- **Gate criteria:** each phase
|
|
304
|
-
- **
|
|
305
|
-
- **Be specific** — "TypeScript 5.x with strict mode" not "typed language"
|
|
306
|
-
- **
|
|
303
|
+
- **Gate criteria:** each phase REQUIRES explicit user approval before writing. Do NOT skip approval.
|
|
304
|
+
- **APPEND ONLY** — use Edit tool to append. NEVER use Write tool on existing vault files.
|
|
305
|
+
- **Be specific** — "TypeScript 5.x with strict mode" not "typed language". Vague = rewrite.
|
|
306
|
+
- **Verify versions** — MUST use context7 MCP for library versions. No guessing from training data.
|
|
307
|
+
- **Derive when implicit** — if spec says "REST API" but not "Express", MUST research and propose with rationale
|
|
307
308
|
- **Skip empty phases** — if spec has no data model, skip 3b entirely
|
|
308
|
-
- **No secrets** —
|
|
309
|
-
- **Reference spec** — cite which part of the spec each item comes from
|
|
309
|
+
- **No secrets** — NEVER include API keys, passwords, or credentials
|
|
310
|
+
- **Reference spec** — MUST cite which part of the spec each item comes from
|
|
311
|
+
- **No "best-effort"** — every item MUST be verified against spec or codebase
|
|
310
312
|
- **Multi-perspective on architecture only** — other phases use single-pass analysis
|
|
311
313
|
- **Gameplan phases are coarse** — detailed task breakdown happens in `/task` and `/workflow`
|
|
314
|
+
- **Gameplan phases are coarse** — detailed task breakdown happens in `/task` and `/workflow`
|
|
@@ -138,6 +138,14 @@ Agents:
|
|
|
138
138
|
VERIFY [Explore] — [verdict]
|
|
139
139
|
COMMIT [git] — [hash]
|
|
140
140
|
|
|
141
|
+
[If review found gotchas:] Gotchas → knowledge.md
|
|
142
|
+
[If architecture concerns:] Concerns → knowledge.md
|
|
143
|
+
|
|
144
|
+
Vault records auto-created:
|
|
145
|
+
[If PLAN had deviations:] ADR → .dev-vault/architecture/<slug>.md
|
|
146
|
+
[If REVIEW CRITICAL/HIGH fixed:] Bug → .dev-vault/bugs/<slug>.md
|
|
147
|
+
[If CODER skipped MEDIUM:] Debt → .dev-vault/debt/<slug>.md
|
|
148
|
+
|
|
141
149
|
═══════════════════════════════
|
|
142
150
|
```
|
|
143
151
|
|
|
@@ -4,11 +4,16 @@ Orchestrator runs directly (no subagent).
|
|
|
4
4
|
|
|
5
5
|
## Phase mode: auto-create tasks
|
|
6
6
|
|
|
7
|
-
If argument is a phase file
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
If argument is a phase file, call MCP tool `task_create_from_phase`:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
task_create_from_phase(phaseFile: "<path to phase file>")
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
This parses `## Tasks` from the phase file and creates missing tasks automatically.
|
|
14
|
+
Returns: `{ created: [...], skipped: [...] }`.
|
|
15
|
+
|
|
16
|
+
Display the result before proceeding.
|
|
12
17
|
|
|
13
18
|
## Baseline check
|
|
14
19
|
|
|
@@ -46,3 +46,53 @@ After each subtask complete:
|
|
|
46
46
|
- Re-read `.dev-vault/conventions.md` (may have new patterns from review)
|
|
47
47
|
- Re-read `.dev-vault/knowledge.md` (may have new gotchas from review)
|
|
48
48
|
- Pass updated vault content to next subtask's CODER and REVIEW agents
|
|
49
|
+
|
|
50
|
+
## 5. Auto-create vault records
|
|
51
|
+
|
|
52
|
+
Create records automatically using MCP tool `vault_record(type, title, content)`.
|
|
53
|
+
Data is already in pipeline context — no need to ask the user.
|
|
54
|
+
|
|
55
|
+
### ADR (architecture decisions)
|
|
56
|
+
|
|
57
|
+
Create if PLAN contained:
|
|
58
|
+
- DEVIATION from conventions (with justification)
|
|
59
|
+
- Architecture section with alternatives considered
|
|
60
|
+
- Dependency direction change or new layer introduced
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
vault_record(type: "adr", title: "<decision>", content: "Context: <from PLAN>\nDecision: <what was chosen>\nAlternatives: <from PLAN Architecture section>\nConsequences: <trade-offs>")
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Bug (fixed issues)
|
|
67
|
+
|
|
68
|
+
Create if REVIEW found CRITICAL or HIGH and CODER fixed it:
|
|
69
|
+
- Root cause was non-obvious
|
|
70
|
+
- Fix required understanding of system internals
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
vault_record(type: "bug", title: "<issue summary>", content: "Symptoms: <from REVIEW issue>\nRoot cause: <from CODE_FIX>\nFix: <what was changed>\nPrevention: <how to avoid>")
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Debt (deferred work)
|
|
77
|
+
|
|
78
|
+
Create if CODER skipped MEDIUM review issues:
|
|
79
|
+
- Issue acknowledged but not fixed
|
|
80
|
+
- Reason documented in CODE_FIX Skipped section
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
vault_record(type: "debt", title: "<deferred issue>", content: "Problem: <from REVIEW issue>\nWhy deferred: <from CODE_FIX Skipped reason>\nProposal: <suggested fix>\nRisk if ignored: <impact>")
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Rules
|
|
87
|
+
|
|
88
|
+
- Only create if data exists in pipeline context (PLAN, REVIEW, CODE_FIX blocks)
|
|
89
|
+
- Do NOT create for: LOW/style issues, clean pipelines with no findings, trivial bugs
|
|
90
|
+
- One record per significant finding, not one per REVIEW issue
|
|
91
|
+
- Display created records in summary:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
Vault records created:
|
|
95
|
+
ADR: .dev-vault/architecture/<date>-<slug>.md
|
|
96
|
+
Bug: .dev-vault/bugs/<date>-<slug>.md
|
|
97
|
+
Debt: .dev-vault/debt/<date>-<slug>.md
|
|
98
|
+
```
|