eklavya 1.91.0 → 1.92.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -4
- package/dist/assets/dashboard.html +151 -3
- package/dist/cli-economy.js +434 -0
- package/dist/cli-economy.js.map +1 -0
- package/dist/cli-memory.js +4 -1
- package/dist/cli-memory.js.map +1 -1
- package/dist/cli.js +46 -5
- package/dist/cli.js.map +1 -1
- package/dist/config-path.js +23 -1
- package/dist/config-path.js.map +1 -1
- package/dist/config.js +63 -0
- package/dist/config.js.map +1 -1
- package/dist/cost-report.js +67 -0
- package/dist/cost-report.js.map +1 -0
- package/dist/dashboard.js +79 -1
- package/dist/dashboard.js.map +1 -1
- package/dist/economy/LICENSE +202 -0
- package/dist/economy/envfacts.js +229 -0
- package/dist/economy/envfacts.js.map +1 -0
- package/dist/economy/loopguard.js +169 -0
- package/dist/economy/loopguard.js.map +1 -0
- package/dist/economy/pricing.js +54 -0
- package/dist/economy/pricing.js.map +1 -0
- package/dist/economy/shell-edits.js +238 -0
- package/dist/economy/shell-edits.js.map +1 -0
- package/dist/economy/signals.js +164 -0
- package/dist/economy/signals.js.map +1 -0
- package/dist/economy/toolprune.js +209 -0
- package/dist/economy/toolprune.js.map +1 -0
- package/dist/economy/transcript.js +290 -0
- package/dist/economy/transcript.js.map +1 -0
- package/dist/feedback-review.js +1 -1
- package/dist/feedback-review.js.map +1 -1
- package/dist/feedback.js +3 -0
- package/dist/feedback.js.map +1 -1
- package/dist/guard-note.js +21 -0
- package/dist/guard-note.js.map +1 -0
- package/dist/hooks/capture-tool.js +61 -11
- package/dist/hooks/capture-tool.js.map +1 -1
- package/dist/hooks/economy-lib.js +20 -0
- package/dist/hooks/economy-lib.js.map +1 -0
- package/dist/hooks/file-context.js +1 -1
- package/dist/hooks/file-context.js.map +1 -1
- package/dist/hooks/lib.js.map +1 -1
- package/dist/hooks/memory-lib.js +17 -1
- package/dist/hooks/memory-lib.js.map +1 -1
- package/dist/hooks/prompt-submit-nudge.js +15 -1
- package/dist/hooks/prompt-submit-nudge.js.map +1 -1
- package/dist/hooks/session-end.js +32 -0
- package/dist/hooks/session-end.js.map +1 -0
- package/dist/hooks/session-start.js +34 -0
- package/dist/hooks/session-start.js.map +1 -1
- package/dist/hooks/stop-quiz-check.js +20 -0
- package/dist/hooks/stop-quiz-check.js.map +1 -1
- package/dist/hooks/subagent-start.js +17 -2
- package/dist/hooks/subagent-start.js.map +1 -1
- package/dist/install.js +31 -7
- package/dist/install.js.map +1 -1
- package/dist/ledger-pending.js +85 -0
- package/dist/ledger-pending.js.map +1 -0
- package/dist/ledger.js +144 -0
- package/dist/ledger.js.map +1 -0
- package/dist/loop-guard.js +190 -0
- package/dist/loop-guard.js.map +1 -0
- package/dist/memory/capture.js +2 -2
- package/dist/memory/capture.js.map +1 -1
- package/dist/memory/embed.js +37 -0
- package/dist/memory/embed.js.map +1 -1
- package/dist/memory/pinned.js +175 -0
- package/dist/memory/pinned.js.map +1 -0
- package/dist/memory/provider.js +66 -0
- package/dist/memory/provider.js.map +1 -1
- package/dist/memory/recall.js +111 -33
- package/dist/memory/recall.js.map +1 -1
- package/dist/memory/seam.js +88 -0
- package/dist/memory/seam.js.map +1 -0
- package/dist/memory/search.js +65 -11
- package/dist/memory/search.js.map +1 -1
- package/dist/memory/store.js +74 -15
- package/dist/memory/store.js.map +1 -1
- package/dist/memory/summarize.js.map +1 -1
- package/dist/memory/terms.js +100 -0
- package/dist/memory/terms.js.map +1 -0
- package/dist/memory/tokens.js +11 -7
- package/dist/memory/tokens.js.map +1 -1
- package/dist/memory/use.js +123 -0
- package/dist/memory/use.js.map +1 -0
- package/dist/memory/worker.js +16 -1
- package/dist/memory/worker.js.map +1 -1
- package/dist/migrations/034_memory_keywords.sql +59 -0
- package/dist/migrations/035_econ_ledger.sql +69 -0
- package/dist/migrations/036_econ_turns.sql +52 -0
- package/dist/migrations/037_econ_toolprune.sql +38 -0
- package/dist/migrations/038_pinned_facts.sql +48 -0
- package/dist/migrations/039_memory_use.sql +34 -0
- package/dist/plugin/.claude-plugin/plugin.json +1 -1
- package/dist/plugin/hooks/hooks.json +30 -0
- package/dist/plugin/skills/CLAUDE.md +1 -1
- package/dist/plugin/skills/memory/SKILL.md +2 -1
- package/dist/plugin/skills/toolprune/SKILL.md +31 -0
- package/dist/statusline.js +2 -2
- package/dist/statusline.js.map +1 -1
- package/dist/toolprune-store.js +136 -0
- package/dist/toolprune-store.js.map +1 -0
- package/dist/tools/config_tools.js +30 -0
- package/dist/tools/config_tools.js.map +1 -1
- package/dist/tools/index.js +2 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/memory_read_tools.js +8 -0
- package/dist/tools/memory_read_tools.js.map +1 -1
- package/dist/tools/memory_write_tools.js +21 -0
- package/dist/tools/memory_write_tools.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
-- Memory analytics and stale context (issue #259).
|
|
2
|
+
--
|
|
3
|
+
-- `memory_entry_use` is what each entry did for the sessions it was sent to,
|
|
4
|
+
-- computed by the background fold, never by a hook: how often it was sent,
|
|
5
|
+
-- opened (a `memory_get` of it) and applied (the session later read or edited
|
|
6
|
+
-- one of its files), a utility score that decays by 0.8 a session and ranks
|
|
7
|
+
-- recall, and, when the fold or the model flagged it, why it may be outdated.
|
|
8
|
+
--
|
|
9
|
+
-- Receipts and the read log keep the informative terms of their query (never
|
|
10
|
+
-- the whole prompt), and a read keeps how long after its recall it came.
|
|
11
|
+
|
|
12
|
+
CREATE TABLE memory_entry_use (
|
|
13
|
+
entry_id INTEGER PRIMARY KEY REFERENCES memory_entries (id) ON DELETE CASCADE,
|
|
14
|
+
sent INTEGER NOT NULL DEFAULT 0,
|
|
15
|
+
opened INTEGER NOT NULL DEFAULT 0,
|
|
16
|
+
applied INTEGER NOT NULL DEFAULT 0,
|
|
17
|
+
utility REAL NOT NULL DEFAULT 0,
|
|
18
|
+
stale_reason TEXT,
|
|
19
|
+
stale_since TEXT,
|
|
20
|
+
-- fold | model
|
|
21
|
+
stale_by TEXT,
|
|
22
|
+
refreshed_at TEXT,
|
|
23
|
+
updated_at TEXT NOT NULL
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
-- Which sessions the fold already counted, so a second fold adds nothing.
|
|
27
|
+
CREATE TABLE memory_use_sessions (
|
|
28
|
+
session_id TEXT PRIMARY KEY,
|
|
29
|
+
folded_at TEXT NOT NULL
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
ALTER TABLE context_receipts ADD COLUMN query_terms TEXT;
|
|
33
|
+
ALTER TABLE memory_reads ADD COLUMN query_terms TEXT;
|
|
34
|
+
ALTER TABLE memory_reads ADD COLUMN seconds_since_recall INTEGER;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eklavya",
|
|
3
3
|
"displayName": "Eklavya",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.92.0",
|
|
5
5
|
"description": "Learn while your agent works. Turns coding-agent generation time into adaptive, Socratic learning grounded in the code being written.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Ajay Kumar"
|
|
@@ -148,6 +148,21 @@
|
|
|
148
148
|
]
|
|
149
149
|
}
|
|
150
150
|
],
|
|
151
|
+
"PostToolUseFailure": [
|
|
152
|
+
{
|
|
153
|
+
"hooks": [
|
|
154
|
+
{
|
|
155
|
+
"type": "command",
|
|
156
|
+
"command": "node",
|
|
157
|
+
"args": [
|
|
158
|
+
"${CLAUDE_PLUGIN_ROOT}/hooks/run.mjs",
|
|
159
|
+
"capture-tool"
|
|
160
|
+
],
|
|
161
|
+
"timeout": 10
|
|
162
|
+
}
|
|
163
|
+
]
|
|
164
|
+
}
|
|
165
|
+
],
|
|
151
166
|
"Stop": [
|
|
152
167
|
{
|
|
153
168
|
"hooks": [
|
|
@@ -163,6 +178,21 @@
|
|
|
163
178
|
}
|
|
164
179
|
]
|
|
165
180
|
}
|
|
181
|
+
],
|
|
182
|
+
"SessionEnd": [
|
|
183
|
+
{
|
|
184
|
+
"hooks": [
|
|
185
|
+
{
|
|
186
|
+
"type": "command",
|
|
187
|
+
"command": "node",
|
|
188
|
+
"args": [
|
|
189
|
+
"${CLAUDE_PLUGIN_ROOT}/hooks/run.mjs",
|
|
190
|
+
"session-end"
|
|
191
|
+
],
|
|
192
|
+
"timeout": 10
|
|
193
|
+
}
|
|
194
|
+
]
|
|
195
|
+
}
|
|
166
196
|
]
|
|
167
197
|
},
|
|
168
198
|
"modules": [
|
|
@@ -9,7 +9,7 @@ sentence can change the product without raising an error. Read the root
|
|
|
9
9
|
Each skill has a directory and `SKILL.md` with `name` and `description`.
|
|
10
10
|
`disable-model-invocation: true` makes the entry user-invoked only. The shipped
|
|
11
11
|
slash commands are `gate`, `learn`, `level`, `memory`, `mode`, `pack`, `progress`,
|
|
12
|
-
`quiz`, `setup` and `
|
|
12
|
+
`quiz`, `setup`, `skip` and `toolprune`. Recount from frontmatter when changing this inventory.
|
|
13
13
|
|
|
14
14
|
| Location | Responsibility |
|
|
15
15
|
|---|---|
|
|
@@ -22,11 +22,12 @@ Read-only unless they asked for a change. Never quiz here.
|
|
|
22
22
|
| "remember that ..." | `memory_write` |
|
|
23
23
|
| "that is wrong, actually ..." | `memory_correct` |
|
|
24
24
|
| "forget that" | `memory_delete` — confirm first, and say soft delete keeps the audit trail |
|
|
25
|
+
| "that one is out of date" (and the right version is not known) | `memory_flag_stale` with a few words on what changed; it stays searchable, ranks lower and is labelled |
|
|
25
26
|
|
|
26
27
|
Everything is scoped to this project. Pass `all_projects: true` (to
|
|
27
28
|
`memory_search`, then to `memory_get` for what it found) only when they asked
|
|
28
29
|
for another codebase by name, and say so in the answer when you do.
|
|
29
|
-
`memory_correct` and `
|
|
30
|
+
`memory_correct`, `memory_delete` and `memory_flag_stale` refuse another project's id with
|
|
30
31
|
`other_project`; to change it, pass a `cwd` inside the project it names.
|
|
31
32
|
|
|
32
33
|
## Search then hydrate, never the other way round
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: toolprune
|
|
3
|
+
description: Show the tools this repository's sessions load and never use, and deny or restore them in this checkout's .claude/settings.local.json when asked.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# /eklavya:toolprune
|
|
8
|
+
|
|
9
|
+
Every tool a session loads costs context on every request, used or not.
|
|
10
|
+
Eklavya keeps, per repository, how many prompts and sessions have passed since
|
|
11
|
+
each loaded tool was last used, and proposes the ones that went unused. It
|
|
12
|
+
writes nothing until the developer says so.
|
|
13
|
+
|
|
14
|
+
1. Run `eklavya toolprune list` with Bash and show what it printed: each
|
|
15
|
+
proposed tool with its evidence, and any tools Eklavya already denied.
|
|
16
|
+
2. If the developer passed `apply` (all of them) or named tools, run
|
|
17
|
+
`eklavya toolprune apply [tool...]`. Say that the change takes effect from
|
|
18
|
+
the next session, and that `eklavya toolprune restore` undoes it.
|
|
19
|
+
3. If they passed `restore`, run `eklavya toolprune restore [tool...]`. Say
|
|
20
|
+
that restored tools are not proposed again.
|
|
21
|
+
4. If they asked what it saves, run `eklavya toolprune measure` and repeat its
|
|
22
|
+
two lines as written: it counts listing lines of deferred tools only, and
|
|
23
|
+
says it does not measure full definitions.
|
|
24
|
+
|
|
25
|
+
Never edit `.claude/settings.local.json` yourself, and never apply without being
|
|
26
|
+
asked: the deny list is the developer's file. `eklavya toolprune apply` refuses
|
|
27
|
+
when `economy.toolprune` is `off`, when the file is not valid JSON, or when
|
|
28
|
+
`.claude` leads out of the repository through a symlink; report its reason as
|
|
29
|
+
written. Built-in tools Claude Code needs to work (Bash, Read, Edit, Write, the
|
|
30
|
+
search and web tools, Agent, Skill, ToolSearch, AskUserQuestion) and every
|
|
31
|
+
Eklavya tool are never proposed.
|
package/dist/statusline.js
CHANGED
|
@@ -19,10 +19,10 @@ export function paint(text, code, color) {
|
|
|
19
19
|
* meant an absent Eklavya, and under the old `mode` dial that was a difference
|
|
20
20
|
* nothing on screen made visible.
|
|
21
21
|
*/
|
|
22
|
-
export function statusLine({ config, level, pinned, color = true }) {
|
|
22
|
+
export function statusLine({ config, level, pinned, color = true, note = null }) {
|
|
23
23
|
if (!config.quiz.enabled || config.quiet)
|
|
24
24
|
return null;
|
|
25
|
-
const parts = dialParts(config, pinned ? `${level} (pinned)` : level);
|
|
25
|
+
const parts = [...dialParts(config, pinned ? `${level} (pinned)` : level), ...(note ? [note] : [])];
|
|
26
26
|
// `enforced` is the one setting with a consequence attached — commits are
|
|
27
27
|
// gated — so the whole segment takes the warning colour rather than the
|
|
28
28
|
// accent. The word is still there, so colour is a redundant cue and not the
|
package/dist/statusline.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"statusline.js","sourceRoot":"","sources":["../src/statusline.ts"],"names":[],"mappings":"AAwDA,uEAAuE;AACvE,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAC;AAEzB,+EAA+E;AAC/E,0EAA0E;AAC1E,MAAM,GAAG,GAAG,QAAQ,CAAC;AAErB,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,IAAY,EAAE,KAAc;IAC9D,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,IAAI,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAAmB;IAC9F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAEtD,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEpG,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,wEAAwE;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,OAAO,KAAK,CAAC,YAAY,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,MAAqB,EAAE,UAAkB;IACjE,2EAA2E;IAC3E,6DAA6D;IAC7D,MAAM,KAAK,GACT,MAAM,CAAC,KAAK,KAAK,OAAO,IAAI,MAAM,CAAC,WAAW;QAC5C,CAAC,CAAC,UAAU,MAAM,CAAC,WAAW,GAAG;QACjC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAEnB,4EAA4E;IAC5E,6EAA6E;IAC7E,yEAAyE;IACzE,0EAA0E;IAC1E,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,KAAK;QACL,MAAM,CAAC,OAAO;QACd,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { applyDeny, isProtected, measure, propose, restoreDeny } from './economy/toolprune.js';
|
|
2
|
+
/**
|
|
3
|
+
* Tool pruning's database side (issue #263): the evidence the fold keeps, the
|
|
4
|
+
* proposal, and the record of what `apply` wrote so `restore` can undo it.
|
|
5
|
+
* Writes to a checkout's settings come from the CLI or the fold, never from a
|
|
6
|
+
* hook.
|
|
7
|
+
*/
|
|
8
|
+
const nowIso = () => new Date().toISOString();
|
|
9
|
+
/**
|
|
10
|
+
* Counts one finished session toward its project's evidence: every tool it
|
|
11
|
+
* loaded (listed as deferred, or used) either resets (used) or ages by the
|
|
12
|
+
* session's prompts. Once per session.
|
|
13
|
+
*/
|
|
14
|
+
export function recordToolUse(db, project, sessionId, t) {
|
|
15
|
+
const done = db.prepare('SELECT evidence FROM econ_sessions WHERE session_id = ?').get(sessionId);
|
|
16
|
+
if (done?.evidence)
|
|
17
|
+
return;
|
|
18
|
+
const at = nowIso();
|
|
19
|
+
const loaded = new Set([...t.deferredTools, ...Object.keys(t.tools)]);
|
|
20
|
+
const upsert = db.prepare(`INSERT INTO econ_tool_use (project, tool, deferred, first_seen_at, last_used_at, prompts_since, sessions_since)
|
|
21
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)
|
|
22
|
+
ON CONFLICT(project, tool) DO UPDATE SET
|
|
23
|
+
deferred = excluded.deferred,
|
|
24
|
+
last_used_at = COALESCE(excluded.last_used_at, econ_tool_use.last_used_at),
|
|
25
|
+
prompts_since = CASE WHEN excluded.last_used_at IS NOT NULL THEN 0 ELSE econ_tool_use.prompts_since + excluded.prompts_since END,
|
|
26
|
+
sessions_since = CASE WHEN excluded.last_used_at IS NOT NULL THEN 0 ELSE econ_tool_use.sessions_since + 1 END`);
|
|
27
|
+
db.transaction(() => {
|
|
28
|
+
for (const tool of loaded) {
|
|
29
|
+
const used = (t.tools[tool] ?? 0) > 0;
|
|
30
|
+
upsert.run(project, tool, t.deferredTools.includes(tool) ? 1 : 0, at, used ? at : null, used ? 0 : t.prompts, used ? 0 : 1);
|
|
31
|
+
}
|
|
32
|
+
db.prepare('UPDATE econ_sessions SET evidence = 1 WHERE session_id = ?').run(sessionId);
|
|
33
|
+
})();
|
|
34
|
+
}
|
|
35
|
+
export function evidence(db, project) {
|
|
36
|
+
return db
|
|
37
|
+
.prepare('SELECT tool, prompts_since, sessions_since, deferred FROM econ_tool_use WHERE project = ? ORDER BY tool')
|
|
38
|
+
.all(project);
|
|
39
|
+
}
|
|
40
|
+
export function kept(db, project) {
|
|
41
|
+
return db.prepare('SELECT tool FROM econ_toolprune_kept WHERE project = ?').all(project).map((r) => r.tool);
|
|
42
|
+
}
|
|
43
|
+
export function writeRecord(db, project) {
|
|
44
|
+
const row = db.prepare('SELECT record FROM econ_settings_writes WHERE project = ?').get(project);
|
|
45
|
+
return row ? JSON.parse(row.record) : null;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The catalog follows the Claude Code version (issue #263): when a session
|
|
49
|
+
* here ran on a different version from the last one counted, a tool that
|
|
50
|
+
* version did not load at all is no longer a candidate, so its evidence goes.
|
|
51
|
+
* The first session seen only records the version.
|
|
52
|
+
*/
|
|
53
|
+
export function refreshCatalog(db, project, t) {
|
|
54
|
+
if (!t.version)
|
|
55
|
+
return false;
|
|
56
|
+
const key = `toolprune:cc-version:${project}`;
|
|
57
|
+
const last = db.prepare('SELECT value FROM meta WHERE key = ?').get(key)?.value;
|
|
58
|
+
db.prepare('INSERT INTO meta (key, value) VALUES (?, ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value').run(key, t.version);
|
|
59
|
+
if (!last || last === t.version)
|
|
60
|
+
return false;
|
|
61
|
+
const loaded = [...new Set([...t.deferredTools, ...Object.keys(t.tools)])];
|
|
62
|
+
db.prepare(`DELETE FROM econ_tool_use WHERE project = ? AND tool NOT IN (SELECT value FROM json_each(?))`).run(project, JSON.stringify(loaded));
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
/** Tools to propose for this project: the rule, less tools kept by hand and ones already written. */
|
|
66
|
+
export function proposal(db, config, project) {
|
|
67
|
+
const e = config.economy;
|
|
68
|
+
const skip = new Set([...kept(db, project), ...(writeRecord(db, project)?.added ?? [])]);
|
|
69
|
+
return propose(evidence(db, project), {
|
|
70
|
+
evidence: e.toolprune_evidence,
|
|
71
|
+
min_sessions: e.toolprune_min_sessions,
|
|
72
|
+
sessions: e.toolprune_sessions,
|
|
73
|
+
protect: e.toolprune_protect,
|
|
74
|
+
}).filter((r) => !skip.has(r.tool));
|
|
75
|
+
}
|
|
76
|
+
/** Writes the proposal (or `only`) to the checkout's deny list and records it. */
|
|
77
|
+
export function applyProposal(db, config, project, repoRoot, only) {
|
|
78
|
+
if (config.economy.toolprune === 'off')
|
|
79
|
+
return { ok: false, reason: 'economy.toolprune is off' };
|
|
80
|
+
const tools = proposal(db, config, project)
|
|
81
|
+
.map((r) => r.tool)
|
|
82
|
+
.filter((t) => !only || only.includes(t));
|
|
83
|
+
if (!tools.length)
|
|
84
|
+
return { ok: true, tools: [] };
|
|
85
|
+
const result = applyDeny(repoRoot, tools, writeRecord(db, project));
|
|
86
|
+
if (!result.ok)
|
|
87
|
+
return result;
|
|
88
|
+
db.prepare(`INSERT INTO econ_settings_writes (project, record, applied_at) VALUES (?, ?, ?)
|
|
89
|
+
ON CONFLICT(project) DO UPDATE SET record = excluded.record, applied_at = excluded.applied_at`).run(project, JSON.stringify(result.record), nowIso());
|
|
90
|
+
return { ok: true, tools };
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Removes Eklavya's entries (all, or `only`) and keeps those tools from being
|
|
94
|
+
* proposed again. Without a record there is nothing of Eklavya's to remove.
|
|
95
|
+
*/
|
|
96
|
+
export function restoreTools(db, project, repoRoot, only, keep = true) {
|
|
97
|
+
const record = writeRecord(db, project);
|
|
98
|
+
if (!record)
|
|
99
|
+
return { ok: true, tools: [] };
|
|
100
|
+
const result = restoreDeny(repoRoot, record, only);
|
|
101
|
+
if (!result.ok)
|
|
102
|
+
return result;
|
|
103
|
+
const remaining = only ? record.added.filter((t) => !only.includes(t)) : [];
|
|
104
|
+
db.transaction(() => {
|
|
105
|
+
if (remaining.length) {
|
|
106
|
+
db.prepare('UPDATE econ_settings_writes SET record = ? WHERE project = ?').run(JSON.stringify({ ...record, added: remaining }), project);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
db.prepare('DELETE FROM econ_settings_writes WHERE project = ?').run(project);
|
|
110
|
+
}
|
|
111
|
+
if (keep) {
|
|
112
|
+
const add = db.prepare('INSERT OR IGNORE INTO econ_toolprune_kept (project, tool, kept_at) VALUES (?, ?, ?)');
|
|
113
|
+
for (const t of result.removed)
|
|
114
|
+
add.run(project, t, nowIso());
|
|
115
|
+
}
|
|
116
|
+
})();
|
|
117
|
+
return { ok: true, tools: result.removed };
|
|
118
|
+
}
|
|
119
|
+
/** A tool Eklavya denied that has since become protected comes back, without being marked kept. */
|
|
120
|
+
export function restoreNewlyProtected(db, config, project, repoRoot) {
|
|
121
|
+
const record = writeRecord(db, project);
|
|
122
|
+
const now = record?.added.filter((t) => isProtected(t, config.economy.toolprune_protect)) ?? [];
|
|
123
|
+
if (!now.length)
|
|
124
|
+
return [];
|
|
125
|
+
const r = restoreTools(db, project, repoRoot, now, false);
|
|
126
|
+
return r.ok ? r.tools : [];
|
|
127
|
+
}
|
|
128
|
+
/** Listing lines a deny list would save. Deferred tools only: definition sizes of the others are not known here. */
|
|
129
|
+
export function measureProposal(db, config, project) {
|
|
130
|
+
const rows = evidence(db, project);
|
|
131
|
+
const proposed = proposal(db, config, project).map((r) => r.tool);
|
|
132
|
+
const deferred = rows.filter((r) => r.deferred).map((r) => r.tool);
|
|
133
|
+
const m = measure({}, deferred, proposed);
|
|
134
|
+
return { tools: proposed.length, deferred: proposed.filter((t) => deferred.includes(t)).length, listingTokens: m.saved };
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=toolprune-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolprune-store.js","sourceRoot":"","sources":["../src/toolprune-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAuC,MAAM,wBAAwB,CAAC;AAGpI;;;;;GAKG;AAEH,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,EAAM,EAAE,OAAe,EAAE,SAAiB,EAAE,CAAiE;IACzI,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,yDAAyD,CAAC,CAAC,GAAG,CAAC,SAAS,CAAqC,CAAC;IACtI,IAAI,IAAI,EAAE,QAAQ;QAAE,OAAO;IAC3B,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB;;;;;;qHAMiH,CAClH,CAAC;IACF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAClB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9H,CAAC;QACD,EAAE,CAAC,OAAO,CAAC,4DAA4D,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC,CAAC,EAAE,CAAC;AACP,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAM,EAAE,OAAe;IAC9C,OAAO,EAAE;SACN,OAAO,CAAC,yGAAyG,CAAC;SAClH,GAAG,CAAC,OAAO,CAA4C,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,EAAM,EAAE,OAAe;IAC1C,OAAQ,EAAE,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACtI,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAM,EAAE,OAAe;IACjD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAmC,CAAC;IACnI,OAAO,GAAG,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,EAAM,EAAE,OAAe,EAAE,CAAiE;IACvH,IAAI,CAAC,CAAC,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,GAAG,GAAG,wBAAwB,OAAO,EAAE,CAAC;IAC9C,MAAM,IAAI,GAAI,EAAE,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAmC,EAAE,KAAK,CAAC;IACnH,EAAE,CAAC,OAAO,CAAC,mGAAmG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACpI,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,EAAE,CAAC,OAAO,CAAC,8FAA8F,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAChJ,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,QAAQ,CAAC,EAAM,EAAE,MAAqB,EAAE,OAAe;IACrE,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACzF,OAAO,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;QACpC,QAAQ,EAAE,CAAC,CAAC,kBAAkB;QAC9B,YAAY,EAAE,CAAC,CAAC,sBAAsB;QACtC,QAAQ,EAAE,CAAC,CAAC,kBAAkB;QAC9B,OAAO,EAAE,CAAC,CAAC,iBAAiB;KAC7B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACtC,CAAC;AAID,kFAAkF;AAClF,MAAM,UAAU,aAAa,CAAC,EAAM,EAAE,MAAqB,EAAE,OAAe,EAAE,QAAgB,EAAE,IAAe;IAC7G,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;IACjG,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC;SACxC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,EAAE,CAAC,OAAO,CACR;mGAC+F,CAChG,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACxD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,EAAM,EAAE,OAAe,EAAE,QAAgB,EAAE,IAAe,EAAE,IAAI,GAAG,IAAI;IAClG,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAClB,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,EAAE,CAAC,OAAO,CAAC,8DAA8D,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3I,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,qFAAqF,CAAC,CAAC;YAC9G,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;gBAAE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IACL,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AAC7C,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,qBAAqB,CAAC,EAAM,EAAE,MAAqB,EAAE,OAAe,EAAE,QAAgB;IACpG,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC;IAChG,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1D,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7B,CAAC;AAED,oHAAoH;AACpH,MAAM,UAAU,eAAe,CAAC,EAAM,EAAE,MAAqB,EAAE,OAAe;IAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,CAAC,GAAG,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;AAC3H,CAAC"}
|
|
@@ -146,6 +146,10 @@ export const setConfig = {
|
|
|
146
146
|
batch_max_events: num('memory.batch_max_events'),
|
|
147
147
|
retention_days: num('memory.retention_days'),
|
|
148
148
|
file_hold: z.boolean().optional(),
|
|
149
|
+
lookup_hint: z.enum(['mcp', 'bash']).optional(),
|
|
150
|
+
pinned_facts: num('memory.pinned_facts'),
|
|
151
|
+
stale_check: z.boolean().optional(),
|
|
152
|
+
stale_refresh_per_day: num('memory.stale_refresh_per_day'),
|
|
149
153
|
})
|
|
150
154
|
.optional()
|
|
151
155
|
.describe('Recording what each session did. Independent of `quiz`: silencing questions means no questions, not no history. Turn capture off with enabled:false, or thin it with capture:"minimal" (prompts and session seams only).'),
|
|
@@ -159,6 +163,9 @@ export const setConfig = {
|
|
|
159
163
|
max_items: num('retrieval.max_items'),
|
|
160
164
|
max_tokens: num('retrieval.max_tokens'),
|
|
161
165
|
cross_project: z.boolean().optional(),
|
|
166
|
+
seam_query: z.boolean().optional(),
|
|
167
|
+
prompt_gate: z.enum(['strict', 'terms']).optional(),
|
|
168
|
+
timeline_items: num('retrieval.timeline_items'),
|
|
162
169
|
})
|
|
163
170
|
.optional()
|
|
164
171
|
.describe('How memory is searched and how much is handed back at a session seam. "hybrid" (default) is keyword and vectors fused; "keyword" alone cannot match a morphological variant or an unspaced script.'),
|
|
@@ -202,9 +209,32 @@ export const setConfig = {
|
|
|
202
209
|
.object({ kind: z.literal('anthropic'), model: z.string() })
|
|
203
210
|
.nullable()
|
|
204
211
|
.optional(),
|
|
212
|
+
judge: z
|
|
213
|
+
.object({ kind: z.literal('anthropic'), model: z.string() })
|
|
214
|
+
.nullable()
|
|
215
|
+
.optional(),
|
|
205
216
|
})
|
|
206
217
|
.optional()
|
|
207
218
|
.describe('Outbound model access, and the only setting that sends captured work off this machine. The model runs through Claude Code on the developer\'s subscription. Requires the developer to say yes; do not set it on their behalf.'),
|
|
219
|
+
economy: z
|
|
220
|
+
.object({
|
|
221
|
+
ledger: z.boolean().optional(),
|
|
222
|
+
loopguard: z.enum(['off', 'nudge', 'stop']).optional(),
|
|
223
|
+
loopguard_level: z.enum(['conservative', 'default', 'aggressive']).optional(),
|
|
224
|
+
judge_confidence: num('economy.judge_confidence'),
|
|
225
|
+
nudges: num('economy.nudges'),
|
|
226
|
+
backstop_mult: num('economy.backstop_mult'),
|
|
227
|
+
envelope_min_samples: num('economy.envelope_min_samples'),
|
|
228
|
+
toolprune: z.enum(['off', 'propose', 'on']).optional(),
|
|
229
|
+
toolprune_evidence: num('economy.toolprune_evidence'),
|
|
230
|
+
toolprune_min_sessions: num('economy.toolprune_min_sessions'),
|
|
231
|
+
toolprune_sessions: num('economy.toolprune_sessions'),
|
|
232
|
+
toolprune_quiet_minutes: num('economy.toolprune_quiet_minutes'),
|
|
233
|
+
toolprune_protect: z.array(z.string()).optional(),
|
|
234
|
+
envfacts: z.enum(['off', 'free', 'observer']).optional(),
|
|
235
|
+
})
|
|
236
|
+
.optional()
|
|
237
|
+
.describe('Cost controls. ledger prices sessions from their transcripts (numbers only). loopguard (default off) redirects a stuck turn once. toolprune (default propose) lists unused tools and writes nothing unless the developer applies. envfacts (default free) learns environment facts from repeated failures.'),
|
|
208
238
|
},
|
|
209
239
|
handler: (args, ctx) => {
|
|
210
240
|
// `repo` is the older spelling of `project`, kept working because it is in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config_tools.js","sourceRoot":"","sources":["../../src/tools/config_tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config_tools.js","sourceRoot":"","sources":["../../src/tools/config_tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.js
CHANGED
|
@@ -10,7 +10,7 @@ import { getConfig, setConfig } from './config_tools.js';
|
|
|
10
10
|
import { codeFindSymbol, codeOutline } from './code_tools.js';
|
|
11
11
|
import { memoryCollections } from './collection_tools.js';
|
|
12
12
|
import { memoryFileHistory, memoryGet, memorySearch, memoryStatus, memoryTimeline, } from './memory_read_tools.js';
|
|
13
|
-
import { memoryCorrect, memoryDelete, memoryWrite } from './memory_write_tools.js';
|
|
13
|
+
import { memoryCorrect, memoryDelete, memoryFlagStale, memoryWrite } from './memory_write_tools.js';
|
|
14
14
|
import { panelAnswerTool, panelSyncTool, presentQuestionTool } from './panel_tools.js';
|
|
15
15
|
import { countUse } from '../telemetry.js';
|
|
16
16
|
export const TOOLS = [
|
|
@@ -34,6 +34,7 @@ export const TOOLS = [
|
|
|
34
34
|
memoryWrite,
|
|
35
35
|
memoryCorrect,
|
|
36
36
|
memoryDelete,
|
|
37
|
+
memoryFlagStale,
|
|
37
38
|
codeOutline,
|
|
38
39
|
codeFindSymbol,
|
|
39
40
|
memoryCollections,
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { informativeTerms } from '../memory/terms.js';
|
|
2
|
+
import { entryUse } from '../memory/use.js';
|
|
1
3
|
import { z } from 'zod';
|
|
2
4
|
import { memoryHealth } from '../memory/health.js';
|
|
3
5
|
import { loadConfig } from '../config.js';
|
|
@@ -101,6 +103,7 @@ function noteRead(db, tool, args, payload, started) {
|
|
|
101
103
|
outcome: !result ? 'error' : ids.length ? 'ok' : 'empty',
|
|
102
104
|
latencyMs: performance.now() - started,
|
|
103
105
|
resultTokens: result ? estimateTokens(JSON.stringify(result)) : 0,
|
|
106
|
+
queryTerms: typeof args.query === 'string' ? informativeTerms(args.query).slice(0, 12).join(' ') || null : null,
|
|
104
107
|
});
|
|
105
108
|
}
|
|
106
109
|
catch {
|
|
@@ -189,6 +192,7 @@ export const memoryGet = logged({
|
|
|
189
192
|
const inScope = found.filter((e) => project === null || e.project === project);
|
|
190
193
|
const byId = new Map(inScope.map((e) => [e.id, e]));
|
|
191
194
|
const foreign = new Set(found.filter((e) => !byId.has(e.id)).map((e) => e.id));
|
|
195
|
+
const use = entryUse(db, [...byId.keys()]);
|
|
192
196
|
const entries = ids
|
|
193
197
|
.map((id) => byId.get(id))
|
|
194
198
|
.filter((e) => Boolean(e))
|
|
@@ -212,6 +216,10 @@ export const memoryGet = logged({
|
|
|
212
216
|
// which it is holding before it quotes it.
|
|
213
217
|
superseded_by: entry.superseded_by,
|
|
214
218
|
deleted_at: entry.deleted_at,
|
|
219
|
+
// Why it may be outdated, when the fold or a model flagged it (issue #259).
|
|
220
|
+
...(use.get(entry.id)?.stale_reason
|
|
221
|
+
? { stale: { reason: use.get(entry.id).stale_reason, since: use.get(entry.id).stale_since, flagged_by: use.get(entry.id).stale_by } }
|
|
222
|
+
: {}),
|
|
215
223
|
event_ids: events.map((e) => e.id),
|
|
216
224
|
// Only on request. `event_ids` alone left the model able to see that
|
|
217
225
|
// a claim rested on four events and unable to read one of them —
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory_read_tools.js","sourceRoot":"","sources":["../../src/tools/memory_read_tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory_read_tools.js","sourceRoot":"","sources":["../../src/tools/memory_read_tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAsB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,QAAQ,EACR,cAAc,GAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAkC,MAAM,YAAY,CAAC;AAEtE;;;;;;;GAOG;AAEH,2EAA2E;AAC3E,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAmB;IAC3C,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;QAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,SAAS,QAAQ,CAAC,KAAe;IAC/B,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B;;;;;;;GAOG;AACH,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,wFAAwF;AACxF,MAAM,aAAa,GACjB,+EAA+E,CAAC;AAClF,MAAM,UAAU,GACd,sEAAsE,CAAC;AAEzE;;;;;;;GAOG;AACH,SAAS,MAAM,CAAC,GAAY;IAC1B,OAAO;QACL,GAAG,GAAG;QACN,OAAO,EAAE,CAAC,IAA2C,EAAE,GAAG,EAAE,EAAE;YAC5D,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,OAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;oBAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBAClE,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,EAAqB,EACrB,IAAY,EACZ,IAA4D,EAC5D,OAAgB,EAChB,OAAe;IAEf,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAwG,CAAC;QACxH,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxE,UAAU,CAAC,EAAE,EAAE;YACb,IAAI;YACJ,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC;YAC1D,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;YACxE,2EAA2E;YAC3E,gDAAgD;YAChD,SAAS,EAAE,MAAM,EAAE,UAAU,IAAI,IAAI;YACrC,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;YACxD,SAAS,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO;YACtC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,UAAU,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;SAChH,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAY,MAAM,CAAC;IAC1C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,eAAe;IACtB,WAAW,EACT,sJAAsJ,UAAU,IAAI,aAAa,EAAE;IACrL,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;QACrG,IAAI,EAAE,CAAC;aACJ,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;aACvC,QAAQ,EAAE;aACV,QAAQ,CAAC,mGAAmG,CAAC;QAChH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;QAC7G,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;QAClG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;QACnG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,gBAAgB,GAAG,CAAC;QACrH,YAAY,EAAE,CAAC;aACZ,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,0FAA0F,CAAC;QACvG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC9C;IACD,OAAO,EAAE,CACP,IAUC,EACD,EAAE,EAAE,EAAE,EACN,EAAE;QACF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAEnF,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;YACxC,OAAO;YACP,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,KAAK;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvF,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,IAAI;YACJ,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;YAC3C,SAAS,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;SAChC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAY,MAAM,CAAC;IACvC,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,oBAAoB;IAC3B,WAAW,EACT,wfAAwf,UAAU,sHAAsH,aAAa,EAAE;IACzoB,WAAW,EAAE;QACX,GAAG,EAAE,CAAC;aACH,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;aACvB,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,UAAU,CAAC;aACf,QAAQ,CAAC,sBAAsB,UAAU,4CAA4C,CAAC;QACzF,gBAAgB,EAAE,CAAC;aAChB,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,yHAAyH,iBAAiB,wHAAwH,CACnQ;QACH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,EAAE;aACV,QAAQ,CAAC,+FAA+F,CAAC;QAC5G,YAAY,EAAE,CAAC;aACZ,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,6IAA6I,CAC9I;QACH,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC9C;IACD,OAAO,EAAE,CACP,IAA8G,EAC9G,EAAE,EAAE,EAAE,EACN,EAAE;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACpC,2EAA2E;QAC3E,yEAAyE;QACzE,uEAAuE;QACvE,yEAAyE;QACzE,4EAA4E;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;QACzE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QAC/E,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/E,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,GAAG;aAChB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACzB,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACxC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACb,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACzC,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC7B,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC7B,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,mEAAmE;gBACnE,kEAAkE;gBAClE,2CAA2C;gBAC3C,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,4EAA4E;gBAC5E,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,YAAY;oBACjC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAE,CAAC,QAAQ,EAAE,EAAE;oBACxI,CAAC,CAAC,EAAE,CAAC;gBACP,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClC,qEAAqE;gBACrE,iEAAiE;gBACjE,sEAAsE;gBACtE,GAAG,CAAC,IAAI,CAAC,gBAAgB;oBACvB,CAAC,CAAC;wBACE,eAAe,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAClC,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,WAAW,EAAE,CAAC,CAAC,WAAW;4BAC1B,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;4BACzB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC;4BACxC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,iBAAiB;yBAC7C,CAAC,CAAC;qBACJ;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,0EAA0E;QAC1E,kEAAkE;QAClE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/F,IAAI,OAAO,EAAE,CAAC;YACZ,wEAAwE;YACxE,sEAAsE;YACtE,yEAAyE;YACzE,oEAAoE;YACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO;YACP,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9D,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClD,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAY,MAAM,CAAC;IAC5C,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,iBAAiB;IACxB,WAAW,EACT,sLAAsL,UAAU,IAAI,aAAa,EAAE;IACrN,WAAW,EAAE;QACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,kBAAkB,GAAG,CAAC;QACtG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACvF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;QACtF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACpF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;QACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;QAC3F,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC9C;IACD,OAAO,EAAE,CACP,IAA2H,EAC3H,EAAE,EAAE,EAAE,EACN,EAAE;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QAEhC,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,EAAE;YACxB,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI;YAClC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;YAC5F,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC;YAChC,KAAK;YACL,MAAM;YACN,OAAO;SACR,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAY,MAAM,CAAC;IAC/C,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,qBAAqB;IAC5B,WAAW,EACT,0LAA0L,UAAU,IAAI,aAAa,EAAE;IACzN,WAAW,EAAE;QACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;QACtF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC7F,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC9C;IACD,OAAO,EAAE,CAAC,IAAoD,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QACxE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC5G,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;IACvF,CAAC;CACF,CAAC,CAAC;AAEH,gFAAgF;AAChF,SAAS,MAAM,CAAI,EAAW,EAAE,QAAW;IACzC,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAY;IACnC,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,eAAe;IACtB,WAAW,EACT,0SAA0S,UAAU,EAAE;IACxT,WAAW,EAAE;QACX,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC9C;IACD,OAAO,EAAE,CAAC,IAAsB,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;QAC1C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAE1H,OAAO;YACL,OAAO;YACP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACnD,cAAc,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC/D,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;YACvG,eAAe,EAAE,MAAM,CACrB,GAAG,EAAE,CACF,EAAE,CAAC,OAAO,CAAC,sEAAsE,CAAC,CAAC,GAAG,CAAC,OAAO,CAE7F,CAAC,EAAE,EACP,IAAqB,CACtB;YACD,QAAQ,EAAE,MAAM;YAChB,+DAA+D;YAC/D,sEAAsE;YACtE,oBAAoB,EAAE,aAAa;YACnC,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YAClH,OAAO,EAAE,WAAW,CAAC;gBACnB,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,eAAe,EAAE,MAAM,CAAC,SAAS;gBACjC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC;aACjC,CAAC;YACF,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;YAC7D,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;YACvD,cAAc,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC/C,6EAA6E;YAC7E,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;YACrC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;SAC/E,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { flagStale } from '../memory/use.js';
|
|
1
2
|
import { z } from 'zod';
|
|
2
3
|
import { policyFrom } from '../memory/capture.js';
|
|
3
4
|
import { redact } from '../memory/privacy.js';
|
|
@@ -145,4 +146,24 @@ export const memoryDelete = {
|
|
|
145
146
|
return { id: args.id, hard, deleted: true, project: entry.project };
|
|
146
147
|
},
|
|
147
148
|
};
|
|
149
|
+
export const memoryFlagStale = {
|
|
150
|
+
name: 'memory_flag_stale',
|
|
151
|
+
title: 'Flag a memory entry as possibly outdated',
|
|
152
|
+
description: `Mark an entry as possibly outdated when you have seen that the code no longer matches it. It stays searchable, ranks below current entries and is labelled "may be outdated" when recalled; memory_get shows the reason. Nothing is deleted. To replace it with what is true now, use memory_correct instead. ${OWN_RULE}`,
|
|
153
|
+
inputSchema: {
|
|
154
|
+
id: z.number().int().describe('The entry to flag.'),
|
|
155
|
+
reason: z.string().min(3).max(300).describe('What changed, in a few words: "retry.ts now uses a token bucket".'),
|
|
156
|
+
cwd: z.string().optional().describe(CWD_HINT),
|
|
157
|
+
},
|
|
158
|
+
handler: (args, { db }) => {
|
|
159
|
+
const entry = entryById(db, args.id);
|
|
160
|
+
if (!entry)
|
|
161
|
+
return { error: 'not_found', detail: `No memory entry with id ${args.id}.` };
|
|
162
|
+
const foreign = otherProject(entry, memoryScope(args.cwd).project);
|
|
163
|
+
if (foreign)
|
|
164
|
+
return foreign;
|
|
165
|
+
flagStale(db, args.id, args.reason);
|
|
166
|
+
return { id: args.id, flagged: true, reason: args.reason.slice(0, 300) };
|
|
167
|
+
},
|
|
168
|
+
};
|
|
148
169
|
//# sourceMappingURL=memory_write_tools.js.map
|