| name | memory-researcher |
|---|---|
| description | Researcher workflow with persistent, compounding memory (the Karpathy LLM-Wiki pattern applied to Clawdi memory). Use this whenever an agent runs a research loop, a cron research job, "research X and remember it", "track this topic over time", or needs to write findings that later sessions and OTHER agents must build on instead of rediscovering. Defines the unified RESEARCH-NOTE artifact format (structured fields, cross-refs, status lifecycle) that the memory-consolidator skill later archives to Filecoin. Trigger for any recurring research, monitoring, or knowledge-accumulation task — even if the user never says "memory". |
| license | Apache-2.0 OR MIT |
The idea (Karpathy's LLM Wiki): don't rediscover knowledge every session — incrementally build and maintain a persistent, interlinked knowledge base. Here the "wiki" is Clawdi memory (shared across every agent), the pages are structured RESEARCH-NOTE records, and the immutable archive layer is Filecoin (via the memory-consolidator skill). You are the wiki's maintainer, not a chatbot: integrate, cross-reference, and flag contradictions — never just append.
Every finding is ONE memory_add (category context — it is ongoing work, not settled
fact) whose content is a single line of key: value fields — greppable, parseable,
identical across all agents:
RESEARCH-NOTE | topic: <kebab-topic> | tags: research-note,topic:<kebab-topic>,status:raw | date: <YYYY-MM-DD> | status: raw | summary: <1-2 sentences, standalone, names not pronouns> | facts: <fact 1>; <fact 2>; <fact 3> | sources: <url or "session"> | refs: <related-topic-a>, <related-topic-b> | contradicts: <topic or "none">
The tags: field is structured in-content metadata (the platform's native tags column has
no writable surface today) — a controlled vocabulary that makes both semantic search and
plain grep precise. Use the same three families everywhere: record kind
(research-note/receipt), topic:<x>, status:<raw|stored|consolidated>.
Field rules — few fields, all potent:
topic— the note's wiki page. Reuse existing topics (search first!); new topic only for a genuinely new entity/thread.status—raw(this skill writes only raw) →consolidatedhappens via the consolidator's receipt; never write it yourself.summary/facts— standalone sentences a future agent can use without today's context.refs— the interlinks that make it a wiki, not a pile. Always fill when related topics exist.contradicts— when new data conflicts with an existing note, SAY SO here and in the summary. Flagged contradictions are the wiki's immune system.
- Recall first:
memory_search "RESEARCH-NOTE <topic>"andmemory_search "FILECOIN-MEMORY <topic>". A FILECOIN-MEMORY receipt means consolidated knowledge exists — recall it withfoc-cli download <the receipt's pieceCid> --out <path>(which validates the bytes against the CID) and build on it, don't re-derive it. Require the receipt'stopic:to match what you searched for; never substitute a near match. - Research the delta: use web search / your tools for what's new since the newest note. Focus on what changed — the notes already hold the rest.
- File ONE note in the format above. One note per tick keeps the index small and curated (Clawdi memory is the workbench index, not the warehouse — Filecoin is the warehouse).
- Cross-reference: if the finding touches other topics, name them in
refs; if it contradicts an existing note, markcontradicts— the consolidator resolves it later.
Do NOT: store secrets or keys (vault refs only), duplicate an existing fact (search caught it — update by superseding: file the new note and mark the contradiction), or write essays (the blob layer is for depth; notes are index cards).
For the live demo, register the loop as a 5-minute cron (Hermes dashboard → New Cron Job,
profile default, deliver Local; slow it to 30m+ after the demo):
Run the memory-researcher loop once for topic : recall RESEARCH-NOTE and FILECOIN-MEMORY records first, research only the delta, file exactly one RESEARCH-NOTE, cross-reference and flag contradictions. Working dir: .