@slope-dev/slope 1.35.0 → 1.37.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/dist/cli/commands/guard.d.ts.map +1 -1
- package/dist/cli/commands/guard.js +32 -0
- package/dist/cli/commands/guard.js.map +1 -1
- package/dist/cli/commands/loop.d.ts.map +1 -1
- package/dist/cli/commands/loop.js +159 -10
- package/dist/cli/commands/loop.js.map +1 -1
- package/dist/cli/commands/org.d.ts +10 -0
- package/dist/cli/commands/org.d.ts.map +1 -0
- package/dist/cli/commands/org.js +102 -0
- package/dist/cli/commands/org.js.map +1 -0
- package/dist/cli/commands/review-state.js +2 -2
- package/dist/cli/commands/review-state.js.map +1 -1
- package/dist/cli/commands/session.d.ts.map +1 -1
- package/dist/cli/commands/session.js +251 -0
- package/dist/cli/commands/session.js.map +1 -1
- package/dist/cli/commands/sprint.d.ts.map +1 -1
- package/dist/cli/commands/sprint.js +205 -3
- package/dist/cli/commands/sprint.js.map +1 -1
- package/dist/cli/commands/transcript.d.ts.map +1 -1
- package/dist/cli/commands/transcript.js +110 -12
- package/dist/cli/commands/transcript.js.map +1 -1
- package/dist/cli/commands/workflow.d.ts +2 -0
- package/dist/cli/commands/workflow.d.ts.map +1 -0
- package/dist/cli/commands/workflow.js +165 -0
- package/dist/cli/commands/workflow.js.map +1 -0
- package/dist/cli/guards/claim-required.d.ts +1 -0
- package/dist/cli/guards/claim-required.d.ts.map +1 -1
- package/dist/cli/guards/claim-required.js +41 -2
- package/dist/cli/guards/claim-required.js.map +1 -1
- package/dist/cli/guards/hazard.d.ts +1 -0
- package/dist/cli/guards/hazard.d.ts.map +1 -1
- package/dist/cli/guards/hazard.js +61 -6
- package/dist/cli/guards/hazard.js.map +1 -1
- package/dist/cli/guards/review-tier.d.ts.map +1 -1
- package/dist/cli/guards/review-tier.js +3 -1
- package/dist/cli/guards/review-tier.js.map +1 -1
- package/dist/cli/guards/scope-drift.d.ts +1 -0
- package/dist/cli/guards/scope-drift.d.ts.map +1 -1
- package/dist/cli/guards/scope-drift.js +62 -7
- package/dist/cli/guards/scope-drift.js.map +1 -1
- package/dist/cli/guards/workflow-step-gate.d.ts +8 -0
- package/dist/cli/guards/workflow-step-gate.d.ts.map +1 -0
- package/dist/cli/guards/workflow-step-gate.js +59 -0
- package/dist/cli/guards/workflow-step-gate.js.map +1 -0
- package/dist/cli/index.js +15 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/loop/backlog.d.ts +6 -0
- package/dist/cli/loop/backlog.d.ts.map +1 -1
- package/dist/cli/loop/backlog.js +44 -1
- package/dist/cli/loop/backlog.js.map +1 -1
- package/dist/cli/loop/continuous.d.ts.map +1 -1
- package/dist/cli/loop/continuous.js +44 -8
- package/dist/cli/loop/continuous.js.map +1 -1
- package/dist/cli/loop/executor.d.ts.map +1 -1
- package/dist/cli/loop/executor.js +5 -3
- package/dist/cli/loop/executor.js.map +1 -1
- package/dist/cli/loop/model-selector.d.ts +5 -2
- package/dist/cli/loop/model-selector.d.ts.map +1 -1
- package/dist/cli/loop/model-selector.js +35 -2
- package/dist/cli/loop/model-selector.js.map +1 -1
- package/dist/cli/loop/parallel.d.ts +2 -2
- package/dist/cli/loop/parallel.d.ts.map +1 -1
- package/dist/cli/loop/parallel.js +72 -68
- package/dist/cli/loop/parallel.js.map +1 -1
- package/dist/cli/loop/types.d.ts +44 -1
- package/dist/cli/loop/types.d.ts.map +1 -1
- package/dist/cli/loop/types.js +2 -0
- package/dist/cli/loop/types.js.map +1 -1
- package/dist/cli/loop/workflow-adapter.d.ts +53 -0
- package/dist/cli/loop/workflow-adapter.d.ts.map +1 -0
- package/dist/cli/loop/workflow-adapter.js +123 -0
- package/dist/cli/loop/workflow-adapter.js.map +1 -0
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/cli/registry.js +20 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/core/analytics.d.ts +17 -0
- package/dist/core/analytics.d.ts.map +1 -1
- package/dist/core/analytics.js +59 -0
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/guard.d.ts +5 -1
- package/dist/core/guard.d.ts.map +1 -1
- package/dist/core/guard.js +37 -0
- package/dist/core/guard.js.map +1 -1
- package/dist/core/index.d.ts +12 -4
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +10 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/loader.d.ts +5 -0
- package/dist/core/loader.d.ts.map +1 -1
- package/dist/core/loader.js +22 -4
- package/dist/core/loader.js.map +1 -1
- package/dist/core/org.d.ts +38 -0
- package/dist/core/org.d.ts.map +1 -0
- package/dist/core/org.js +112 -0
- package/dist/core/org.js.map +1 -0
- package/dist/core/store.d.ts +25 -1
- package/dist/core/store.d.ts.map +1 -1
- package/dist/core/types.d.ts +34 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/workflow-engine.d.ts +89 -0
- package/dist/core/workflow-engine.d.ts.map +1 -0
- package/dist/core/workflow-engine.js +223 -0
- package/dist/core/workflow-engine.js.map +1 -0
- package/dist/core/workflow-loader.d.ts +21 -0
- package/dist/core/workflow-loader.d.ts.map +1 -0
- package/dist/core/workflow-loader.js +110 -0
- package/dist/core/workflow-loader.js.map +1 -0
- package/dist/core/workflow-validator.d.ts +19 -0
- package/dist/core/workflow-validator.d.ts.map +1 -0
- package/dist/core/workflow-validator.js +166 -0
- package/dist/core/workflow-validator.js.map +1 -0
- package/dist/core/workflow.d.ts +51 -0
- package/dist/core/workflow.d.ts.map +1 -0
- package/dist/core/workflow.js +190 -0
- package/dist/core/workflow.js.map +1 -0
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +138 -2
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/index.test.js +10 -2
- package/dist/mcp/index.test.js.map +1 -1
- package/dist/mcp/registry.d.ts +1 -1
- package/dist/mcp/registry.d.ts.map +1 -1
- package/dist/mcp/registry.js +71 -0
- package/dist/mcp/registry.js.map +1 -1
- package/dist/store/index.d.ts +25 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +144 -0
- package/dist/store/index.js.map +1 -1
- package/dist/store-pg/index.d.ts +25 -1
- package/dist/store-pg/index.d.ts.map +1 -1
- package/dist/store-pg/index.js +180 -0
- package/dist/store-pg/index.js.map +1 -1
- package/package.json +4 -2
- package/src/core/workflows/sprint-autonomous.yaml +59 -0
- package/src/core/workflows/sprint-lightweight.yaml +39 -0
- package/src/core/workflows/sprint-standard.yaml +77 -0
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { loadSprintState, saveSprintState, createSprintState, updateGate, clearSprintState, isSprintComplete, pendingGates, } from '../sprint-state.js';
|
|
2
|
+
import { WorkflowEngine, loadWorkflow, resolveVariables, validateWorkflow, loadConfig } from '../../core/index.js';
|
|
3
|
+
import { createStore } from '../../store/index.js';
|
|
2
4
|
const VALID_GATES = ['tests', 'code_review', 'architect_review', 'scorecard', 'review_md'];
|
|
3
5
|
function startCommand(args, cwd) {
|
|
4
6
|
const numberArg = args.find(a => a.startsWith('--number='));
|
|
@@ -72,6 +74,181 @@ function resetCommand(cwd) {
|
|
|
72
74
|
clearSprintState(cwd);
|
|
73
75
|
console.log('Sprint state cleared.');
|
|
74
76
|
}
|
|
77
|
+
// --- Workflow-driven commands ---
|
|
78
|
+
function getStore(cwd) {
|
|
79
|
+
const config = loadConfig(cwd);
|
|
80
|
+
return createStore({ storePath: config.store_path ?? '.slope/slope.db', cwd });
|
|
81
|
+
}
|
|
82
|
+
async function runWorkflowCommand(args, cwd) {
|
|
83
|
+
const sprintArg = args.find(a => a.startsWith('--sprint=') || !a.startsWith('--'));
|
|
84
|
+
const workflowArg = args.find(a => a.startsWith('--workflow='));
|
|
85
|
+
const varArgs = args.filter(a => a.startsWith('--var='));
|
|
86
|
+
if (!workflowArg) {
|
|
87
|
+
console.error('Usage: slope sprint run <sprint_id> --workflow=<name> [--var key=value ...]');
|
|
88
|
+
process.exit(1);
|
|
89
|
+
}
|
|
90
|
+
const sprintId = sprintArg?.startsWith('--') ? undefined : sprintArg;
|
|
91
|
+
const workflowName = workflowArg.slice('--workflow='.length);
|
|
92
|
+
// Parse variables
|
|
93
|
+
const vars = {};
|
|
94
|
+
if (sprintId)
|
|
95
|
+
vars.sprint_id = sprintId;
|
|
96
|
+
for (const v of varArgs) {
|
|
97
|
+
const kv = v.slice('--var='.length);
|
|
98
|
+
const eq = kv.indexOf('=');
|
|
99
|
+
if (eq > 0) {
|
|
100
|
+
vars[kv.slice(0, eq)] = kv.slice(eq + 1);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// Load and validate workflow
|
|
104
|
+
const def = loadWorkflow(workflowName, cwd);
|
|
105
|
+
const validation = validateWorkflow(def);
|
|
106
|
+
if (!validation.valid) {
|
|
107
|
+
console.error(`Workflow "${workflowName}" has errors:`);
|
|
108
|
+
for (const err of validation.errors) {
|
|
109
|
+
console.error(` - ${err.message}`);
|
|
110
|
+
}
|
|
111
|
+
process.exit(1);
|
|
112
|
+
}
|
|
113
|
+
// Resolve variables
|
|
114
|
+
const resolved = resolveVariables(def, vars);
|
|
115
|
+
// Start execution
|
|
116
|
+
const store = getStore(cwd);
|
|
117
|
+
try {
|
|
118
|
+
const engine = new WorkflowEngine();
|
|
119
|
+
const exec = await engine.start(resolved, store, {
|
|
120
|
+
sprint_id: sprintId,
|
|
121
|
+
variables: vars,
|
|
122
|
+
});
|
|
123
|
+
const next = await engine.next(exec.id, resolved, store);
|
|
124
|
+
console.log(`\nWorkflow "${def.name}" started (execution: ${exec.id})`);
|
|
125
|
+
if (sprintId)
|
|
126
|
+
console.log(`Sprint: ${sprintId}`);
|
|
127
|
+
console.log(`Status: ${exec.status}`);
|
|
128
|
+
console.log(`\nFirst step:`);
|
|
129
|
+
console.log(` Phase: ${next.phase}`);
|
|
130
|
+
console.log(` Step: ${next.step?.id} (${next.step?.type})`);
|
|
131
|
+
if (next.step?.prompt)
|
|
132
|
+
console.log(` Prompt: ${next.step.prompt}`);
|
|
133
|
+
if (next.step?.command)
|
|
134
|
+
console.log(` Command: ${next.step.command}`);
|
|
135
|
+
console.log('');
|
|
136
|
+
}
|
|
137
|
+
finally {
|
|
138
|
+
store.close();
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
async function workflowStatusCommand(args, cwd) {
|
|
142
|
+
const sprintArg = args.find(a => !a.startsWith('--'));
|
|
143
|
+
const store = getStore(cwd);
|
|
144
|
+
try {
|
|
145
|
+
if (sprintArg) {
|
|
146
|
+
const exec = await store.getExecutionBySprint(sprintArg);
|
|
147
|
+
if (!exec) {
|
|
148
|
+
console.log(`No active workflow execution for sprint ${sprintArg}.`);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
printExecution(exec);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
const active = await store.listExecutions({ status: 'running' });
|
|
155
|
+
if (active.length === 0) {
|
|
156
|
+
// Fall through to legacy status
|
|
157
|
+
statusCommand(cwd);
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
console.log(`\n${active.length} active workflow execution(s):\n`);
|
|
161
|
+
for (const exec of active) {
|
|
162
|
+
printExecution(exec);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
finally {
|
|
167
|
+
store.close();
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
function printExecution(exec) {
|
|
171
|
+
console.log(` Execution: ${exec.id}`);
|
|
172
|
+
console.log(` Workflow: ${exec.workflow_name}`);
|
|
173
|
+
if (exec.sprint_id)
|
|
174
|
+
console.log(` Sprint: ${exec.sprint_id}`);
|
|
175
|
+
console.log(` Status: ${exec.status}`);
|
|
176
|
+
console.log(` Phase: ${exec.current_phase ?? '-'}`);
|
|
177
|
+
console.log(` Step: ${exec.current_step ?? '-'}`);
|
|
178
|
+
console.log(` Progress: ${exec.completed_steps.length} steps completed`);
|
|
179
|
+
console.log(` Started: ${exec.started_at}`);
|
|
180
|
+
console.log('');
|
|
181
|
+
}
|
|
182
|
+
async function resumeCommand(args, cwd) {
|
|
183
|
+
const sprintArg = args.find(a => !a.startsWith('--'));
|
|
184
|
+
if (!sprintArg) {
|
|
185
|
+
console.error('Usage: slope sprint resume <sprint_id>');
|
|
186
|
+
process.exit(1);
|
|
187
|
+
}
|
|
188
|
+
const store = getStore(cwd);
|
|
189
|
+
try {
|
|
190
|
+
const exec = await store.getExecutionBySprint(sprintArg);
|
|
191
|
+
if (!exec) {
|
|
192
|
+
console.error(`No active workflow execution for sprint ${sprintArg}.`);
|
|
193
|
+
process.exit(1);
|
|
194
|
+
}
|
|
195
|
+
const def = loadWorkflow(exec.workflow_name, cwd);
|
|
196
|
+
const resolved = resolveVariables(def, exec.variables);
|
|
197
|
+
const engine = new WorkflowEngine();
|
|
198
|
+
const next = await engine.next(exec.id, resolved, store);
|
|
199
|
+
if (next.is_complete) {
|
|
200
|
+
console.log(`Workflow for sprint ${sprintArg} is already complete.`);
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
console.log(`\nResuming workflow for sprint ${sprintArg} (execution: ${exec.id})`);
|
|
204
|
+
console.log(`\nNext step:`);
|
|
205
|
+
console.log(` Phase: ${next.phase}`);
|
|
206
|
+
console.log(` Step: ${next.step?.id} (${next.step?.type})`);
|
|
207
|
+
if (next.current_item)
|
|
208
|
+
console.log(` Item: ${next.current_item} (${(next.item_index ?? 0) + 1}/${next.total_items})`);
|
|
209
|
+
if (next.step?.prompt)
|
|
210
|
+
console.log(` Prompt: ${next.step.prompt}`);
|
|
211
|
+
if (next.step?.command)
|
|
212
|
+
console.log(` Command: ${next.step.command}`);
|
|
213
|
+
console.log('');
|
|
214
|
+
}
|
|
215
|
+
finally {
|
|
216
|
+
store.close();
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
async function skipCommand(args, cwd) {
|
|
220
|
+
const sprintArg = args.find(a => !a.startsWith('--'));
|
|
221
|
+
const stepArg = args.find(a => a.startsWith('--step='));
|
|
222
|
+
const reasonArg = args.find(a => a.startsWith('--reason='));
|
|
223
|
+
if (!sprintArg || !stepArg) {
|
|
224
|
+
console.error('Usage: slope sprint skip <sprint_id> --step=<id> --reason="..."');
|
|
225
|
+
process.exit(1);
|
|
226
|
+
}
|
|
227
|
+
const stepId = stepArg.slice('--step='.length);
|
|
228
|
+
const reason = reasonArg?.slice('--reason='.length) ?? 'Skipped via CLI';
|
|
229
|
+
const store = getStore(cwd);
|
|
230
|
+
try {
|
|
231
|
+
const exec = await store.getExecutionBySprint(sprintArg);
|
|
232
|
+
if (!exec) {
|
|
233
|
+
console.error(`No active workflow execution for sprint ${sprintArg}.`);
|
|
234
|
+
process.exit(1);
|
|
235
|
+
}
|
|
236
|
+
const def = loadWorkflow(exec.workflow_name, cwd);
|
|
237
|
+
const resolved = resolveVariables(def, exec.variables);
|
|
238
|
+
const engine = new WorkflowEngine();
|
|
239
|
+
const result = await engine.skip(exec.id, stepId, reason, resolved, store);
|
|
240
|
+
if (result.is_complete) {
|
|
241
|
+
console.log(`Step "${stepId}" skipped. Workflow is now complete.`);
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
console.log(`Step "${stepId}" skipped (reason: ${reason}).`);
|
|
245
|
+
console.log(`Next: ${result.advanced_to?.phase}/${result.advanced_to?.step}`);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
finally {
|
|
249
|
+
store.close();
|
|
250
|
+
}
|
|
251
|
+
}
|
|
75
252
|
export async function sprintCommand(args) {
|
|
76
253
|
const cwd = process.cwd();
|
|
77
254
|
const sub = args[0];
|
|
@@ -83,14 +260,39 @@ export async function sprintCommand(args) {
|
|
|
83
260
|
gateCommand(args.slice(1), cwd);
|
|
84
261
|
break;
|
|
85
262
|
case 'status':
|
|
86
|
-
|
|
263
|
+
await workflowStatusCommand(args.slice(1), cwd);
|
|
87
264
|
break;
|
|
88
265
|
case 'reset':
|
|
89
266
|
resetCommand(cwd);
|
|
90
267
|
break;
|
|
268
|
+
case 'run':
|
|
269
|
+
await runWorkflowCommand(args.slice(1), cwd);
|
|
270
|
+
break;
|
|
271
|
+
case 'resume':
|
|
272
|
+
await resumeCommand(args.slice(1), cwd);
|
|
273
|
+
break;
|
|
274
|
+
case 'skip':
|
|
275
|
+
await skipCommand(args.slice(1), cwd);
|
|
276
|
+
break;
|
|
91
277
|
default:
|
|
92
|
-
console.
|
|
93
|
-
|
|
278
|
+
console.log(`
|
|
279
|
+
slope sprint — Sprint lifecycle management
|
|
280
|
+
|
|
281
|
+
Legacy commands:
|
|
282
|
+
slope sprint start --number=N Start sprint state tracking
|
|
283
|
+
slope sprint gate <name> Mark a gate as complete
|
|
284
|
+
slope sprint status Show sprint state and gates
|
|
285
|
+
slope sprint reset Clear sprint state
|
|
286
|
+
|
|
287
|
+
Workflow commands:
|
|
288
|
+
slope sprint run <id> --workflow=<name> [--var k=v ...] Start workflow execution
|
|
289
|
+
slope sprint status [sprint_id] Show workflow execution progress
|
|
290
|
+
slope sprint resume <sprint_id> Resume a workflow execution
|
|
291
|
+
slope sprint skip <id> --step=<s> --reason="..." Skip a blocking step
|
|
292
|
+
`);
|
|
293
|
+
if (sub)
|
|
294
|
+
process.exit(1);
|
|
295
|
+
break;
|
|
94
296
|
}
|
|
95
297
|
}
|
|
96
298
|
//# sourceMappingURL=sprint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sprint.js","sourceRoot":"","sources":["../../../src/cli/commands/sprint.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sprint.js","sourceRoot":"","sources":["../../../src/cli/commands/sprint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/transcript.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/transcript.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoSH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyCrE"}
|
|
@@ -37,26 +37,104 @@ function listCommand() {
|
|
|
37
37
|
console.log('');
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
* slope transcript show <session-id> — render turn-by-turn summary
|
|
40
|
+
* slope transcript show <session-id> [--tool=X] [--errors] — render turn-by-turn summary
|
|
41
41
|
*/
|
|
42
|
-
function showCommand(sessionId) {
|
|
42
|
+
function showCommand(sessionId, flags) {
|
|
43
43
|
const dir = resolveTranscriptsDir();
|
|
44
|
-
|
|
44
|
+
let turns = readTranscript(dir, sessionId);
|
|
45
45
|
if (turns.length === 0) {
|
|
46
46
|
console.error(`No transcript found for session: ${sessionId}`);
|
|
47
47
|
process.exit(1);
|
|
48
48
|
}
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
// Filter by tool name
|
|
50
|
+
const toolFilter = flags.tool;
|
|
51
|
+
if (toolFilter) {
|
|
52
|
+
turns = turns.filter(t => t.tool_calls?.some(tc => tc.tool.toLowerCase() === toolFilter.toLowerCase()));
|
|
53
|
+
}
|
|
54
|
+
// Filter to errors only
|
|
55
|
+
if (flags.errors === 'true') {
|
|
56
|
+
turns = turns.filter(t => t.outcome === 'failure' || t.tool_calls?.some(tc => !tc.success));
|
|
57
|
+
}
|
|
58
|
+
const red = '\x1b[31m';
|
|
59
|
+
const reset = '\x1b[0m';
|
|
60
|
+
console.log(`\nSession: ${sessionId} (${turns.length} turns${toolFilter ? `, tool=${toolFilter}` : ''}${flags.errors === 'true' ? ', errors only' : ''})\n`);
|
|
61
|
+
console.log(` ${'#'.padStart(3)} ${'Tool'.padEnd(15)} ${'Outcome'.padEnd(9)} ${'Time'.padEnd(12)} ${'ms'.padEnd(6)} Note`);
|
|
51
62
|
for (const turn of turns) {
|
|
52
63
|
const tool = turn.tool_calls?.[0]?.tool ?? turn.role;
|
|
53
64
|
const outcome = turn.outcome ?? '—';
|
|
54
65
|
const ts = turn.timestamp.split('T')[1]?.slice(0, 8) ?? turn.timestamp;
|
|
66
|
+
const durationMs = turn.tool_calls?.[0]?.duration_ms;
|
|
67
|
+
const duration = durationMs !== undefined ? String(durationMs) : '—';
|
|
55
68
|
const note = turn.outcome === 'failure' && turn.outcome_note ? `"${turn.outcome_note}"` : '';
|
|
56
69
|
const failNote = !note && turn.tool_calls?.[0]?.success === false && turn.tool_calls[0].params_summary
|
|
57
70
|
? turn.tool_calls[0].params_summary
|
|
58
71
|
: note;
|
|
59
|
-
|
|
72
|
+
const isError = outcome === 'failure' || turn.tool_calls?.[0]?.success === false;
|
|
73
|
+
const prefix = isError ? red : '';
|
|
74
|
+
const suffix = isError ? reset : '';
|
|
75
|
+
console.log(` ${prefix}${String(turn.turn_number).padStart(3)} ${tool.padEnd(15)} ${outcome.padEnd(9)} ${ts.padEnd(12)} ${duration.padEnd(6)} ${failNote}${suffix}`);
|
|
76
|
+
}
|
|
77
|
+
console.log('');
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* slope transcript summary <session-id> [--json] — auto-generate session narrative
|
|
81
|
+
*/
|
|
82
|
+
function summaryCommand(sessionId, json) {
|
|
83
|
+
const dir = resolveTranscriptsDir();
|
|
84
|
+
const turns = readTranscript(dir, sessionId);
|
|
85
|
+
if (turns.length === 0) {
|
|
86
|
+
console.error(`No transcript found for session: ${sessionId}`);
|
|
87
|
+
process.exit(1);
|
|
88
|
+
}
|
|
89
|
+
const stats = computeStats(turns);
|
|
90
|
+
// Compute most-used tool
|
|
91
|
+
const sortedTools = Object.entries(stats.toolCounts).sort((a, b) => b[1] - a[1]);
|
|
92
|
+
const topTool = sortedTools[0]?.[0] ?? 'unknown';
|
|
93
|
+
const topToolPct = sortedTools[0] ? Math.round((sortedTools[0][1] / stats.turnCount) * 100) : 0;
|
|
94
|
+
// Compute most-active area from params
|
|
95
|
+
const areaCounts = {};
|
|
96
|
+
for (const turn of turns) {
|
|
97
|
+
for (const tc of turn.tool_calls ?? []) {
|
|
98
|
+
const pathMatch = tc.params_summary?.match(/(?:src|packages|tests)\/[\w/-]+/);
|
|
99
|
+
if (pathMatch) {
|
|
100
|
+
const area = pathMatch[0].split('/').slice(0, 3).join('/');
|
|
101
|
+
areaCounts[area] = (areaCounts[area] ?? 0) + 1;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
const topArea = Object.entries(areaCounts).sort((a, b) => b[1] - a[1])[0]?.[0] ?? 'unknown';
|
|
106
|
+
const summary = {
|
|
107
|
+
session_id: sessionId,
|
|
108
|
+
turns: stats.turnCount,
|
|
109
|
+
duration_min: stats.durationMin,
|
|
110
|
+
tools_used: Object.keys(stats.toolCounts).length,
|
|
111
|
+
top_tool: topTool,
|
|
112
|
+
top_tool_pct: topToolPct,
|
|
113
|
+
errors: stats.failureCount,
|
|
114
|
+
retries: stats.retryCount,
|
|
115
|
+
most_active_area: topArea,
|
|
116
|
+
tool_breakdown: sortedTools.map(([tool, count]) => ({
|
|
117
|
+
tool,
|
|
118
|
+
count,
|
|
119
|
+
pct: Math.round((count / stats.turnCount) * 100),
|
|
120
|
+
})),
|
|
121
|
+
};
|
|
122
|
+
if (json) {
|
|
123
|
+
console.log(JSON.stringify(summary, null, 2));
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const narrative = [
|
|
127
|
+
`Session ${sessionId} ran ${stats.turnCount} turns over ${stats.durationMin}m.`,
|
|
128
|
+
`Used ${Object.keys(stats.toolCounts).length} tools — ${topTool} (${topToolPct}%)${sortedTools.length > 1 ? `, ${sortedTools[1][0]} (${Math.round((sortedTools[1][1] / stats.turnCount) * 100)}%)` : ''}.`,
|
|
129
|
+
stats.failureCount > 0 ? `${stats.failureCount} error${stats.failureCount > 1 ? 's' : ''}.` : 'No errors.',
|
|
130
|
+
`Most active area: ${topArea}.`,
|
|
131
|
+
].join(' ');
|
|
132
|
+
console.log(`\n=== Session Summary ===\n`);
|
|
133
|
+
console.log(` ${narrative}\n`);
|
|
134
|
+
console.log(' Tool breakdown:');
|
|
135
|
+
for (const [tool, count] of sortedTools) {
|
|
136
|
+
const pct = Math.round((count / stats.turnCount) * 100);
|
|
137
|
+
console.log(` ${tool.padEnd(15)} ${String(count).padStart(4)} (${pct}%)`);
|
|
60
138
|
}
|
|
61
139
|
console.log('');
|
|
62
140
|
}
|
|
@@ -154,19 +232,38 @@ function statsCommand(sessionId) {
|
|
|
154
232
|
formatStats(`All transcripts (${ids.length} sessions)`, computeStats(allTurns));
|
|
155
233
|
console.log('');
|
|
156
234
|
}
|
|
235
|
+
function parseFlags(args) {
|
|
236
|
+
const flags = {};
|
|
237
|
+
for (const arg of args) {
|
|
238
|
+
const match = arg.match(/^--(\w[\w-]*)(?:=(.+))?$/);
|
|
239
|
+
if (match)
|
|
240
|
+
flags[match[1]] = match[2] ?? 'true';
|
|
241
|
+
}
|
|
242
|
+
return flags;
|
|
243
|
+
}
|
|
157
244
|
export async function transcriptCommand(args) {
|
|
158
245
|
const sub = args[0];
|
|
246
|
+
const flags = parseFlags(args.slice(1));
|
|
159
247
|
switch (sub) {
|
|
160
248
|
case 'list':
|
|
161
249
|
listCommand();
|
|
162
250
|
break;
|
|
163
251
|
case 'show': {
|
|
164
252
|
const sessionId = args[1];
|
|
165
|
-
if (!sessionId) {
|
|
166
|
-
console.error('Usage: slope transcript show <session-id>');
|
|
253
|
+
if (!sessionId || sessionId.startsWith('--')) {
|
|
254
|
+
console.error('Usage: slope transcript show <session-id> [--tool=X] [--errors]');
|
|
255
|
+
process.exit(1);
|
|
256
|
+
}
|
|
257
|
+
showCommand(sessionId, parseFlags(args.slice(2)));
|
|
258
|
+
break;
|
|
259
|
+
}
|
|
260
|
+
case 'summary': {
|
|
261
|
+
const sessionId = args[1];
|
|
262
|
+
if (!sessionId || sessionId.startsWith('--')) {
|
|
263
|
+
console.error('Usage: slope transcript summary <session-id> [--json]');
|
|
167
264
|
process.exit(1);
|
|
168
265
|
}
|
|
169
|
-
|
|
266
|
+
summaryCommand(sessionId, parseFlags(args.slice(2)).json === 'true');
|
|
170
267
|
break;
|
|
171
268
|
}
|
|
172
269
|
case 'stats':
|
|
@@ -177,9 +274,10 @@ export async function transcriptCommand(args) {
|
|
|
177
274
|
slope transcript — View session transcript data
|
|
178
275
|
|
|
179
276
|
Usage:
|
|
180
|
-
slope transcript list
|
|
181
|
-
slope transcript show <
|
|
182
|
-
slope transcript
|
|
277
|
+
slope transcript list List available transcripts
|
|
278
|
+
slope transcript show <id> [--tool=X] [--errors] Turn-by-turn summary with filters
|
|
279
|
+
slope transcript summary <id> [--json] Auto-generated session narrative
|
|
280
|
+
slope transcript stats [id] Aggregate metrics (all if no id)
|
|
183
281
|
`);
|
|
184
282
|
if (sub)
|
|
185
283
|
process.exit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../../src/cli/commands/transcript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../../src/cli/commands/transcript.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/workflow.ts"],"names":[],"mappings":"AAgJA,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BnE"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
// slope workflow — Manage workflow definitions
|
|
2
|
+
import { loadWorkflow, listWorkflows, validateWorkflow } from '../../core/index.js';
|
|
3
|
+
function workflowValidate(args, cwd) {
|
|
4
|
+
const name = args[0];
|
|
5
|
+
if (!name) {
|
|
6
|
+
console.error('Usage: slope workflow validate <name>\n');
|
|
7
|
+
process.exit(1);
|
|
8
|
+
}
|
|
9
|
+
let def;
|
|
10
|
+
try {
|
|
11
|
+
def = loadWorkflow(name, cwd);
|
|
12
|
+
}
|
|
13
|
+
catch (err) {
|
|
14
|
+
console.error(err.message);
|
|
15
|
+
process.exit(1);
|
|
16
|
+
}
|
|
17
|
+
const result = validateWorkflow(def);
|
|
18
|
+
console.log(`\nWorkflow: ${def.name} (v${def.version})`);
|
|
19
|
+
if (def.description)
|
|
20
|
+
console.log(` ${def.description}`);
|
|
21
|
+
console.log('');
|
|
22
|
+
if (result.errors.length > 0) {
|
|
23
|
+
for (const err of result.errors) {
|
|
24
|
+
console.log(` \x1b[31m[ERROR]\x1b[0m ${err.message}${err.path ? ` (${err.path})` : ''}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (result.warnings.length > 0) {
|
|
28
|
+
for (const warn of result.warnings) {
|
|
29
|
+
console.log(` \x1b[33m[WARN]\x1b[0m ${warn.message}${warn.path ? ` (${warn.path})` : ''}`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
if (result.valid && result.warnings.length === 0) {
|
|
33
|
+
console.log(' \x1b[32mValid — no issues found.\x1b[0m');
|
|
34
|
+
}
|
|
35
|
+
else if (result.valid) {
|
|
36
|
+
console.log(`\n \x1b[32mValid\x1b[0m with ${result.warnings.length} warning(s).`);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
console.log(`\n \x1b[31mInvalid\x1b[0m — ${result.errors.length} error(s), ${result.warnings.length} warning(s).`);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
console.log('');
|
|
43
|
+
}
|
|
44
|
+
function workflowList(cwd) {
|
|
45
|
+
const workflows = listWorkflows(cwd);
|
|
46
|
+
if (workflows.length === 0) {
|
|
47
|
+
console.log('No workflows found.');
|
|
48
|
+
console.log('Create .slope/workflows/<name>.yaml or use a built-in workflow.\n');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
console.log('\nAvailable Workflows\n');
|
|
52
|
+
console.log(' Name Source Description');
|
|
53
|
+
console.log(' ' + '\u2500'.repeat(70));
|
|
54
|
+
for (const wf of workflows) {
|
|
55
|
+
const name = wf.name.padEnd(24);
|
|
56
|
+
const source = wf.source.padEnd(10);
|
|
57
|
+
const desc = wf.description ?? '';
|
|
58
|
+
console.log(` ${name} ${source} ${desc}`);
|
|
59
|
+
}
|
|
60
|
+
console.log(`\n ${workflows.length} workflow(s) available.\n`);
|
|
61
|
+
}
|
|
62
|
+
function workflowShow(args, cwd) {
|
|
63
|
+
const name = args[0];
|
|
64
|
+
if (!name) {
|
|
65
|
+
console.error('Usage: slope workflow show <name>\n');
|
|
66
|
+
process.exit(1);
|
|
67
|
+
}
|
|
68
|
+
let def;
|
|
69
|
+
try {
|
|
70
|
+
def = loadWorkflow(name, cwd);
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
console.error(err.message);
|
|
74
|
+
process.exit(1);
|
|
75
|
+
}
|
|
76
|
+
console.log(`\n\x1b[1m${def.name}\x1b[0m (v${def.version})`);
|
|
77
|
+
if (def.description)
|
|
78
|
+
console.log(` ${def.description}`);
|
|
79
|
+
// Variables
|
|
80
|
+
if (def.variables && Object.keys(def.variables).length > 0) {
|
|
81
|
+
console.log('\n Variables:');
|
|
82
|
+
for (const [name, spec] of Object.entries(def.variables)) {
|
|
83
|
+
const parts = [];
|
|
84
|
+
if (spec.type)
|
|
85
|
+
parts.push(spec.type);
|
|
86
|
+
if (spec.required)
|
|
87
|
+
parts.push('required');
|
|
88
|
+
if (spec.default !== undefined)
|
|
89
|
+
parts.push(`default: "${spec.default}"`);
|
|
90
|
+
if (spec.pattern)
|
|
91
|
+
parts.push(`pattern: ${spec.pattern}`);
|
|
92
|
+
console.log(` ${name}: ${parts.join(', ')}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// Phases and steps
|
|
96
|
+
console.log('\n Phases:');
|
|
97
|
+
for (const phase of def.phases) {
|
|
98
|
+
let phaseLabel = ` \x1b[36m${phase.id}\x1b[0m`;
|
|
99
|
+
if (phase.repeat_for)
|
|
100
|
+
phaseLabel += ` (repeat for each \${${phase.repeat_for}})`;
|
|
101
|
+
console.log(phaseLabel);
|
|
102
|
+
for (const step of phase.steps) {
|
|
103
|
+
const typeIcon = stepIcon(step);
|
|
104
|
+
const flags = [];
|
|
105
|
+
if (step.blocks_next)
|
|
106
|
+
flags.push('blocks');
|
|
107
|
+
if (step.checkpoint)
|
|
108
|
+
flags.push(`checkpoint: ${step.checkpoint}`);
|
|
109
|
+
const flagStr = flags.length > 0 ? ` \x1b[90m[${flags.join(', ')}]\x1b[0m` : '';
|
|
110
|
+
console.log(` ${typeIcon} ${step.id}${flagStr}`);
|
|
111
|
+
if (step.command)
|
|
112
|
+
console.log(` \x1b[90m$ ${step.command}\x1b[0m`);
|
|
113
|
+
if (step.prompt)
|
|
114
|
+
console.log(` \x1b[90m"${step.prompt}"\x1b[0m`);
|
|
115
|
+
if (step.required_fields)
|
|
116
|
+
console.log(` \x1b[90mfields: ${step.required_fields.join(', ')}\x1b[0m`);
|
|
117
|
+
if (step.rules) {
|
|
118
|
+
for (const rule of step.rules) {
|
|
119
|
+
console.log(` \x1b[90m- ${rule}\x1b[0m`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
console.log('');
|
|
125
|
+
}
|
|
126
|
+
function stepIcon(step) {
|
|
127
|
+
switch (step.type) {
|
|
128
|
+
case 'command': return '\u25B6'; // ▶
|
|
129
|
+
case 'validation': return '\u2713'; // ✓
|
|
130
|
+
case 'agent_input': return '\u270E'; // ✎
|
|
131
|
+
case 'agent_work': return '\u2692'; // ⚒
|
|
132
|
+
default: return '\u2022'; // •
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
export async function workflowCommand(args) {
|
|
136
|
+
const cwd = process.cwd();
|
|
137
|
+
const sub = args[0];
|
|
138
|
+
switch (sub) {
|
|
139
|
+
case 'validate':
|
|
140
|
+
workflowValidate(args.slice(1), cwd);
|
|
141
|
+
break;
|
|
142
|
+
case 'list':
|
|
143
|
+
workflowList(cwd);
|
|
144
|
+
break;
|
|
145
|
+
case 'show':
|
|
146
|
+
workflowShow(args.slice(1), cwd);
|
|
147
|
+
break;
|
|
148
|
+
default:
|
|
149
|
+
console.log(`
|
|
150
|
+
slope workflow — Manage workflow definitions
|
|
151
|
+
|
|
152
|
+
Usage:
|
|
153
|
+
slope workflow validate <name> Parse and validate a workflow definition
|
|
154
|
+
slope workflow list List all available workflows (project + built-in)
|
|
155
|
+
slope workflow show <name> Pretty-print a workflow with phase/step tree
|
|
156
|
+
|
|
157
|
+
Workflows define step-by-step sprint lifecycles that control execution order.
|
|
158
|
+
Place custom workflows in .slope/workflows/<name>.yaml
|
|
159
|
+
`);
|
|
160
|
+
if (sub)
|
|
161
|
+
process.exit(1);
|
|
162
|
+
break;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=workflow.js.map
|