Skip to content

Latest commit

 

History

History
63 lines (50 loc) · 4.37 KB

File metadata and controls

63 lines (50 loc) · 4.37 KB
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

memory-researcher — research that compounds

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.

The artifact: one unified record format

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.
  • statusraw (this skill writes only raw) → consolidated happens 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.

The loop (run once per session or per cron tick)

  1. Recall first: memory_search "RESEARCH-NOTE <topic>" and memory_search "FILECOIN-MEMORY <topic>". A FILECOIN-MEMORY receipt means consolidated knowledge exists — recall it with foc-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's topic: to match what you searched for; never substitute a near match.
  2. 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.
  3. 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).
  4. Cross-reference: if the finding touches other topics, name them in refs; if it contradicts an existing note, mark contradicts — 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).

Demo cron (every 5 minutes)

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: .