dsh-super-code 0.1.4 → 0.2.1

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 (63) hide show
  1. package/README.md +43 -31
  2. package/client/index.js +253 -20
  3. package/docs/Changelog.md +41 -0
  4. package/docs/Compatibility.md +76 -0
  5. package/docs/EvaluationResults.md +66 -0
  6. package/docs/UsageGuide.md +114 -0
  7. package/docs/images/agent-tree-preview.png +0 -0
  8. package/docs/images/agent-tree.png +0 -0
  9. package/docs/images/preset-settings-preview.png +0 -0
  10. package/docs/images/preset-settings.png +0 -0
  11. package/lib/core/host-messages.d.ts +11 -0
  12. package/lib/core/host-messages.d.ts.map +1 -0
  13. package/lib/core/host-messages.js +13 -0
  14. package/lib/core/host-messages.js.map +1 -0
  15. package/lib/core/task-memory.d.ts +6 -0
  16. package/lib/core/task-memory.d.ts.map +1 -1
  17. package/lib/core/task-memory.js +13 -4
  18. package/lib/core/task-memory.js.map +1 -1
  19. package/lib/core/tool-evidence.d.ts.map +1 -1
  20. package/lib/core/tool-evidence.js +9 -9
  21. package/lib/core/tool-evidence.js.map +1 -1
  22. package/lib/dsh/index.d.ts +1 -1
  23. package/lib/dsh/index.d.ts.map +1 -1
  24. package/lib/dsh/index.js +23 -1
  25. package/lib/dsh/index.js.map +1 -1
  26. package/lib/dsh/memory-library.d.ts +45 -0
  27. package/lib/dsh/memory-library.d.ts.map +1 -0
  28. package/lib/dsh/memory-library.js +106 -0
  29. package/lib/dsh/memory-library.js.map +1 -0
  30. package/lib/dsh/preset-files.d.ts +26 -0
  31. package/lib/dsh/preset-files.d.ts.map +1 -0
  32. package/lib/dsh/preset-files.js +44 -0
  33. package/lib/dsh/preset-files.js.map +1 -0
  34. package/lib/dsh/preset-installation.d.ts +2 -2
  35. package/lib/dsh/preset-installation.d.ts.map +1 -1
  36. package/lib/dsh/preset-installation.js +5 -8
  37. package/lib/dsh/preset-installation.js.map +1 -1
  38. package/lib/dsh/preset-metadata.js +1 -1
  39. package/lib/dsh/preset-metadata.js.map +1 -1
  40. package/lib/dsh/super-code.d.ts.map +1 -1
  41. package/lib/dsh/super-code.js +159 -3
  42. package/lib/dsh/super-code.js.map +1 -1
  43. package/lib/index.d.ts +1 -0
  44. package/lib/index.d.ts.map +1 -1
  45. package/lib/index.js +2 -1
  46. package/lib/index.js.map +1 -1
  47. package/lib/long-memory.d.ts +75 -0
  48. package/lib/long-memory.d.ts.map +1 -0
  49. package/lib/long-memory.js +126 -0
  50. package/lib/long-memory.js.map +1 -0
  51. package/lib/memory-usage-projection.d.ts +46 -0
  52. package/lib/memory-usage-projection.d.ts.map +1 -0
  53. package/lib/memory-usage-projection.js +111 -0
  54. package/lib/memory-usage-projection.js.map +1 -0
  55. package/lib/task-memory-projection.d.ts +7 -0
  56. package/lib/task-memory-projection.d.ts.map +1 -1
  57. package/lib/task-memory-projection.js +4 -2
  58. package/lib/task-memory-projection.js.map +1 -1
  59. package/lib/task-memory-store.js +1 -1
  60. package/lib/task-memory-store.js.map +1 -1
  61. package/locales/en.json +6 -0
  62. package/locales/zh.json +6 -0
  63. package/package.json +31 -13
@@ -1,6 +1,6 @@
1
1
  import z from '@deepseek-ai/schemastery';
2
2
  import { defineTool } from '@deepseek-ai/dsh-tools';
3
- import { SessionSeq } from '@deepseek-ai/dsh-session';
3
+ import { SessionId, SessionSeq } from '@deepseek-ai/dsh-session';
4
4
  import { PERSONA_PREFIX_SECTION } from '@deepseek-ai/dsh-system-prompt';
5
5
  import { TEAM_NAMES, METHODS, SUPER_CODE_INSTRUCTIONS, readTeamMethod } from '../core/teams.js';
6
6
  import { EXPERIMENT_RECIPES, readExperimentRecipe } from '../core/experiment-recipes.js';
@@ -12,6 +12,7 @@ import { createGuidanceSelector, GUIDED_INSTRUCTIONS } from '../core/guidance.js
12
12
  import { listToolEvidence, readToolEvidence, toolEvidenceRef } from '../core/tool-evidence.js';
13
13
  import { scanSessionPage } from '../core/session-scan.js';
14
14
  import { TaskMemoryStore } from '../task-memory-store.js';
15
+ import { LongMemoryStore, longMemoryContext, longMemoryEntrySchema, memoryWorkspace, memoryGlobalNamespace, GLOBAL_PREFERENCES_TOPIC } from '../long-memory.js';
15
16
  export const name = 'super-code';
16
17
  export const inject = ['tools', 'systemPrompt', 'sessions', 'sessionProjections'];
17
18
  export const Config = z.object({
@@ -87,6 +88,37 @@ export function apply(ctx, config = {}) {
87
88
  return 'The last task-memory checkpoint is unconfirmed. Use super_code_task read to retry persistence before relying on it.';
88
89
  return taskMemoryContext(memory.current(agent.session), maxContextBytes);
89
90
  } });
91
+ ctx.systemPrompt.context({ name: 'super-code:project-memory', order: 81, text: ({ agent }) => {
92
+ if (!agent)
93
+ return '';
94
+ if (memory.isPending(agent.session))
95
+ return '';
96
+ const state = memory.current(agent.session);
97
+ const task = state.focus.kind === 'task' ? state.tasks[state.focus.id] : undefined;
98
+ if (!task?.topic)
99
+ return '';
100
+ const longMemory = ctx.get('superCodeLongMemory');
101
+ if (!longMemory)
102
+ return 'Long memory is unavailable; current task memory remains available.';
103
+ let workspace;
104
+ try {
105
+ workspace = memoryWorkspace(agent.session);
106
+ }
107
+ catch {
108
+ return 'Long memory cannot read this workspace; verify its path before relying on it.';
109
+ }
110
+ const found = longMemory.read(workspace, task.topic);
111
+ return found.kind === 'found' ? longMemoryContext(found.value, 2048, task.sourceVersion) : '';
112
+ } });
113
+ ctx.systemPrompt.context({ name: 'super-code:global-memory', order: 82, text: ({ agent }) => {
114
+ if (!agent || memory.isPending(agent.session))
115
+ return '';
116
+ const longMemory = ctx.get('superCodeLongMemory');
117
+ if (!longMemory)
118
+ return '';
119
+ const found = longMemory.read(memoryGlobalNamespace(), GLOBAL_PREFERENCES_TOPIC);
120
+ return found.kind === 'found' ? `Lower priority than the current user request, conversation and project memory: ${longMemoryContext(found.value, 1024)}` : '';
121
+ } });
90
122
  ctx.tools.register(defineTool({
91
123
  name: 'super_code_method',
92
124
  description: 'Read expertise when causes remain indistinguishable, failures repeat or recovery/state behavior is unclear. Select a method directly; omit it only to inspect a team. Reuse loaded guidance; batch with independent reads. Not a routine prerequisite.',
@@ -101,7 +133,7 @@ export function apply(ctx, config = {}) {
101
133
  }));
102
134
  ctx.tools.register(defineTool({
103
135
  name: 'super_code_task',
104
- description: `Task memory; never grants permission or executes work. Simple tasks need no record. Actions: list; read(taskId,view?); source(eventSeq); create(record); update(taskId,expectedRevision,record patch); focus(taskId); archive(taskId,expectedRevision); history(eventSeq). Create fields: id,title,team,depth,workspace,sourceVersion,goal,source:{seq,quote},requirements:[{id,text,source:{seq,quote}}],acceptance:[string]. Source seqs appear in runtime context. Update preserves omitted fields; requirement entries replace matching ids, removeRequirements explicitly removes ids. Goal/requirements/workspace/acceptance changes need a user source. Old evidence becomes stale on requirements/source revision changes. Optional updates: decisions:[string], evidence:[{summary,ref,sourceVersion,requirementsRevision,kind:observed|assumption|test|decision}], next:string, status:active|paused|completed|cancelled. Archive only finished tasks; keep eventSeq to read history. Focus does not stop work. delegate(taskId,record:{owner,attemptId,objective,ownedPaths:[string],acceptance:[string],maxTokens}) returns a compact brief to pass to host subagent. validate_member(taskId,record:{assignment:original assignment,result:{binding,owner,attemptId,outcome:completed|failed|cancelled|stop_unknown,summary,artifacts:[string],checks:[string],unknowns:[string]}}) rejects stale returns; reviewable still needs lead review. Accounting is separate; never guess costs or treat model-reported usage as a verified budget.`,
136
+ description: `Task memory; never grants permission or executes work. Simple tasks need no record. Actions: list; read(taskId,view?); source(eventSeq); create(record); update(taskId,expectedRevision,record patch); focus(taskId); archive(taskId,expectedRevision); history(eventSeq). Create fields: id,title,team,depth,workspace,sourceVersion,goal,source:{seq,quote},requirements:[{id,text,source:{seq,quote}}],acceptance:[string]. Optional topic is a specific project task category shared across sessions; keyPoints:[{kind:constraint|fact|decision|next,summary:up to 30 characters}] replaces routine decision text in context, with full details still readable. Source seqs appear in runtime context. Update preserves omitted fields; requirement entries replace matching ids, removeRequirements explicitly removes ids. Goal/requirements/workspace/acceptance/topic changes need a user source. Old evidence and key points become stale on requirements/source revision changes. Optional updates: decisions:[string], evidence:[{summary,ref,sourceVersion,requirementsRevision,kind:observed|assumption|test|decision}], next:string, status:active|paused|completed|cancelled. Archive only finished tasks; keep eventSeq to read history. Focus does not stop work. delegate(taskId,record:{owner,attemptId,objective,ownedPaths:[string],acceptance:[string],maxTokens}) returns a compact brief to pass to host subagent. validate_member(taskId,record:{assignment:original assignment,result:{binding,owner,attemptId,outcome:completed|failed|cancelled|stop_unknown,summary,artifacts:[string],checks:[string],unknowns:[string]}}) rejects stale returns; reviewable still needs lead review. Accounting is separate; never guess costs or treat model-reported usage as a verified budget.`,
105
137
  // Pagination never scans or returns an unbounded archive in one tool call.
106
138
  parameters: {
107
139
  action: { type: 'string', enum: ['list', 'read', 'source', 'create', 'update', 'focus', 'archive', 'archives', 'restore', 'history', 'delegate', 'validate_member', 'evidence'], required: true,
@@ -187,7 +219,7 @@ export function apply(ctx, config = {}) {
187
219
  throw new Error(`Task ${task.id} already exists`);
188
220
  if (Object.keys(state.tasks).length >= maxTasks)
189
221
  throw new Error('Working set is full; archive a completed task first');
190
- change = { kind: 'save', task: taskMemorySchema.parse({ ...task, ...record, createdAtSeq: session.seq, revision: 1, requirementsRevision: task.requirementsRevision + 1, delegationRevision: 1, status: 'active', decisions: [], next: '' }) };
222
+ change = { kind: 'save', task: taskMemorySchema.parse({ ...task, ...record, createdAtSeq: session.seq, revision: 1, requirementsRevision: task.requirementsRevision + 1, delegationRevision: 1, status: 'active', decisions: [], keyPoints: [], next: '' }) };
191
223
  }
192
224
  else if (args.action === 'create') {
193
225
  const record = taskMemoryCreateSchema.parse(args.record);
@@ -241,6 +273,130 @@ export function apply(ctx, config = {}) {
241
273
  }
242
274
  },
243
275
  }));
276
+ ctx.tools.register(defineTool({
277
+ name: 'super_code_memory',
278
+ description: 'Three scopes: conversation task memory lives in the session; project memory is shared by sessions in the same workspace and focused topic; global memory contains only explicit cross-project user preferences in the host storage root. Use scope:project (default) or scope:global. actions: topics pages project categories; read returns summaries or one full entry; remember adds/replaces up to 8 sourced entries, summary <=30 characters; forget removes an id. Global remember requires record.globalConfirmed:true, kind:constraint and a direct user quote stating a cross-project preference. Project facts and experience require a tool source and current sourceVersion. Entries are historical, do not verify mutable facts or grant permission.',
279
+ parameters: { action: { type: 'string', enum: ['topics', 'read', 'remember', 'forget'], required: true },
280
+ scope: { type: 'string', enum: ['project', 'global'], description: 'Default project. Global is for explicit cross-project user preferences only.' },
281
+ id: { type: 'string', description: 'Only for read or forget. Omit for topic overview.' }, record: { type: 'json' } },
282
+ output: { schema: { type: 'string' }, render: (_args, value) => [{ type: 'text', text: value }] },
283
+ execute: async (args, exec) => {
284
+ if (!exec.agent)
285
+ throw new Error('Long memory requires an agent-owned session');
286
+ const session = exec.agent.session;
287
+ const longMemory = ctx.get('superCodeLongMemory');
288
+ if (!longMemory)
289
+ throw new Error('Long memory storage is unavailable');
290
+ const scope = args.scope ?? 'project';
291
+ if (scope !== 'project' && scope !== 'global')
292
+ throw new Error('Unknown memory scope');
293
+ const workspace = scope === 'global' ? memoryGlobalNamespace() : memoryWorkspace(session);
294
+ if (args.action === 'topics') {
295
+ if (args.id !== undefined)
296
+ throw new Error('topics does not accept id');
297
+ const { offset } = json.object({ offset: json.number().int().nonnegative().safe().default(0) }).strict().parse(args.record ?? {});
298
+ const topics = scope === 'global' ? longMemory.topics(workspace).filter(item => item.topic === GLOBAL_PREFERENCES_TOPIC) : longMemory.topics(workspace);
299
+ const page = topics.slice(offset, offset + 20);
300
+ const nextOffset = offset + page.length;
301
+ return JSON.stringify({ topics: page, total: topics.length, nextOffset: nextOffset < topics.length ? nextOffset : undefined });
302
+ }
303
+ const state = (await memory.read(session, exec.signal)).state;
304
+ const task = state.focus.kind === 'task' ? requireTaskMemory(state, state.focus.id) : undefined;
305
+ if (scope === 'project' && !task?.topic)
306
+ throw new Error('Focus a task with a topic before accessing project memory');
307
+ const topic = scope === 'global' ? GLOBAL_PREFERENCES_TOPIC : task.topic;
308
+ const found = longMemory.read(workspace, topic);
309
+ const current = found.kind === 'found' ? found.value : undefined;
310
+ if (args.action === 'read') {
311
+ if (args.record !== undefined)
312
+ throw new Error('read does not accept record');
313
+ if (args.id === undefined) {
314
+ if (!current)
315
+ return JSON.stringify({ scope, topic, revision: 0, entries: [], ids: [] });
316
+ return JSON.stringify({ scope, ...JSON.parse(longMemoryContext(current, scope === 'global' ? 1024 : 2048, task?.sourceVersion)), ids: current.entries.map(entry => entry.id) });
317
+ }
318
+ if (found.kind === 'missing')
319
+ throw new Error(`Unknown memory ${args.id}`);
320
+ const entry = found.value.entries.find(item => item.id === args.id);
321
+ if (!entry)
322
+ throw new Error(`Unknown memory ${args.id}`);
323
+ const sourceSession = ctx.sessions.get(SessionId(entry.source.sessionId));
324
+ let sourceAvailability = 'session-not-live';
325
+ if (sourceSession) {
326
+ try {
327
+ if (entry.source.kind === 'user') {
328
+ assertSource(sourceSession, { seq: entry.source.eventSeq, quote: entry.source.quote });
329
+ sourceAvailability = 'available';
330
+ }
331
+ else {
332
+ const ref = toolEvidenceRef({ sessionId: sourceSession.id, callSeq: entry.source.callSeq, resultSeq: entry.source.eventSeq });
333
+ sourceAvailability = readToolEvidence(sourceSession.id, ref, seq => sourceSession.eventAt(SessionSeq(seq))).kind === 'recorded' ? 'available' : 'unavailable';
334
+ }
335
+ }
336
+ catch {
337
+ sourceAvailability = 'unavailable';
338
+ }
339
+ }
340
+ return JSON.stringify({ scope, topic, revision: found.value.revision, entry, sourceAvailability,
341
+ basis: 'historical; tool source pair checked at write time, summary/detail not semantically verified; source availability does not reverify mutable facts or grant permission' });
342
+ }
343
+ if (args.action === 'remember') {
344
+ if (args.id !== undefined)
345
+ throw new Error('remember does not accept id');
346
+ const input = json.object({ expectedRevision: json.number().int().nonnegative(), globalConfirmed: json.boolean().optional(), entries: json.array(json.object({
347
+ id: json.string(), kind: json.enum(['constraint', 'fact', 'experience']), summary: json.string(), detail: json.string(),
348
+ sourceVersion: json.string().optional(), source: json.object({
349
+ kind: json.enum(['user', 'tool']), eventSeq: json.number().int().nonnegative(), quote: json.string().min(1).max(4000).optional(),
350
+ callSeq: json.number().int().nonnegative().optional(),
351
+ }).strict(),
352
+ }).strict()).min(1).max(8) }).strict().parse(args.record);
353
+ if (scope === 'global' && input.globalConfirmed !== true)
354
+ throw new Error('Global memory requires explicit confirmation in this request');
355
+ if (scope === 'project' && input.globalConfirmed !== undefined)
356
+ throw new Error('globalConfirmed is only valid for global memory');
357
+ const entries = input.entries.map(entry => {
358
+ if (scope === 'global' && (entry.kind !== 'constraint' || entry.sourceVersion !== undefined)) {
359
+ throw new Error('Global memory accepts only sourced user preferences');
360
+ }
361
+ if (entry.kind === 'constraint') {
362
+ if (entry.source.kind !== 'user' || !entry.source.quote || entry.source.callSeq !== undefined)
363
+ throw new Error('A constraint needs a quoted user source');
364
+ assertSource(session, { seq: entry.source.eventSeq, quote: entry.source.quote });
365
+ }
366
+ else {
367
+ if (entry.source.kind !== 'tool' || entry.source.callSeq === undefined || entry.source.quote !== undefined
368
+ || !entry.sourceVersion || entry.sourceVersion !== task?.sourceVersion)
369
+ throw new Error('A fact or experience needs current tool evidence and version');
370
+ const ref = toolEvidenceRef({ sessionId: session.id, callSeq: entry.source.callSeq, resultSeq: entry.source.eventSeq });
371
+ const observed = readToolEvidence(session.id, ref, seq => session.eventAt(SessionSeq(seq)));
372
+ if (observed.kind !== 'recorded' || (entry.kind === 'fact' && observed.outcome !== 'tool-returned')) {
373
+ throw new Error('Tool source is unavailable or failed');
374
+ }
375
+ }
376
+ return longMemoryEntrySchema.parse({ ...entry, source: { ...entry.source, sessionId: session.id } });
377
+ });
378
+ exec.signal.throwIfAborted();
379
+ if (!await ctx.sessions.flush(session))
380
+ throw new Error('No host persistence checkpoint is configured; memory sources are not durable');
381
+ exec.signal.throwIfAborted();
382
+ const saved = await longMemory.remember(workspace, topic, input.expectedRevision, entries);
383
+ return JSON.stringify({ scope, topic: saved.topic, revision: saved.revision, count: saved.entries.length });
384
+ }
385
+ if (args.action === 'forget') {
386
+ if (args.id === undefined)
387
+ throw new Error('forget requires id');
388
+ const input = json.object({ expectedRevision: json.number().int().positive(), source: sourceSchema }).strict().parse(args.record);
389
+ assertSource(session, input.source);
390
+ exec.signal.throwIfAborted();
391
+ if (!await ctx.sessions.flush(session))
392
+ throw new Error('No host persistence checkpoint is configured; memory sources are not durable');
393
+ exec.signal.throwIfAborted();
394
+ const saved = await longMemory.forget(workspace, topic, input.expectedRevision, args.id);
395
+ return JSON.stringify({ scope, topic: saved.topic, revision: saved.revision, count: saved.entries.length });
396
+ }
397
+ throw new Error('Unsupported memory action');
398
+ },
399
+ }));
244
400
  }
245
401
  const plugin = { name, inject, Config, apply };
246
402
  export default plugin;
@@ -1 +1 @@
1
- {"version":3,"file":"super-code.js","sourceRoot":"","sources":["../../src/dsh/super-code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"super-code.js","sourceRoot":"","sources":["../../src/dsh/super-code.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  import type { Context } from '@deepseek-ai/cordis';
3
3
  declare const harnessPlugin: {
4
4
  readonly name: string;
5
+ readonly inject: readonly string[];
5
6
  readonly apply: (ctx: Context) => Promise<void>;
6
7
  };
7
8
  export default harnessPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,QAAA,MAAM,aAAa,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAM5F,CAAA;AAED,eAAe,aAAa,CAAA;AAE5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,QAAA,MAAM,aAAa,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAOhI,CAAA;AAED,eAAe,aAAa,CAAA;AAE5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
package/lib/index.js CHANGED
@@ -1,8 +1,9 @@
1
1
  const harnessPlugin = {
2
2
  name: 'super-code',
3
+ inject: [],
3
4
  async apply(ctx) {
4
5
  const adapter = await import('./dsh/index.js');
5
- adapter.apply(ctx);
6
+ await adapter.apply(ctx);
6
7
  },
7
8
  };
8
9
  export default harnessPlugin;
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,aAAa,GAA+E;IAChG,IAAI,EAAE,YAAY;IAClB,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAA;QAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;CACF,CAAA;AAED,eAAe,aAAa,CAAA;AAE5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,MAAM,aAAa,GAAmH;IACpI,IAAI,EAAE,YAAY;IAClB,MAAM,EAAE,EAAE;IACV,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAA;QAC9C,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;CACF,CAAA;AAED,eAAe,aAAa,CAAA;AAE5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,75 @@
1
+ import type { DomainTableSpec, KvTable } from '@deepseek-ai/dsh-storage-domain';
2
+ import { z } from 'zod';
3
+ export interface LongMemoryEntry {
4
+ id: string;
5
+ kind: 'constraint' | 'fact' | 'experience';
6
+ summary: string;
7
+ detail: string;
8
+ source: {
9
+ sessionId: string;
10
+ eventSeq: number;
11
+ kind: 'user';
12
+ quote: string;
13
+ } | {
14
+ sessionId: string;
15
+ eventSeq: number;
16
+ kind: 'tool';
17
+ callSeq: number;
18
+ };
19
+ sourceVersion?: string;
20
+ }
21
+ export declare const longMemoryEntrySchema: z.ZodType<LongMemoryEntry>;
22
+ export interface LongMemoryTopic {
23
+ workspace: string;
24
+ topic: string;
25
+ revision: number;
26
+ entries: LongMemoryEntry[];
27
+ }
28
+ export type LongMemoryRead = {
29
+ kind: 'found';
30
+ value: LongMemoryTopic;
31
+ } | {
32
+ kind: 'missing';
33
+ };
34
+ export declare const longMemoryTopicSchema: z.ZodType<LongMemoryTopic>;
35
+ /** One atomic record per topic; workspaces and profiles remain separate. */
36
+ export declare const longMemoryDomainSpec: {
37
+ readonly name: string;
38
+ readonly version: number;
39
+ readonly layout: 'per-record';
40
+ readonly tables: {
41
+ readonly topics: DomainTableSpec<string, LongMemoryTopic>;
42
+ };
43
+ };
44
+ /** Canonical identity of the session's current workspace, never a tool-supplied path. */
45
+ export declare function memoryWorkspace(session: {
46
+ readonly header: {
47
+ readonly cwd?: string;
48
+ };
49
+ }): string;
50
+ /**
51
+ * Global memory is isolated by the host's configured storage root. The
52
+ * standard Harness bundle puts that root under DSH_HOME/storages; a constant
53
+ * namespace here shares preferences across projects and profiles using it.
54
+ */
55
+ export declare const GLOBAL_MEMORY_NAMESPACE: string;
56
+ export declare const GLOBAL_PREFERENCES_TOPIC = "preferences";
57
+ export declare function memoryGlobalNamespace(): string;
58
+ /** A single host-owned writer serializes topic creation and revision checks. */
59
+ export declare class LongMemoryStore {
60
+ private readonly table;
61
+ private tail;
62
+ constructor(table: KvTable<string, LongMemoryTopic>);
63
+ topics(workspace: string): {
64
+ topic: string;
65
+ revision: number;
66
+ count: number;
67
+ }[];
68
+ read(workspace: string, topic: string): LongMemoryRead;
69
+ private mutate;
70
+ remember(workspace: string, topic: string, expectedRevision: number, entries: LongMemoryEntry[]): Promise<LongMemoryTopic>;
71
+ forget(workspace: string, topic: string, expectedRevision: number, entryId: string): Promise<LongMemoryTopic>;
72
+ }
73
+ /** Bound context keeps the entry identity and historical status within 2 KiB. */
74
+ export declare function longMemoryContext(topic: LongMemoryTopic | undefined, maxBytes?: number, currentVersion?: string): string;
75
+ //# sourceMappingURL=long-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"long-memory.d.ts","sourceRoot":"","sources":["../src/long-memory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /** Small, host-home memory shared by sessions in one project or globally. */
2
+ import { createHash } from 'node:crypto';
3
+ import { realpathSync } from 'node:fs';
4
+ import { defineDomain, domainTable } from '@deepseek-ai/dsh-storage-domain';
5
+ import { z } from 'zod';
6
+ const id = z.string().regex(/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,95}$/);
7
+ const summary = z.string().trim().min(1).refine(value => Array.from(value).length <= 30, 'Summary exceeds 30 characters');
8
+ export const longMemoryEntrySchema = z.object({
9
+ id, kind: z.enum(['constraint', 'fact', 'experience']), summary,
10
+ detail: z.string().trim().min(1).max(1000),
11
+ source: z.discriminatedUnion('kind', [
12
+ z.object({ sessionId: z.string().min(1), eventSeq: z.number().int().nonnegative(), kind: z.literal('user'), quote: z.string().min(1).max(4000) }).strict(),
13
+ z.object({ sessionId: z.string().min(1), eventSeq: z.number().int().nonnegative(), kind: z.literal('tool'), callSeq: z.number().int().nonnegative() }).strict(),
14
+ ]),
15
+ sourceVersion: z.string().min(1).max(4000).optional(),
16
+ }).strict().superRefine((entry, ctx) => {
17
+ if (entry.kind === 'constraint' && entry.source.kind !== 'user')
18
+ ctx.addIssue({ code: 'custom', message: 'A constraint requires a user source' });
19
+ if (entry.kind !== 'constraint' && (entry.source.kind !== 'tool' || !entry.sourceVersion)) {
20
+ ctx.addIssue({ code: 'custom', message: 'A fact or experience requires a tool source and version' });
21
+ }
22
+ });
23
+ export const longMemoryTopicSchema = z.object({
24
+ workspace: z.string().length(64), topic: id, revision: z.number().int().positive(),
25
+ entries: z.array(longMemoryEntrySchema).max(20),
26
+ }).strict();
27
+ /** One atomic record per topic; workspaces and profiles remain separate. */
28
+ export const longMemoryDomainSpec = defineDomain({
29
+ name: 'super_code_memory', version: 1, layout: 'per-record',
30
+ tables: { topics: domainTable(longMemoryTopicSchema) },
31
+ });
32
+ /** Canonical identity of the session's current workspace, never a tool-supplied path. */
33
+ export function memoryWorkspace(session) {
34
+ if (session.header.cwd === undefined)
35
+ throw new Error('Long memory requires a session workspace');
36
+ return createHash('sha256').update(realpathSync.native(session.header.cwd)).digest('hex');
37
+ }
38
+ /**
39
+ * Global memory is isolated by the host's configured storage root. The
40
+ * standard Harness bundle puts that root under DSH_HOME/storages; a constant
41
+ * namespace here shares preferences across projects and profiles using it.
42
+ */
43
+ export const GLOBAL_MEMORY_NAMESPACE = createHash('sha256').update('dsh-super-code/global/v1').digest('hex');
44
+ export const GLOBAL_PREFERENCES_TOPIC = 'preferences';
45
+ export function memoryGlobalNamespace() { return GLOBAL_MEMORY_NAMESPACE; }
46
+ function recordKey(workspace, topic) {
47
+ return createHash('sha256').update(`${workspace}\0${topic}`).digest('hex');
48
+ }
49
+ /** A single host-owned writer serializes topic creation and revision checks. */
50
+ export class LongMemoryStore {
51
+ table;
52
+ tail = Promise.resolve();
53
+ constructor(table) {
54
+ this.table = table;
55
+ }
56
+ topics(workspace) {
57
+ return [...this.table.entries()].filter(([, value]) => value.workspace === workspace)
58
+ .map(([, value]) => ({ topic: value.topic, revision: value.revision, count: value.entries.length }))
59
+ .sort((a, b) => a.topic.localeCompare(b.topic));
60
+ }
61
+ read(workspace, topic) {
62
+ id.parse(topic);
63
+ const record = this.table.get(recordKey(workspace, topic));
64
+ return record?.workspace === workspace && record.topic === topic ? { kind: 'found', value: record } : { kind: 'missing' };
65
+ }
66
+ mutate(run) {
67
+ const operation = this.tail.catch(() => { }).then(run);
68
+ this.tail = operation;
69
+ return operation;
70
+ }
71
+ remember(workspace, topic, expectedRevision, entries) {
72
+ id.parse(topic);
73
+ const additions = z.array(longMemoryEntrySchema).min(1).max(8).parse(entries);
74
+ if (new Set(additions.map(entry => entry.id)).size !== additions.length)
75
+ throw new Error('Duplicate memory ids in one update');
76
+ return this.mutate(async () => {
77
+ const found = this.read(workspace, topic);
78
+ const current = found.kind === 'found' ? found.value : undefined;
79
+ if ((current?.revision ?? 0) !== expectedRevision)
80
+ throw new Error(`Stale topic ${topic}; read revision ${current?.revision ?? 0}`);
81
+ if (!current && this.topics(workspace).length >= 200)
82
+ throw new Error('Workspace memory is full');
83
+ const updated = new Map(current?.entries.map(entry => [entry.id, entry]) ?? []);
84
+ for (const entry of additions)
85
+ updated.set(entry.id, entry);
86
+ const value = longMemoryTopicSchema.parse({ workspace, topic, revision: expectedRevision + 1, entries: [...updated.values()] });
87
+ await this.table.put(recordKey(workspace, topic), value);
88
+ return value;
89
+ });
90
+ }
91
+ forget(workspace, topic, expectedRevision, entryId) {
92
+ id.parse(entryId);
93
+ return this.mutate(async () => {
94
+ const found = this.read(workspace, topic);
95
+ if (found.kind === 'missing' || found.value.revision !== expectedRevision)
96
+ throw new Error(`Stale or missing topic ${topic}`);
97
+ const current = found.value;
98
+ if (!current.entries.some(entry => entry.id === entryId))
99
+ throw new Error(`Unknown memory ${entryId}`);
100
+ const value = longMemoryTopicSchema.parse({ ...current, revision: current.revision + 1,
101
+ entries: current.entries.filter(entry => entry.id !== entryId) });
102
+ await this.table.put(recordKey(workspace, topic), value);
103
+ return value;
104
+ });
105
+ }
106
+ }
107
+ /** Bound context keeps the entry identity and historical status within 2 KiB. */
108
+ export function longMemoryContext(topic, maxBytes = 2048, currentVersion) {
109
+ if (!topic)
110
+ return '';
111
+ const relevant = topic.entries.filter(entry => entry.source.kind === 'user' || currentVersion === undefined || entry.sourceVersion === currentVersion);
112
+ const entries = relevant.slice(-4).map(({ id, kind, summary, sourceVersion }) => ({ id, kind, summary,
113
+ ...(sourceVersion ? { sourceVersion } : {}) }));
114
+ for (;;) {
115
+ const value = JSON.stringify({ topic: topic.topic, revision: topic.revision, entries,
116
+ omitted: relevant.length - entries.length, staleFacts: topic.entries.length - relevant.length,
117
+ basis: 'historical; tool source pairs checked at write time, summaries not semantically verified; verify mutable facts; no permission granted',
118
+ details: { tool: 'super_code_memory', action: 'read' } }).replace(/\{\{/g, '\\u007b\\u007b');
119
+ if (Buffer.byteLength(value, 'utf8') <= maxBytes)
120
+ return value;
121
+ if (entries.length === 0)
122
+ throw new Error('Long-memory context exceeds its budget');
123
+ entries.shift();
124
+ }
125
+ }
126
+ //# sourceMappingURL=long-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"long-memory.js","sourceRoot":"","sources":["../src/long-memory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { SessionEvent } from '@deepseek-ai/dsh-session';
2
+ import type { ProjectionDefinition } from '@deepseek-ai/dsh-session-projection';
3
+ export interface MemoryUsageRow {
4
+ id: string;
5
+ summary: string;
6
+ scope: 'project' | 'global';
7
+ topic: string;
8
+ action: 'context' | 'read' | 'summary' | 'remember' | 'forget';
9
+ revision: number;
10
+ seq: number;
11
+ time: number;
12
+ }
13
+ export interface MemoryUsageState {
14
+ rows: MemoryUsageRow[];
15
+ omitted: number;
16
+ inherited: number;
17
+ pending: {
18
+ callId: string;
19
+ turn: number;
20
+ step: number;
21
+ action: 'read' | 'remember' | 'forget';
22
+ scope: 'project' | 'global';
23
+ id?: string;
24
+ entries: {
25
+ id: string;
26
+ summary: string;
27
+ }[];
28
+ }[];
29
+ }
30
+ export interface MemoryUsageView {
31
+ rows: MemoryUsageRow[];
32
+ omitted: number;
33
+ }
34
+ declare module '@deepseek-ai/dsh-session-projection/types' {
35
+ interface SessionProjectionStateMap {
36
+ superCodeMemoryUsage: MemoryUsageState;
37
+ }
38
+ interface SessionProjectionMap {
39
+ superCodeMemoryUsage: MemoryUsageView;
40
+ }
41
+ }
42
+ export declare function foldMemoryUsage(state: MemoryUsageState, event: SessionEvent): MemoryUsageState;
43
+ export declare const memoryUsageProjection: ProjectionDefinition<'superCodeMemoryUsage', MemoryUsageState> & {
44
+ wire: NonNullable<ProjectionDefinition<'superCodeMemoryUsage', MemoryUsageState>['wire']>;
45
+ };
46
+ //# sourceMappingURL=memory-usage-projection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-usage-projection.d.ts","sourceRoot":"","sources":["../src/memory-usage-projection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAS/E,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;IACvE,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAA;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAC5C;AAQD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;IAC1D,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;QAC5F,KAAK,EAAE,SAAS,GAAG,QAAQ,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,EAAE,CAAA;CAC3F;AACD,MAAM,WAAW,eAAe;IAAG,IAAI,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AAC5E,OAAO,QAAQ,2CAA2C,CAAC;IACzD,UAAU,yBAAyB;QAAG,oBAAoB,EAAE,gBAAgB,CAAA;KAAE;IAC9E,UAAU,oBAAoB;QAAG,oBAAoB,EAAE,eAAe,CAAA;KAAE;CACzE;AAqCD,wBAAgB,eAAe,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,GAAG,gBAAgB,CA4B9F;AAQD,eAAO,MAAM,qBAAqB,EAAE,oBAAoB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,GAAG;IACnG,IAAI,EAAE,WAAW,CAAC,oBAAoB,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;CAM1F,CAAA"}