From research-engineering-skills
Keep per-directory CLAUDE.md (or AGENTS.md) files accurate and in sync with the code, and keep a Progress log in the root CLAUDE.md. Trigger after finishing a task that created, deleted, moved, or non-trivially changed files; when the user says "update CLAUDE.md", "log progress", "sync memory", "wrap up"; or at the end of a coding session before the user moves on. Also use to bootstrap CLAUDE.md files in a project that doesn't have them yet.
How this skill is triggered — by the user, by Claude, or both
Slash command
/research-engineering-skills:maintain-memory-mdThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
CLAUDE.md files in each directory are how project knowledge persists across sessions. They go stale fast if nobody updates them. This skill is the protocol for keeping them honest, lean, and useful — and for setting them up from scratch in a project that doesn't have them.
CLAUDE.md files in each directory are how project knowledge persists across sessions. They go stale fast if nobody updates them. This skill is the protocol for keeping them honest, lean, and useful — and for setting them up from scratch in a project that doesn't have them.
The root CLAUDE.md also tracks a project Progress log so any new session can read "what's happened recently" in 20 seconds.
End-of-task triggers (most common):
Bootstrap triggers:
.gitignore; ignore node_modules, .venv, dist, build, __pycache__, etc.).src/strategies/, src/data/, tests/, references/CLAUDE.md using the template below.CLAUDE.md files using the per-directory template. Keep each under 150 lines. Be honest about what you don't know — write TODO: confirm with user rather than guessing at invariants.Run through this checklist:
CLAUDE.md (if one exists). Check:
- YYYY-MM-DD — <terse summary of what changed, why>
Use today's date. One line. No marketing language.PROGRESS.md file at the same level. Move detailed architecture into docs/ and reference it from CLAUDE.md.# <Project name>
<1–3 sentence description of what this project is and what its current goal is.>
## Architecture (high level)
<Bullet list of the 3–8 top-level pieces and how they relate. Link to per-directory
CLAUDE.md files. Example:>
- `src/strategies/` — trading strategy implementations (see `src/strategies/CLAUDE.md`)
- `src/data/` — point-in-time data layer (see `src/data/CLAUDE.md`)
- `src/eval/` — evaluation gates: dry run → mini backtest → Pareto → CPCV/DSR
- `references/` — external repos and papers; consult `references/INDEX.md`
## Conventions
<Project-wide rules. Keep tight. Examples:>
- Python: polars only; no pandas. River for online learning.
- No new dependencies without asking.
- Strategies must be pure functions of `(state, data) -> orders`.
## Maintenance protocol
When finishing a task:
1. If a directory's CLAUDE.md is now stale, update it (use the maintain-memory-md skill).
2. Append a one-line entry below.
3. Keep each CLAUDE.md under 400 lines. Prune old entries to PROGRESS.md.
## Progress
- YYYY-MM-DD — <recent entry>
- YYYY-MM-DD — <older entry>
- ...
## References
Before non-trivial changes, consult `references/INDEX.md` for relevant repos and papers.
# <directory name>
**Purpose:** <1–2 sentences. What problem does this directory solve in the project?>
## Key files
- `<file>` — <one-line role>
- `<file>` — <one-line role>
(Only the ones that matter for navigation. Skip trivial files.)
## Public surface
What other parts of the project import from here. What's stable vs. internal.
## Invariants & gotchas
- <Things that must hold true>
- <Non-obvious constraints>
- <Past bugs that taught us a lesson>
## Conventions specific to this directory
<Optional. Only if they differ from project-wide.>
## Recent changes
- YYYY-MM-DD — <change>
(Keep last 5–10 entries. Older ones can be pruned.)
polars.DataFrame with columns [ts, symbol, side, qty]" beats "Strategies follow a clean interface."AGENTS.md, use that name throughout. If neither exists, use CLAUDE.md (Claude Code's default). Never create both — pick one and stick with it across the project.~/.claude/CLAUDE.md territorydocs/End your reply with:
TODO: confirm with usernpx claudepluginhub 0x0f0f0f/research-engineering-skills --plugin research-engineering-skillsProvides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.