reflect

reflect is a skill for Claude Code, Codex from tianhanz/ears. It costs 106 tokens per session (1,588 once invoked), scanned B, original, MIT.

A session-review tool that extracts lessons from the current coding session and saves them in structured memory files.

In plain words
What is it for?
Use it at the end of a session to record changed files, commits, bugs, surprises, decisions, and patterns that should guide future work.
Why use it?
It prevents useful fixes, decisions, and bug explanations from being lost when the session ends, so the same problems are less likely to be rediscovered.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/tianhanz/ears/reflect
Any agent
npx skills add tianhanz/ears --skill reflect
Clone the repo
git clone --depth 1 https://github.com/tianhanz/ears

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for reflect

README.md
[![agentmods](https://agentmods.dev/badge/skills/tianhanz/ears/reflect.svg)](https://agentmods.dev/skills/tianhanz/ears/reflect)
Your own site
<a href="https://agentmods.dev/skills/tianhanz/ears/reflect"><img src="https://agentmods.dev/badge/skills/tianhanz/ears/reflect.svg" alt="Measured on agentmods" height="20"></a>
Per session 106 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,588 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00106 $0.01588
Opus 5 $0.00053 $0.00794
Sonnet 5 $0.00021 $0.00318
Haiku 4.5 $0.00011 $0.00159

Measured 4d ago against content hash b092e01b6d3f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade B, and why

reflect scanned grade B with 1 finding 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 4d 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.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

cat .claude/memory/pitfalls.yaml
skills/reflect/SKILL.md · 175 lines

How it starts

The opening of the file, as written. The whole thing — 175 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/reflect — Session Knowledge Extraction

Extract lessons from the current session and persist them to .claude/memory/ files. This is the mandatory feedback loop that turns one-off debugging into permanent project knowledge.

The argument provided is: $ARGUMENTS

Why This Exists

Without /reflect, knowledge dies with the session. The same bugs get re-discovered, the same patterns get re-learned, and the evolution system is an empty shell. This skill is the write-side of the memory loop (session-start protocol is the read-side).

Step 1 — Gather session context

Collect what happened this session:

# What files changed?
git diff main...HEAD --stat 2>/dev/null || git diff master...HEAD --stat

# What were the commits?
git log main...HEAD --oneline 2>/dev/null || git log master...HEAD --oneline

# Any error patterns in recent commands?
# (Review your conversation history for errors, surprises, workarounds)

Also mentally review:

  • Bugs encountered and their root causes
  • Unexpected behaviors or surprises
  • Decisions made and why
  • Patterns that worked well
  • Things that took longer than expected (and why)

Step 2 — Classify findings

For each finding, classify it into exactly one category:

Category File Criteria
Pitfall pitfalls.yaml Something broke. You now know to avoid it.
Pattern patterns.yaml A multi-step workflow that should be followed consistently.
Decision decisions.yaml An architectural choice with trade-offs worth documenting.
Review insight review-insights.yaml A valuable observation from an external review (GPT, Gemini, human).

Quality bar: Each entry must be:

  1. Actionable — tells you what to do or not do
  2. Specific — names files, functions, exact error messages
  3. Non-duplicate — check existing entries first!

Skip if: The session was routine with no new lessons. Writing "everything went fine" is noise, not knowledge.

Read the full file on GitHub · 175 lines

Changes

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.

  1. 4d ago First seen · 175 lines · 106 tokens per session scan B b092e01b6d3f

Subscribe to this mod's changes

reflect is a skill published in the GitHub repository tianhanz/ears (5 stars, last pushed 4mo ago), licensed MIT. It adds 106 tokens to every session and 1,588 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

media-ingest

Ingest video, audio, PDF, book, screenshot, and GitHub repo content into the brain. Multi-format handling with entity extraction and backlink propagation. Covers video-ingest, youtube-ingest, and book-ingest subtypes.

garrytan/gbrain · 52 tokens

mem0-oss-to-platform

Plan and then execute a migration of a project from the mem0 open-source / self-hosted SDK (the local Memory class) to the mem0 Platform / hosted / managed SDK (the MemoryClient class). Use this whenever a developer wants to move, switch, or migrate their mem0 usage off OSS/self-hosted to the hosted API — e.g.…

mem0ai/mem0 · 273 tokens

Cortex

Operate Cortex, the LifeOS memory system — the typed Knowledge Archive (People, Companies, Ideas, Research with typed related: links) plus recall of prior work sessions, ISAs, and conversations. Search, add, harvest, develop, ingest, distill, graph-navigate, recall. USE WHEN cortex, knowledge, knowledge base, search…

danielmiessler/LifeOS · 196 tokens

agent-memory

../../../engineering/agent-memory/skills/agent-memory/SKILL.md.

alirezarezvani/claude-skills · 0 tokens

memory

Use when the user asks to remember, recall, forget, update, search, or inspect durable OpenSquilla memory, including profile facts in USER.md and long-term notes in MEMORY.md or memory//.md.

opensquilla/opensquilla · 44 tokens

ha-data-stores

Map of Hope Agent's local data stores and safe read-only query workflow. Use when the user asks where Hope Agent stores data, wants to inspect sessions/messages/memory/logs/background jobs/knowledge indexes/settings, asks the model to query local app data, or debugging requires checking persisted state. Trigger…

shiwenwen/hope-agent · 115 tokens