Relic is a local-first OpenClaw skill package for preserving a person's durable self-model.
It is packaged for ClawHub/OpenClaw as a skill. The skill is the main install surface. Optional bundled hooks add passive capture behavior, giving the full plugin-like experience without putting private state inside the package.
SKILL.md — skill entrypoint and operating guidancescripts/ — deterministic local commands for init, capture, distill, drift, proposal, apply, and exportreferences/ — package docs for setup, data model, examples, and evolution policyhooks/openclaw/ — optional OpenClaw hook metadata and handlers for passive capture_meta.json and .clawhub/origin.json — package metadata and install provenanceRelic keeps mutable user state outside the package.
Default vault path:
text
~/.openclaw/workspace/projects/relic/vault/
Override it with:
bash
export RELIC_VAULT_PATH="/absolute/path/to/your/relic-vault"
Typical vault contents:
text
vault/
├── inbox.ndjson
├── facets.json
├── self-model.md
├── voice.md
├── goals.md
├── relationships.md
├── evolution/
├── snapshots/
└── exports/
Preferred ClawHub/OpenClaw workflow:
bash
clawhub install relic
Manual local layout:
bash
cp -R relic ~/.openclaw/workspace/skills/relic
bash
openclaw skills info relic
openclaw skills check
bash
python3 ~/.openclaw/workspace/skills/relic/scripts/init_relic.py
bash
python3 ~/.openclaw/workspace/skills/relic/scripts/capture_note.py "I value durable systems" --type value
python3 ~/.openclaw/workspace/skills/relic/scripts/distill_facets.py
python3 ~/.openclaw/workspace/skills/relic/scripts/render_export.py
Relic includes a bundled optional hook named relic-capture.
It fires on agent:stop, extracts likely durable user signals from the transcript, and appends them to the configured vault.
Verify and enable it with:
bash
openclaw hooks info relic-capture
openclaw hooks check
openclaw hooks enable relic-capture
If you just installed or moved the package or hook, start a fresh OpenClaw session or restart the gateway before verifying discovery.
CommandPurposepython3 ~/.openclaw/workspace/skills/relic/scripts/init_relic.pyInitialize vault structurepython3 ~/.openclaw/workspace/skills/relic/scripts/capture_note.py "text" --type reflectionAppend a manual observationpython3 ~/.openclaw/workspace/skills/relic/scripts/distill_facets.pyDistill inbox into structured artifactspython3 ~/.openclaw/workspace/skills/relic/scripts/drift_detection.pyDetect drift between captures and current statepython3 ~/.openclaw/workspace/skills/relic/scripts/propose_update.pyPropose major changespython3 ~/.openclaw/workspace/skills/relic/scripts/apply_proposal.py <proposal-id>Apply an approved proposalpython3 ~/.openclaw/workspace/skills/relic/scripts/render_export.pyGenerate the exported agent prompt
openclaw skills info relic resolves the installed skill.openclaw skills check reports the skill as ready.openclaw hooks info relic-capture resolves the bundled hook.openclaw hooks check succeeds once the hook is installed/enabled.inbox.ndjson.references/openclaw-integration.md — install and verification guidereferences/hooks-setup.md — optional hook setupreferences/data-model.md — vault schema and artifact rolesreferences/examples.md — common usage examplesreferences/evolution-policy.md — auditable change policy