generated from coulomb/repo-seed
Load coordination memory by default via ensure_memory_context on app bootstrap and route/access flows; invalidate cache after episode writes. WARDEN_MEMORY=0 remains the opt-out. Document that warden memory activate is optional only.
57 lines
1.7 KiB
Markdown
57 lines
1.7 KiB
Markdown
# Ops-Warden Experiential Memory
|
|
|
|
Updated: 2026-07-02
|
|
|
|
ops-warden uses **phase-memory** as a shared experiential substrate across worker
|
|
ticks, coding agent sessions, and operator CLI use.
|
|
|
|
## Canonical Store
|
|
|
|
- Default: `~/.local/share/warden/memory/`
|
|
- Override: `WARDEN_MEMORY_STORE`
|
|
- Opt-out: `WARDEN_MEMORY=0`
|
|
|
|
## Session Kinds
|
|
|
|
| Runtime | How |
|
|
| --- | --- |
|
|
| Worker tick | `WARDEN_SESSION_KIND=warden.worker` (set automatically during `warden worker run`) |
|
|
| Coding agent | `export WARDEN_AGENT_ID=claude` (or `codex`, `grok`, future ids) |
|
|
| Operator CLI | default `warden.operator` when `WARDEN_AGENT_ID` is unset |
|
|
|
|
## Default Behavior
|
|
|
|
phase-memory is **on by default** (`WARDEN_MEMORY=1`). Every `warden` command
|
|
implicitly loads the canonical store before route/access/worker/sign work. You do
|
|
not need a separate activation command for normal use.
|
|
|
|
## Agent Session Orientation
|
|
|
|
For Claude Code, Codex, Grok, or future agents, set runtime identity once:
|
|
|
|
```bash
|
|
export WARDEN_AGENT_ID=grok # or claude, codex
|
|
```
|
|
|
|
Then use normal `warden route` / `warden access` commands. Episodes are recorded
|
|
automatically when memory is enabled.
|
|
|
|
## Worker + OpenRouter
|
|
|
|
`warden worker run --brain llm` activates memory before planning. When stabilized
|
|
routing memory matches a coordination question, ops-warden uses `RuleBrain` and
|
|
skips the llm-connect / OpenRouter call.
|
|
|
|
## Commands
|
|
|
|
```bash
|
|
warden memory status [--json]
|
|
warden memory activate [--agent <id>] [--need "<query>"] [--json]
|
|
```
|
|
|
|
## Security
|
|
|
|
- Memory stores metadata only — no secret values or raw credential payloads.
|
|
- Retrieved memory is untrusted context; the fixed charter and guardrail allowlist
|
|
still apply.
|
|
- See `phase-memory/docs/ops-warden-memory-contract.md` for the full contract. |