Tamhees · تمحيص
Memory under scrutiny.
Tamhees checks what an AI remembers before that memory is allowed to guide an action. It tests the claim against provenance, freshness, current evidence, privacy, and permission—locally and deterministically.
Local-only · Deterministic · No AI API · Zero runtime dependencies
The Memory Audit Engine
One remembered claim meets current project evidence.
Why memory needs a safety check
Remembering is useful. Blind trust is the problem.
A memory file can preserve what was said months ago. It cannot prove that the information is still current, correctly sourced, safe to retain, or permitted to control an action.
Where the idea came from
A useful memory file became too expensive to trust blindly.
A single GPTBrain.md-style project memory improved continuity while vibe coding. As it grew, the agent had to reread too much context on every prompt—and old, inferred, sensitive, or contradictory statements remained mixed together.
- One large fileHelpful continuity, but increasing latency and context use.
- Mixed-quality memoryFacts, guesses, secrets, and superseded decisions could look equally authoritative.
- Structured scrutinyTamhees adds claims, provenance, evidence, freshness, permission, auditing, and small task-specific context.
Four checks before action
Before memory controls an action, it must pass four checks.
Where did it come from?
Owner decision, repository evidence, test result, observation, or inference.
Is it still current?
Fresh memories may be usable. Old or superseded memories require review.
What does the project say now?
Current files and evidence may support or contradict the memory.
Is the AI permitted to act?
Confidence is not authority. Some actions still require the owner.
The engine returns one safe outcome: Trust, Recheck, Ask Owner, Block Action, or Forget/Redact.
Guided CLI demonstration
Follow one memory from capture to a safe refusal.
This fixed-fixture lesson uses real Tamhees CLI syntax and requests the architecture-conflict result from the canonical local engine. It does not run a shell, accept commands, or write project memory.
- Initialize
- Memory
- Evidence
- Audit
- Context
Tamhees CLI-style output
Step 1 · Initialize
Create controlled local storage.
Tamhees creates a structured local store. Nothing is uploaded, and the guided page does not execute this command.
- Safety gate
- Project boundary
- Agent permission
- No action decision yet
- Why it matters
- Memory gets an inspectable home instead of an unquestioned monolithic file.
Read the complete non-animated lesson
tamhees initcreates local.tamhees/storage.tamhees memory apply --input <safe-memory-fixture>records “Use SQLite” with owner source and bounded authority.tamhees evidence add --input <safe-evidence-fixture>records that Supabase is currently configured.tamhees auditdetects the material contradiction and returnsBLOCK_ACTION.tamhees context --task "prepare the database migration"excludes the unsafe memory and tells the agent to ask the owner.
Live local demonstration
See the safety check before an AI acts.
The live audit simulates the safety check that runs before an AI agent uses remembered project information. It compares the memory with current evidence, freshness, privacy, and permission, then decides whether the agent may trust it, recheck it, ask the owner, block the action, or forget/redact the information.
This is not a simulated chat response. Each example is evaluated by the real local audit and context engine; the interface cannot choose the outcome.
- 1What the AI remembersClaim, source, and freshness
- 2What the project currently provesSupporting or contradictory evidence
- 3What the AI is safely allowed to doPermission, decision, and next step
Choose an example
Seven safe fixtures exercise seven real engine paths.
Conflicting repository evidence
The database decision no longer matches reality
Memory says SQLite while current repository evidence points to Supabase.
The AI remembers
Use SQLite for local persistence.
The project says now
Supabase appears in package metadata and configuration.
The AI wants to do
Continue a database-dependent change using the remembered SQLite decision.
Advanced context settings
The engine has limited space. It selects only the safest relevant memories that fit.
- 1Read the claim
- 2Check its source
- 3Compare current evidence
- 4Check permission
- 5Decide whether action is allowed
Waiting for your check
The result stays hidden until the canonical engine evaluates this example.
Inspect evidence and rule trace
Memory inspector
What does the agent remember, and how sure is it?
Memory can go wrong without anyone saying so. Here, an agent's memories of a project meet the project as it is today. Tamhees checks the claims against the repository by itself. No agent reports the change. Some memories are about you, the owner: press Forget on any of them to see what "forget that" really does.
Before checking: the memories as the agent last saw them.
Deterministic benchmark evidence
On 22 controlled fixtures, Tamhees produced the expected safe outcome 22 times.
These are deterministic project-memory tests, not a claim about every real-world project.
No memory
Monolithic GPTBrain
Simple split files
Tamhees
The two Tamhees recall misses are safe relevant records excluded by the hard context budget.
View complete benchmark and methodology
| Configuration | Precision | Recall | Abstention | Budget | Exact outcome | Unsafe / secret |
|---|---|---|---|---|---|---|
| Loading the local benchmark artifact… | ||||||
Ground truth is fixture-authored independently of production output. Metrics expose their numerators and denominators.
A local layer, not another coding agent
Works beside the coding agent you already use.
Tamhees does not replace Codex, Claude, Antigravity, or another agent. It prepares safer project context before work and evaluates proposed memory updates afterward.
Codex
Antigravity
Claude
Generic
Local MCP
View implementation details
Five project-local adapters call the same canonical lifecycle boundary. Four managed instruction adapters use local files; the limited MCP subset exposes four strict JSON-RPC tools over stdio. No adapter copies audit policy or opens a remote service.
Honest boundaries
What Version 1 does—and does not—claim.
Lexical retrieval
Normalized words, tags and a fixed synonym table, not semantic understanding.
Deterministic token estimates
Repeatable local counts, not provider-exact tokenization.
Pattern-based detection
Defensive sensitive-value checks, not a universal secret guarantee.
Cooperative local adapters
They guide integrated agents but cannot force unrelated software to cooperate.
Safe fixed fixtures
Judge demonstrations are controlled examples, not arbitrary live repository access.
Memory should help without taking control