@duetso/agent 0.1.53 → 0.1.54

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 (106) hide show
  1. package/README.md +13 -2
  2. package/dist/package.json +1 -1
  3. package/dist/src/cli/help.js +1 -1
  4. package/dist/src/cli/memory-db.d.ts.map +1 -1
  5. package/dist/src/cli/memory-db.js +14 -5
  6. package/dist/src/cli/memory-db.js.map +1 -1
  7. package/dist/src/cli/memory-tui.js +1 -1
  8. package/dist/src/cli/memory-tui.js.map +1 -1
  9. package/dist/src/cli/resume-hint.d.ts +1 -1
  10. package/dist/src/cli/resume-hint.d.ts.map +1 -1
  11. package/dist/src/cli/resume-hint.js +2 -2
  12. package/dist/src/cli/resume-hint.js.map +1 -1
  13. package/dist/src/cli/run.d.ts +1 -1
  14. package/dist/src/cli/run.d.ts.map +1 -1
  15. package/dist/src/cli/run.js +7 -6
  16. package/dist/src/cli/run.js.map +1 -1
  17. package/dist/src/memory/context-pack.d.ts +29 -0
  18. package/dist/src/memory/context-pack.d.ts.map +1 -0
  19. package/dist/src/memory/context-pack.js +40 -0
  20. package/dist/src/memory/context-pack.js.map +1 -0
  21. package/dist/src/memory/embedding-worker.d.ts +26 -0
  22. package/dist/src/memory/embedding-worker.d.ts.map +1 -0
  23. package/dist/src/memory/embedding-worker.js +145 -0
  24. package/dist/src/memory/embedding-worker.js.map +1 -0
  25. package/dist/src/memory/embedding.d.ts +59 -0
  26. package/dist/src/memory/embedding.d.ts.map +1 -0
  27. package/dist/src/memory/embedding.js +126 -0
  28. package/dist/src/memory/embedding.js.map +1 -0
  29. package/dist/src/memory/loader.d.ts +81 -0
  30. package/dist/src/memory/loader.d.ts.map +1 -0
  31. package/dist/src/memory/loader.js +162 -0
  32. package/dist/src/memory/loader.js.map +1 -0
  33. package/dist/src/memory/migrations.d.ts +54 -0
  34. package/dist/src/memory/migrations.d.ts.map +1 -0
  35. package/dist/src/memory/migrations.js +199 -0
  36. package/dist/src/memory/migrations.js.map +1 -0
  37. package/dist/src/memory/observational.d.ts +18 -0
  38. package/dist/src/memory/observational.d.ts.map +1 -1
  39. package/dist/src/memory/observational.js +63 -14
  40. package/dist/src/memory/observational.js.map +1 -1
  41. package/dist/src/memory/pglite.d.ts +5 -5
  42. package/dist/src/memory/pglite.d.ts.map +1 -1
  43. package/dist/src/memory/pglite.js +20 -6
  44. package/dist/src/memory/pglite.js.map +1 -1
  45. package/dist/src/memory/recall.d.ts +49 -0
  46. package/dist/src/memory/recall.d.ts.map +1 -0
  47. package/dist/src/memory/recall.js +185 -0
  48. package/dist/src/memory/recall.js.map +1 -0
  49. package/dist/src/memory/storage.d.ts +36 -1
  50. package/dist/src/memory/storage.d.ts.map +1 -1
  51. package/dist/src/memory/storage.js +68 -14
  52. package/dist/src/memory/storage.js.map +1 -1
  53. package/dist/src/memory/store.d.ts +33 -1
  54. package/dist/src/memory/store.d.ts.map +1 -1
  55. package/dist/src/memory/store.js +22 -16
  56. package/dist/src/memory/store.js.map +1 -1
  57. package/dist/src/session/session.d.ts.map +1 -1
  58. package/dist/src/session/session.js +5 -1
  59. package/dist/src/session/session.js.map +1 -1
  60. package/dist/src/tui/app.d.ts.map +1 -1
  61. package/dist/src/tui/app.js +327 -30
  62. package/dist/src/tui/app.js.map +1 -1
  63. package/dist/src/tui/autocomplete.d.ts.map +1 -1
  64. package/dist/src/tui/autocomplete.js +5 -0
  65. package/dist/src/tui/autocomplete.js.map +1 -1
  66. package/dist/src/tui/clipboard.d.ts +28 -0
  67. package/dist/src/tui/clipboard.d.ts.map +1 -0
  68. package/dist/src/tui/clipboard.js +95 -0
  69. package/dist/src/tui/clipboard.js.map +1 -0
  70. package/dist/src/tui/history.d.ts +14 -0
  71. package/dist/src/tui/history.d.ts.map +1 -1
  72. package/dist/src/tui/history.js +21 -0
  73. package/dist/src/tui/history.js.map +1 -1
  74. package/dist/src/tui/recent-sessions.d.ts +51 -0
  75. package/dist/src/tui/recent-sessions.d.ts.map +1 -0
  76. package/dist/src/tui/recent-sessions.js +150 -0
  77. package/dist/src/tui/recent-sessions.js.map +1 -0
  78. package/dist/src/tui/starters.d.ts +92 -0
  79. package/dist/src/tui/starters.d.ts.map +1 -0
  80. package/dist/src/tui/starters.js +196 -0
  81. package/dist/src/tui/starters.js.map +1 -0
  82. package/dist/src/tui/theme.d.ts +2 -2
  83. package/dist/src/tui/theme.d.ts.map +1 -1
  84. package/dist/src/tui/theme.js +2 -2
  85. package/dist/src/tui/theme.js.map +1 -1
  86. package/dist/src/tui/transcript-log.d.ts +45 -0
  87. package/dist/src/tui/transcript-log.d.ts.map +1 -0
  88. package/dist/src/tui/transcript-log.js +76 -0
  89. package/dist/src/tui/transcript-log.js.map +1 -0
  90. package/dist/src/turn-runner/tools.d.ts +28 -1
  91. package/dist/src/turn-runner/tools.d.ts.map +1 -1
  92. package/dist/src/turn-runner/tools.js +135 -3
  93. package/dist/src/turn-runner/tools.js.map +1 -1
  94. package/dist/src/turn-runner/turn-runner.d.ts +1 -0
  95. package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
  96. package/dist/src/turn-runner/turn-runner.js +70 -3
  97. package/dist/src/turn-runner/turn-runner.js.map +1 -1
  98. package/dist/src/types/config.d.ts +12 -0
  99. package/dist/src/types/config.d.ts.map +1 -1
  100. package/dist/src/types/memory.d.ts +59 -21
  101. package/dist/src/types/memory.d.ts.map +1 -1
  102. package/package.json +1 -1
  103. package/dist/src/memory/schema.d.ts +0 -7
  104. package/dist/src/memory/schema.d.ts.map +0 -1
  105. package/dist/src/memory/schema.js +0 -21
  106. package/dist/src/memory/schema.js.map +0 -1
@@ -0,0 +1,199 @@
1
+ const MIGRATIONS = [
2
+ {
3
+ version: 1,
4
+ description: "initial observations schema",
5
+ up: async (tx) => {
6
+ // Snapshot of the schema that shipped before migrations existed.
7
+ // Idempotent so brand-new installs and pre-migration brains both
8
+ // converge on the same baseline before later migrations run.
9
+ await tx.exec(`
10
+ CREATE TABLE IF NOT EXISTS observations (
11
+ id TEXT PRIMARY KEY,
12
+ created_at BIGINT NOT NULL,
13
+ observed_date TEXT NOT NULL,
14
+ referenced_date TEXT,
15
+ relative_date TEXT,
16
+ time_of_day TEXT,
17
+ priority TEXT NOT NULL,
18
+ scope TEXT NOT NULL,
19
+ source_json TEXT NOT NULL,
20
+ content TEXT NOT NULL,
21
+ tags_json TEXT NOT NULL
22
+ )
23
+ `);
24
+ },
25
+ },
26
+ {
27
+ version: 2,
28
+ description: "add session_id, kind; drop scope; flatten tool source into tag",
29
+ up: async (tx) => {
30
+ // Schema reshape for the cross-session memory layer.
31
+ //
32
+ // - session_id NULL-allowed: identifies which session created the
33
+ // row. NULL means "created before sessionId tracking existed";
34
+ // loaders treat NULL the same as any non-current session
35
+ // (always global-eligible, never local-eligible). New rows
36
+ // always set it once the runner is plumbed in commit 3.
37
+ //
38
+ // - kind: "observation" vs "reflection". Reflections rank higher
39
+ // by default (reflectionBias multiplier in the loader) because
40
+ // they are condensed cross-observation summaries. Backfilled
41
+ // from tags_json since the existing reflector tags its output
42
+ // with `["observational-memory","reflection"]`.
43
+ //
44
+ // - scope dropped: the session/resource axis is replaced by
45
+ // `session_id matches current session?`, which is what callers
46
+ // actually wanted. "resource" scope was never wired through to
47
+ // a real query path.
48
+ //
49
+ // - source_json reshape: drop the `{kind:"tool",toolName:X}`
50
+ // variant and lift toolName into tags as `tool:X`. Tool
51
+ // provenance becomes searchable by tag, and the source enum
52
+ // tightens to user|agent|system. Idempotent: rows already
53
+ // reshaped (or never tool-sourced) pass through unchanged.
54
+ await tx.exec(`ALTER TABLE observations ADD COLUMN IF NOT EXISTS session_id TEXT`);
55
+ await tx.exec(`ALTER TABLE observations ADD COLUMN IF NOT EXISTS kind TEXT NOT NULL DEFAULT 'observation'`);
56
+ // Backfill kind from existing tag convention before we trust the
57
+ // column for queries.
58
+ await tx.exec(`UPDATE observations
59
+ SET kind = 'reflection'
60
+ WHERE kind = 'observation' AND tags_json LIKE '%"reflection"%'`);
61
+ // Reshape source_json + tags_json for legacy tool rows. Done in JS
62
+ // because PGlite has no native JSON manipulation that handles the
63
+ // tags-array merge cleanly.
64
+ const toolRows = await tx.query(`SELECT id, source_json, tags_json
65
+ FROM observations
66
+ WHERE source_json LIKE '%"kind":"tool"%'`);
67
+ for (const row of toolRows.rows) {
68
+ let parsedSource = {};
69
+ try {
70
+ parsedSource = JSON.parse(row.source_json);
71
+ }
72
+ catch {
73
+ // Malformed JSON predates this code; leave the row alone rather
74
+ // than guessing.
75
+ continue;
76
+ }
77
+ if (parsedSource.kind !== "tool")
78
+ continue;
79
+ let parsedTags = [];
80
+ try {
81
+ parsedTags = JSON.parse(row.tags_json);
82
+ }
83
+ catch {
84
+ parsedTags = [];
85
+ }
86
+ const toolTag = parsedSource.toolName ? `tool:${parsedSource.toolName}` : undefined;
87
+ const nextTags = toolTag && !parsedTags.includes(toolTag) ? [...parsedTags, toolTag] : parsedTags;
88
+ await tx.query(`UPDATE observations SET source_json = $1, tags_json = $2 WHERE id = $3`, [
89
+ JSON.stringify({ kind: "agent" }),
90
+ JSON.stringify(nextTags),
91
+ row.id,
92
+ ]);
93
+ }
94
+ await tx.exec(`ALTER TABLE observations DROP COLUMN IF EXISTS scope`);
95
+ // Indexes for the new query patterns: session-scoped local lookup
96
+ // and (priority, recency)-ranked global lookup. Composite index
97
+ // matches the loader's ORDER BY shape so the planner can avoid a
98
+ // sort on hot paths.
99
+ await tx.exec(`CREATE INDEX IF NOT EXISTS idx_obs_session_id ON observations(session_id)`);
100
+ await tx.exec(`CREATE INDEX IF NOT EXISTS idx_obs_kind_priority_created
101
+ ON observations(kind, priority, created_at DESC)`);
102
+ },
103
+ },
104
+ {
105
+ version: 3,
106
+ description: "pgvector embeddings table and tsvector keyword index",
107
+ up: async (tx) => {
108
+ // Hybrid retrieval (recall_memory tool) needs two indexes side by
109
+ // side: a vector index for semantic similarity and a tsvector GIN
110
+ // index for keyword matches. Reciprocal Rank Fusion in the tool
111
+ // merges both ranked lists; one without the other misses the
112
+ // class of queries the other catches (proper-noun lookups for
113
+ // keyword, fuzzy paraphrases for vector).
114
+ //
115
+ // pgvector itself is loaded as a PGlite extension at construction
116
+ // time (see memory/pglite.ts); CREATE EXTENSION is the SQL-level
117
+ // hook that activates the type and operator definitions.
118
+ await tx.exec(`CREATE EXTENSION IF NOT EXISTS vector`);
119
+ // Embeddings live in a sibling table rather than a column on
120
+ // observations because (a) embeddings are written asynchronously
121
+ // by the backfill worker, often well after the observation row
122
+ // lands, and (b) the embedding model may change in the future
123
+ // without forcing every existing row to re-embed in lockstep.
124
+ // The `model` column records which model produced each vector
125
+ // so a future re-embedding pass can selectively replace stale
126
+ // entries.
127
+ //
128
+ // Dimension 1536 matches OpenAI text-embedding-3-small (the
129
+ // model exposed by the Duet embedding endpoint). Switching to a
130
+ // different dimension means a new migration that drops and
131
+ // rebuilds this table; the dimension is part of the column type.
132
+ await tx.exec(`
133
+ CREATE TABLE IF NOT EXISTS observation_embeddings (
134
+ observation_id TEXT PRIMARY KEY REFERENCES observations(id) ON DELETE CASCADE,
135
+ model TEXT NOT NULL,
136
+ vector vector(1536) NOT NULL,
137
+ created_at BIGINT NOT NULL
138
+ )
139
+ `);
140
+ // HNSW is the right default for memory-scale corpora (typical
141
+ // user has thousands, not millions, of observations): build is
142
+ // fast, query is sub-millisecond, recall is high. Cosine
143
+ // operator class matches the recall_memory tool's similarity
144
+ // metric.
145
+ await tx.exec(`CREATE INDEX IF NOT EXISTS idx_obs_emb_hnsw
146
+ ON observation_embeddings USING hnsw (vector vector_cosine_ops)`);
147
+ // GIN index on a generated tsvector lets the keyword path of
148
+ // hybrid retrieval run in milliseconds without per-query
149
+ // tokenization overhead. English config is a reasonable default;
150
+ // multi-language support can swap in `simple` later.
151
+ await tx.exec(`CREATE INDEX IF NOT EXISTS idx_obs_content_fts
152
+ ON observations USING gin (to_tsvector('english', content))`);
153
+ },
154
+ },
155
+ ];
156
+ /**
157
+ * Bring the database up to the latest known schema version. Idempotent;
158
+ * safe to call on every open. Throws on the first failure with the
159
+ * triggering migration's version in the message so users have a place to
160
+ * look without grepping.
161
+ */
162
+ export async function runMigrations(db) {
163
+ await db.exec(`
164
+ CREATE TABLE IF NOT EXISTS schema_version (
165
+ version INTEGER PRIMARY KEY,
166
+ applied_at BIGINT NOT NULL,
167
+ description TEXT NOT NULL
168
+ )
169
+ `);
170
+ const result = await db.query("SELECT MAX(version) AS max FROM schema_version");
171
+ const fromVersion = result.rows[0]?.max ?? 0;
172
+ const applied = [];
173
+ for (const migration of MIGRATIONS) {
174
+ if (migration.version <= fromVersion)
175
+ continue;
176
+ try {
177
+ await db.transaction(async (tx) => {
178
+ await migration.up(tx);
179
+ await tx.query("INSERT INTO schema_version (version, applied_at, description) VALUES ($1, $2, $3)", [migration.version, Date.now(), migration.description]);
180
+ });
181
+ applied.push(migration.version);
182
+ }
183
+ catch (error) {
184
+ const reason = error instanceof Error ? error.message : String(error);
185
+ throw new Error(`Memory schema migration v${migration.version} (${migration.description}) failed: ${reason}. ` +
186
+ "The database was rolled back to the previous version; rerun once the cause is fixed.");
187
+ }
188
+ }
189
+ return {
190
+ fromVersion,
191
+ toVersion: applied.at(-1) ?? fromVersion,
192
+ applied,
193
+ };
194
+ }
195
+ /** Latest version known to this build. Exported for tests. */
196
+ export const LATEST_SCHEMA_VERSION = MIGRATIONS.at(-1)?.version ?? 0;
197
+ /** All registered migrations. Exported for tests. */
198
+ export const REGISTERED_MIGRATIONS = MIGRATIONS;
199
+ //# sourceMappingURL=migrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/memory/migrations.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,9 @@ import type { MemoryStore } from "./store.js";
5
5
  import type { Observation, ObservationalMemoryActivityEvent, ObservationalMemorySettings, ObservationalMemorySettingsInput } from "../types/memory.js";
6
6
  import { type RawMemoryMessage } from "./observational-prompts.js";
7
7
  export declare const OBSERVATIONAL_MEMORY_DEFAULTS: {
8
+ readonly globalContextTokenBudget: 8000;
9
+ readonly recencyHalfLifeMs: number;
10
+ readonly reflectionBias: 1.3;
8
11
  readonly observation: {
9
12
  readonly messageTokens: 100000;
10
13
  readonly maxTokensPerBatch: 35000;
@@ -46,6 +49,14 @@ export declare class ModelByInputTokens {
46
49
  export interface ObservationalContextTransformOptions {
47
50
  memory: MemoryStore;
48
51
  settings?: ObservationalMemorySettingsInput;
52
+ /**
53
+ * Compaction trigger fired when the wire-shaping eviction horizon
54
+ * advances mid-turn. The runner uses it to rebuild the frozen memory
55
+ * context pack — the prompt cache is already invalidating because
56
+ * eviction changed the message tail, so refreshing the prefix at the
57
+ * same moment piggybacks on a cache miss the model is already paying.
58
+ */
59
+ onCompaction?: () => void;
49
60
  /**
50
61
  * Sticky eviction point. The transform applies this horizon to the
51
62
  * message list before checking either budget, then advances it in place
@@ -60,6 +71,13 @@ export interface ObservationalContextTransformOptions {
60
71
  }
61
72
  export interface ObservationalMemoryUpdateOptions {
62
73
  memory: MemoryStore;
74
+ /**
75
+ * Session that owns the runner. Stamped onto every observation and
76
+ * reflection produced by this update so the loader can later split
77
+ * memory into the current session's local layer and every other
78
+ * session's global layer.
79
+ */
80
+ sessionId?: string;
63
81
  settings?: ObservationalMemorySettingsInput;
64
82
  actorModel: string;
65
83
  messages: AgentMessage[];
@@ -1 +1 @@
1
- {"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,18 @@ import { applyEvictionHorizon, calculateWireBytes, findEvictionHorizon, WIRE_BYT
5
5
  import { parseObservationGroups, reconcileObservationGroupsFromReflection, renderObservationGroupsForReflection, stripObservationGroups, wrapInObservationGroup, } from "./observation-groups.js";
6
6
  import { OBSERVATION_CONTEXT_INSTRUCTIONS, OBSERVATION_CONTEXT_PROMPT, OBSERVATION_CONTINUATION_HINT, buildObserverPrompt, buildObserverSystemPrompt, buildReflectorPrompt, buildReflectorSystemPrompt, } from "./observational-prompts.js";
7
7
  export const OBSERVATIONAL_MEMORY_DEFAULTS = {
8
+ // Token budget for the global memory layer rendered ahead of message
9
+ // history. Sized to fit the highest-signal cross-session reflections
10
+ // without crowding out the local layer or message tail. See
11
+ // ObservationalMemorySettings.globalContextTokenBudget for the full
12
+ // rationale.
13
+ globalContextTokenBudget: 8_000,
14
+ // 7 days picked to keep last-week's context current while letting
15
+ // month-old chatter decay out of the global pack. Tunable per-caller.
16
+ recencyHalfLifeMs: 7 * 24 * 60 * 60 * 1000,
17
+ // 1.3 keeps reflections preferred at matched priority/recency without
18
+ // shutting raw observations out of the global pack entirely.
19
+ reflectionBias: 1.3,
8
20
  observation: {
9
21
  // Observe before the actor window gets tight; prompt caching keeps the exact
10
22
  // tail cheap while memory preserves older task state.
@@ -92,7 +104,9 @@ export class ModelByInputTokens {
92
104
  export function resolveObservationalMemorySettings(input) {
93
105
  const partial = input ?? {};
94
106
  return {
95
- scope: partial.scope ?? "session",
107
+ globalContextTokenBudget: partial.globalContextTokenBudget ?? OBSERVATIONAL_MEMORY_DEFAULTS.globalContextTokenBudget,
108
+ recencyHalfLifeMs: partial.recencyHalfLifeMs ?? OBSERVATIONAL_MEMORY_DEFAULTS.recencyHalfLifeMs,
109
+ reflectionBias: partial.reflectionBias ?? OBSERVATIONAL_MEMORY_DEFAULTS.reflectionBias,
96
110
  observation: {
97
111
  messageTokens: partial.observation?.messageTokens ??
98
112
  OBSERVATIONAL_MEMORY_DEFAULTS.observation.messageTokens,
@@ -114,7 +128,7 @@ export function resolveObservationalMemorySettings(input) {
114
128
  blockAfter: partial.reflection?.blockAfter,
115
129
  instruction: partial.reflection?.instruction,
116
130
  },
117
- retrieval: partial.retrieval ?? false,
131
+ retrieval: partial.retrieval ?? true,
118
132
  shareTokenBudget: partial.shareTokenBudget ?? false,
119
133
  temporalMarkers: partial.temporalMarkers ?? false,
120
134
  activateAfterIdle: partial.activateAfterIdle,
@@ -151,27 +165,60 @@ export function createObservationalContextTransform(options) {
151
165
  const tokenTrigger = settings.observation.messageTokens;
152
166
  const tokenTarget = settings.observation.bufferActivation;
153
167
  if (candidateTokens >= tokenTrigger || candidateBytes >= WIRE_BYTE_TRIGGER) {
168
+ const previousHorizon = options.horizon.evictionHorizon;
154
169
  options.horizon.evictionHorizon = findEvictionHorizon(observableMessages, options.horizon.evictionHorizon, (candidate) => {
155
170
  const tokens = estimateRawTokens(agentMessagesToRaw(candidate));
156
171
  const bytes = calculateWireBytes(candidate);
157
172
  return tokens <= tokenTarget && bytes <= WIRE_BYTE_TARGET;
158
173
  });
159
174
  retainedMessages = applyEvictionHorizon(observableMessages, options.horizon.evictionHorizon);
175
+ // Compaction trigger: piggyback on the cache miss the eviction
176
+ // already forced. The handler is fire-and-forget; the runner
177
+ // wires it to refresh the frozen memory pack in the background.
178
+ if (options.horizon.evictionHorizon !== previousHorizon) {
179
+ options.onCompaction?.();
180
+ }
160
181
  }
161
- const snapshot = await options.memory.getSnapshot();
162
- const observations = snapshot.observations
163
- .map((observation) => observation.content)
164
- .join("\n\n");
165
- if (!observations.trim()) {
182
+ // Render the frozen context pack rather than every observation
183
+ // currently in the store. The pack is rebuilt only at compaction
184
+ // events (see memory/context-pack.ts), so the rendered prefix stays
185
+ // content-deterministic across turns and the provider's prompt
186
+ // cache survives until the next compaction.
187
+ const pack = options.memory.getContextPack();
188
+ const rendered = renderContextPack(pack);
189
+ if (!rendered) {
166
190
  return retainedMessages;
167
191
  }
168
192
  return [
169
- buildObservationContextMessage(observations),
193
+ buildObservationContextMessage(rendered),
170
194
  buildContinuationMessage(),
171
195
  ...retainedMessages,
172
196
  ];
173
197
  };
174
198
  }
199
+ /**
200
+ * Compose the two-layer memory section. Global rows render first
201
+ * (most stable cross-session signal), local rows render second
202
+ * (chronological compaction summary of the current session). The
203
+ * fixed render order matches the prompt assembly: system prompt →
204
+ * memory section → message history.
205
+ */
206
+ function renderContextPack(pack) {
207
+ const sections = [];
208
+ if (pack.global.length > 0) {
209
+ sections.push([
210
+ "### Long-term memory (cross-session)",
211
+ pack.global.map((observation) => observation.content).join("\n\n"),
212
+ ].join("\n\n"));
213
+ }
214
+ if (pack.local.length > 0) {
215
+ sections.push([
216
+ "### From this session",
217
+ pack.local.map((observation) => observation.content).join("\n\n"),
218
+ ].join("\n\n"));
219
+ }
220
+ return sections.join("\n\n");
221
+ }
175
222
  export async function updateObservationalMemory(options) {
176
223
  const settings = resolveObservationalMemorySettings(options.settings);
177
224
  validateObservationalMemorySettings(settings);
@@ -185,7 +232,7 @@ export async function updateObservationalMemory(options) {
185
232
  status: "running",
186
233
  message: "Observing conversation into memory...",
187
234
  });
188
- const observation = await activateObservations(options.memory, unobservedMessages, snapshot.observations, settings, options.actorModel, options.onUsage);
235
+ const observation = await activateObservations(options.memory, unobservedMessages, snapshot.observations, settings, options.sessionId, options.actorModel, options.onUsage);
189
236
  if (observation) {
190
237
  result.observations.push(observation);
191
238
  }
@@ -204,7 +251,7 @@ export async function updateObservationalMemory(options) {
204
251
  status: "running",
205
252
  message: "Reflecting memory observations...",
206
253
  });
207
- const reflections = await reflectObservations(options.memory, settings, options.actorModel, options.onUsage);
254
+ const reflections = await reflectObservations(options.memory, settings, options.sessionId, options.actorModel, options.onUsage);
208
255
  if (reflections) {
209
256
  result.reflections.push(...reflections);
210
257
  }
@@ -259,7 +306,7 @@ function isObservationalContextMessage(message) {
259
306
  return (text.startsWith(`<system-reminder>${OBSERVATION_CONTEXT_PROMPT}`) ||
260
307
  text === `<system-reminder>${OBSERVATION_CONTINUATION_HINT}</system-reminder>`);
261
308
  }
262
- async function activateObservations(store, messages, previousObservations, settings, model, onUsage) {
309
+ async function activateObservations(store, messages, previousObservations, settings, sessionId, model, onUsage) {
263
310
  const observations = await observe(messages, previousObservations, settings, model, onUsage);
264
311
  if (!observations.hasMemory || !observations.observations.trim()) {
265
312
  // Empty observer output intentionally does not create a checkpoint. The
@@ -268,16 +315,17 @@ async function activateObservations(store, messages, previousObservations, setti
268
315
  }
269
316
  const range = `${messages[0]?.id ?? "unknown"}:${messages[messages.length - 1]?.id ?? "unknown"}`;
270
317
  return store.appendObservation({
318
+ kind: "observation",
319
+ ...(sessionId !== undefined ? { sessionId } : {}),
271
320
  observedDate: new Date().toISOString().slice(0, 10),
272
321
  timeOfDay: new Date().toISOString().slice(11, 16),
273
322
  priority: inferPriority(observations.observations),
274
- scope: settings.scope,
275
323
  source: { kind: "system" },
276
324
  content: wrapInObservationGroup(observations.observations, range),
277
325
  tags: ["observational-memory"],
278
326
  });
279
327
  }
280
- async function reflectObservations(store, settings, model, onUsage) {
328
+ async function reflectObservations(store, settings, sessionId, model, onUsage) {
281
329
  const snapshot = await store.getSnapshot();
282
330
  const source = snapshot.observations.map((observation) => observation.content).join("\n\n");
283
331
  const rendered = renderObservationGroupsForReflection(source) ?? source;
@@ -310,10 +358,11 @@ async function reflectObservations(store, settings, model, onUsage) {
310
358
  const reflected = {
311
359
  id: createMemoryId(),
312
360
  createdAt: Date.now(),
361
+ kind: "reflection",
362
+ ...(sessionId !== undefined ? { sessionId } : {}),
313
363
  observedDate: new Date().toISOString().slice(0, 10),
314
364
  timeOfDay: new Date().toISOString().slice(11, 16),
315
365
  priority: "high",
316
- scope: settings.scope,
317
366
  source: { kind: "system" },
318
367
  content: reconciled,
319
368
  tags: ["observational-memory", "reflection"],
@@ -1 +1 @@
1
- {"version":3,"file":"observational.js","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observational.js","sourceRoot":"","sources":["../../../src/memory/observational.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { PGlite } from "@electric-sql/pglite";
2
2
  export interface OpenPGliteOptions {
3
3
  /**
4
- * SQL run immediately after opening as a connectivity probe. Typically the
5
- * `CREATE TABLE IF NOT EXISTS …` statements that initialize the schema.
6
- * If this throws, the data directory is treated as unreadable and the
7
- * recovery path runs (see {@link OpenPGliteOptions.onRecover}).
4
+ * Async hook run immediately after the database opens, in the try block
5
+ * that triggers quarantine recovery. Typically applies schema migrations
6
+ * so a failure rolls the directory aside instead of leaving the agent
7
+ * wedged behind an opaque PGlite abort.
8
8
  */
9
- schemaSql?: string;
9
+ init?: (db: PGlite) => Promise<void>;
10
10
  /**
11
11
  * Called once when an unreadable data directory is quarantined and a fresh
12
12
  * one is opened in its place. Receives the path the old directory was moved
@@ -1 +1 @@
1
- {"version":3,"file":"pglite.d.ts","sourceRoot":"","sources":["../../../src/memory/pglite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;CACpE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqB/F;AAoBD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAkB9D"}
1
+ {"version":3,"file":"pglite.d.ts","sourceRoot":"","sources":["../../../src/memory/pglite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAe9C,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC;;;;;OAKG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;CACpE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqB/F;AA2BD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAkB9D"}
@@ -1,6 +1,16 @@
1
1
  import { PGlite } from "@electric-sql/pglite";
2
+ import { vector } from "@electric-sql/pglite/vector";
2
3
  import { mkdirSync, readFileSync, renameSync, statSync, unlinkSync } from "node:fs";
3
4
  import { dirname, join } from "node:path";
5
+ /**
6
+ * pgvector ships with PGlite as an opt-in WASM extension. We load it
7
+ * unconditionally so every memory database can run hybrid retrieval
8
+ * without a feature flag dance — the cost is one extra small WASM
9
+ * download, paid once per install. `CREATE EXTENSION vector` then
10
+ * succeeds inside migration v3 where the embedding tables and HNSW
11
+ * index live.
12
+ */
13
+ const MEMORY_EXTENSIONS = { vector };
4
14
  /**
5
15
  * Opens a PGlite database at `path`, recovering from two failure modes that
6
16
  * would otherwise leave the agent unable to start:
@@ -21,7 +31,7 @@ export async function openPGlite(path, options = {}) {
21
31
  mkdirSync(dirname(path), { recursive: true });
22
32
  clearStalePostmasterLock(path);
23
33
  try {
24
- return await openAndProbe(path, options.schemaSql);
34
+ return await openAndProbe(path, options.init);
25
35
  }
26
36
  catch (error) {
27
37
  if (!isExistingDirectory(path))
@@ -35,14 +45,18 @@ export async function openPGlite(path, options = {}) {
35
45
  console.warn(`[duet] memory database at ${path} could not be opened (${reason}). ` +
36
46
  `Moved aside to ${backupPath} and starting fresh.`);
37
47
  }
38
- return await openAndProbe(path, options.schemaSql);
48
+ return await openAndProbe(path, options.init);
39
49
  }
40
50
  }
41
- async function openAndProbe(path, schemaSql) {
42
- const db = new PGlite(path);
51
+ async function openAndProbe(path, init) {
52
+ // PGlite.create is the only API path that lets us register loadable
53
+ // extensions at construction time — the bare `new PGlite(path)` form
54
+ // skips the extension registry, leaving `CREATE EXTENSION vector` to
55
+ // fail with "extension is not available" once migration v3 runs.
56
+ const db = await PGlite.create({ dataDir: path, extensions: MEMORY_EXTENSIONS });
43
57
  try {
44
- if (schemaSql)
45
- await db.exec(schemaSql);
58
+ if (init)
59
+ await init(db);
46
60
  return db;
47
61
  }
48
62
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"pglite.js","sourceRoot":"","sources":["../../../src/memory/pglite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pglite.js","sourceRoot":"","sources":["../../../src/memory/pglite.ts"],"names":[],"mappings":"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"}