agent-working-memory 0.15.9 → 0.16.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.
- package/AGENTS.md +36 -0
- package/README.md +24 -12
- package/dist/adapters/common.d.ts +1 -1
- package/dist/adapters/common.d.ts.map +1 -1
- package/dist/adapters/common.js +33 -20
- package/dist/adapters/common.js.map +1 -1
- package/dist/core/embeddings.d.ts +1 -1
- package/dist/core/embeddings.js +1 -1
- package/dist/core/entity-extract.js +1 -1
- package/dist/core/query-expander.d.ts +4 -2
- package/dist/core/query-expander.d.ts.map +1 -1
- package/dist/core/query-expander.js +4 -2
- package/dist/core/query-expander.js.map +1 -1
- package/dist/core/recall-config.d.ts +1 -1
- package/dist/core/recall-config.d.ts.map +1 -1
- package/dist/core/recall-config.js +6 -1
- package/dist/core/recall-config.js.map +1 -1
- package/dist/core/recall-telemetry.d.ts +15 -0
- package/dist/core/recall-telemetry.d.ts.map +1 -0
- package/dist/core/recall-telemetry.js +108 -0
- package/dist/core/recall-telemetry.js.map +1 -0
- package/dist/core/rerank-window.d.ts +5 -4
- package/dist/core/rerank-window.d.ts.map +1 -1
- package/dist/core/rerank-window.js +5 -4
- package/dist/core/rerank-window.js.map +1 -1
- package/dist/core/reranker.d.ts +2 -1
- package/dist/core/reranker.d.ts.map +1 -1
- package/dist/core/reranker.js +33 -5
- package/dist/core/reranker.js.map +1 -1
- package/dist/core/salience.js +1 -1
- package/dist/core/salience.js.map +1 -1
- package/dist/core/token-budget.d.ts +2 -2
- package/dist/core/token-budget.js +2 -2
- package/dist/core/whoami.d.ts +1 -1
- package/dist/engine/activation.d.ts +30 -13
- package/dist/engine/activation.d.ts.map +1 -1
- package/dist/engine/activation.js +159 -50
- package/dist/engine/activation.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp.js +98 -98
- package/dist/mcp.js.map +1 -1
- package/dist/storage/pglite.d.ts +28 -0
- package/dist/storage/pglite.d.ts.map +1 -1
- package/dist/storage/pglite.js +55 -0
- package/dist/storage/pglite.js.map +1 -1
- package/dist/storage/postgres.d.ts +28 -0
- package/dist/storage/postgres.d.ts.map +1 -1
- package/dist/storage/postgres.js +55 -0
- package/dist/storage/postgres.js.map +1 -1
- package/dist/storage/sqlite.d.ts +28 -0
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +56 -0
- package/dist/storage/sqlite.js.map +1 -1
- package/llms.txt +437 -0
- package/package.json +106 -100
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/README.md +1 -1
- package/plugin/bin/awm-mcp-launcher.cjs +2 -2
- package/plugin/skills/awm-memory/SKILL.md +33 -20
- package/src/adapters/common.ts +33 -20
- package/src/core/embeddings.ts +1 -1
- package/src/core/entity-extract.ts +1 -1
- package/src/core/query-expander.ts +4 -2
- package/src/core/recall-config.ts +6 -1
- package/src/core/recall-telemetry.ts +131 -0
- package/src/core/rerank-window.ts +159 -158
- package/src/core/reranker.ts +150 -121
- package/src/core/salience.ts +1 -1
- package/src/core/token-budget.ts +160 -160
- package/src/core/whoami.ts +120 -120
- package/src/engine/activation.ts +159 -51
- package/src/index.ts +1 -1
- package/src/mcp.ts +1475 -1475
- package/src/storage/pglite.ts +49 -0
- package/src/storage/postgres.ts +49 -0
- package/src/storage/sqlite.ts +51 -0
package/dist/mcp.js
CHANGED
|
@@ -200,15 +200,15 @@ else {
|
|
|
200
200
|
return 'unclassified';
|
|
201
201
|
}
|
|
202
202
|
// --- Tools ---
|
|
203
|
-
server.tool('memory_write', `Store a memory. The salience filter decides whether it's worth keeping (active), needs more evidence (staging), or should be discarded.
|
|
204
|
-
|
|
205
|
-
CALL THIS PROACTIVELY — do not wait to be asked. Write memories when you:
|
|
206
|
-
- Discover something about the codebase, bugs, or architecture
|
|
207
|
-
- Make a decision and want to remember why
|
|
208
|
-
- Encounter and resolve an error
|
|
209
|
-
- Learn a user preference or project pattern
|
|
210
|
-
- Complete a significant piece of work
|
|
211
|
-
|
|
203
|
+
server.tool('memory_write', `Store a memory. The salience filter decides whether it's worth keeping (active), needs more evidence (staging), or should be discarded.
|
|
204
|
+
|
|
205
|
+
CALL THIS PROACTIVELY — do not wait to be asked. Write memories when you:
|
|
206
|
+
- Discover something about the codebase, bugs, or architecture
|
|
207
|
+
- Make a decision and want to remember why
|
|
208
|
+
- Encounter and resolve an error
|
|
209
|
+
- Learn a user preference or project pattern
|
|
210
|
+
- Complete a significant piece of work
|
|
211
|
+
|
|
212
212
|
The concept should be a short label (3-8 words). The content should be the full detail.`, {
|
|
213
213
|
concept: z.string().describe('Short label for this memory (3-8 words)'),
|
|
214
214
|
content: z.string().describe('Full detail of what was learned'),
|
|
@@ -359,26 +359,26 @@ The concept should be a short label (3-8 words). The content should be the full
|
|
|
359
359
|
}],
|
|
360
360
|
};
|
|
361
361
|
});
|
|
362
|
-
server.tool('memory_recall', `Recall memories relevant to a query. Uses cognitive activation — not keyword search.
|
|
363
|
-
|
|
364
|
-
ALWAYS call this when:
|
|
365
|
-
- Starting work on a project or topic (recall what you know)
|
|
366
|
-
- Debugging (recall similar errors and solutions)
|
|
367
|
-
- Making decisions (recall past decisions and outcomes)
|
|
368
|
-
- The user mentions a topic you might have stored memories about
|
|
369
|
-
|
|
370
|
-
Accepts either "query" or "context" parameter — both work identically.
|
|
362
|
+
server.tool('memory_recall', `Recall memories relevant to a query. Uses cognitive activation — not keyword search.
|
|
363
|
+
|
|
364
|
+
ALWAYS call this when:
|
|
365
|
+
- Starting work on a project or topic (recall what you know)
|
|
366
|
+
- Debugging (recall similar errors and solutions)
|
|
367
|
+
- Making decisions (recall past decisions and outcomes)
|
|
368
|
+
- The user mentions a topic you might have stored memories about
|
|
369
|
+
|
|
370
|
+
Accepts either "query" or "context" parameter — both work identically.
|
|
371
371
|
Returns the most relevant memories ranked by text relevance, temporal recency, and associative strength.`, {
|
|
372
372
|
query: z.string().optional().describe('What to search for — describe the situation, question, or topic'),
|
|
373
373
|
context: z.string().optional().describe('Alias for query (either works)'),
|
|
374
|
-
limit: z.number().optional().default(3).describe('Max memories to return (default 3). Measured on 400 real-store probes: k=3 is the only token-POSITIVE setting (+115 tok/recall, against -680 at k=5) and is 41% faster at p50, because `limit` sizes the cross-encoder rerank pool and rerank is
|
|
374
|
+
limit: z.number().optional().default(3).describe('Max memories to return (default 3). Measured on 400 real-store probes: k=3 is the only token-POSITIVE setting (+115 tok/recall, against -680 at k=5) and is 41% faster at p50, because `limit` sizes the cross-encoder rerank pool (min(limit*8, 40) — so 24 at k=3 against 40 at k=5) and rerank is 83% of warm recall time. It costs ~0.5pp success@1 versus k=5 — about 3 queries in 400, inside noise. Raise it explicitly when you want breadth for orientation rather than a specific fact; that is the case this default deliberately does not optimize for.'),
|
|
375
375
|
min_score: z.number().optional().default(0.05).describe('Minimum relevance score (default 0.05)'),
|
|
376
376
|
include_staging: z.boolean().optional().default(false).describe('Include weak/unconfirmed memories?'),
|
|
377
377
|
use_reranker: z.boolean().optional().default(true).describe('Use cross-encoder re-ranking for better relevance (default true)'),
|
|
378
378
|
use_expansion: z.boolean().optional().default(true).describe('Expand query with synonyms for better recall (default true)'),
|
|
379
379
|
memory_type: z.enum(['episodic', 'semantic', 'procedural']).optional().describe('Filter by memory type (omit to search all types)'),
|
|
380
380
|
workspace: z.string().optional().describe('Search across all agents in this workspace (hive mode). Omit for agent-scoped recall only.'),
|
|
381
|
-
require_confidence: z.number().optional().default(0.05).describe('Abstain (return nothing) when recall confidence is below this threshold. Defaults to 0.05 — a LIGHT filter, chosen from measurement: it halves the rate of answering off-topic queries at zero cost to hit rate. Raise it only for push-style use where nobody asked (0.25
|
|
381
|
+
require_confidence: z.number().optional().default(0.05).describe('Abstain (return nothing) when recall confidence is below this threshold. Defaults to 0.05 — a LIGHT filter, chosen from measurement: it halves the rate of answering off-topic queries at zero cost to hit rate. Raise it only for push-style use where nobody asked (the prime hook uses 0.10 — it was 0.25 until 0.14.6, when 0.25 was measured silencing prompts with a clear winner). Do NOT raise it for ordinary recall: a miss is expensive, because the agent then reads the codebase instead (~2,106 tokens), so aggressive thresholds measurably destroy value — 0.20+ cut net tokens saved by 25% in tests/abstention-eval. Pass 0 to disable. NOTE: this is NOT min_score — it gates on the SHAPE of the score distribution across the whole result set, not per-result relevance, so memories that pass min_score can still be withheld. When that happens the reply says RECALL ABSTAINED and reports how many were withheld; an empty result is only absence when it does not.'),
|
|
382
382
|
granularity: z.enum(['full', 'compact', 'auto']).optional().describe('Output granularity (Paper 3: cognitive teaming). "full" (default): no change. "compact": every result carries a short summary field. "auto": confidence-adaptive — top result gets a longer summary when there is a clear winner, otherwise everything is compact for scanning.'),
|
|
383
383
|
max_tokens: z.number().optional().describe('Token budget for the response. `limit` is a COUNT and is token-blind — 5 results may cost 400 tokens or 4,000. Use this when context is tight: results are packed by value-per-token until the budget is reached, the top-scored match always gets first refusal, and the reply reports what it cost and what was withheld. Omit for no budget (everything is returned, still with accounting).'),
|
|
384
384
|
}, async (params) => {
|
|
@@ -487,8 +487,8 @@ Returns the most relevant memories ranked by text relevance, temporal recency, a
|
|
|
487
487
|
}],
|
|
488
488
|
};
|
|
489
489
|
});
|
|
490
|
-
server.tool('memory_feedback', `Report whether a recalled memory was actually useful. This updates the memory's confidence score — useful memories become stronger, useless ones weaken.
|
|
491
|
-
|
|
490
|
+
server.tool('memory_feedback', `Report whether a recalled memory was actually useful. This updates the memory's confidence score — useful memories become stronger, useless ones weaken.
|
|
491
|
+
|
|
492
492
|
Always call this after using a recalled memory so the system learns what's valuable.`, {
|
|
493
493
|
engram_id: z.string().describe('ID of the memory (from memory_recall results)'),
|
|
494
494
|
useful: z.boolean().describe('Was this memory actually helpful?'),
|
|
@@ -519,8 +519,8 @@ Always call this after using a recalled memory so the system learns what's valua
|
|
|
519
519
|
}],
|
|
520
520
|
};
|
|
521
521
|
});
|
|
522
|
-
server.tool('memory_retract', `Retract a memory that turned out to be wrong. Creates a correction and reduces confidence of related memories.
|
|
523
|
-
|
|
522
|
+
server.tool('memory_retract', `Retract a memory that turned out to be wrong. Creates a correction and reduces confidence of related memories.
|
|
523
|
+
|
|
524
524
|
Use this when you discover a memory contains incorrect information.`, {
|
|
525
525
|
engram_id: z.string().describe('ID of the wrong memory'),
|
|
526
526
|
reason: z.string().describe('Why is this memory wrong?'),
|
|
@@ -544,13 +544,13 @@ Use this when you discover a memory contains incorrect information.`, {
|
|
|
544
544
|
}],
|
|
545
545
|
};
|
|
546
546
|
});
|
|
547
|
-
server.tool('memory_supersede', `Replace an outdated memory with a newer one. Unlike retraction (which marks memories as wrong), supersession marks the old memory as outdated but historically correct.
|
|
548
|
-
|
|
549
|
-
Use this when:
|
|
550
|
-
- A status or count has changed (e.g., "5 reviews done" → "7 reviews done")
|
|
551
|
-
- Architecture or infrastructure evolved (e.g., "two-repo model" → "three-repo model")
|
|
552
|
-
- A schedule or plan was updated
|
|
553
|
-
|
|
547
|
+
server.tool('memory_supersede', `Replace an outdated memory with a newer one. Unlike retraction (which marks memories as wrong), supersession marks the old memory as outdated but historically correct.
|
|
548
|
+
|
|
549
|
+
Use this when:
|
|
550
|
+
- A status or count has changed (e.g., "5 reviews done" → "7 reviews done")
|
|
551
|
+
- Architecture or infrastructure evolved (e.g., "two-repo model" → "three-repo model")
|
|
552
|
+
- A schedule or plan was updated
|
|
553
|
+
|
|
554
554
|
The old memory stays in the database (searchable for history) but is heavily down-ranked in recall so the current version dominates.`, {
|
|
555
555
|
old_engram_id: z.string().describe('ID of the outdated memory (from memory_recall results, or memory_write\'s own response if you just wrote it)'),
|
|
556
556
|
new_engram_id: z.string().describe('ID of the replacement memory'),
|
|
@@ -581,7 +581,7 @@ The old memory stays in the database (searchable for history) but is heavily dow
|
|
|
581
581
|
const info = await buildWhoami(store, AGENT_ID, 'mcp', sidecarHandle ? sidecarHandle.boundPort() : undefined);
|
|
582
582
|
return { content: [{ type: 'text', text: formatWhoami(info) }] };
|
|
583
583
|
});
|
|
584
|
-
server.tool('memory_stats', `Get memory health stats — how many memories, confidence levels, association count, and system performance.
|
|
584
|
+
server.tool('memory_stats', `Get memory health stats — how many memories, confidence levels, association count, and system performance.
|
|
585
585
|
Also shows the activity log path so the user can tail it to see what's happening.`, {}, async () => {
|
|
586
586
|
const metrics = await evalEngine.computeMetrics(AGENT_ID);
|
|
587
587
|
const checkpoint = await store.getCheckpoint(AGENT_ID);
|
|
@@ -623,13 +623,13 @@ Also shows the activity log path so the user can tail it to see what's happening
|
|
|
623
623
|
};
|
|
624
624
|
});
|
|
625
625
|
// --- Checkpointing Tools ---
|
|
626
|
-
server.tool('memory_checkpoint', `Save your current execution state so you can recover after context compaction.
|
|
627
|
-
|
|
628
|
-
ALWAYS call this before:
|
|
629
|
-
- Long operations (multi-file generation, large refactors, overnight work)
|
|
630
|
-
- Anything that might fill the context window
|
|
631
|
-
- Switching to a different task
|
|
632
|
-
|
|
626
|
+
server.tool('memory_checkpoint', `Save your current execution state so you can recover after context compaction.
|
|
627
|
+
|
|
628
|
+
ALWAYS call this before:
|
|
629
|
+
- Long operations (multi-file generation, large refactors, overnight work)
|
|
630
|
+
- Anything that might fill the context window
|
|
631
|
+
- Switching to a different task
|
|
632
|
+
|
|
633
633
|
Also call periodically during long sessions to avoid losing state. The state is saved per-agent and overwrites any previous checkpoint.`, {
|
|
634
634
|
current_task: z.string().describe('What you are currently working on'),
|
|
635
635
|
decisions: z.array(z.string()).optional().default([])
|
|
@@ -663,14 +663,14 @@ Also call periodically during long sessions to avoid losing state. The state is
|
|
|
663
663
|
}],
|
|
664
664
|
};
|
|
665
665
|
});
|
|
666
|
-
server.tool('memory_restore', `Restore your previous execution state after context compaction or at session start.
|
|
667
|
-
|
|
668
|
-
Returns:
|
|
669
|
-
- Your saved execution state (task, decisions, next steps, files)
|
|
670
|
-
- Recently recalled memories for context
|
|
671
|
-
- Your last write for continuity
|
|
672
|
-
- How long you were idle
|
|
673
|
-
|
|
666
|
+
server.tool('memory_restore', `Restore your previous execution state after context compaction or at session start.
|
|
667
|
+
|
|
668
|
+
Returns:
|
|
669
|
+
- Your saved execution state (task, decisions, next steps, files)
|
|
670
|
+
- Recently recalled memories for context
|
|
671
|
+
- Your last write for continuity
|
|
672
|
+
- How long you were idle
|
|
673
|
+
|
|
674
674
|
Use this at the start of every session or after compaction to pick up where you left off.`, {}, async () => {
|
|
675
675
|
const checkpoint = await store.getCheckpoint(AGENT_ID);
|
|
676
676
|
// Cold-store nudge: an empty store means the agent has nothing to recall — offer to warm-start.
|
|
@@ -793,9 +793,9 @@ Use this at the start of every session or after compaction to pick up where you
|
|
|
793
793
|
if (coordDb) {
|
|
794
794
|
try {
|
|
795
795
|
const myAgent = coordDb.prepare(`SELECT id FROM coord_agents WHERE name = ? AND status != 'dead' ORDER BY last_seen DESC LIMIT 1`).get(AGENT_ID);
|
|
796
|
-
const peerDecisions = coordDb.prepare(`SELECT d.summary, a.name AS author_name, d.created_at
|
|
797
|
-
FROM coord_decisions d JOIN coord_agents a ON d.author_id = a.id
|
|
798
|
-
WHERE d.author_id != ? AND d.created_at > datetime('now', '-30 minutes')
|
|
796
|
+
const peerDecisions = coordDb.prepare(`SELECT d.summary, a.name AS author_name, d.created_at
|
|
797
|
+
FROM coord_decisions d JOIN coord_agents a ON d.author_id = a.id
|
|
798
|
+
WHERE d.author_id != ? AND d.created_at > datetime('now', '-30 minutes')
|
|
799
799
|
ORDER BY d.created_at DESC LIMIT 10`).all(myAgent?.id ?? '');
|
|
800
800
|
if (peerDecisions.length > 0) {
|
|
801
801
|
parts.push(`\n**Peer decisions (last 30 min):**`);
|
|
@@ -814,11 +814,11 @@ Use this at the start of every session or after compaction to pick up where you
|
|
|
814
814
|
};
|
|
815
815
|
});
|
|
816
816
|
// --- Onboarding Tools (warm-start a cold store) ---
|
|
817
|
-
server.tool('onboard_scan', `Scan a project's documentation + repository and return CANDIDATE memories to seed a cold store.
|
|
818
|
-
|
|
819
|
-
Use this when the store is empty / you're new to a project. The scan is deterministic
|
|
820
|
-
(real file contents, not guesses) — YOUR job is to refine the candidates into atomic,
|
|
821
|
-
recall-shaped memories, run the interview (onboard_questions), confirm with the user, then
|
|
817
|
+
server.tool('onboard_scan', `Scan a project's documentation + repository and return CANDIDATE memories to seed a cold store.
|
|
818
|
+
|
|
819
|
+
Use this when the store is empty / you're new to a project. The scan is deterministic
|
|
820
|
+
(real file contents, not guesses) — YOUR job is to refine the candidates into atomic,
|
|
821
|
+
recall-shaped memories, run the interview (onboard_questions), confirm with the user, then
|
|
822
822
|
save the good ones with memory_write (memory_class="canonical"). Nothing is saved by this tool.`, {
|
|
823
823
|
docs: z.array(z.string()).optional()
|
|
824
824
|
.describe('Doc files/dirs to scan (Markdown/text). Defaults to the repo (or cwd).'),
|
|
@@ -843,18 +843,18 @@ save the good ones with memory_write (memory_class="canonical"). Nothing is save
|
|
|
843
843
|
].join('\n');
|
|
844
844
|
return { content: [{ type: 'text', text }] };
|
|
845
845
|
});
|
|
846
|
-
server.tool('onboard_questions', `Return the onboarding interview questions. Ask the user ONE at a time, starting with the
|
|
846
|
+
server.tool('onboard_questions', `Return the onboarding interview questions. Ask the user ONE at a time, starting with the
|
|
847
847
|
goal of the memory system, and ask follow-ups for clarity. Turn each answer into a canonical memory.`, {}, async () => ({
|
|
848
848
|
content: [{ type: 'text', text: INTERVIEW_QUESTIONS.map((q, i) => `${i + 1}. ${q}`).join('\n') }],
|
|
849
849
|
}));
|
|
850
850
|
// --- Task Management Tools ---
|
|
851
|
-
server.tool('memory_task_add', `Create a task that you need to come back to. Tasks are memories with status and priority tracking.
|
|
852
|
-
|
|
853
|
-
Use this when:
|
|
854
|
-
- You identify work that needs doing but can't do it right now
|
|
855
|
-
- The user mentions something to do later
|
|
856
|
-
- You want to park a sub-task while focusing on something more urgent
|
|
857
|
-
|
|
851
|
+
server.tool('memory_task_add', `Create a task that you need to come back to. Tasks are memories with status and priority tracking.
|
|
852
|
+
|
|
853
|
+
Use this when:
|
|
854
|
+
- You identify work that needs doing but can't do it right now
|
|
855
|
+
- The user mentions something to do later
|
|
856
|
+
- You want to park a sub-task while focusing on something more urgent
|
|
857
|
+
|
|
858
858
|
Tasks automatically get high salience so they won't be discarded.`, {
|
|
859
859
|
concept: z.string().describe('Short task title (3-10 words)'),
|
|
860
860
|
content: z.string().describe('Full task description — what needs doing, context, acceptance criteria'),
|
|
@@ -894,11 +894,11 @@ Tasks automatically get high salience so they won't be discarded.`, {
|
|
|
894
894
|
}],
|
|
895
895
|
};
|
|
896
896
|
});
|
|
897
|
-
server.tool('memory_task_update', `Update a task's status or priority. Use this to:
|
|
898
|
-
- Start working on a task (open → in_progress)
|
|
899
|
-
- Mark a task done (→ done)
|
|
900
|
-
- Block a task on another (→ blocked)
|
|
901
|
-
- Reprioritize (change priority)
|
|
897
|
+
server.tool('memory_task_update', `Update a task's status or priority. Use this to:
|
|
898
|
+
- Start working on a task (open → in_progress)
|
|
899
|
+
- Mark a task done (→ done)
|
|
900
|
+
- Block a task on another (→ blocked)
|
|
901
|
+
- Reprioritize (change priority)
|
|
902
902
|
- Unblock a task (clear blocked_by)`, {
|
|
903
903
|
task_id: z.string().describe('ID of the task to update'),
|
|
904
904
|
status: z.enum(['open', 'in_progress', 'blocked', 'done']).optional()
|
|
@@ -928,8 +928,8 @@ Tasks automatically get high salience so they won't be discarded.`, {
|
|
|
928
928
|
}],
|
|
929
929
|
};
|
|
930
930
|
});
|
|
931
|
-
server.tool('memory_task_list', `List tasks with optional status filter. Shows tasks ordered by priority (urgent first).
|
|
932
|
-
|
|
931
|
+
server.tool('memory_task_list', `List tasks with optional status filter. Shows tasks ordered by priority (urgent first).
|
|
932
|
+
|
|
933
933
|
Use at the start of a session to see what's pending, or to check blocked/done tasks.`, {
|
|
934
934
|
status: z.enum(['open', 'in_progress', 'blocked', 'done']).optional()
|
|
935
935
|
.describe('Filter by status (omit to see all active tasks)'),
|
|
@@ -955,10 +955,10 @@ Use at the start of a session to see what's pending, or to check blocked/done ta
|
|
|
955
955
|
}],
|
|
956
956
|
};
|
|
957
957
|
});
|
|
958
|
-
server.tool('memory_task_next', `Get the single most important task to work on next.
|
|
959
|
-
|
|
960
|
-
Prioritizes: in_progress tasks first (finish what you started), then by priority level, then oldest first. Skips blocked and done tasks.
|
|
961
|
-
|
|
958
|
+
server.tool('memory_task_next', `Get the single most important task to work on next.
|
|
959
|
+
|
|
960
|
+
Prioritizes: in_progress tasks first (finish what you started), then by priority level, then oldest first. Skips blocked and done tasks.
|
|
961
|
+
|
|
962
962
|
Use this when you finish a task or need to decide what to do next.`, {}, async () => {
|
|
963
963
|
const next = await store.getNextTask(AGENT_ID);
|
|
964
964
|
if (!next) {
|
|
@@ -974,13 +974,13 @@ Use this when you finish a task or need to decide what to do next.`, {}, async (
|
|
|
974
974
|
};
|
|
975
975
|
});
|
|
976
976
|
// --- Task Bracket Tools ---
|
|
977
|
-
server.tool('memory_task_begin', `Signal that you're starting a significant task. Auto-checkpoints current state and recalls relevant memories.
|
|
978
|
-
|
|
979
|
-
CALL THIS when starting:
|
|
980
|
-
- A multi-step operation (doc generation, large refactor, migration)
|
|
981
|
-
- Work on a new topic or project area
|
|
982
|
-
- Anything that might fill the context window
|
|
983
|
-
|
|
977
|
+
server.tool('memory_task_begin', `Signal that you're starting a significant task. Auto-checkpoints current state and recalls relevant memories.
|
|
978
|
+
|
|
979
|
+
CALL THIS when starting:
|
|
980
|
+
- A multi-step operation (doc generation, large refactor, migration)
|
|
981
|
+
- Work on a new topic or project area
|
|
982
|
+
- Anything that might fill the context window
|
|
983
|
+
|
|
984
984
|
This ensures your state is saved before you start, and primes recall with relevant context.`, {
|
|
985
985
|
topic: z.string().describe('What task are you starting? (3-15 words)'),
|
|
986
986
|
files: z.array(z.string()).optional().default([])
|
|
@@ -1032,13 +1032,13 @@ This ensures your state is saved before you start, and primes recall with releva
|
|
|
1032
1032
|
}],
|
|
1033
1033
|
};
|
|
1034
1034
|
});
|
|
1035
|
-
server.tool('memory_task_end', `Signal that you've finished a significant task. Writes a summary memory and auto-checkpoints.
|
|
1036
|
-
|
|
1037
|
-
CALL THIS when you finish:
|
|
1038
|
-
- A multi-step operation
|
|
1039
|
-
- Before switching to a different topic
|
|
1040
|
-
- At the end of a work session
|
|
1041
|
-
|
|
1035
|
+
server.tool('memory_task_end', `Signal that you've finished a significant task. Writes a summary memory and auto-checkpoints.
|
|
1036
|
+
|
|
1037
|
+
CALL THIS when you finish:
|
|
1038
|
+
- A multi-step operation
|
|
1039
|
+
- Before switching to a different topic
|
|
1040
|
+
- At the end of a work session
|
|
1041
|
+
|
|
1042
1042
|
This captures what was accomplished so future sessions can recall it.`, {
|
|
1043
1043
|
summary: z.string().describe('What was accomplished? Include key outcomes, decisions, and any issues.'),
|
|
1044
1044
|
tags: z.array(z.string()).optional().default([])
|
|
@@ -1114,14 +1114,14 @@ This captures what was accomplished so future sessions can recall it.`, {
|
|
|
1114
1114
|
}],
|
|
1115
1115
|
};
|
|
1116
1116
|
});
|
|
1117
|
-
server.tool('compress_output', `Compress a STRUCTURED tool output (JSON object/array, query rows, log records) into TOON —
|
|
1118
|
-
a compact, schema-aware tabular encoding — before putting it in your context. Cuts ~50-65%
|
|
1119
|
-
of the tokens on uniform arrays at zero comprehension cost (validated: models read TOON as
|
|
1120
|
-
accurately as JSON). Use this on large tool results you need to keep in context.
|
|
1121
|
-
|
|
1122
|
-
Output-only and safe: it never changes the data. Non-JSON / prose is returned unchanged.
|
|
1123
|
-
TOON is only emitted when it reproduces the input exactly (self-verified round-trip);
|
|
1124
|
-
otherwise you get plain JSON back. When compressed, you also get a 'ref' — call
|
|
1117
|
+
server.tool('compress_output', `Compress a STRUCTURED tool output (JSON object/array, query rows, log records) into TOON —
|
|
1118
|
+
a compact, schema-aware tabular encoding — before putting it in your context. Cuts ~50-65%
|
|
1119
|
+
of the tokens on uniform arrays at zero comprehension cost (validated: models read TOON as
|
|
1120
|
+
accurately as JSON). Use this on large tool results you need to keep in context.
|
|
1121
|
+
|
|
1122
|
+
Output-only and safe: it never changes the data. Non-JSON / prose is returned unchanged.
|
|
1123
|
+
TOON is only emitted when it reproduces the input exactly (self-verified round-trip);
|
|
1124
|
+
otherwise you get plain JSON back. When compressed, you also get a 'ref' — call
|
|
1125
1125
|
retrieve_original(ref) to get the verbatim source back if you ever need it.`, {
|
|
1126
1126
|
output: z.string().describe('The tool output to compress — JSON text (preferred) or any string. Non-JSON is returned unchanged.'),
|
|
1127
1127
|
min_saving_chars: z.number().optional().describe('Only emit TOON if it saves at least this many characters (default 40).'),
|
|
@@ -1135,8 +1135,8 @@ retrieve_original(ref) to get the verbatim source back if you ever need it.`, {
|
|
|
1135
1135
|
content: [{ type: 'text', text: header + r.text }],
|
|
1136
1136
|
};
|
|
1137
1137
|
});
|
|
1138
|
-
server.tool('retrieve_original', `Retrieve the verbatim original text for a 'ref' returned by compress_output. Use this when
|
|
1139
|
-
you need the exact, uncompressed source (e.g. to pass it to another tool unchanged). Returns
|
|
1138
|
+
server.tool('retrieve_original', `Retrieve the verbatim original text for a 'ref' returned by compress_output. Use this when
|
|
1139
|
+
you need the exact, uncompressed source (e.g. to pass it to another tool unchanged). Returns
|
|
1140
1140
|
an error if the ref has expired (originals are kept for the most recent compressions only).`, {
|
|
1141
1141
|
ref: z.string().describe('The ref handle returned by compress_output (e.g. "awm_orig_12").'),
|
|
1142
1142
|
}, async (params) => {
|
package/dist/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/pglite.d.ts
CHANGED
|
@@ -52,6 +52,34 @@ export declare class PGliteEngramStore {
|
|
|
52
52
|
}>>;
|
|
53
53
|
getEngramsByIds(ids: string[]): Promise<Engram[]>;
|
|
54
54
|
getEngramsByAgents(agentIds: string[], stage?: EngramStage, includeRetracted?: boolean): Promise<Engram[]>;
|
|
55
|
+
/**
|
|
56
|
+
* Tags of the most-accessed engrams, bounded IN SQL.
|
|
57
|
+
*
|
|
58
|
+
* Exists because the recall path's pronoun branch used to call
|
|
59
|
+
* `getEngramsByAgents(agentIds, 'active')` — hydrating EVERY active engram
|
|
60
|
+
* into JS, embeddings and all — then sort by accessCount in memory, keep the
|
|
61
|
+
* top ten, and extract five tag words. Measured 2026-10-08 on an
|
|
62
|
+
* 11k-retrievable store: 245ms mean / 280ms median whenever it ran, which was
|
|
63
|
+
* 2.1% of real prompts (the words that trigger it include "it", "this",
|
|
64
|
+
* "that" and "there") against 0.2% of benchmark probes — so it cost real
|
|
65
|
+
* users ~62% of a recall and the benchmark never saw it. See
|
|
66
|
+
* docs/recall-latency.md.
|
|
67
|
+
*
|
|
68
|
+
* ONE QUERY PER AGENT, deliberately. `agent_id IN (...)` makes SQLite abandon
|
|
69
|
+
* the ordered index walk and sort the whole partition in a temp B-tree:
|
|
70
|
+
* measured on the 11k-retrievable store, the IN form costs 86ms against
|
|
71
|
+
* **0.03ms** for the equality form, because only the latter can walk
|
|
72
|
+
* `idx_engrams_access` and stop at LIMIT. Agent-scoped recall passes a single
|
|
73
|
+
* agent and hits the fast path either way; workspace-scoped recall would have
|
|
74
|
+
* paid the 86ms on every pronoun query. The global top N is always contained
|
|
75
|
+
* in the union of the per-agent top Ns, so merging in JS is exact, not an
|
|
76
|
+
* approximation.
|
|
77
|
+
*
|
|
78
|
+
* Ordering is `access_count DESC, id`. The `id` tiebreak is deliberate: the
|
|
79
|
+
* old JS sort broke ties on SQLite's scan order, which is arbitrary, so this
|
|
80
|
+
* is both cheaper and more deterministic.
|
|
81
|
+
*/
|
|
82
|
+
getTopAccessedTags(agentIds: string[], topN: number, stage?: EngramStage): Promise<string[][]>;
|
|
55
83
|
getWorkspaceAgentIds(agentId: string, workspace: string): Promise<string[]>;
|
|
56
84
|
touchEngram(id: string): Promise<void>;
|
|
57
85
|
updateStage(id: string, stage: EngramStage): Promise<void>;
|