capture
Skill1 starsChanged 19 days agoMITView on GitHub
Record a rule the user states or a correction they make in the one checked-in place it belongs - a directory AGENTS.md, the root AGENTS.md, a design-system file, or the global CLAUDE.md - so it is never said again. Use when the user says remember this, from now on, always, never, or I already told you, or agrees to an offer to record a correction. Not for one-off taste or task instructions.
57 other projects use a version of this.
Adopted by
Most recently taken up by
- jzhao234/big-braintheir own version, first seen Nov 8, 2026
- jskswamy/skillstheir own version, first seen Nov 8, 2026
- kazemcodes/skill-treetheir own version, first seen Nov 8, 2026
- jwm-axoni/claude-workbenchtheir own version, first seen Nov 8, 2026
- ArcticFox2029/chamnantheir own version, first seen Nov 5, 2026
- andreaskelm/pm-braintheir own version, first seen Nov 1, 2026
Used with
Projects with it also use weekly, ingest and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
gaiaaiagentSkillweekly
Generate a weekly digest rolling up dailies into higher-level pattern analysis
Also in 4 projects that use this
JaimeGBASkillingest
Digest an external source (article, paper, transcript, URL, book chapter) and integrate its content into the knowledge base
Also in 8 projects that use this
AnthropicSkillbrief
Generate contextual briefings for legal work — daily summary, topic research, or incident response. Use when starting your day and need a scan of legal-relevant items across email, calendar, and contracts, when researching a specific legal question across internal sources, or when a developing situation (data breach, litigation threat, regulatory inquiry) needs rapid context.
Also in 6 projects that use this
QuixiAISkillweekly-review
Review the past week across goals, tasks, calendar, journal, and commitments, then propose the next week
Also in 5 projects that use this
dubwoahSkillask
Answer questions about the codebase without generating or modifying any code. Use when the user wants to understand how something works, find where something is defined, or explore the project structure. Invoked with /ask.
Also in 4 projects that use this
termdockSkillrecall
Retrieves cross-session memories about past decisions, lessons, and patterns. Use when user asks about prior work, past decisions, or mentions a feature. Triggers include check memory, what did we decide, how did we solve.
Also in 6 projects that use this
Other versions57 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 57
- garrytan/gbrain★ 32ksame name
- andreaskelm/pm-brain★ 235same name
- manusco/resonance★ 38same name
- nimbalyst/nimbalyst-wiki★ 27same name
- Hassaan146/claude-skills★ 18same name
- ArcticFox2029/chamnan★ 10same name
- JaimeGBA/Ion★ 9same name
- sunitghub/canon-skills★ 9same name
- philippe-desplats/second-brain★ 6same name
- GavinGreenwood/agentic-workflow-template★ 5same name
47 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository11 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- project-logSkill
- project-memorySkill
- rails-contextSkill
- rails-design-systemSkill
- rails-generatorsSkill
- rails-hotwireSkill
- rails-minitestSkill
- rails-view-componentSkill
- toolsmithSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 55 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Do not offer for:
- Distinctive: line 25
Every rule lives at exactly one level: the most specific place it applies to, and nowhere else.
- Distinctive: line 60
If breaking the rule leaves a mark a regular expression can find reliably - a forbidden class, helper, or element - propose a mechanical …
- Distinctive: line 80
Write anything without the user's approval of the exact text and target.
“Common” is measured: kept by at least 6 in 10 of the 55 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Capture
A correction the user has to repeat is a failure of the project's context, not of the user's patience. This skill turns a stated rule into one line in the one checked-in file where future sessions will read it. Follow this document exactly. Nothing is written until the user approves the exact text and target.
When to offer it
After the user corrects you or states a rule, first do what they asked. Then, if the rule should hold beyond this task, offer the capture in one short line: the rule as you would write it, and the file it would go to. Offer once per rule; if the user ignores or declines it, drop it.
Do not offer for:
- Task instructions that only apply to the current work ("make this button blue").
- One-off taste about a single screen or piece of copy ("I don't like this layout"). If the same kind of taste correction comes up a second time - in this conversation, or the user says "again" - it has become a rule: offer it then, as a design rule.
- Rules already recorded where they belong. Then the problem is that the rule was not followed - see "Already recorded" below.
1. State the rule
Write the rule as one imperative sentence, plus its reason when the user gave one or it is obvious ("Status badges never show a dot - the dot reads as a notification."). Keep the user's meaning, not their wording; one rule per capture. If the scope is unclear - this directory or the whole app, this section or every section - ask one question instead of guessing.
2. Route it to one place
Every rule lives at exactly one level: the most specific place it applies to, and nowhere else.
| The rule is about | Write it to |
| Code conventions in one directory or namespace | That directory's AGENTS.md (the nearest one above the code the rule concerns; the CLAUDE.md beside it only imports it) |
| UI wording, formats, or how a state is shown, across every section | docs/design-system/conventions.md |
| One UI section's look or behaviour | That section's docs/design-system/<section>/design.md |
| One component or page pattern | Its spec: docs/design-system/<section>/components/<name>.md or patterns/<name>.md |
| The whole project (process, tooling, architecture) | The root AGENTS.md; in a project with docs/MEMORY.md, usually a note instead - see "Projects with project memory" |
| How Claude alone should behave in this project, not other agents | The root CLAUDE.md, below its @AGENTS.md import (rare: most rules apply to every agent) |
| The user personally, in every project | The user's global ~/.claude/CLAUDE.md - see "Global rules" |
Read the target file before drafting, and follow its conventions: its sections, density, and voice. Files written by the rails-context skill describe intent, never inventories, and have size limits (a directory file reviews at 150 lines or 10 KB, the root at 200 lines or 12 KB); a capture that would push a file past its limit says so, and proposes where the file should split. Files written by rails-design-system keep their formats (the states table in conventions.md, a component spec's Contract and Rules sections).
Context files use one layout: AGENTS.md holds the content (every agent reads it), and CLAUDE.md beside it is the line @AGENTS.md (Claude Code reads only CLAUDE.md and expands the import). Write rules to AGENTS.md, never to an importing CLAUDE.md. Where a project still has the older layout (content in CLAUDE.md, AGENTS.md a symlink to it), write the rule to that CLAUDE.md, as the project does, and say once that the layout can be migrated: by a rails-context maintenance run for directory files, or the project-memory skill for the root. Do not migrate files as part of a capture.
If the right file does not exist, write to the nearest existing one and say where the rule would sit better: a directory with no context file gets its rule in the nearest ancestor (usually the root). The one exception is a design system without conventions.md: propose creating it with a one-line header and this rule as its first entry - a design-system maintenance run fills in the rest.
A correction about a component or page that is being built right now and has no spec yet is not a capture: the rule goes into that spec as part of the work, and you just make sure it does.
3. Already recorded?
Search the candidate files for the rule before drafting (grep its key terms; in a project with project memory, also the notes under docs/, leaving out docs/archive/ and docs/log/), and look for lines that say the opposite too. A contradicting line anywhere is resolved in the same capture - edited or removed, with the user's approval - never left as a second, opposite rule. If the rule is already written where it belongs, do not add it again: tell the user where it is, and that the problem is that it was not followed. Then propose the fix that makes it stick - clearer or stronger wording, moving it to a more specific file that loads when the relevant code is read, or a mechanical check (below). If it is recorded in the wrong place, propose moving it, not copying it.
4. Propose, then wait
Show the user:
- the exact line(s), as they will appear,
- the target file and the section it goes under,
- for an "already recorded" case, the existing line and the proposed change.
Then wait for the user's reply. Only a reply to this proposal is approval: "yes", "go", or an edit to the text. A reply about something else is not approval - handle it, then ask again once. Never write a capture the user did not approve.
5. Make it enforceable when a grep can catch it
If breaking the rule leaves a mark a regular expression can find reliably - a forbidden class, helper, or element - propose a mechanical check alongside the line:
- Apps with a design system (
docs/design-system/audit-rulesis read bybin/audit_design): propose a rule line<label naming the spec rule> :: <regular expression>, and for a rule that belongs to one section add:: <path prefixes>(for example:: app/views/admin/ app/components/admin/) so it never fires on other sections. Run the pattern over the paths it will cover first (grep -rnE) and report every hit; a pattern that also hits legitimate code is not ready - narrow its paths, tighten it, or drop it. The plugin's hooks enforce new rules at once; if the app's ownbin/audit_designcopy (used by CI) predatesaudit-rulessupport (grep -q audit-rules bin/audit_designfails), say that CI will only enforce the rule after a design-system maintenance run updates the copy - never hand-edit the script. - Other projects: name the linter or CI step that could carry the check (RuboCop, ESLint, a
config/ci.rbstep), and leave the choice to the user.
Existing code that already breaks the new rule is reported, never fixed silently: offer the fix as a separate step the user approves.
6. Write and commit
Write the approved text surgically: add or edit only those lines, never regenerate the file. Follow the project's commit rules. When the capture came out of work that is not committed yet, it belongs in that same commit; otherwise commit it on its own, with a message that names the rule.
Projects with project memory
When the project has docs/MEMORY.md (the project-memory protocol), follow it, including its Project overrides. A project-wide rule goes to the root AGENTS.md only when it is one of the few non-obvious hard rules every task needs; otherwise it goes to a curated note: a convention to docs/conventions/<topic>.md, a trap or hidden coupling to docs/gotchas/<topic>.md, a procedure to docs/playbooks/<topic>.md. Add it to the existing note for the topic when there is one (search by key terms and aliases); otherwise create one with the protocol's frontmatter: status: active, created and verified_at today, sources: [user, YYYY-MM-DD], and citations when the rule is about specific code. Show the note's frontmatter in the proposal too. The user's approval of the exact text is the human approval the protocol's promotion rule asks for, so an approved capture skips docs/inbox/. After writing, run project-memory index and project-memory lint. Rules for one directory, the design system, or the user personally still go where the table above says.
Global rules
A rule about how the user works in every project goes to their global ~/.claude/CLAUDE.md, which applies everywhere, so it needs a second, explicit confirmation: say plainly that it will apply to all projects, and wait for a yes to that. Follow the user's own instructions for that file (it may be a symlink into a config repository with its own commit-and-push rule). A rule that only seems global because it came up in this project goes to this project.
Never do
- Write anything without the user's approval of the exact text and target.
- Record the same rule in two places, or restate a rule that a more specific file already owns.
- Record one-off taste, task instructions, or secrets.
- Invent a rule the user did not state, or widen its scope beyond what they said.
- Silently fix existing code to match a new rule.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

