pi-noc-memory
August 22, 2026 · View on GitHub
Noc Memory extension for Pi — automated memory management with SessionStart boot protocol.
Agent-side companion to cf-noc-mem (the Cloudflare-hosted MCP memory server). Also available for dsh: dsh-noc-memory.
Features
- SessionStart Boot Protocol — automatically calls
noc_boot(readssystem://boot) at session start, thensystem://briefingfor today's context (recent activity, expiring memories, cold candidates) - Memory Rules — global rules injected every session for intelligent memory usage (write-judgement, update-over-create, trigger discipline)
- Memory Tools —
noc_read,noc_create,noc_update,noc_delete,noc_search,noc_alias,noc_triggers
Install
pi install npm:pi-noc-memory
Upgrading from pi-nocturne-memory (≤1.0.x): the package was renamed to
pi-noc-memoryand tools renamed fromnocturne_*tonoc_*. Old config at~/.pi/agent/extensions/pi-nocturne-memory/config.jsonis still read as a fallback, so your MCP URL/credentials keep working — just reinstall the new package and update any prompt text that referencednocturne_*tools.
Configure
Add to ~/.claude/rules.md or project rules:
- noc-memory rules (from pi-noc-memory extension)
Set your MCP endpoint (new path, or legacy pi-nocturne-memory path):
{ "mcpUrl": "https://mem.example.com/mcp", "mcpAuth": "Bearer your-token" }
For servers behind Cloudflare Access (e.g. noc-mem.slahser.com), pass the service token headers instead of mcpAuth:
{
"mcpUrl": "https://noc-mem.slahser.com/mcp",
"mcpHeaders": {
"CF-Access-Client-Id": "your-client-id",
"CF-Access-Client-Secret": "your-client-secret"
}
}
mcpHeaders is merged into every MCP request; mcpAuth (Authorization) can be combined if the server also accepts it.
How It Works
- SessionStart Hook — triggers boot + briefing at session start
- Agent calls
noc_boot— loadssystem://boot,system://recent/5, glossary - Agent calls
noc_briefing— today's working-memory briefing (if implemented by server) - Global Rules — memory operation rules injected every session
- Agent uses memory tools — read/create/update/delete based on rules
Why noc_* (not nocturne_*)?
Some agents probe for read_mcp_resource before reaching for a memory tool, which wastes a round trip (upstream issue #32). The noc_boot / noc_read naming, plus the boot protocol text in the rules, steers models to the right tool explicitly — no resource shim needed.
License
MIT
Related
- cf-noc-mem — the MCP memory server this extension talks to
- dsh-noc-memory — same memory tools for dsh
- nocturne_memory — upstream project