Redactions
Memoturn runs a two-stage redaction pipeline on every recorded turn:
- Deterministic scan — 25+ regex patterns match API keys, tokens, passwords, private keys, and connection strings. Matched spans are replaced with
[REDACTED:type]before the turn is stored. - LLM review — an async pass re-reads the redacted turn and flags anything the regexes missed (novel secret formats, credentials in natural language). Results are classified as
confirmed,escalated, ordismissed.
Escalated turns appear in the dashboard’s redactions tab and via the list_redaction_reviews MCP tool.
REST API
Section titled “REST API”List redactions
Section titled “List redactions”curl "https://YOUR_API_HOST/v1/projects/my-project/redactions?status=escalated" \ -H "Authorization: Bearer mt_..."| param | type | notes |
|---|---|---|
status | "escalated" | "acknowledged" | "dismissed" | Default "escalated" |
since | number? | Start of time window (ms epoch) |
tool | string? | Filter by originating tool |
limit | number | 1–200, default 50 |
Acknowledge a redaction
Section titled “Acknowledge a redaction”Mark a flagged turn as reviewed (keep the redacted content, no further action needed):
curl -X POST https://YOUR_API_HOST/v1/projects/my-project/redactions/TURN_ID/acknowledge \ -H "Authorization: Bearer mt_..."Forget a redaction
Section titled “Forget a redaction”Delete the turn’s derived memories and mark it as handled:
curl -X POST https://YOUR_API_HOST/v1/projects/my-project/redactions/TURN_ID/forget \ -H "Authorization: Bearer mt_..."This soft-deletes all memories derived from the turn, evicts it from the hot cache, and broadcasts memory_forgotten events to subscribed clients. The turn row itself is preserved with its redacted content for audit purposes.
MCP tool
Section titled “MCP tool”The list_redaction_reviews tool exposes the same data to MCP clients:
list_redaction_reviews({ status: "escalated", limit: 10 })Use it to surface secret leaks an agent should not have written, without subscribing to broadcasts.