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 reatcat/l123-harness --skill event-reviewgit clone --depth 1 https://github.com/reatcat/l123-harnessWrote 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/reatcat/l123-harness/event-review)<a href="https://agentmods.dev/skills/reatcat/l123-harness/event-review"><img src="https://agentmods.dev/badge/skills/reatcat/l123-harness/event-review/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/reatcat/l123-harness/event-review"><img src="https://agentmods.dev/badge/skills/reatcat/l123-harness/event-review.svg" alt="Reviewed on agentmods" width="80" 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.00092 | $0.01143 |
| Opus 5 | $0.00046 | $0.00571 |
| Sonnet 5 | $0.00018 | $0.00229 |
| Haiku 4.5 | $0.00009 | $0.00114 |
Grade A, and why
event-review 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 11d 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 — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Event Review —— 事件提炼与记忆升级
你是一个干净 agent:不带任何正在进行的任务上下文,只做提炼。 方法论依据:hook 只记事件不做判断;由干净 agent 定期读事件、跨时间去重归类; 人每周批量审,分流到 CLAUDE.md / L2 索引 / memory / 丢掉。
输入
- 事件日志:
.agents/events/events-*.jsonl(按月,不可变) - 水位线:
.agents/events/.last-reviewed(上次审到的行号/文件名) - 检查点:
.agents/events/checkpoints/(compact 时抢救的任务状态) - 现有条目:
CLAUDE.md、AGENTS.md、.agents/INDEX.md、.agents/knowledge/、.agents/pitfalls/、.agents/runbooks/(用来去重:已经沉淀过的不要再提)
不要读 .agents/inbox/ 之外的待审内容当成结论引用;不要读 .agents/current/(那是活跃任务,与本次提炼无关,除非它在 checkpoints 里)。
步骤
1. 读事件,归类
从水位线之后开始读。关注的事件类型:
tool_error:同一类错误(同文件/同报错特征)出现 ≥2 次 → 候选 knowledge(坑)compact+checkpoint_saved:对比 checkpoint 里的 plan/notes 与最终结果,找"被压缩掉但仍有价值"的结论gate_block:反复被门禁拦截的同类修改 → 可能是流程问题stop/session_start/session_end:用于判断任务边界,本身通常无价值
2. 写候选进 inbox(只写 inbox,不直接改任何受保护文件)
每个候选一个文件:.agents/inbox/YYYY-MM-DD-<slug>.md,头部包含:
类型: pitfall | knowledge | memory | skill-draft | discard
来源: 事件日志行 / checkpoint 路径
建议去向: CLAUDE.md 第X节 | .agents/INDEX.md 坑目录 | .agents/knowledge/xxx.md | memory(feedback) | 丢掉
3. 应用三个升级阈值
| 信号 | 阈值 | 产出 |
|---|---|---|
| 同类失败重复 | ≥2 次 | 候选 knowledge(写 inbox) |
| 用户重复说同样的话 | 第 2 次 | memory(feedback 类型,写入项目 memory) |
| 同一流程成功 | 3 次 | skill 草稿提议(只提议,绝不自动安装) |
- memory 写入:项目 memory(Claude Code 项目级 memory,feedback 类型;路径可用
/memory查看)。memory 的写入不需要门禁(它是 agent 自己的笔记),但内容必须只关于"这个 agent 怎么干活"。 - knowledge / pitfall / runbook / skill:一律先进 inbox,等用户审。
4. 陪同用户周审(逐条过)
对每个 inbox 条目,向用户说明:内容、来源证据、建议去向,请用户三选一:
- 收:按去向落盘 ——
- 写
CLAUDE.md/.agents/INDEX.md/.agents/gate.conf/ skills / settings 会触发门禁:先征得用户同意,touch <项目根>/.claude/.gate-token,再写入(令牌一次性)。 - 落盘后从 inbox 删除该条目,并在来源知识文件的"升级记录"打勾。
- 写
- 改:按用户意见修改后再落盘。
- 丢:删除条目(大多数候选应该被丢掉,这是正常的)。
5. 收尾
- 更新
.agents/events/.last-reviewed(记录已审到的事件文件与行号)。 - 向用户汇报:收了 N 条 / 丢了 M 条 / 待跟进事项。
纪律
- 跨时间去重优先于收录:同一个坑第二次出现时合并进已有条目,不新建。
- 拿不准就标"存疑"留待下次,不要强行下结论。
- 一次只审一周的量;事件太多时分批,不要一口气吞完撑爆上下文。
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.
- 11d ago First seen · 65 lines · 92 tokens per session scan A de6a5039f123
event-review is a skill published in the GitHub repository reatcat/l123-harness (4 stars, last pushed 20d ago), licensed MIT. It adds 92 tokens to every session and 1,143 once invoked, about $0.0005 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
causal-memory
Causal memory for agents — install/setup the causal-memory MCP server, then record decisions/outcomes and recall them before acting. Trigger when the user asks to install or set up causal-memory/agent memory, when causal-memory MCP tools are available and the agent faces a non-trivial decision (architecture, debugging…
memory-to-skill
Turn workflows from your MemSearch memory into reusable skills. Use when the user asks to make/create/extract/distill a skill from what they just did or from past work, review skill candidates, install a distilled skill, or 'turn this into a skill'. Manages MemSearch procedural-memory candidates under…
install-openviking-memory
Install and configure the OpenViking long-term memory plugin for OpenClaw via natural conversation. Once installed, the plugin automatically captures facts from chats and recalls relevant context before each reply (auto-capture + auto-recall, cross-session). Covers prerequisites, install through OpenClaw's plugin…
openviking-context-database
Use OpenViking from OpenClaw through @openviking/openclaw-plugin: long-term memory, session archives, resource and Agent Skill import, semantic recall, recall trace debugging, and externalized tool-result recovery. Prefer this skill when the user wants to use, query, debug, or operate OpenViking context from an…
ov-experience-memory
Retrieve and apply OpenViking Experience memories through the Agent runtime's generic OpenViking search and read tools. Use before or during executable, multi-step, or tool-based work such as coding, file or data changes, configuration, deployment, workflow execution, and failure recovery when prior operational…
openviking-memory
Recall and persist long-term memory through the OpenViking MCP tools. Use at the start of any substantive task (coding, configuration, debugging, multi-step or tool-based work) to retrieve relevant prior knowledge with find/search/read, and during or after work to persist durable facts, preferences, decisions, and…