@agent-deck/backend 1.3.3 → 1.4.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.
Files changed (46) hide show
  1. package/LICENSE +21 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli-runtime.d.ts +9 -0
  4. package/dist/cli-runtime.d.ts.map +1 -1
  5. package/dist/cli-runtime.js +20 -0
  6. package/dist/cli-runtime.js.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/mcp-index.js +2 -1
  10. package/dist/mcp-index.js.map +1 -1
  11. package/dist/mcp-server.d.ts +2 -1
  12. package/dist/mcp-server.d.ts.map +1 -1
  13. package/dist/mcp-server.js +8 -6
  14. package/dist/mcp-server.js.map +1 -1
  15. package/dist/mcp-tools/register.d.ts.map +1 -1
  16. package/dist/mcp-tools/register.js +60 -1
  17. package/dist/mcp-tools/register.js.map +1 -1
  18. package/dist/models/database.d.ts +32 -1
  19. package/dist/models/database.d.ts.map +1 -1
  20. package/dist/models/database.js +183 -0
  21. package/dist/models/database.js.map +1 -1
  22. package/dist/playbooks/apply-patch-ops.d.ts +15 -0
  23. package/dist/playbooks/apply-patch-ops.d.ts.map +1 -0
  24. package/dist/playbooks/apply-patch-ops.js +111 -0
  25. package/dist/playbooks/apply-patch-ops.js.map +1 -0
  26. package/dist/playbooks/patch-manager.d.ts +24 -0
  27. package/dist/playbooks/patch-manager.d.ts.map +1 -0
  28. package/dist/playbooks/patch-manager.js +188 -0
  29. package/dist/playbooks/patch-manager.js.map +1 -0
  30. package/dist/routes/playbook-patches.d.ts +6 -0
  31. package/dist/routes/playbook-patches.d.ts.map +1 -0
  32. package/dist/routes/playbook-patches.js +117 -0
  33. package/dist/routes/playbook-patches.js.map +1 -0
  34. package/dist/routes/playbooks.d.ts.map +1 -1
  35. package/dist/routes/playbooks.js +23 -0
  36. package/dist/routes/playbooks.js.map +1 -1
  37. package/dist/server/index.d.ts +2 -0
  38. package/dist/server/index.d.ts.map +1 -1
  39. package/dist/server/index.js +25 -1
  40. package/dist/server/index.js.map +1 -1
  41. package/package.json +6 -4
  42. package/static-ui/assets/index-CMnf8DzQ.css +1 -0
  43. package/static-ui/assets/index-DtJf3KTc.js +458 -0
  44. package/static-ui/index.html +2 -2
  45. package/static-ui/assets/index-BKyay5bV.js +0 -448
  46. package/static-ui/assets/index-CkjtWobR.css +0 -1
@@ -242,6 +242,47 @@ class DatabaseManager {
242
242
  FOREIGN KEY (credential_id) REFERENCES credentials (id) ON DELETE CASCADE,
243
243
  PRIMARY KEY (exec_run_id, credential_id)
244
244
  )
245
+ `);
246
+ this.db.exec(`
247
+ CREATE TABLE IF NOT EXISTS playbook_patches (
248
+ id TEXT PRIMARY KEY,
249
+ kind TEXT NOT NULL,
250
+ playbook_id TEXT,
251
+ ops_json TEXT NOT NULL,
252
+ rationale TEXT NOT NULL,
253
+ source TEXT NOT NULL,
254
+ source_ref TEXT,
255
+ evidence_json TEXT,
256
+ status TEXT NOT NULL DEFAULT 'proposed',
257
+ rejection_reason TEXT,
258
+ created_at TEXT NOT NULL,
259
+ resolved_at TEXT,
260
+ FOREIGN KEY (playbook_id) REFERENCES playbooks (id) ON DELETE SET NULL
261
+ )
262
+ `);
263
+ this.db.exec(`
264
+ CREATE TABLE IF NOT EXISTS playbook_versions (
265
+ id TEXT PRIMARY KEY,
266
+ playbook_id TEXT NOT NULL,
267
+ title TEXT NOT NULL,
268
+ body TEXT NOT NULL,
269
+ triggers TEXT NOT NULL DEFAULT '[]',
270
+ patch_id TEXT,
271
+ actor TEXT NOT NULL,
272
+ created_at TEXT NOT NULL,
273
+ FOREIGN KEY (playbook_id) REFERENCES playbooks (id) ON DELETE CASCADE,
274
+ FOREIGN KEY (patch_id) REFERENCES playbook_patches (id) ON DELETE SET NULL
275
+ )
276
+ `);
277
+ this.db.exec(`
278
+ CREATE TABLE IF NOT EXISTS playbook_events (
279
+ id TEXT PRIMARY KEY,
280
+ playbook_id TEXT NOT NULL,
281
+ event TEXT NOT NULL,
282
+ source TEXT NOT NULL,
283
+ created_at TEXT NOT NULL,
284
+ FOREIGN KEY (playbook_id) REFERENCES playbooks (id) ON DELETE CASCADE
285
+ )
245
286
  `);
246
287
  }
247
288
  hasAnyServices() {
@@ -258,6 +299,9 @@ class DatabaseManager {
258
299
  CREATE INDEX IF NOT EXISTS idx_deck_credentials_position ON deck_credentials(position);
259
300
  CREATE INDEX IF NOT EXISTS idx_deck_playbooks_position ON deck_playbooks(position);
260
301
  CREATE INDEX IF NOT EXISTS idx_exec_runs_started_at ON exec_runs(started_at);
302
+ CREATE INDEX IF NOT EXISTS idx_playbook_patches_status ON playbook_patches(status);
303
+ CREATE INDEX IF NOT EXISTS idx_playbook_versions_playbook ON playbook_versions(playbook_id);
304
+ CREATE INDEX IF NOT EXISTS idx_playbook_events_playbook ON playbook_events(playbook_id);
261
305
  `);
262
306
  }
263
307
  mapCredentialRow(row) {
@@ -1085,6 +1129,145 @@ class DatabaseManager {
1085
1129
  position: row.position,
1086
1130
  }));
1087
1131
  }
1132
+ mapPlaybookPatchRow(row) {
1133
+ return {
1134
+ id: row.id,
1135
+ kind: row.kind,
1136
+ playbookId: row.playbook_id ?? null,
1137
+ opsJson: row.ops_json,
1138
+ rationale: row.rationale,
1139
+ source: row.source,
1140
+ sourceRef: row.source_ref ?? null,
1141
+ evidenceJson: row.evidence_json ?? null,
1142
+ status: row.status,
1143
+ rejectionReason: row.rejection_reason ?? null,
1144
+ createdAt: row.created_at,
1145
+ resolvedAt: row.resolved_at ?? null,
1146
+ };
1147
+ }
1148
+ async createPlaybookPatch(input) {
1149
+ const now = new Date().toISOString();
1150
+ this.db.prepare(`
1151
+ INSERT INTO playbook_patches (
1152
+ id, kind, playbook_id, ops_json, rationale, source, source_ref,
1153
+ evidence_json, status, created_at
1154
+ ) VALUES (
1155
+ @id, @kind, @playbook_id, @ops_json, @rationale, @source, @source_ref,
1156
+ @evidence_json, 'proposed', @created_at
1157
+ )
1158
+ `).run({
1159
+ id: input.id,
1160
+ kind: input.kind,
1161
+ playbook_id: input.playbookId,
1162
+ ops_json: input.opsJson,
1163
+ rationale: input.rationale,
1164
+ source: input.source,
1165
+ source_ref: input.sourceRef,
1166
+ evidence_json: input.evidenceJson,
1167
+ created_at: now,
1168
+ });
1169
+ return (await this.getPlaybookPatch(input.id));
1170
+ }
1171
+ async getPlaybookPatch(id) {
1172
+ const row = this.db.prepare('SELECT * FROM playbook_patches WHERE id = ?').get(id);
1173
+ return row ? this.mapPlaybookPatchRow(row) : null;
1174
+ }
1175
+ async listPlaybookPatches(status) {
1176
+ const rows = status
1177
+ ? this.db
1178
+ .prepare('SELECT * FROM playbook_patches WHERE status = ? ORDER BY created_at DESC')
1179
+ .all(status)
1180
+ : this.db.prepare('SELECT * FROM playbook_patches ORDER BY created_at DESC').all();
1181
+ return rows.map((row) => this.mapPlaybookPatchRow(row));
1182
+ }
1183
+ async updatePlaybookPatchStatus(id, status, rejectionReason = null) {
1184
+ const resolvedAt = status === 'proposed' ? null : new Date().toISOString();
1185
+ const result = this.db.prepare(`
1186
+ UPDATE playbook_patches SET
1187
+ status = @status,
1188
+ rejection_reason = @rejection_reason,
1189
+ resolved_at = @resolved_at
1190
+ WHERE id = @id
1191
+ `).run({
1192
+ id,
1193
+ status,
1194
+ rejection_reason: rejectionReason,
1195
+ resolved_at: resolvedAt,
1196
+ });
1197
+ if (result.changes === 0)
1198
+ return null;
1199
+ return this.getPlaybookPatch(id);
1200
+ }
1201
+ async createPlaybookVersion(input) {
1202
+ const now = new Date().toISOString();
1203
+ this.db.prepare(`
1204
+ INSERT INTO playbook_versions (
1205
+ id, playbook_id, title, body, triggers, patch_id, actor, created_at
1206
+ ) VALUES (
1207
+ @id, @playbook_id, @title, @body, @triggers, @patch_id, @actor, @created_at
1208
+ )
1209
+ `).run({
1210
+ id: input.id,
1211
+ playbook_id: input.playbookId,
1212
+ title: input.title,
1213
+ body: input.body,
1214
+ triggers: JSON.stringify(input.triggers),
1215
+ patch_id: input.patchId,
1216
+ actor: input.actor,
1217
+ created_at: now,
1218
+ });
1219
+ return {
1220
+ id: input.id,
1221
+ playbookId: input.playbookId,
1222
+ title: input.title,
1223
+ body: input.body,
1224
+ triggers: input.triggers,
1225
+ patchId: input.patchId,
1226
+ actor: input.actor,
1227
+ createdAt: now,
1228
+ };
1229
+ }
1230
+ async listPlaybookVersions(playbookId) {
1231
+ const rows = this.db
1232
+ .prepare('SELECT * FROM playbook_versions WHERE playbook_id = ? ORDER BY created_at DESC')
1233
+ .all(playbookId);
1234
+ return rows.map((row) => ({
1235
+ id: row.id,
1236
+ playbookId: row.playbook_id,
1237
+ title: row.title,
1238
+ body: row.body,
1239
+ triggers: row.triggers ? JSON.parse(row.triggers) : [],
1240
+ patchId: row.patch_id ?? null,
1241
+ actor: row.actor,
1242
+ createdAt: row.created_at,
1243
+ }));
1244
+ }
1245
+ async recordPlaybookEvent(input) {
1246
+ const now = new Date().toISOString();
1247
+ this.db.prepare(`
1248
+ INSERT INTO playbook_events (id, playbook_id, event, source, created_at)
1249
+ VALUES (@id, @playbook_id, @event, @source, @created_at)
1250
+ `).run({
1251
+ id: input.id,
1252
+ playbook_id: input.playbookId,
1253
+ event: input.event,
1254
+ source: input.source,
1255
+ created_at: now,
1256
+ });
1257
+ return {
1258
+ id: input.id,
1259
+ playbookId: input.playbookId,
1260
+ event: input.event,
1261
+ source: input.source,
1262
+ createdAt: now,
1263
+ };
1264
+ }
1265
+ async countPlaybookEvents(playbookId, event = 'fetched') {
1266
+ const row = this.db
1267
+ .prepare('SELECT COUNT(*) as count FROM playbook_events WHERE playbook_id = ? AND event = ?')
1268
+ .get(playbookId, event);
1269
+ return row.count;
1270
+ }
1088
1271
  // Cleanup
1089
1272
  close() {
1090
1273
  this.db.close();
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/models/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/models/database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { PatchOp } from '@agent-deck/shared';
2
+ export type PlaybookPatchState = {
3
+ body: string;
4
+ triggers: string[];
5
+ };
6
+ export type ApplyPatchOpsResult = {
7
+ ok: true;
8
+ value: PlaybookPatchState;
9
+ } | {
10
+ ok: false;
11
+ conflict: string;
12
+ };
13
+ /** All-or-nothing: any conflict aborts the whole batch. */
14
+ export declare function applyPatchOps(initial: PlaybookPatchState, ops: PatchOp[]): ApplyPatchOpsResult;
15
+ //# sourceMappingURL=apply-patch-ops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-patch-ops.d.ts","sourceRoot":"","sources":["../../src/playbooks/apply-patch-ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,kBAAkB,CAAA;CAAE,GACvC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AA+GpC,2DAA2D;AAC3D,wBAAgB,aAAa,CAC3B,OAAO,EAAE,kBAAkB,EAC3B,GAAG,EAAE,OAAO,EAAE,GACb,mBAAmB,CAQrB"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyPatchOps = applyPatchOps;
4
+ function parseSections(body) {
5
+ const lines = body.split('\n');
6
+ const sections = [];
7
+ let preamble = [];
8
+ let current = null;
9
+ let inPreamble = true;
10
+ for (const line of lines) {
11
+ const headerMatch = /^##\s+(.+?)\s*$/.exec(line);
12
+ if (headerMatch) {
13
+ inPreamble = false;
14
+ if (current)
15
+ sections.push(current);
16
+ current = { name: headerMatch[1], lines: [] };
17
+ continue;
18
+ }
19
+ if (inPreamble) {
20
+ preamble.push(line);
21
+ }
22
+ else if (current) {
23
+ current.lines.push(line);
24
+ }
25
+ }
26
+ if (current)
27
+ sections.push(current);
28
+ return { preamble: preamble.join('\n'), sections };
29
+ }
30
+ function serializeSections(preamble, sections) {
31
+ const parts = [];
32
+ const trimmedPreamble = preamble.trimEnd();
33
+ if (trimmedPreamble)
34
+ parts.push(trimmedPreamble);
35
+ for (const section of sections) {
36
+ parts.push(`## ${section.name}`);
37
+ if (section.lines.length > 0) {
38
+ const sectionBody = section.lines.join('\n');
39
+ parts.push(sectionBody.endsWith('\n') ? sectionBody.slice(0, -1) : sectionBody);
40
+ }
41
+ }
42
+ return parts.join('\n\n') + (parts.length > 0 ? '\n' : '');
43
+ }
44
+ function findSection(sections, name) {
45
+ const normalized = name.trim().toLowerCase();
46
+ return sections.find((s) => s.name.trim().toLowerCase() === normalized);
47
+ }
48
+ function formatListItem(text) {
49
+ const trimmed = text.trim();
50
+ if (/^(-|\d+\.)\s/.test(trimmed))
51
+ return trimmed;
52
+ return `- ${trimmed}`;
53
+ }
54
+ function applyBodyOp(state, op) {
55
+ if (op.op === 'rewrite_body') {
56
+ return { ok: true, value: { ...state, body: op.text } };
57
+ }
58
+ if (op.op === 'set_triggers') {
59
+ return { ok: true, value: { ...state, triggers: [...op.triggers] } };
60
+ }
61
+ const parsed = parseSections(state.body);
62
+ const sections = parsed.sections.map((s) => ({ name: s.name, lines: [...s.lines] }));
63
+ if (op.op === 'add_item') {
64
+ let section = findSection(sections, op.section);
65
+ if (!section) {
66
+ section = { name: op.section, lines: [] };
67
+ sections.push(section);
68
+ }
69
+ section.lines.push(formatListItem(op.text));
70
+ return {
71
+ ok: true,
72
+ value: { ...state, body: serializeSections(parsed.preamble, sections) },
73
+ };
74
+ }
75
+ const section = findSection(sections, op.section);
76
+ if (!section) {
77
+ return { ok: false, conflict: `Section "${op.section}" not found` };
78
+ }
79
+ if (op.op === 'amend_item' || op.op === 'remove_item') {
80
+ const index = section.lines.findIndex((line) => line === op.anchor);
81
+ if (index === -1) {
82
+ return {
83
+ ok: false,
84
+ conflict: `Anchor not found in section "${op.section}": ${op.anchor}`,
85
+ };
86
+ }
87
+ if (op.op === 'amend_item') {
88
+ section.lines[index] = formatListItem(op.text);
89
+ }
90
+ else {
91
+ section.lines.splice(index, 1);
92
+ }
93
+ return {
94
+ ok: true,
95
+ value: { ...state, body: serializeSections(parsed.preamble, sections) },
96
+ };
97
+ }
98
+ return { ok: false, conflict: `Unsupported op: ${op.op}` };
99
+ }
100
+ /** All-or-nothing: any conflict aborts the whole batch. */
101
+ function applyPatchOps(initial, ops) {
102
+ let state = { ...initial, triggers: [...initial.triggers] };
103
+ for (const op of ops) {
104
+ const result = applyBodyOp(state, op);
105
+ if (!result.ok)
106
+ return result;
107
+ state = result.value;
108
+ }
109
+ return { ok: true, value: state };
110
+ }
111
+ //# sourceMappingURL=apply-patch-ops.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-patch-ops.js","sourceRoot":"","sources":["../../src/playbooks/apply-patch-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { ProposePlaybookPatchInput, type PatchPreview, type PlaybookPatch, type PlaybookPatchSource } from '@agent-deck/shared';
2
+ import { DatabaseManager } from '../models/database';
3
+ import { PlaybookManager } from './playbook-manager';
4
+ export declare class PatchConflictError extends Error {
5
+ constructor(message: string);
6
+ }
7
+ export declare class PatchManager {
8
+ private db;
9
+ private playbookManager;
10
+ constructor(db: DatabaseManager, playbookManager: PlaybookManager);
11
+ private newPatchId;
12
+ propose(input: ProposePlaybookPatchInput, source: PlaybookPatchSource, sourceRef: string | null, deckIdForCreate?: string): Promise<PlaybookPatch>;
13
+ preview(patchId: string): Promise<PatchPreview | null>;
14
+ accept(patchId: string): Promise<PlaybookPatch>;
15
+ reject(patchId: string, reason: string): Promise<PlaybookPatch | null>;
16
+ list(status?: PlaybookPatch['status']): Promise<PlaybookPatch[]>;
17
+ snapshotVersion(playbook: {
18
+ id: string;
19
+ title: string;
20
+ body: string;
21
+ triggers: string[];
22
+ }, patchId: string | null, actor: 'user' | 'agent'): Promise<void>;
23
+ }
24
+ //# sourceMappingURL=patch-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch-manager.d.ts","sourceRoot":"","sources":["../../src/playbooks/patch-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,yBAAyB,EAIzB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EAIzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,eAAe;gBADf,EAAE,EAAE,eAAe,EACnB,eAAe,EAAE,eAAe;IAG1C,OAAO,CAAC,UAAU;IAIZ,OAAO,CACX,KAAK,EAAE,yBAAyB,EAChC,MAAM,EAAE,mBAAmB,EAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,aAAa,CAAC;IAgDnB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA2CtD,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAgE/C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAStE,IAAI,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAIhE,eAAe,CACnB,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,EACzE,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,KAAK,EAAE,MAAM,GAAG,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC;CAWjB"}