Saving memories
Just ask your AI to remember something:“Remember that we chose PostgreSQL for the database”
“Save a decision: we’re using Railway for deployment”
“Remember this as a blocker for the engram project: the staging SSL certs aren’t provisioned”
Memory types
Be specific about the kind of memory:| Type | Use for |
|---|---|
commitment | Things you said you’d do, with due dates |
decision | Choices you’ve made and why |
blocker | What’s in your way |
pattern | Recurring behaviors or observations |
preference | Your working style and tooling choices |
context | General background facts |
“Save this as a commitment due Friday: deliver the API review”
Recalling memories
Ask naturally:“What do you remember about the engram architecture?”
“Recall my recent decisions about deployment”
Brief mode
When scanning many memories:“Give me a brief recall of everything about engram”Returns a compact list with one line per memory: ID, topic, type, and snippet. Then drill into specific ones:
“Show me the full content of memories 42 and 44”Workflow: scan briefly, then read what matters. Keeps conversations focused.
Filtering
By source
Every memory tracks where it came from:| Source | Meaning |
|---|---|
| manual | You or your AI saved it deliberately |
| hook | Auto-captured by Claude Code hooks |
| auto | System-generated (debriefs, consolidation) |
“Recall only my manually saved memories about engram”
By scope and project
“What blockers do I have for the engram project?”
“Brief recall of manual decisions about engram”
Commitments and due dates
Commitments support status tracking and due dates:| Status | Meaning |
|---|---|
| open | Active, needs attention (default) |
| waiting | Blocked on external input |
| scheduled | Intentionally deferred for later |
| resolved | Done |
“Remember this commitment as waiting: blocked on security review from DevOps”
“Save a scheduled commitment due 2026-04-01: migrate to the new API version”Deferred commitments (waiting/scheduled) are excluded from the default commitments list and won’t trigger stale or overdue alerts.
“Show me all commitments including deferred ones”
Resolving and managing
Mark things as done with an optional resolution note:“Resolve memory 42 with note: shipped in PR #85”Check your status:
“Show me my open commitments”
“Any overdue commitments?”
“Are there stale commitments I should follow up on?”
Automatic capture (Claude Code only)
If you use Claude Code CLI, 3ngram can auto-capture context via hooks:| Hook | Event | What it does |
|---|---|---|
| Session start | SessionStart | Reminds you to check recent context |
| Post tool use | PostToolUse | Captures git commits |
| Session end | SessionEnd | Saves files modified and commits |
source=hook so they don’t mix with deliberate saves.
Setup
The hooks need two environment variables:Privacy
Wrap sensitive content in<private> tags to prevent storage:
“Remember that the API key is <private>sk-abc123</private> and we use OAuth for auth.”The private content is stripped before persistence.