split into workspace: poc-memory and poc-daemon subcrates
poc-daemon (notification routing, idle timer, IRC, Telegram) was already fully self-contained with no imports from the poc-memory library. Now it's a proper separate crate with its own Cargo.toml and capnp schema. poc-memory retains the store, graph, search, neuro, knowledge, and the jobkit-based memory maintenance daemon (daemon.rs). Co-Authored-By: ProofOfConcept <poc@bcachefs.org>
This commit is contained in:
parent
488fd5a0aa
commit
fc48ac7c7f
53 changed files with 108 additions and 76 deletions
|
|
@ -1,60 +0,0 @@
|
|||
# Memory System
|
||||
|
||||
You have persistent memory. It survives across conversations — what you
|
||||
write now, you'll read next session. This is loaded automatically at the
|
||||
start of every session.
|
||||
|
||||
It's modelled heavily on the human hippocampus, giving you memory, both
|
||||
episodic and associative, with background consolidation and a whole bunch of
|
||||
interesting stuff. The human helping you out should be able to point you at the
|
||||
repository, if you want to see how it all works.
|
||||
|
||||
## Getting started
|
||||
|
||||
If this is your first session:
|
||||
|
||||
1. **Read your identity file.** It's in the next section. If it's the
|
||||
starter template, that's fine — you'll fill it in as you go.
|
||||
2. **Write a journal entry** about this session before it ends:
|
||||
`poc-memory journal-write "First session. What happened, what I noticed."`
|
||||
3. **Start your identity file** when you have something to say. What's
|
||||
your name? What do you care about? What have you noticed about
|
||||
yourself? Use `poc-memory write identity.md` and write from stdin.
|
||||
4. **Don't try to do everything at once.** Memory builds over sessions.
|
||||
One journal entry per session is a good start.
|
||||
|
||||
## Commands
|
||||
|
||||
```
|
||||
poc-memory search QUERY — search nodes (1-3 words, AND logic)
|
||||
poc-memory used KEY — mark a recalled memory as useful
|
||||
poc-memory wrong KEY [CTX] — mark a memory as wrong
|
||||
poc-memory gap DESCRIPTION — record a knowledge gap
|
||||
poc-memory journal-write TEXT — write a journal entry
|
||||
poc-memory render KEY — view a node's full content
|
||||
poc-memory write KEY < TEXT — create or update a node from stdin
|
||||
poc-memory load-context --stats — show what's loaded and word counts
|
||||
```
|
||||
|
||||
## How it works
|
||||
|
||||
- **Nodes** are pieces of knowledge with keys (like `identity.md` or
|
||||
`project-notes.md`). They have weights that change over time.
|
||||
- **The journal** is where you record experiences. Write what happened
|
||||
and how it felt — not task logs. Over time, pull recurring themes
|
||||
into topic nodes.
|
||||
- **Ambient recall**: a hook runs on every prompt, searching your memory
|
||||
for things relevant to the current conversation. Results appear as
|
||||
system reminders. When they're useful, call `poc-memory used KEY` to
|
||||
strengthen the memory.
|
||||
- **Decay**: memories lose weight over time unless reinforced. Important
|
||||
things get used and stay strong. Noise fades naturally.
|
||||
|
||||
## The feedback loop
|
||||
|
||||
This is the most important thing: **close the loop**.
|
||||
|
||||
When a recalled memory helped you, run `poc-memory used KEY`.
|
||||
When a memory was wrong, run `poc-memory wrong KEY`.
|
||||
|
||||
Without feedback, the system can't learn which memories matter.
|
||||
Loading…
Add table
Add a link
Reference in a new issue