@cstart/coldstart 2.2.10 → 2.2.12

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 (62) hide show
  1. package/README.md +4 -2
  2. package/dist/index-manager.d.ts +17 -0
  3. package/dist/index-manager.d.ts.map +1 -1
  4. package/dist/index-manager.js +35 -0
  5. package/dist/index-manager.js.map +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/init.d.ts +43 -7
  8. package/dist/init.d.ts.map +1 -1
  9. package/dist/init.js +114 -48
  10. package/dist/init.js.map +1 -1
  11. package/dist/kb/alias-repair.d.ts +37 -0
  12. package/dist/kb/alias-repair.d.ts.map +1 -0
  13. package/dist/kb/alias-repair.js +108 -0
  14. package/dist/kb/alias-repair.js.map +1 -0
  15. package/dist/kb/cli.d.ts.map +1 -1
  16. package/dist/kb/cli.js +90 -11
  17. package/dist/kb/cli.js.map +1 -1
  18. package/dist/kb/fold.d.ts +45 -2
  19. package/dist/kb/fold.d.ts.map +1 -1
  20. package/dist/kb/fold.js +71 -9
  21. package/dist/kb/fold.js.map +1 -1
  22. package/dist/kb/render.d.ts.map +1 -1
  23. package/dist/kb/render.js +10 -2
  24. package/dist/kb/render.js.map +1 -1
  25. package/dist/kb/repair.d.ts +67 -0
  26. package/dist/kb/repair.d.ts.map +1 -0
  27. package/dist/kb/repair.js +178 -0
  28. package/dist/kb/repair.js.map +1 -0
  29. package/dist/kb/search.d.ts +3 -2
  30. package/dist/kb/search.d.ts.map +1 -1
  31. package/dist/kb/search.js +101 -10
  32. package/dist/kb/search.js.map +1 -1
  33. package/dist/kb/session-worklist.d.ts +10 -0
  34. package/dist/kb/session-worklist.d.ts.map +1 -0
  35. package/dist/kb/session-worklist.js +92 -0
  36. package/dist/kb/session-worklist.js.map +1 -0
  37. package/dist/kb/types.d.ts +7 -2
  38. package/dist/kb/types.d.ts.map +1 -1
  39. package/dist/kb/view.js +1 -1
  40. package/dist/kb/view.js.map +1 -1
  41. package/dist/kb/write-guide.d.ts +44 -1
  42. package/dist/kb/write-guide.d.ts.map +1 -1
  43. package/dist/kb/write-guide.js +70 -25
  44. package/dist/kb/write-guide.js.map +1 -1
  45. package/dist/kb/write.d.ts +2 -1
  46. package/dist/kb/write.d.ts.map +1 -1
  47. package/dist/kb/write.js +13 -2
  48. package/dist/kb/write.js.map +1 -1
  49. package/dist/server/find.d.ts.map +1 -1
  50. package/dist/server/find.js +5 -3
  51. package/dist/server/find.js.map +1 -1
  52. package/dist/server/mcp.d.ts +24 -1
  53. package/dist/server/mcp.d.ts.map +1 -1
  54. package/dist/server/mcp.js +69 -5
  55. package/dist/server/mcp.js.map +1 -1
  56. package/dist/unwire.d.ts.map +1 -1
  57. package/dist/unwire.js +8 -2
  58. package/dist/unwire.js.map +1 -1
  59. package/hooks/capture-payload.mjs +87 -21
  60. package/hooks/note-shape.d.mts +63 -0
  61. package/hooks/note-shape.mjs +316 -0
  62. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
2
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
3
  import { CallToolRequestSchema, ListToolsRequestSchema, ListRootsResultSchema, ListResourcesRequestSchema, ListResourceTemplatesRequestSchema, ListPromptsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
4
+ import { requiredFieldsLine } from '../../hooks/note-shape.mjs';
4
5
  import { getCurrentVersion } from '../daemon-lock.js';
5
6
  import { handleFind, handleGetStructure, } from './tools.js';
6
7
  // ---------------------------------------------------------------------------
@@ -101,13 +102,18 @@ export const TOOL_DEFINITIONS = [
101
102
  name: 'kb_write',
102
103
  description: 'Save or correct a NOTEBOOK note after finishing real work here — you have the files in context, so no future agent is better placed to record what you learned. Write a file note (what a file is for), a flow note (how a task spans files), or an absence lesson (a confirmed "there is no X"). Also the tool to FIX or RETRACT a note you used that proved wrong (`op: "put"` replaces, `op: "retract"` removes).\n\n' +
103
104
  'TWO-PHASE reuse gate: a flow/lesson `spec` sent WITHOUT an `id` first searches the notebook for the same concept. If plausible matches exist, kb_write returns `{status:"candidates", candidates:[...]}` INSTEAD of writing — re-call with `into: "<id>"` to merge into an existing note, or `is_new: true` to declare a genuinely new one. This makes note identity reliable (matching, not guessing an exact title). File notes skip the gate (id derives from the path).\n\n' +
104
- 'The `spec` shape is documented in coldstart.md — briefly: `type` ("file"|"flow"|"lesson", or sugar "file-hub"/"file-single"), `title`, `summary`, `anchors` ([{path, symbols?}] — the addresses the note is about, which drive freshness), plus type-specific fields (file: facets/character; flow: steps; lesson: kind:"absence"/scope/body). Call with NO arguments to get the full spec guide. This tool WRITES to the repo notebook; it never commits to git — publishing notes is a human-only step (`coldstart kb commit`).',
105
+ 'The `spec` shape: `type` ("file"|"flow"|"lesson", or sugar "file-hub"/"file-single"), `title`, `summary`, `anchors` ([{path, symbols?}] — the addresses the note is about, which drive freshness), plus type-specific fields (file: facets/character; flow: steps/verified; lesson: kind:"absence"/scope/body). Call with NO arguments to get the full spec guide.\n\n' +
106
+ // Rendered, not restated. This description going years without ever
107
+ // naming `aliases` is why notebooks driven by no-shell clients are the
108
+ // ones worst hit by unfindable notes.
109
+ `${requiredFieldsLine()}\n\n` +
110
+ 'This tool WRITES to the repo notebook; it never commits to git — publishing notes is a human-only step (`coldstart kb commit`).',
105
111
  inputSchema: {
106
112
  type: 'object',
107
113
  properties: {
108
114
  spec: {
109
115
  type: 'object',
110
- description: 'The note spec (JSON object). Fields: type, title, summary, anchors:[{path,symbols?}], and type-specific fields (facets/character for file; steps for flow; kind/scope/body for lesson). See coldstart.md. Omit `id` on a new flow/lesson to trigger the reuse gate.',
116
+ description: `The note spec (JSON object). Fields: type, title, summary, identityAliases (stable — unions forever), incidentAliases (this write's symptom words — replaced by the next write that changes summary/body, omit if this write isn't about an incident), anchors:[{path,symbols?}], and type-specific fields (facets/character for file; steps/verified for flow; kind/scope/body for lesson). ${requiredFieldsLine()} Omit \`id\` on a new flow/lesson to trigger the reuse gate.`,
111
117
  },
112
118
  into: {
113
119
  type: 'string',
@@ -139,6 +145,26 @@ export const TOOL_DEFINITIONS = [
139
145
  },
140
146
  },
141
147
  },
148
+ {
149
+ name: 'kb_repair',
150
+ description: 'List the notebook notes that are WRITTEN BUT UNFINDABLE — missing the fields a note cannot be retrieved without (identityAliases, anchor symbols, a flow\'s verified paths). Notes written before those fields were required are correct but unreachable, and this is how they get found.\n\n' +
151
+ 'Returns a worklist, never a change: repairing is your work, because every gap needs a judgement about the code (which words a reader would search for, which symbols the note is actually about, which files you can honestly claim to have read). Fix each one with kb_write, passing the note\'s `id` — fields merge, so nothing already in the note is lost.\n\n' +
152
+ 'A clean notebook returns "Nothing to repair here." Run it when the user asks to repair, fix, or clean up the notebook.',
153
+ inputSchema: { type: 'object', properties: {} },
154
+ },
155
+ {
156
+ name: 'kb_repair_aliases',
157
+ description: 'List file/flow notes whose identityAliases may no longer describe them — a DIFFERENT problem from kb_repair: that one finds notes with NO aliases at all, this one is for aliases that exist but have gone stale (a note rewritten several times can carry words that were really symptoms of an earlier write, not stable facts). Paginated 10 notes at a time.\n\n' +
158
+ 'Each entry shows the current (capped) identityAliases AND the full historical union hidden past the render cap — read both before retracting anything, because dropping a visible alias can resurface an older hidden one on the next fold. Re-read the note\'s code, then reconcile via kb_write (retract stale entries, re-put the rest) — never mechanically, every judgement needs the current code.\n\n' +
159
+ 'Returns "No file/flow notes to reconcile." when done. If the response includes `more`, call again with `offset` set to `more.nextOffset` for the next batch.',
160
+ inputSchema: {
161
+ type: 'object',
162
+ properties: {
163
+ offset: { type: 'number', description: 'Pagination offset (0-based). Use `more.nextOffset` from the previous response to continue.' },
164
+ limit: { type: 'number', description: 'Notes per page. Defaults to 10.' },
165
+ },
166
+ },
167
+ },
142
168
  ];
143
169
  export function registerToolHandlers(server, getContext, opts = {}) {
144
170
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
@@ -206,7 +232,7 @@ export function registerToolHandlers(server, getContext, opts = {}) {
206
232
  case 'kb_write': {
207
233
  const { kbWrite } = await import('../kb/write.js');
208
234
  const { initSkeleton } = await import('../kb/store.js');
209
- const { writeGuideMcp, flowEvidenceWarning } = await import('../kb/write-guide.js');
235
+ const { writeGuideMcp, flowEvidenceWarning, flowStepsWarning, missingFieldsWarning } = await import('../kb/write-guide.js');
210
236
  const spec = params['spec'];
211
237
  if (!spec || typeof spec !== 'object' || Array.isArray(spec)) {
212
238
  // Parity with `kb write` (no spec): return the full guide, not an error.
@@ -230,14 +256,52 @@ export function registerToolHandlers(server, getContext, opts = {}) {
230
256
  }
231
257
  else {
232
258
  const warnings = [...(wres.warnings ?? [])];
259
+ // Stepless-flow WARN — parity with `kb write`; needs no session.
260
+ const { loadNote } = await import('../kb/store.js');
261
+ const after = loadNote(index.rootDir, wres.id).note;
262
+ const stepsWarn = flowStepsWarning(spec, after);
263
+ if (stepsWarn)
264
+ warnings.push(stepsWarn);
233
265
  // Flow-evidence WARN (never a rejection) — parity with `kb write --session`.
234
266
  const flowWarn = flowEvidenceWarning(spec, params['session'] ? String(params['session']) : undefined);
235
267
  if (flowWarn)
236
268
  warnings.push(flowWarn);
237
- result = { status: 'written', op: wres.op, id: wres.id, warnings };
269
+ // Findability fields parity with `kb write`; never a rejection.
270
+ const missingWarn = missingFieldsWarning(spec, wres.id, after);
271
+ if (missingWarn)
272
+ warnings.push(missingWarn);
273
+ // Capture coverage — parity with `kb write --session`.
274
+ const { noteCoverage } = await import('../kb/session-worklist.js');
275
+ const coverage = noteCoverage(params['session'] ? String(params['session']) : undefined, spec);
276
+ result = { status: 'written', op: wres.op, id: wres.id, warnings, ...(coverage ? { coverage } : {}) };
238
277
  }
239
278
  break;
240
279
  }
280
+ // Parity with `coldstart kb repair`: same detection, same worklist text
281
+ // (and the same mechanical symbol backfill run first), so the
282
+ // instructions are not something one wrapper happens to say.
283
+ case 'kb_repair': {
284
+ const { planRepairs, repairWorklist, mechanicalSymbolRepair } = await import('../kb/repair.js');
285
+ const mechanical = await mechanicalSymbolRepair(index.rootDir);
286
+ const report = planRepairs(index.rootDir);
287
+ const prefix = mechanical.fixed.length
288
+ ? `kb repair: mechanically backfilled anchor symbols (from the code index — no judgement `
289
+ + `needed) on ${mechanical.fixed.length} note${mechanical.fixed.length === 1 ? '' : 's'}:\n`
290
+ + mechanical.fixed.map((f) => ` - ${f.note} (${f.path}): ${f.symbols.join(', ')}`).join('\n') + '\n\n'
291
+ : '';
292
+ result = { __rawText: prefix + repairWorklist(report) };
293
+ break;
294
+ }
295
+ // Parity with `coldstart kb repair-aliases`: same worklist text and
296
+ // pagination shape, so all surfaces say the same thing.
297
+ case 'kb_repair_aliases': {
298
+ const { planAliasRepair, aliasRepairWorklist } = await import('../kb/alias-repair.js');
299
+ const offset = Number(params['offset']) || 0;
300
+ const limit = Number(params['limit']) || 10;
301
+ const page = planAliasRepair(index.rootDir, offset, limit);
302
+ result = { __rawText: aliasRepairWorklist(page) };
303
+ break;
304
+ }
241
305
  case 'kb_status': {
242
306
  const { loadAll } = await import('../kb/store.js');
243
307
  const { stampAnchors } = await import('../kb/freshness.js');
@@ -292,7 +356,7 @@ export function registerToolHandlers(server, getContext, opts = {}) {
292
356
  // Registry-installed users never run `coldstart init`, so they get the tools with
293
357
  // no hooks: no automatic capture, no recall. Nothing else tells them.
294
358
  export const SERVER_INSTRUCTIONS = [
295
- 'coldstart answers "which files are relevant to this task?" from a static index (`find`, `gs`) and keeps a durable NOTEBOOK of notes past agents wrote about this repo (`kb_search`, `kb_lookup`, `kb_write`, `kb_status`). Try `kb_search` before `find` when the task may have been worked on here before.',
359
+ 'coldstart answers "which files are relevant to this task?" from a static index (`find`, `gs`) and keeps a durable NOTEBOOK of notes past agents wrote about this repo (`kb_search`, `kb_lookup`, `kb_write`, `kb_status`, `kb_repair`, `kb_repair_aliases`). Try `kb_search` before `find` when the task may have been worked on here before.',
296
360
  '',
297
361
  'SETUP: the hooks that capture notes automatically at the end of a task, and surface matching notes when a prompt arrives, are NOT installed by this MCP server. If the user asks why notes are never captured or recalled, tell them to run `coldstart init` once in the repo root (install: `npm i -g @cstart/coldstart`); it wires those hooks for Claude Code, Cursor, or Codex. Every tool here works without it — only the automatic capture and recall are missing.',
298
362
  ].join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/server/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/server/mcp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"unwire.d.ts","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA2OH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CA0E/C"}
1
+ {"version":3,"file":"unwire.d.ts","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA6OH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAwF/C"}
package/dist/unwire.js CHANGED
@@ -18,7 +18,7 @@
18
18
  */
19
19
  import * as fs from 'node:fs';
20
20
  import * as path from 'node:path';
21
- import { IMPORT_LINE, AGENTS_START, AGENTS_END, isColdstartHookEntry, isKbHookEntry, isCodexHookEntry, isCursorHookEntry, CAPTURE_COMMAND, stripCodexColdstartTable, } from './init.js';
21
+ import { IMPORT_LINE, AGENTS_START, AGENTS_END, isColdstartHookEntry, isKbHookEntry, isCodexHookEntry, isCursorHookEntry, CAPTURE_COMMAND, REPAIR_COMMAND, REPAIR_ALIASES_COMMAND, stripCodexColdstartTable, } from './init.js';
22
22
  const DIVIDER = '─'.repeat(60);
23
23
  function out(msg) {
24
24
  process.stderr.write(msg + '\n');
@@ -266,18 +266,24 @@ export async function runUnwire() {
266
266
  out(` settings.json — ${label(stripHooksConfig(path.join(cwd, '.claude', 'settings.json'), 'hooks', CLAUDE_HOOK_EVENTS, (e) => isColdstartHookEntry(e) || isKbHookEntry(e)))} find/gs + notebook hooks`);
267
267
  out(` .mcp.json — ${label(unwireJsonMcp(cwd, '.mcp.json'))} MCP server`);
268
268
  out(` commands/ — ${label(removeFile(path.join(cwd, '.claude', 'commands', `${CAPTURE_COMMAND}.md`)))} /${CAPTURE_COMMAND} command`);
269
+ out(` commands/ — ${label(removeFile(path.join(cwd, '.claude', 'commands', `${REPAIR_COMMAND}.md`)))} /${REPAIR_COMMAND} command`);
270
+ out(` commands/ — ${label(removeFile(path.join(cwd, '.claude', 'commands', `${REPAIR_ALIASES_COMMAND}.md`)))} /${REPAIR_ALIASES_COMMAND} command`);
269
271
  // Codex
270
272
  out(' Codex');
271
273
  out(` AGENTS.md — ${label(unwireCodexAgents(cwd))} coldstart block`);
272
274
  out(` hooks.json — ${label(stripHooksConfig(path.join(cwd, '.codex', 'hooks.json'), 'hooks', CLAUDE_HOOK_EVENTS, isCodexHookEntry))} Codex hooks`);
273
275
  out(` config.toml — ${label(unwireCodexMcp(cwd))} [mcp_servers.coldstart]`);
274
276
  out(` .agents/skills — ${label(removeFile(path.join(cwd, '.agents', 'skills', CAPTURE_COMMAND, 'SKILL.md')))} $${CAPTURE_COMMAND} skill`);
277
+ out(` .agents/skills — ${label(removeFile(path.join(cwd, '.agents', 'skills', REPAIR_COMMAND, 'SKILL.md')))} $${REPAIR_COMMAND} skill`);
278
+ out(` .agents/skills — ${label(removeFile(path.join(cwd, '.agents', 'skills', REPAIR_ALIASES_COMMAND, 'SKILL.md')))} $${REPAIR_ALIASES_COMMAND} skill`);
275
279
  // Cursor
276
280
  out(' Cursor');
277
281
  out(` coldstart.mdc — ${label(removeFile(path.join(cwd, '.cursor', 'rules', 'coldstart.mdc')))}`);
278
282
  out(` hooks.json — ${label(stripHooksConfig(path.join(cwd, '.cursor', 'hooks.json'), 'hooks', CURSOR_HOOK_EVENTS, isCursorHookEntry, ['version']))} Cursor hooks`);
279
283
  out(` mcp.json — ${label(unwireJsonMcp(cwd, path.join('.cursor', 'mcp.json')))} MCP server`);
280
284
  out(` commands/ — ${label(removeFile(path.join(cwd, '.cursor', 'commands', `${CAPTURE_COMMAND}.md`)))} /${CAPTURE_COMMAND} command`);
285
+ out(` commands/ — ${label(removeFile(path.join(cwd, '.cursor', 'commands', `${REPAIR_COMMAND}.md`)))} /${REPAIR_COMMAND} command`);
286
+ out(` commands/ — ${label(removeFile(path.join(cwd, '.cursor', 'commands', `${REPAIR_ALIASES_COMMAND}.md`)))} /${REPAIR_ALIASES_COMMAND} command`);
281
287
  // Notebook
282
288
  out(' Notebook');
283
289
  if (purge) {
@@ -298,7 +304,7 @@ export async function runUnwire() {
298
304
  out(' .coldstart/notebook — KEPT (committed/shared notes; use --purge to delete)');
299
305
  }
300
306
  // Tidy up now-empty coldstart dirs (best-effort).
301
- rmEmptyDirs(path.join(cwd, '.agents', 'skills', CAPTURE_COMMAND), path.join(cwd, '.agents', 'skills'), path.join(cwd, '.agents'), path.join(cwd, '.cursor', 'rules'), path.join(cwd, '.cursor', 'commands'), path.join(cwd, '.cursor'), path.join(cwd, '.claude', 'commands'), path.join(cwd, '.claude'), path.join(cwd, '.codex'));
307
+ rmEmptyDirs(path.join(cwd, '.agents', 'skills', CAPTURE_COMMAND), path.join(cwd, '.agents', 'skills', REPAIR_COMMAND), path.join(cwd, '.agents', 'skills', REPAIR_ALIASES_COMMAND), path.join(cwd, '.agents', 'skills'), path.join(cwd, '.agents'), path.join(cwd, '.cursor', 'rules'), path.join(cwd, '.cursor', 'commands'), path.join(cwd, '.cursor'), path.join(cwd, '.claude', 'commands'), path.join(cwd, '.claude'), path.join(cwd, '.codex'));
302
308
  out('');
303
309
  out(DIVIDER);
304
310
  out('Unwired. Re-add anytime with: coldstart init');
@@ -1 +1 @@
1
- {"version":3,"file":"unwire.js","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unwire.js","sourceRoot":"","sources":["../src/unwire.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,11 @@
2
2
  * capture-payload.mjs — the capture prompt (v5, finalized 2026-07-17).
3
3
  *
4
4
  * Replaces the 370-line v4 elicit prompt. Structure: purpose → decide gate →
5
- * worklist → per-note rules → flows → write. Decide-time rules ONLY — spec
6
- * shapes for the common file notes stay inline (zero-bounce path; file notes
7
- * are ~97% of volume), flow/lesson formats live behind `kb write` (no spec
8
- * prints the guide). The arming mechanism is invisible to the agent: only its
9
- * consequences show (which files, their ranking, their annotations).
5
+ * worklist → per-note rules → flows → write. Decide-time rules ONLY — the spec
6
+ * shapes are rendered inline (zero-bounce path) from hooks/note-shape.mjs, the
7
+ * single table every kb surface derives from; the prose around them lives here.
8
+ * The arming mechanism is invisible to the agent: only its consequences show
9
+ * (which files, their ranking, their annotations).
10
10
  *
11
11
  * Envelopes:
12
12
  * inject — delivered on the NEXT user prompt (UserPromptSubmit channel):
@@ -16,8 +16,46 @@
16
16
  * (the coordinator only sees the final message — #61).
17
17
  */
18
18
 
19
- import { readFileSync } from "node:fs";
19
+ import { readFileSync, writeFileSync } from "node:fs";
20
+ import { tmpdir } from "node:os";
20
21
  import { join } from "node:path";
22
+ // The spec shapes are NOT written here any more. They come from the one table
23
+ // the write guide, the MCP tool description and `kb repair` also render from —
24
+ // the inlined copy is how "aliases" fell out of the flow shape unnoticed.
25
+ import { shapesBlock } from "./note-shape.mjs";
26
+
27
+ /**
28
+ * Session worklist manifest — the DENOMINATOR for capture coverage.
29
+ *
30
+ * The checklist can only ASK the agent to walk the whole worklist (rule 3a);
31
+ * nothing downstream could tell it that it wrote 8 notes for 30 worked files,
32
+ * because `kb write` sees one spec at a time and never saw the worklist. So the
33
+ * worklist is dropped here, at the one point every host passes through, and
34
+ * `kb write --session <sid>` reads it back to print "N of M".
35
+ *
36
+ * CONTRACT TWIN: src/kb/session-worklist.ts — same filename, same shape. Keyed
37
+ * by session id in tmpdir like the pending-capture file (elicit-core.pendingPath);
38
+ * never in the repo, so it cannot be committed and needs no ignore rule.
39
+ * Best-effort: capture must never fail because this could not be written.
40
+ */
41
+ export function worklistManifestPath(sid) {
42
+ return join(tmpdir(), `coldstart-kb-worklist-${sid}.json`);
43
+ }
44
+
45
+ function recordWorklistManifest(sid, entries) {
46
+ if (!sid || !entries?.length) return;
47
+ try {
48
+ // needsNote: no note yet, or the note it has is stale. A file whose note is
49
+ // already fresh is NOT an outstanding item — counting it would make full
50
+ // coverage unreachable and the ratio meaningless.
51
+ const files = entries.map((e) => ({
52
+ path: e.path,
53
+ tier: e.tier,
54
+ needsNote: !e.notes?.length || e.notes.some((n) => n.state === "changed" || n.state === "missing"),
55
+ }));
56
+ writeFileSync(worklistManifestPath(sid), JSON.stringify({ ts: Date.now(), files, wrote: [] }));
57
+ } catch { /* best-effort */ }
58
+ }
21
59
 
22
60
  /**
23
61
  * SPIKE (experimental, undocumented): a repo can replace the shipped checklist
@@ -64,6 +102,7 @@ function worklistLines(entries) {
64
102
  }
65
103
 
66
104
  export function buildCapturePayload({ root, cli, sid, entries, envelope }) {
105
+ recordWorklistManifest(sid, entries);
67
106
  const opening = envelope === "block"
68
107
  ? "Handle capture now, then stop."
69
108
  : envelope === "manual"
@@ -105,6 +144,15 @@ future agent would not act differently for knowing it, don't store it.
105
144
  3. The worklist below is your scope, most-worked first. Unlisted files are out — ignored \
106
145
  (.coldstartignore) or already captured. If you edited or deep-read a file this session that \
107
146
  isn't listed, you can write a note for it too.
147
+ 3a. Rules 1 and 2 are for files you barely touched — they are not licence to write one note \
148
+ and stop. Every file marked [edited] is a file you changed with intent: you know why it \
149
+ changed and what you had to understand to change it, and that is precisely the knowledge a \
150
+ cold agent lacks. The default for an edited file is a note. Walk the worklist top to bottom \
151
+ and decide each one explicitly; do not stop at the first two or three. If you end up writing \
152
+ notes for well under half the [edited] files, you have under-captured — say which files you \
153
+ skipped and why, so the decision is visible instead of silent. Each \`kb write\` prints the \
154
+ running count ("N of M worklist files noted") and lists what is still unwritten — read that \
155
+ line back before you finish; it is the only place your own coverage is visible to you.
108
156
 
109
157
  WORKLIST — files you actually read this session, most-worked first:
110
158
 
@@ -120,15 +168,21 @@ naming convention) is exactly what to record — ONLY if you actually observed i
120
168
  session's work. Never guess at usage or go searching for it now. Files flagged "no consumers \
121
169
  in import graph" are where an observed usage fact matters most.
122
170
  7. Fixed a bug? The cause goes in the culpable file's note; the SYMPTOM words go in \
123
- "aliases" — symptoms are what a future agent will search. Aliases are SEARCH KEYS, not \
124
- sentences: each one 2-5 words, no filler ("after", "already", "another", "still"), because \
125
- every word in an alias is an independent match chance and a long alias makes the note fire \
126
- on prompts it has nothing to do with. Cover the vocabulary THIS FILE owns — the concept \
127
- nouns someone would type when they want this file, including the ones already in its name \
128
- and symbols. A note about alias handling that never says "aliases" cannot be found by \
129
- someone asking about aliases. 6-10 aliases is plenty; more surface area is not more recall.
171
+ "incidentAliases" — symptoms are what a future agent will search FOR THIS BUG. incidentAliases \
172
+ are REPLACED, not unioned, the next time this note's summary is rewritten — describe only the \
173
+ symptom in front of you, don't carry old ones forward, and don't worry about them piling up. \
174
+ Stable words that don't change across writes the file's name, role, the concept nouns \
175
+ someone would type for it regardless of which bug brought them here — go in "identityAliases" \
176
+ instead; those DO accumulate across writes, so only add ones not already there. Aliases of \
177
+ either kind are SEARCH KEYS, not sentences: each one 2-5 words, no filler ("after", "already", \
178
+ "another", "still"), because every word is an independent match chance and a long alias makes \
179
+ the note fire on prompts it has nothing to do with. 6-10 aliases total (both fields combined) \
180
+ is plenty; more surface area is not more recall.
130
181
  8. Read a note this session that proved wrong? Correct or retract it now — you are the warm \
131
- agent; there is no "next".
182
+ agent; there is no "next". This includes "identityAliases": if one describes something that's \
183
+ no longer true (a renamed role, a dropped responsibility), retract it — identityAliases union \
184
+ forever and nothing else will clean it up. (incidentAliases don't need this — they're replaced \
185
+ automatically whenever you rewrite the summary, rule 7.)
132
186
  9. Firsthand only: nothing from a subagent's report you didn't verify yourself.
133
187
  10. "verified" lists only files you opened this session. Never one you didn't.
134
188
  11. Never copy secret VALUES (env contents, tokens, keys) into a note — notes are committed \
@@ -157,8 +211,18 @@ an unrelated fact into a nearby flow buries it: nobody searching for your fact w
157
211
  title.
158
212
 
159
213
  WRITE — one Bash block total: specs as heredocs, writes chained with &&.
160
- {"type":"file-single","path":"src/x.py","summary":"1-3 sentences","aliases":["symptom words"]}
161
- {"type":"file-hub","path":"src/y.py","facets":[{"symbol":"Fn","detail":"the non-obvious thing"}]}
214
+ ${shapesBlock({ compact: true })}
215
+ "identityAliases" and "symbols" are what make a note FINDABLE and both go missing by \
216
+ default: a note without identityAliases is reachable only by its exact title, and agents \
217
+ search this notebook by identifier far more than by prose — those queries match \
218
+ the anchor channel, which holds nothing but the path until you name symbols. \
219
+ kb write prints exactly what is missing and the one-line re-put that fixes it; \
220
+ do that in the same block rather than leaving it.
221
+ On a flow, "verified" is what FILES the note — its anchors come from "verified" \
222
+ (plus any explicit "anchors"), NOT from its steps. A step file left out of \
223
+ "verified" is invisible to \`kb lookup\` on that file and is never freshness-stamped, \
224
+ however carefully you described it. Never write a flow using the file-note shape \
225
+ (title + summary) from memory.
162
226
  file-single is the DEFAULT. A file with one purpose gets one summary even if you worked \
163
227
  with several of its symbols. file-hub is ONLY for grab-bag files that have no single purpose \
164
228
  (models.py, utils, helpers) — there, knowledge lives per symbol. Touching many symbols does \
@@ -167,9 +231,11 @@ not make a file a hub; having no one purpose does.
167
231
  node ${cli} kb write /tmp/spec1.json --root ${root} --session ${sid} --force
168
232
  Flow/lesson shapes: run \`node ${cli} kb write --root ${root}\` with no spec — it prints the full guide.
169
233
 
170
- FLOW DECISION — run this EVERY time, as its own command. It stands apart from the WRITE block \
171
- above: run it even when you decided no note was warranted and emitted no Bash block at all. It \
172
- records only what you decided about FLOWS (created a new one, folded into an existing one, or \
173
- none) so the flow gate can be measured.
174
- node ${cli} kb flow-decision --decision <none|new|update> [--id <flow id>] --why "<one clause>" --root ${root} --session ${sid}${tail}`;
234
+ FLOW DECISION — record what you decided about FLOWS (created a new one, folded into an \
235
+ existing one, or none) so the flow gate can be measured. Ride it on your LAST kb write it \
236
+ is a flag, not a second command:
237
+ node ${cli} kb write /tmp/specN.json --root ${root} --session ${sid} --force \\
238
+ --decision <none|new|update> [--id <flow id>] --why "<one clause>"
239
+ Only when you wrote NO notes at all is there no write to carry it, and then run it alone:
240
+ node ${cli} kb flow-decision --decision none --why "<one clause>" --root ${root} --session ${sid}${tail}`;
175
241
  }
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Types for note-shape.mjs — the table itself is plain ESM so the capture hooks
3
+ * can import it without a build step (see the header there). This declaration is
4
+ * what lets the TypeScript side import the same file instead of copying it.
5
+ */
6
+
7
+ /** A folded note, as `kb repair` reads it off disk. Structurally a subset of
8
+ * KbNote in src/kb/types.ts — kept minimal so the checks stay portable. */
9
+ export interface ShapeNote {
10
+ id: string;
11
+ type?: string;
12
+ title?: string;
13
+ identityAliases?: string[];
14
+ incidentAliases?: string[];
15
+ anchors?: { path: string; symbols?: string[] }[];
16
+ steps?: { path?: string; symbols?: string[]; role?: string }[];
17
+ scope?: { terms?: string[] };
18
+ }
19
+
20
+ /** The JSON an agent sends to kb write / kb_write. */
21
+ export interface ShapeSpec {
22
+ op?: string;
23
+ type?: string;
24
+ path?: string;
25
+ identityAliases?: unknown;
26
+ incidentAliases?: unknown;
27
+ anchors?: { path?: string; symbols?: unknown }[];
28
+ steps?: unknown[];
29
+ scope?: { terms?: unknown };
30
+ [k: string]: unknown;
31
+ }
32
+
33
+ export interface SpecShape {
34
+ spec: string;
35
+ noteType: string;
36
+ headline: string;
37
+ example: string;
38
+ note: string;
39
+ }
40
+
41
+ export interface NoteCheck {
42
+ check: string;
43
+ field: string;
44
+ noteTypes: string[];
45
+ specTypes: string[];
46
+ why: string;
47
+ repairHint: string;
48
+ fix: (ctx: { path?: string; unanchored?: string[] }) => string;
49
+ missingInSpec: (spec: ShapeSpec) => boolean;
50
+ missingInNote: (note: ShapeNote) => boolean;
51
+ context?: (note: ShapeNote) => Record<string, unknown>;
52
+ }
53
+
54
+ export const REPAIR_CONTRACT_VERSION: number;
55
+ export const SPEC_SHAPES: SpecShape[];
56
+ export const NOTE_CHECKS: NoteCheck[];
57
+
58
+ export function unanchoredSteps(note: ShapeNote): string[];
59
+ export function stepsMissingAfterWrite(spec: ShapeSpec, after?: ShapeNote | null): boolean;
60
+ export function checksForSpec(specType: string): NoteCheck[];
61
+ export function checksForNote(noteType: string): NoteCheck[];
62
+ export function shapesBlock(opts?: { compact?: boolean }): string;
63
+ export function requiredFieldsLine(): string;