@theihtisham/agent-shadow-brain 7.0.0 → 7.1.3

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 (130) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +47 -385
  3. package/dist/activity-cli.d.ts +3 -0
  4. package/dist/activity-cli.d.ts.map +1 -0
  5. package/dist/activity-cli.js +78 -0
  6. package/dist/activity-cli.js.map +1 -0
  7. package/dist/adapters/index.d.ts +2 -1
  8. package/dist/adapters/index.d.ts.map +1 -1
  9. package/dist/adapters/index.js +3 -2
  10. package/dist/adapters/index.js.map +1 -1
  11. package/dist/brain/activity-journal.d.ts +82 -0
  12. package/dist/brain/activity-journal.d.ts.map +1 -0
  13. package/dist/brain/activity-journal.js +314 -0
  14. package/dist/brain/activity-journal.js.map +1 -0
  15. package/dist/brain/activity-reporting.d.ts +14 -0
  16. package/dist/brain/activity-reporting.d.ts.map +1 -0
  17. package/dist/brain/activity-reporting.js +17 -0
  18. package/dist/brain/activity-reporting.js.map +1 -0
  19. package/dist/brain/auto-update.js +1 -1
  20. package/dist/brain/brain-portability.js +1 -1
  21. package/dist/brain/client-integrations.d.ts +61 -0
  22. package/dist/brain/client-integrations.d.ts.map +1 -0
  23. package/dist/brain/client-integrations.js +98 -0
  24. package/dist/brain/client-integrations.js.map +1 -0
  25. package/dist/brain/context-assembly.d.ts +76 -0
  26. package/dist/brain/context-assembly.d.ts.map +1 -0
  27. package/dist/brain/context-assembly.js +305 -0
  28. package/dist/brain/context-assembly.js.map +1 -0
  29. package/dist/brain/feature-settings.d.ts +58 -0
  30. package/dist/brain/feature-settings.d.ts.map +1 -0
  31. package/dist/brain/feature-settings.js +241 -0
  32. package/dist/brain/feature-settings.js.map +1 -0
  33. package/dist/brain/global-brain.d.ts +7 -0
  34. package/dist/brain/global-brain.d.ts.map +1 -1
  35. package/dist/brain/global-brain.js +19 -4
  36. package/dist/brain/global-brain.js.map +1 -1
  37. package/dist/brain/mcp-server.d.ts +23 -1
  38. package/dist/brain/mcp-server.d.ts.map +1 -1
  39. package/dist/brain/mcp-server.js +224 -24
  40. package/dist/brain/mcp-server.js.map +1 -1
  41. package/dist/brain/mcp-stdio.d.ts +12 -0
  42. package/dist/brain/mcp-stdio.d.ts.map +1 -0
  43. package/dist/brain/mcp-stdio.js +134 -0
  44. package/dist/brain/mcp-stdio.js.map +1 -0
  45. package/dist/brain/memory-annotations.d.ts +97 -0
  46. package/dist/brain/memory-annotations.d.ts.map +1 -0
  47. package/dist/brain/memory-annotations.js +388 -0
  48. package/dist/brain/memory-annotations.js.map +1 -0
  49. package/dist/brain/memory-graph.d.ts.map +1 -1
  50. package/dist/brain/memory-graph.js +12 -23
  51. package/dist/brain/memory-graph.js.map +1 -1
  52. package/dist/brain/memory-sources.d.ts +8 -0
  53. package/dist/brain/memory-sources.d.ts.map +1 -0
  54. package/dist/brain/memory-sources.js +27 -0
  55. package/dist/brain/memory-sources.js.map +1 -0
  56. package/dist/brain/orchestrator.js +1 -1
  57. package/dist/brain/subconscious.d.ts +21 -24
  58. package/dist/brain/subconscious.d.ts.map +1 -1
  59. package/dist/brain/subconscious.js +82 -218
  60. package/dist/brain/subconscious.js.map +1 -1
  61. package/dist/brain/task-workflow.d.ts +22 -0
  62. package/dist/brain/task-workflow.d.ts.map +1 -0
  63. package/dist/brain/task-workflow.js +182 -0
  64. package/dist/brain/task-workflow.js.map +1 -0
  65. package/dist/brain/workflow-skills.d.ts +86 -0
  66. package/dist/brain/workflow-skills.d.ts.map +1 -0
  67. package/dist/brain/workflow-skills.js +514 -0
  68. package/dist/brain/workflow-skills.js.map +1 -0
  69. package/dist/cli.js +21 -2
  70. package/dist/cli.js.map +1 -1
  71. package/dist/context-cli.d.ts +3 -0
  72. package/dist/context-cli.d.ts.map +1 -0
  73. package/dist/context-cli.js +56 -0
  74. package/dist/context-cli.js.map +1 -0
  75. package/dist/curation-cli.d.ts +4 -0
  76. package/dist/curation-cli.d.ts.map +1 -0
  77. package/dist/curation-cli.js +118 -0
  78. package/dist/curation-cli.js.map +1 -0
  79. package/dist/dashboard/live-workspace-html.d.ts +2 -0
  80. package/dist/dashboard/live-workspace-html.d.ts.map +1 -0
  81. package/dist/dashboard/live-workspace-html.js +893 -0
  82. package/dist/dashboard/live-workspace-html.js.map +1 -0
  83. package/dist/dashboard/server.d.ts +1 -0
  84. package/dist/dashboard/server.d.ts.map +1 -1
  85. package/dist/dashboard/server.js +53 -18
  86. package/dist/dashboard/server.js.map +1 -1
  87. package/dist/dashboard/v6-dashboard-html.d.ts +1 -1
  88. package/dist/dashboard/v6-dashboard-html.d.ts.map +1 -1
  89. package/dist/dashboard/v6-dashboard-html.js +7 -29
  90. package/dist/dashboard/v6-dashboard-html.js.map +1 -1
  91. package/dist/dashboard/workspace-api.d.ts +16 -0
  92. package/dist/dashboard/workspace-api.d.ts.map +1 -0
  93. package/dist/dashboard/workspace-api.js +309 -0
  94. package/dist/dashboard/workspace-api.js.map +1 -0
  95. package/dist/dashboard/workspace-html.d.ts +2 -0
  96. package/dist/dashboard/workspace-html.d.ts.map +1 -0
  97. package/dist/dashboard/workspace-html.js +2132 -0
  98. package/dist/dashboard/workspace-html.js.map +1 -0
  99. package/dist/index.d.ts +14 -0
  100. package/dist/index.d.ts.map +1 -1
  101. package/dist/index.js +10 -0
  102. package/dist/index.js.map +1 -1
  103. package/dist/integration-cli.d.ts +3 -0
  104. package/dist/integration-cli.d.ts.map +1 -0
  105. package/dist/integration-cli.js +14 -0
  106. package/dist/integration-cli.js.map +1 -0
  107. package/dist/types.d.ts +12 -3
  108. package/dist/types.d.ts.map +1 -1
  109. package/dist/workflow-cli.d.ts +3 -0
  110. package/dist/workflow-cli.d.ts.map +1 -0
  111. package/dist/workflow-cli.js +100 -0
  112. package/dist/workflow-cli.js.map +1 -0
  113. package/docs/WORKFLOW_INTEGRATION.md +105 -0
  114. package/docs/WORKSPACE.md +111 -0
  115. package/docs/assets/context-flow-v7.2.png +0 -0
  116. package/docs/assets/live-v7.1.3.png +0 -0
  117. package/docs/assets/memory-detail-v7.1.3.png +0 -0
  118. package/docs/assets/overview-v7.1.3.png +0 -0
  119. package/docs/assets/workspace-graph-v7.2.png +0 -0
  120. package/docs/assets/workspace-overview-v7.2.png +0 -0
  121. package/docs/launch/RELEASE_NOTES_v7.1.0.md +32 -0
  122. package/docs/launch/RELEASE_NOTES_v7.1.3.md +40 -0
  123. package/docs/launch/RELEASE_NOTES_v7.2.0.md +24 -0
  124. package/package.json +112 -207
  125. package/skills/shadow-debug/SKILL.md +16 -0
  126. package/skills/shadow-implement/SKILL.md +16 -0
  127. package/skills/shadow-release/SKILL.md +16 -0
  128. package/skills/shadow-research/SKILL.md +12 -0
  129. package/skills/shadow-review/SKILL.md +14 -0
  130. package/skills/shadow-workflow/SKILL.md +31 -0
@@ -0,0 +1,388 @@
1
+ import * as fs from 'node:fs';
2
+ import * as os from 'node:os';
3
+ import * as path from 'node:path';
4
+ import { randomUUID } from 'node:crypto';
5
+ import { setTimeout as delay } from 'node:timers/promises';
6
+ export const MEMORY_ANNOTATIONS_FILENAME = 'memory-annotations.json';
7
+ export const MEMORY_ANNOTATION_LIMITS = Object.freeze({
8
+ reviews: 5000, links: 5000, history: 500, note: 1000, bytes: 16 * 1024 * 1024,
9
+ });
10
+ export const MEMORY_REVIEW_STATES = ['active', 'archived', 'contested'];
11
+ export const MEMORY_RELATION_TYPES = ['related', 'supports', 'contradicts', 'supersedes'];
12
+ export class MemoryAnnotationsError extends Error {
13
+ constructor(code, message) {
14
+ super(message);
15
+ this.code = code;
16
+ this.name = 'MemoryAnnotationsError';
17
+ }
18
+ }
19
+ const LOCK_TIMEOUT = 3000;
20
+ const LOCK_POLL = 20;
21
+ const MAX_IDENTIFIER = 256;
22
+ const FORBIDDEN_IDS = new Set(['__proto__', 'constructor', 'prototype']);
23
+ function errno(error) {
24
+ return error?.code;
25
+ }
26
+ function record(value) {
27
+ if (value === null || typeof value !== 'object')
28
+ return false;
29
+ const prototype = Object.getPrototypeOf(value);
30
+ return prototype === Object.prototype || prototype === null;
31
+ }
32
+ function identifier(value) {
33
+ return typeof value === 'string' && value.length > 0 && value.length <= MAX_IDENTIFIER &&
34
+ value === value.trim() && !/[\u0000-\u001f\u007f]/.test(value) && !FORBIDDEN_IDS.has(value);
35
+ }
36
+ function note(value) {
37
+ return typeof value === 'string' && value.length <= MEMORY_ANNOTATION_LIMITS.note;
38
+ }
39
+ function instant(value) {
40
+ if (typeof value !== 'string')
41
+ return false;
42
+ const time = Date.parse(value);
43
+ return Number.isFinite(time) && new Date(time).toISOString() === value;
44
+ }
45
+ function reviewState(value) {
46
+ return MEMORY_REVIEW_STATES.some(state => state === value);
47
+ }
48
+ function relationType(value) {
49
+ return MEMORY_RELATION_TYPES.some(type => type === value);
50
+ }
51
+ function keysOnly(input, allowed) {
52
+ return Object.keys(input).every(key => allowed.includes(key));
53
+ }
54
+ function parseCommand(value) {
55
+ if (!record(value))
56
+ return undefined;
57
+ const raw = { ...value };
58
+ if (raw.kind === 'unlink' && identifier(raw.linkId) && keysOnly(raw, ['kind', 'linkId'])) {
59
+ return { kind: 'unlink', linkId: raw.linkId };
60
+ }
61
+ if (!identifier(raw.projectId) || (raw.note !== undefined && !note(raw.note)))
62
+ return undefined;
63
+ const reviewNote = typeof raw.note === 'string' ? raw.note.trim() : '';
64
+ if (raw.kind === 'review' && identifier(raw.memoryId) && reviewState(raw.state) &&
65
+ keysOnly(raw, ['kind', 'projectId', 'memoryId', 'state', 'note'])) {
66
+ return { kind: 'review', projectId: raw.projectId, memoryId: raw.memoryId, state: raw.state, note: reviewNote };
67
+ }
68
+ if (raw.kind === 'link' && identifier(raw.fromId) && identifier(raw.toId) && relationType(raw.type) &&
69
+ raw.fromId !== raw.toId && keysOnly(raw, ['kind', 'projectId', 'fromId', 'toId', 'type', 'note'])) {
70
+ return {
71
+ kind: 'link', projectId: raw.projectId, fromId: raw.fromId, toId: raw.toId,
72
+ type: raw.type, note: reviewNote,
73
+ };
74
+ }
75
+ return undefined;
76
+ }
77
+ function key(projectId, id) {
78
+ return JSON.stringify([projectId, id]);
79
+ }
80
+ function relationKey(link) {
81
+ const symmetric = link.type === 'related' || link.type === 'contradicts';
82
+ const endpoints = symmetric ? [link.fromId, link.toId].sort() : [link.fromId, link.toId];
83
+ return JSON.stringify([link.projectId, link.type, ...endpoints]);
84
+ }
85
+ function graphProblem(links) {
86
+ const ids = new Set();
87
+ const relationKeys = new Set();
88
+ const replacementOf = new Map();
89
+ for (const link of links) {
90
+ const relation = relationKey(link);
91
+ if (ids.has(link.id) || relationKeys.has(relation))
92
+ return 'This memory relation already exists.';
93
+ ids.add(link.id);
94
+ relationKeys.add(relation);
95
+ if (link.type !== 'supersedes')
96
+ continue;
97
+ const target = key(link.projectId, link.toId);
98
+ if (replacementOf.has(target))
99
+ return 'This memory already has a replacement. Remove that relation first.';
100
+ replacementOf.set(target, key(link.projectId, link.fromId));
101
+ }
102
+ const complete = new Set();
103
+ for (const start of replacementOf.keys()) {
104
+ const seen = new Set();
105
+ for (let current = start; current !== undefined && !complete.has(current); current = replacementOf.get(current)) {
106
+ if (seen.has(current))
107
+ return 'A supersession chain cannot contain a cycle.';
108
+ seen.add(current);
109
+ }
110
+ for (const id of seen)
111
+ complete.add(id);
112
+ }
113
+ return undefined;
114
+ }
115
+ function validReview(value) {
116
+ return record(value) && keysOnly(value, ['projectId', 'state', 'note', 'updatedAt']) &&
117
+ identifier(value.projectId) && reviewState(value.state) && note(value.note) && instant(value.updatedAt);
118
+ }
119
+ function validLink(value) {
120
+ return record(value) && keysOnly(value, ['id', 'projectId', 'fromId', 'toId', 'type', 'note', 'createdAt']) &&
121
+ identifier(value.id) && identifier(value.projectId) &&
122
+ identifier(value.fromId) && identifier(value.toId) && value.fromId !== value.toId &&
123
+ relationType(value.type) && note(value.note) && instant(value.createdAt);
124
+ }
125
+ function validHistory(history, revision) {
126
+ if (!Array.isArray(history) || history.length !== Math.min(revision, MEMORY_ANNOTATION_LIMITS.history))
127
+ return false;
128
+ const first = revision - history.length + 1;
129
+ return history.every((event, index) => {
130
+ if (!record(event) || !keysOnly(event, ['revision', 'at', 'projectId', 'command', 'relationId', 'relation', 'previousReview']) ||
131
+ event.revision !== first + index || !instant(event.at) || !identifier(event.projectId))
132
+ return false;
133
+ const command = parseCommand(event.command);
134
+ if (!command)
135
+ return false;
136
+ if (command.kind === 'review') {
137
+ return command.projectId === event.projectId && event.relationId === undefined && event.relation === undefined &&
138
+ (event.previousReview === undefined || (validReview(event.previousReview) && event.previousReview.projectId === event.projectId));
139
+ }
140
+ if (event.previousReview !== undefined || !validLink(event.relation) ||
141
+ event.relation.id !== event.relationId || event.relation.projectId !== event.projectId)
142
+ return false;
143
+ if (command.kind === 'unlink')
144
+ return event.relationId === command.linkId;
145
+ return command.projectId === event.projectId && command.type === event.relation.type &&
146
+ command.fromId === event.relation.fromId && command.toId === event.relation.toId;
147
+ });
148
+ }
149
+ function emptySnapshot() {
150
+ return { schemaVersion: 1, revision: 0, updatedAt: null, reviews: {}, links: [], history: [] };
151
+ }
152
+ function parseSnapshot(raw) {
153
+ try {
154
+ const data = JSON.parse(raw);
155
+ if (record(data) && keysOnly(data, ['schemaVersion', 'revision', 'updatedAt', 'reviews', 'links', 'history']) &&
156
+ data.schemaVersion === 1 && typeof data.revision === 'number' &&
157
+ Number.isSafeInteger(data.revision) && data.revision >= 1 && instant(data.updatedAt) &&
158
+ record(data.reviews) && Object.keys(data.reviews).length <= MEMORY_ANNOTATION_LIMITS.reviews &&
159
+ Object.entries(data.reviews).every(([id, review]) => identifier(id) && validReview(review)) &&
160
+ Array.isArray(data.links) && data.links.length <= MEMORY_ANNOTATION_LIMITS.links &&
161
+ data.links.every(validLink) && !graphProblem(data.links) && validHistory(data.history, data.revision) &&
162
+ data.history[data.history.length - 1].at === data.updatedAt) {
163
+ return {
164
+ schemaVersion: 1, revision: data.revision, updatedAt: data.updatedAt,
165
+ reviews: data.reviews, links: data.links, history: data.history,
166
+ };
167
+ }
168
+ }
169
+ catch { /* Preserve store bytes and report the schema error without content. */ }
170
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_STORE', 'Memory annotations are malformed or use an unsupported schema.');
171
+ }
172
+ /** Use the latest review and replacement relation for the supplied project and memory. */
173
+ export function memoryState(snapshot, projectId, memoryId) {
174
+ if (snapshot.links.some(link => link.type === 'supersedes' && link.projectId === projectId && link.toId === memoryId)) {
175
+ return 'superseded';
176
+ }
177
+ const review = snapshot.reviews[memoryId];
178
+ return review?.projectId === projectId ? review.state : 'active';
179
+ }
180
+ /** Independent local curation state. The original memory store remains schema version 1. */
181
+ export class MemoryAnnotationsStore {
182
+ constructor(options) {
183
+ this.filePath = path.resolve(options.filePath ?? path.join(os.homedir(), '.shadow-brain', MEMORY_ANNOTATIONS_FILENAME));
184
+ this.resolveMemory = options.resolveMemory;
185
+ this.lockTimeout = typeof options.lockTimeoutMs === 'number' && Number.isFinite(options.lockTimeoutMs)
186
+ ? Math.max(0, Math.min(60000, options.lockTimeoutMs))
187
+ : LOCK_TIMEOUT;
188
+ }
189
+ get() {
190
+ let raw;
191
+ try {
192
+ const stat = fs.lstatSync(this.filePath, { throwIfNoEntry: false });
193
+ if (!stat)
194
+ return emptySnapshot();
195
+ if (!stat.isFile() || stat.isSymbolicLink() || stat.nlink !== 1) {
196
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_STORE', 'Memory annotations must be a regular local file.');
197
+ }
198
+ if (stat.size > MEMORY_ANNOTATION_LIMITS.bytes) {
199
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_STORE', 'Memory annotation file exceeds its size limit.');
200
+ }
201
+ const fd = fs.openSync(this.filePath, fs.constants.O_RDONLY | (fs.constants.O_NOFOLLOW ?? 0));
202
+ try {
203
+ const current = fs.fstatSync(fd);
204
+ if (!current.isFile() || current.nlink !== 1 || current.size > MEMORY_ANNOTATION_LIMITS.bytes) {
205
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_STORE', 'Memory annotation file changed or exceeds its size limit.');
206
+ }
207
+ raw = fs.readFileSync(fd, 'utf8');
208
+ }
209
+ finally {
210
+ fs.closeSync(fd);
211
+ }
212
+ }
213
+ catch (error) {
214
+ if (error instanceof MemoryAnnotationsError)
215
+ throw error;
216
+ throw new MemoryAnnotationsError('ANNOTATIONS_READ_FAILED', 'Could not read memory annotations.');
217
+ }
218
+ return parseSnapshot(raw);
219
+ }
220
+ async update(raw, expectedRevision) {
221
+ const command = parseCommand(raw);
222
+ if (!command || (expectedRevision !== undefined &&
223
+ (!Number.isSafeInteger(expectedRevision) || expectedRevision < 0))) {
224
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_COMMAND', 'Invalid memory annotation command or revision.');
225
+ }
226
+ try {
227
+ fs.mkdirSync(path.dirname(this.filePath), { recursive: true });
228
+ }
229
+ catch {
230
+ throw new MemoryAnnotationsError('ANNOTATIONS_WRITE_FAILED', 'Could not open the memory annotation directory.');
231
+ }
232
+ const release = await this.acquireLock();
233
+ try {
234
+ const snapshot = this.get();
235
+ if (expectedRevision !== undefined && expectedRevision !== snapshot.revision) {
236
+ throw new MemoryAnnotationsError('ANNOTATIONS_CONFLICT', 'Memory annotations changed. Refresh and retry the update.');
237
+ }
238
+ if (snapshot.revision === Number.MAX_SAFE_INTEGER) {
239
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_STORE', 'Memory annotation revision has reached its limit.');
240
+ }
241
+ const at = new Date().toISOString();
242
+ const revision = snapshot.revision + 1;
243
+ const event = this.apply(snapshot, command, revision, at);
244
+ snapshot.revision = revision;
245
+ snapshot.updatedAt = at;
246
+ snapshot.history = [...snapshot.history, event].slice(-MEMORY_ANNOTATION_LIMITS.history);
247
+ this.replace(snapshot);
248
+ return snapshot;
249
+ }
250
+ finally {
251
+ release();
252
+ }
253
+ }
254
+ requireMemory(id, projectId) {
255
+ const memory = this.resolveMemory(id);
256
+ if (memory?.id !== id || memory.projectId !== projectId) {
257
+ throw new MemoryAnnotationsError('ANNOTATIONS_NOT_FOUND', 'Memory was not found in the selected project.');
258
+ }
259
+ }
260
+ apply(snapshot, command, revision, at) {
261
+ if (command.kind === 'unlink') {
262
+ const index = snapshot.links.findIndex(link => link.id === command.linkId);
263
+ if (index < 0)
264
+ throw new MemoryAnnotationsError('ANNOTATIONS_NOT_FOUND', 'Memory relation was not found.');
265
+ const [removed] = snapshot.links.splice(index, 1);
266
+ return { command, revision, at, projectId: removed.projectId, relationId: removed.id, relation: removed };
267
+ }
268
+ const { projectId } = command;
269
+ if (command.kind === 'review') {
270
+ this.requireMemory(command.memoryId, projectId);
271
+ const previous = snapshot.reviews[command.memoryId];
272
+ if (previous && previous.projectId !== projectId) {
273
+ throw new MemoryAnnotationsError('ANNOTATIONS_CONFLICT', 'Memory identity no longer matches its recorded project.');
274
+ }
275
+ if (!previous && Object.keys(snapshot.reviews).length >= MEMORY_ANNOTATION_LIMITS.reviews) {
276
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_COMMAND', 'Memory review storage limit reached.');
277
+ }
278
+ snapshot.reviews[command.memoryId] = { projectId, state: command.state, note: command.note ?? '', updatedAt: at };
279
+ return { command, revision, at, projectId, ...(previous ? { previousReview: previous } : {}) };
280
+ }
281
+ this.requireMemory(command.fromId, projectId);
282
+ this.requireMemory(command.toId, projectId);
283
+ if (snapshot.links.length >= MEMORY_ANNOTATION_LIMITS.links) {
284
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_COMMAND', 'Memory relation storage limit reached.');
285
+ }
286
+ const relation = {
287
+ id: randomUUID(), projectId, fromId: command.fromId, toId: command.toId,
288
+ type: command.type, note: command.note ?? '', createdAt: at,
289
+ };
290
+ snapshot.links.push(relation);
291
+ const problem = graphProblem(snapshot.links);
292
+ if (problem)
293
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_COMMAND', problem);
294
+ return { command, revision, at, projectId, relationId: relation.id, relation };
295
+ }
296
+ async acquireLock() {
297
+ const lock = this.filePath + '.lock';
298
+ const deadline = performance.now() + this.lockTimeout;
299
+ for (;;) {
300
+ let fd;
301
+ try {
302
+ fd = fs.openSync(lock, 'wx', 0o600);
303
+ }
304
+ catch (error) {
305
+ if (errno(error) !== 'EEXIST')
306
+ throw new MemoryAnnotationsError('ANNOTATIONS_LOCK_FAILED', 'Could not acquire the memory annotation lock.');
307
+ const remaining = deadline - performance.now();
308
+ if (remaining <= 0)
309
+ break;
310
+ await delay(Math.min(remaining, LOCK_POLL));
311
+ if (performance.now() >= deadline)
312
+ break;
313
+ continue;
314
+ }
315
+ let owner;
316
+ try {
317
+ owner = fs.fstatSync(fd, { bigint: true });
318
+ fs.writeFileSync(fd, JSON.stringify({ pid: process.pid, acquiredAt: new Date().toISOString() }));
319
+ fs.closeSync(fd);
320
+ }
321
+ catch {
322
+ try {
323
+ fs.closeSync(fd);
324
+ }
325
+ catch { /* retain the original lock failure */ }
326
+ try {
327
+ if (owner)
328
+ this.unlinkOwnedLock(lock, owner);
329
+ }
330
+ catch { /* preserve an unfamiliar lock */ }
331
+ throw new MemoryAnnotationsError('ANNOTATIONS_LOCK_FAILED', 'Could not initialize the memory annotation lock.');
332
+ }
333
+ const owned = owner;
334
+ return () => this.unlinkOwnedLock(lock, owned);
335
+ }
336
+ throw new MemoryAnnotationsError('ANNOTATIONS_LOCK_TIMEOUT', 'Timed out waiting for the memory annotation lock.');
337
+ }
338
+ unlinkOwnedLock(lock, owner) {
339
+ try {
340
+ const current = fs.lstatSync(lock, { bigint: true, throwIfNoEntry: false });
341
+ if (current?.dev !== owner.dev || current.ino !== owner.ino)
342
+ throw new Error('Lock ownership changed.');
343
+ fs.unlinkSync(lock);
344
+ }
345
+ catch {
346
+ throw new MemoryAnnotationsError('ANNOTATIONS_LOCK_FAILED', 'Could not release the memory annotation lock.');
347
+ }
348
+ }
349
+ replace(snapshot) {
350
+ const payload = JSON.stringify(snapshot, null, 2) + '\n';
351
+ if (Buffer.byteLength(payload) > MEMORY_ANNOTATION_LIMITS.bytes) {
352
+ throw new MemoryAnnotationsError('ANNOTATIONS_INVALID_COMMAND', 'Memory annotation storage limit reached.');
353
+ }
354
+ const temporary = this.filePath + '.' + randomUUID() + '.tmp';
355
+ let created = false;
356
+ try {
357
+ const fd = fs.openSync(temporary, 'wx', 0o600);
358
+ created = true;
359
+ try {
360
+ fs.writeFileSync(fd, payload);
361
+ fs.fsyncSync(fd);
362
+ }
363
+ finally {
364
+ fs.closeSync(fd);
365
+ }
366
+ fs.renameSync(temporary, this.filePath);
367
+ created = false;
368
+ }
369
+ catch {
370
+ throw new MemoryAnnotationsError('ANNOTATIONS_WRITE_FAILED', 'Could not save memory annotations.');
371
+ }
372
+ finally {
373
+ if (created) {
374
+ try {
375
+ fs.unlinkSync(temporary);
376
+ }
377
+ catch { /* retain the original write failure */ }
378
+ }
379
+ }
380
+ }
381
+ }
382
+ export function memoryAnnotationsFor(brain) {
383
+ return new MemoryAnnotationsStore({
384
+ filePath: path.join(path.dirname(brain.dbPath), MEMORY_ANNOTATIONS_FILENAME),
385
+ resolveMemory: id => brain.getEntry(id),
386
+ });
387
+ }
388
+ //# sourceMappingURL=memory-annotations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-annotations.js","sourceRoot":"","sources":["../../src/brain/memory-annotations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-graph.d.ts","sourceRoot":"","sources":["../../src/brain/memory-graph.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AACzE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,mBAAmB,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID,qBAAa,WAAW;IACtB,oEAAoE;IAC9D,KAAK,CAAC,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiM7E,6EAA6E;IAC7E,OAAO,CAAC,QAAQ;CAuCjB;AAGD,wBAAgB,cAAc,IAAI,WAAW,CAG5C;AACD,wBAAgB,wBAAwB,IAAI,IAAI,CAAsB"}
1
+ {"version":3,"file":"memory-graph.d.ts","sourceRoot":"","sources":["../../src/brain/memory-graph.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,CAAC;AACzE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,mBAAmB,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAOD,qBAAa,WAAW;IACtB,oEAAoE;IAC9D,KAAK,CAAC,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmL7E,6EAA6E;IAC7E,OAAO,CAAC,QAAQ;CAuCjB;AAGD,wBAAgB,cAAc,IAAI,WAAW,CAG5C;AACD,wBAAgB,wBAAwB,IAAI,IAAI,CAAsB"}
@@ -9,29 +9,22 @@
9
9
  //
10
10
  // Zero new dependencies. Pure in-memory derivation from the global brain.
11
11
  import { getGlobalBrain } from './global-brain.js';
12
+ import { normalizeMemorySources } from './memory-sources.js';
13
+ function boundedInteger(n, fallback, lo, hi) {
14
+ return typeof n === 'number' && Number.isFinite(n) ? Math.max(lo, Math.min(hi, Math.trunc(n))) : fallback;
15
+ }
12
16
  const clamp = (n, lo, hi) => Math.max(lo, Math.min(hi, n));
13
17
  export class MemoryGraph {
14
18
  /** Build a constellation snapshot from the current global brain. */
15
19
  async build(opts = {}) {
16
- const limit = clamp(opts.limit ?? 400, 1, 2000);
17
- const maxNodes = clamp(opts.maxNodes ?? 180, 20, 600);
18
- const maxRelated = clamp(opts.maxRelatedPerNode ?? 6, 1, 20);
20
+ const limit = boundedInteger(opts.limit, 400, 1, 2000);
21
+ const maxNodes = boundedInteger(opts.maxNodes, 180, 20, 600);
22
+ const maxRelated = boundedInteger(opts.maxRelatedPerNode, 6, 1, 20);
19
23
  const minImportance = opts.minImportance ?? 0;
20
- let entries = [];
21
- let projectScoped = false;
22
- try {
23
- const brain = getGlobalBrain();
24
- await brain.init();
25
- if (opts.projectId) {
26
- entries = brain.recall({ projectId: opts.projectId, minImportance, limit });
27
- projectScoped = entries.length > 0;
28
- }
29
- if (!entries.length)
30
- entries = brain.recall({ minImportance, limit });
31
- }
32
- catch {
33
- entries = [];
34
- }
24
+ const brain = getGlobalBrain();
25
+ await brain.init();
26
+ const projectScoped = !!opts.projectId;
27
+ const entries = brain.recall({ projectId: opts.projectId, minImportance, limit });
35
28
  if (!entries.length) {
36
29
  return {
37
30
  nodes: [], edges: [],
@@ -73,10 +66,6 @@ export class MemoryGraph {
73
66
  return raw.split(',').map(t => t.trim().toLowerCase()).filter(Boolean);
74
67
  return [];
75
68
  };
76
- const sourcesOf = (e) => {
77
- const raw = e.metadata?.sources;
78
- return Array.isArray(raw) ? raw.map(String) : [];
79
- };
80
69
  // ── Build typed nodes + structural edges ────────────────────────────────
81
70
  const memTags = new Map();
82
71
  for (const e of entries) {
@@ -87,7 +76,7 @@ export class MemoryGraph {
87
76
  agentTool: e.agentTool,
88
77
  category: e.category,
89
78
  importance: e.importance,
90
- sources: sourcesOf(e),
79
+ sources: normalizeMemorySources(e.metadata),
91
80
  tags: tagsOf(e),
92
81
  createdAt: e.createdAt,
93
82
  });
@@ -1 +1 @@
1
- {"version":3,"file":"memory-graph.js","sourceRoot":"","sources":["../../src/brain/memory-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-graph.js","sourceRoot":"","sources":["../../src/brain/memory-graph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ interface MemorySourceOptions {
2
+ limit?: number;
3
+ maxChars?: number;
4
+ }
5
+ /** Normalize source references already recorded in a memory without opening their targets. */
6
+ export declare function normalizeMemorySources(metadata: Record<string, unknown> | undefined, options?: MemorySourceOptions): string[];
7
+ export {};
8
+ //# sourceMappingURL=memory-sources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-sources.d.ts","sourceRoot":"","sources":["../../src/brain/memory-sources.ts"],"names":[],"mappings":"AAAA,UAAU,mBAAmB;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD,8FAA8F;AAC9F,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC7C,OAAO,GAAE,mBAAwB,GAChC,MAAM,EAAE,CAiBV"}
@@ -0,0 +1,27 @@
1
+ function bound(value, fallback, max) {
2
+ return typeof value === 'number' && Number.isFinite(value) ? Math.max(1, Math.min(max, Math.trunc(value))) : fallback;
3
+ }
4
+ /** Normalize source references already recorded in a memory without opening their targets. */
5
+ export function normalizeMemorySources(metadata, options = {}) {
6
+ if (!metadata)
7
+ return [];
8
+ const limit = bound(options.limit, 8, 32);
9
+ const maxChars = bound(options.maxChars, 240, 2000);
10
+ const refs = Array.isArray(metadata.sources) ? metadata.sources.slice(0, 64) : [];
11
+ const seen = new Set();
12
+ for (const value of [...refs, metadata.source, metadata.sourceFile, metadata.filePath]) {
13
+ if (typeof value !== 'string')
14
+ continue;
15
+ const cleaned = value.replace(/[\u0000-\u0020\u007f-\u009f\s]+/g, ' ').trim();
16
+ if (!cleaned)
17
+ continue;
18
+ const clipped = cleaned.length > maxChars
19
+ ? cleaned.slice(0, maxChars - 1).replace(/[\ud800-\udbff]$/, '').trimEnd() + '…'
20
+ : cleaned;
21
+ seen.add(clipped);
22
+ if (seen.size === limit)
23
+ break;
24
+ }
25
+ return [...seen];
26
+ }
27
+ //# sourceMappingURL=memory-sources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-sources.js","sourceRoot":"","sources":["../../src/brain/memory-sources.ts"],"names":[],"mappings":"AAKA,SAAS,KAAK,CAAC,KAAyB,EAAE,QAAgB,EAAE,GAAW;IACrE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxH,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,sBAAsB,CACpC,QAA6C,EAC7C,UAA+B,EAAE;IAEjC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvF,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QACxC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9E,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ;YACvC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,GAAG;YAChF,CAAC,CAAC,OAAO,CAAC;QACZ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;YAAE,MAAM;IACjC,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;AACnB,CAAC"}
@@ -780,7 +780,7 @@ export class Orchestrator extends EventEmitter {
780
780
  getStatus() {
781
781
  return {
782
782
  running: this.running,
783
- version: '6.0.3',
783
+ version: '7.1.3',
784
784
  agents: this.adapters.map(a => `${a.displayName} (${a.name})`),
785
785
  insightsGenerated: this.currentSession?.insights.length || 0,
786
786
  filesReviewed: this.currentSession?.filesReviewed || 0,