mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-05-13 16:13:03 +08:00
Memory Persistence Hooks
These lifecycle hook definitions document ECC's memory persistence contract for Claude Code plugin and manual installs.
The executable implementations live in scripts/hooks/:
session-start.jsloads bounded prior context, detects project state, and prepares session metadata.pre-compact.jscaptures state before context compaction.session-end.jspersists session-end summaries when transcript metadata is available.observe-runner.jsrecords tool-use observations for continuous learning.session-activity-tracker.jsrecords tool usage and file activity for ECC2 status and observability.
The installed hook graph is still hooks/hooks.json. This directory is the stable, human-readable lifecycle definition surface referenced by the harness audit and longform docs.
Lifecycle Contract
| Event | Hook | Purpose | Blocking |
|---|---|---|---|
SessionStart |
session:start |
Load bounded prior context and project metadata | no |
PreCompact |
pre:compact |
Save state before compaction | no |
PreToolUse |
pre:observe:continuous-learning |
Capture tool intent for learning signals | no |
PostToolUse |
post:observe:continuous-learning |
Capture tool result for learning signals | no |
PostToolUse |
post:session-activity-tracker |
Record tool and file activity for ECC2 metrics | no |
Stop |
stop:format-typecheck |
Batch quality gate after edits | yes on hook failure |
Stop |
stop:check-console-log |
Audit modified files for debug logging | warn/error by hook output |
Operator Expectations
- Keep persistence local by default.
- Avoid sending transcripts or tool traces to hosted services unless a user explicitly enables an integration.
- Bound context loaded at session start with
ECC_SESSION_START_MAX_CHARS. - Allow opt-out with
ECC_SESSION_START_CONTEXT=off. - Keep lifecycle hooks profile-gated through
ECC_HOOK_PROFILEandECC_DISABLED_HOOKS.
Related Files
hooks/hooks.jsonhooks/README.mdscripts/hooks/session-start.jsscripts/hooks/pre-compact.jsscripts/hooks/session-end.jsscripts/hooks/observe-runner.jsscripts/hooks/session-activity-tracker.jsdocs/architecture/observability-readiness.md