Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ozzy-labs/suasor --skill source-forgetgit clone --depth 1 https://github.com/ozzy-labs/suasorWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ozzy-labs/suasor/source-forget)<a href="https://agentmods.dev/skills/ozzy-labs/suasor/source-forget"><img src="https://agentmods.dev/badge/skills/ozzy-labs/suasor/source-forget.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00125 | $0.01446 |
| Opus 5 | $0.00063 | $0.00723 |
| Sonnet 5 | $0.00025 | $0.00289 |
| Haiku 4.5 | $0.00013 | $0.00145 |
Grade A, and why
source-forget scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 53 lines — stays where its author put it; the contents beside it link to each section on GitHub.
source-forget
取り込んだ特定 source をローカルから真に消す HITL write skill(ADR-0026 / ADR-0004)。content-minimization / local-first(ADR-0003)の必須機能で、誤取り込み・機密・「忘れられる権利」に対応する。本文を projection(sources / sources_fts)からも event ログからも消し、監査 event(SourceForgotten)だけを残す。
いつ発火するか
- 「あの誤って取り込んだ資料を消して」「取り込んだ
<X>をローカルから削除して」 - 「この source を忘れて」「忘れられる権利で消して」
- 「機密だから purge して」
何をするか(MCP tool flow)
read で対象を特定して、purge は HITL。auto-apply 経路は存在しない(ADR-0004)。不可逆な破壊操作のため、実行前に必ず対象を提示して確認を取る。
- 対象 source を特定する(
externalId不明ならsearch(FTS)/source.list/findで確定) - 消す対象(
externalId/ タイトル / 由来)と、不可逆・本文は復元できない旨をユーザーに明示して確認を取る(native framing: ホスト側で人の承認を促す)。任意でreasonを添える - 承認後、
source.forget(externalId,reason?,cascade?)を呼ぶ。1 トランザクションで次を行う:- 当該 source の
SourceObserved/SourceBodyUpdatedのbodyを event redaction(append-only の明示的例外・ADR-0026) SourceForgottenを append(監査・本文を含まない)。その reducer がsources/sources_fts行を DELETE- sidecar(
vec0/embeddings_meta/extraction_meta)を imperative に DELETE
- 当該 source の
- 派生 content の開示 + cascade(ADR-0026 R1-2): 戻り値の
derived(source 本文が流れ込んだ派生 entity = task/decision の title、decision rationale、reply draft 本文、commitment title、proposals ledger の summary、および射程外のdraft_exportパス)を必ずユーザーに提示する。引用が残ると「消えていない」ため、redact してよいか確認し、承認されたらcascade: trueで再度呼ぶ(派生 event の自由文を同じ redaction 方式で消す)。draft_exportパス・backup・host 会話履歴は射程外(開示のみ・DB 外)である旨も伝える
制約
- HITL。人の承認なしに
source.forgetを呼ばない。auto-apply しない。search/source.listは read(特定) - 不可逆。本文は projection・event ログの双方から消える(真の forget)。
projections rebuild後も purged 状態を再現(replay-stable) - links は残る: 派生 link(task→source 等)は「今は無い source 由来」という provenance として残す(
source.getは null、dangling 表示は許容)。cascade でも link 自体は消さず、派生 entity の自由文だけを redact する - 派生 content の開示は必須(R1-2):
cascadeの有無に関わらずderivedを提示する。cascade は HITL opt-in(ProposalGenerated.summaryは reject 済み候補も対象)。propose.rejectは却下時点で当該 summary を独立に redact する(R1-3) - idempotent: 既 forget の再 forget は no-op。未知 id は
missing(status で報告、throw しない)。既 forget 済み source でもcascade: trueなら派生 redaction は走る - 本 skill は手順書のみで実処理を持たない
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 53 lines · 125 tokens per session scan A fb4b80ab9e03
source-forget is a skill published in the GitHub repository ozzy-labs/suasor (0 stars, last pushed 26d ago), licensed MIT. It adds 125 tokens to every session and 1,446 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
forgetful-context-gather
Gather deep context before planning or implementing — one pass that turns a task description into a cited context pack: relevant decisions, patterns, constraints, code pointers, procedures, and explicit gaps. Runs recall from several angles, explores the graph around the strongest hits, and opens the linked material.
forgetful-recall
Recall past knowledge before working — prior decisions, solved problems, preferences, project history. Use at the start of any task, when the user references earlier work, when re-entering a project after time away, or before proposing an approach that may already have history. Covers query shaping, scoping…
Platos RAG
Ingest documents into the agent's long-term memory, then retrieve chunks semantically at turn-time. Five tools — ingest, retrieve, list, reindex, delete. Chunks are stored on the user's PlatosMemory rows with kind="rag" in metadata, so scope + user isolation comes for free.
kb-query
Answer from the knowledge bundle. Use when the user asks what they/the project know about something, wants to look something up, explore connections, or compare things that live in a knowledge/ bundle — and when any task would be informed by an existing bundle, consult it here before answering from scratch. Navigates…
agentic-retrieval
A retrieval method that lets a coding agent decide whether it needs to look something up, where to look, and whether the results are trustworthy. It can use project files, saved conversations, local memory, the internet, or code repositories.
StructuredMemoryManager
A structured long-term memory tool for storing and retrieving user preferences, past decisions, task summaries, and habits across conversations. It can search memories by meaning as well as keywords.