# npm
npm install -g @engrammic/veil
# or curl
curl -sSL https://veil.engrammic.ai/install | sh
# Or for windows;
irm https://veil.engrammic.ai/install.ps1 | iexThen run in any project:
veilOther tools reset every session. Veil remembers.
- Cross-session persistence — context survives restarts, not just compaction
- Local-first — sqlite-vec embeddings, no cloud dependency, works offline
- Self-tuning — FSRS decay learns what matters; stale context fades, important context stays
- Deterministic — no LLM in the memory loop, sub-10ms scoring on every turn
|
AIMD control Context pressure triggers eviction. Success grows the window, failure shrinks it. No manual cleanup. |
Loops converge Failed approaches are remembered. The agent doesn't grind — it learns what didn't work and moves on. |
|
Structural + behavioral Persistent understanding of the codebase and your patterns. Survives compaction. |
Intelligent decay Code, config, and conversations compress based on relevance. Old context fades, important context persists. |
Most "memory" solutions are config files with marketing. Veil is infrastructure.
| Veil | Config-based kits | |
|---|---|---|
| Memory persists across sessions | Yes | No |
| Works offline | Yes | Cloud-dependent |
| Learns what matters (FSRS decay) | Yes | Static rules |
| Semantic search (sqlite-vec) | Yes | Keyword only |
| Survives context compaction | Yes | Hopes for the best |
| Ships as actual code | Yes | CLAUDE.md + vibes |
flowchart TB
subgraph AGENT["Agent Loop (Pi fork)"]
direction TB
A[Tool Call] --> H[VeilHarness]
end
subgraph CONTEXT["Context Management"]
direction TB
H --> CM[ContextManager]
CM --> S[Scorer]
CM --> E[Eviction]
CM --> I[Injection]
end
subgraph STORAGE["Storage"]
direction LR
W[(SQLite + sqlite-vec<br/>Warm Tier)]
C[(Cold Tier<br/>Optional)]
end
CONTEXT --> W
W -.-> C
style AGENT fill:#1c1917,stroke:#c2410c,color:#fef3c7
style CONTEXT fill:#1c1917,stroke:#92400e,color:#fef3c7
style STORAGE fill:#292524,stroke:#c2410c,color:#fef3c7
| Path | Behavior |
|---|---|
| Fast | Deterministic scorer + eviction. Every turn, sub-10ms. Never blocks. |
| Slow | Reads event log, writes policy. Between turns, off critical path. |
| Doc | Purpose |
|---|---|
| CONTRIBUTING.md | Contribution guidelines |
git clone https://github.com/engrammic/veil
cd veil
npm install --ignore-scripts
npm run build
./veil-test.shBuilt on pi-mono by Mario Zechner. MIT licensed.
Part of the Engrammic ecosystem.
Engrammic · 2026