engram-plan
Plan engram implementation work from the architecture and contract docs. Use when sequencing Rust crates, TypeScript packages, storage adapters, retrieval pipelines, bindings, evaluation milestones, o
SKILL.md.claude/skills/engram-plan/SKILL.md
GitHubEngram Plan
Use this skill when turning the engram architecture into implementation slices. Plans should stay modular, composable, and contract-backed: Rust owns the deterministic core, TypeScript owns integration ergonomics, and adapters sit behind stable ports.
Required Context
Read these files before planning implementation:
docs/domain-data-model.mddocs/architecture.mddocs/research/synthesis.mddocs/rfcs/0001-memory-layer-scope.mddocs/rfcs/0002-knowledge-source-extension.mdreferences/crate-map.md
Planning Rules
- Treat the accepted domain model as the source of truth.
- Keep SQL, vector stores, model providers, and Node runtimes outside the Rust core domain crate.
- Prefer ports and adapters over baked-in infrastructure.
- Plan vertical slices that can be tested with in-memory adapters before persistent storage.
- Make evaluation part of each milestone instead of a separate late-stage project.
- Call out contract risks before implementation risks.
Default Build Order
- Contract freeze review and implementation stack ADR.
- Rust domain crate with serde-compatible types and invariants.
- Rust engine crate with ports, in-memory store, policy gate, and retrieval pipeline skeleton.
- Evaluation fixtures and deterministic regression harness.
- Adapter crates for SQL/vector/object storage.
- N-API TypeScript package and generated TypeScript contract types.
- Ingestion extensions for code and unstructured documents.
- Background consolidation, belief derivation, hierarchy maintenance, and observability.
Output
Plans should include:
- Crates and packages affected.
- Contract surfaces involved.
- First testable slice.
- Explicit deferrals.
- Verification commands.