Repo for the ongoing research project on agentic memory
  • Python 40.8%
  • TypeScript 37.7%
  • MDX 9.2%
  • JavaScript 5.5%
  • Go 1.4%
  • Other 5.1%
Find a file
Ilya 4b27d156a4 Restructure archive into the Reflexive Profile project (field/lab/atelier)
Transform the flat agentic-memory archive into the working project the
design spec envisions: a local, git-versioned counter-mirror harness.

Layout — three macro layers realising the cycle, governance seeds at the root:
- governance (root): SCHEMA · USER · AGENTS · TRAJECTORY (empty user-authored
  seed files; the protected-main apex over the cycle)
- field/   = raw/ (sources + 52 vendored modules) + corpus/ (compiled wiki)
- lab/     = steering/ · verification/ · workshop/ · proposals/
- atelier/ = drafts/ · joins/ · signed/ · extension/ (the pi memory ext, WIP)
- .beads/  = work-unit substrate

Relocations (content preserved):
- 52 module source trees -> field/raw/modules/<set>/<module>/
- _MODULE.md x52         -> field/corpus/wiki/entities/<set>/<module>.md
- _OVERVIEW.md x5        -> field/corpus/wiki/comparisons/<set>.md
- 11 arXiv PDFs          -> field/raw/docs/
- _papers/README.md      -> field/corpus/wiki/comparisons/papers-and-code.md

Authored:
- field/corpus/wiki/concepts/dynamic-memory.md — the v0.2.1 memory-module
  design (the Proposing Deriver), anchored into raw/docs/
- field/corpus/wiki/concepts/verification.md — the membrane as a cross-cutting
  plane (the firewall, three planes, evaluation without scoring the writing)
- harness-v0.2.1.html — the design schematic; memory module + verification
  developed, cartography redrawn to the three layers
- per-layer README stubs; README.md and CLAUDE.md updated to the new layout

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:27:15 +03:00
.beads Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
atelier Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
field Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
lab Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
.gitignore Ignore local CLAUDE.md (root-anchored; keeps module CLAUDE.md content tracked) 2026-06-08 16:24:49 +02:00
AGENTS.md Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
harness-v0.2.1.html Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
README.md Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
SCHEMA.md Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
TRAJECTORY.md Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00
USER.md Restructure archive into the Reflexive Profile project (field/lab/atelier) 2026-06-29 16:27:15 +03:00

The Reflexive Profile

A local-only, git-versioned working directory for a counter-mirror memory harness — the constructive artefact of the ResMA tutorial Configuring the Human: Subjectivities, Individuation, and the Memory Architecture of Agent Harnesses (UvA Media Studies, supervisor Prof. dr. Tobias Blanke). The design it instantiates is specified in harness-v0.2.1.html — open it first; everything below is that document made into directories.

This repository began as a flat research archive of 52 agent-harness memory modules (Phase A — cartography). It has since been restructured into the project the design envisions: the archive is no longer the artefact but the empirical horizon the artefact is built on. The 52 vendored modules and 11 papers now sit in the project's immutable field (field/raw/); the close-readings of them are the project's compiled corpus (field/corpus/wiki/). The live authoring layers above the corpus — governance, the verification membrane, the workshop, the atelier — are scaffolded and await content (see Status below).


The idea in one paragraph

A small, user-authored set of seeds propagates through a co-individuated steering layer into a large, mostly-automated corpus the user need never read in full. Governance flows down; writing flows up; the whole thing runs as a non-terminating cycle — field → laboratory → atelier → field. Its one inversion: the writing, through the user, judges the model — the model is upstream proposal, the human is terminal decision. A verification membrane sits at the seam and does one job: keep that direction from reversing, under one law — no metric becomes a target. No archived memory system makes the user the author-of-record of an editable counter-mirror; that empty corner is what this project occupies.


Layout

Three top-level directories realise the cycle — field/ (the material body), lab/ (the active machinery), atelier/ (production) — beneath the governance seeds (SCHEMA · USER · AGENTS · TRAJECTORY — root-level files on protected main, the pen over the cycle, not a layer within it) that flow down over all three, with the .beads/ substrate underneath. The corpus is filed under field/ as settled material; the membrane and workshop that work it live in lab/. The agent writes freely inside lab/proposals/ and field/corpus/, but nothing above the corpus line lands without a human merge.

the-reflexive-profile/            # git repo · local-only · governance ▾ over the cycle
│
├── harness-v0.2.1.html        # the design spec — this layout, rendered
├── README.md                     # you are here
├── SCHEMA.md · USER.md · AGENTS.md · TRAJECTORY.md   # [you · primary] governance seeds (not yet authored)
│
├── field/                        # ▢ the material body — sources + the compiled corpus
│   ├── raw/                      # [immutable] agent reads, never writes
│   │   ├── docs/                 # 11 arXiv PDFs (the primary literature)
│   │   ├── modules/<set>/<module>/   # 52 vendored harness/memory codebases — primary source
│   │   ├── transcripts/          # (conversational capture — deferred, see Status)
│   │   └── citations/            # (per-page provenance — deferred)
│   └── corpus/                   # [agent · governed] the compiled body of memory · OKF
│       ├── wiki/
│       │   ├── entities/<set>/<module>.md   # 52 close-readings (was each module's _MODULE.md)
│       │   ├── comparisons/<set>.md          # 5 per-ecosystem overviews + papers-and-code.md
│       │   └── concepts/                     # dynamic-memory.md · verification.md (the v0.2.1 design)
│       └── derived/              # consolidated interaction memory (+ .cache/ for embeddings)
│
├── lab/                          # ◇ the engine — the active machinery
│   ├── steering/                 # [you ⇄ agent] the governor, not the memory
│   │   ├── voice/  stance/  exemplars/{is-me,not-me}/  instructions/
│   │   └── agents/               # subagent roster + custom roles
│   ├── verification/             # [membrane] the assay bench — a cross-cutting plane
│   │   ├── signals/              # scalar deputies (routing-only) + interpretive paradata
│   │   ├── override-log.jsonl    # projection of closed disposition-beads — the empirical pivot
│   │   └── presence/{control,probes}/   # the presence-check: capture vs. co-individuation
│   ├── workshop/                 # [you ⇄ agent] salient material, problematised & operationalised
│   └── proposals/                # [agent · attributed] pending edits; header carries paradata
│
├── atelier/                      # ▣ production — finalisation + the artefact under construction
│   ├── drafts/  joins/  signed/  # [you · primary] compile · compose · sign (hallmark)
│   └── extension/                # [v0.2.1] the pi memory extension (program, not data) — propose-only
│
└── .beads/                       # [substrate] lean work-unit store (overrides · proposals · nominations)

Colour-coded against the design: steering is co-individuated governance, verification is the membrane, atelier is the hand at highest density, corpus/raw is the automated milieu the hand need not touch in full.


Where the research content lives now

The cartography is preserved in full — only relocated, split along the project's defining axis of immutable source vs. compiled wiki:

Was (archive) Now (project) Role
52 module directories field/raw/modules/<set>/<module>/ The field — vendored primary source, immutable, read-only context.
<module>/_MODULE.md ×52 field/corpus/wiki/entities/<set>/<module>.md The compiled wiki — per-system close-reading (structure · operationality · component review).
<set>/_OVERVIEW.md ×5 field/corpus/wiki/comparisons/<set>.md Per-ecosystem memory philosophy, repo table, axis scoring.
_papers/*.pdf ×11 field/raw/docs/ The primary literature (arXiv preprints; slug + arXiv id in filename).
_papers/README.md field/corpus/wiki/comparisons/papers-and-code.md Paper index + paper↔code mapping.

The five harness sets are preserved as the <set> grouping in both field/raw/modules/ and field/corpus/wiki/entities/:

Set n Memory philosophy in one line
claude-code 13 Closed harness; native CLAUDE.md (user-authored) and auto-MEMORY.md (agent-curated) in one stack; richer memory via MCP plugins + hooks.
pi-coding-agent 13 Minimal AGENTS.md harness + extension API; no native user-model memory, but a lively extension ecosystem (8 archived). The artefact's implementation surface.
hermes-agent 7 Stateful harness; MEMORY.md / USER.md split, char caps, agent-curated nudge, 8-provider interface. The evaluation baseline.
opencode 7 Open MIT AGENTS.md harness, pi-shaped; no native long-term memory; origin of the Letta-block plugin pattern.
_cross-harness-memory 12 Canonical engines: Letta, Graphiti, A-MEM, MIRIX, Cognee, mem0 … the research-grade reference points.

52 vendored modules + 11 papers, ~0.4 GB.


The reading axes

Every entity page can be read against the project's five axes, plus the six memory operations of Du et al. 2025 (field/raw/docs/du2025-rethinking-memory-six-operations__arxiv-2505.00675.pdf):

  1. Authorship of the user-model — agent-curated (LLM writes the user) vs. user-authored (the user is author-of-record). Where does the writing happen?
  2. Auditability — plain-file-on-disk vs. opaque vector/SQLite/cloud store.
  3. Direction of the dialectic — agent ↔ accumulating model, or user ↔ the harness's mirror?
  4. Locality — local-only / no-exfiltration vs. cloud/hosted.
  5. Six-operation coverage — Consolidate / Update / Index / Forget / Retrieve / Compress.

Per-system scoring lives in each field/corpus/wiki/comparisons/<set>.md. The axes are not aggregated into a single score — each system gets a profile, not a rank.

Core claim — the user-model loop, and the empty corner

Two things are at stake in any memory layer: there is a model of the user, and someone authors it. Almost every module builds the first; the project's question is the second.

  • The AGENTS.md-native layers (pi AGENTS.md, Hermes USER.md, Claude Code CLAUDE.md) keep the pen with the user — plain text the user writes — but they are static: the agent reads them, and nothing closes the loop that keeps the model current.
  • Every module that adds that loop hands the pen to the agent. Honcho runs a deriver that infers a user representation from messages; Mem0 has an LLM auto-extract "facts" and ADD/UPDATE/DELETE them; even Letta, where memory is editable markdown, has a background sleeptime agent rewrite it.

So loop ⇒ agent-authored; user-authored ⇒ no loop. The Reflexive Profile breaks that trade-off: its editable counter-mirror is a model-of-the-user the user authors and owns as source-of-record, which the agent reads and proposes edits to — the membrane guaranteeing the proposal never silently becomes the record. Mapping the 52 modules reveals one empty corneruser-authored · auditable · user↔mirror · local — that no archived system occupies. The artefact is positioned there; the scoring tables exist to locate it.


Status

The relocated archive seeds the project's field/raw/ (field) and field/corpus/wiki/ (compiled readings). The authoring layers above the corpus are scaffolded and empty, pending the artefact build:

  • lab/steering/, lab/verification/, lab/workshop/, atelier/, lab/proposals/, .beads/ — present as directory skeleton (.gitkeep), no content yet. Governance seeds (SCHEMA.md, USER.md, AGENTS.md, TRAJECTORY.md) are likewise not yet authored.
  • field/raw/transcripts/ + field/raw/citations/ — the memory module proper (conversational capture, per-page provenance) is the deferred v0.2.1 layer; a hook, not yet a build.

Provenance

The 52 modules were originally cloned with full git history; for single-clone peer review the corpus was flattened — each module is vendored as plain files (its upstream .git removed), now living under field/raw/modules/<set>/<module>/. Upstream URL + licence are recorded per system in its field/corpus/wiki/entities/<set>/<module>.md header and the field/corpus/wiki/comparisons/<set>.md tables, so any module's original history is recoverable by re-cloning from source. A lean prune dropped non-source bloat (node_modules/, demo videos/GIFs, compiled binaries, oversized non-paper PDFs); all source, all close-readings, and the 11 research PDFs are retained.

Coverage notes.

  • Hermes providers: of the 8 external providers, only the open ones are present as upstream repos — Supermemory, Honcho, Mem0. The other five (OpenViking, Hindsight, Holographic, RetainDB, ByteRover) are cloud/CLI services with no public engine; their Hermes-side adapter code is at field/raw/modules/hermes-agent/hermes-agent/plugins/memory/.
  • Canonical engines: the research-grade systems in field/raw/modules/_cross-harness-memory/ are mostly large frameworks (Letta, CrewAI, Cognee, the MCP servers monorepo); see field/corpus/wiki/comparisons/_cross-harness-memory.md for the paper↔code mapping and licence flags (Honcho & basic-memory are AGPL-3.0 — copyleft; verify before any reuse).
  • Not cloned / dropped: Memory-R1 (arXiv 2508.19828) — paper PDF in field/raw/docs/, but its code repo is unverified, so no clone. doobidoo/mcp-memory-service — removed from GitHub since nomination.
  • Disambiguation: field/raw/modules/pi-coding-agent/pi-memory-samfp is @samfp/pi-memory; the report's jayzeng/pi-memory is archived as pi-memory-jayzeng. opencode-agent-memory was moved from the shared layer into its native opencode/ set.