Update README
Regenerate the auto-generated sections of README.md so they reflect what's actually in the repo.
What is auto-generated
The README has marker pairs like:
<!-- AUTO-GENERATED:tree -->
... content ...
<!-- /AUTO-GENERATED:tree -->
Everything inside the marker pair is owned by this skill and will be replaced. Everything outside is user-authored — preserve it verbatim.
Sections currently under marker control:
AUTO-GENERATED:tree— the project layout treeAUTO-GENERATED:tasks(if present) — the common-tasks table
Procedure
Inspect current state:
- List the top-level directories with
ls -la(filter out.git,.venv,__pycache__). - List
src/<module>/contents. - Parse
pyproject.tomlfordependenciesandoptional-dependencies. - Parse
Makefile.PHONYtargets.
- List the top-level directories with
Rebuild the tree as ASCII inside the
AUTO-GENERATED:treeblock. Skip:- dot-directories except
.claude/ __pycache__,.venv,.ruff_cache,.pytest_cache- files under
data/,models/,reports/figures/(just show the folder)
- dot-directories except
Rebuild the common-tasks table (if the
AUTO-GENERATED:tasksblock exists) from the Makefile's.PHONYtargets. Map each target to a one-line description from thehelptarget if present.Edit
README.mdin place. Touch nothing outside the marker pairs.Diff check:
git diff README.md. If anything outside a marker block changed, revert and report the bug — the marker logic is broken.Stage: tell the user to review and
git add README.md. Do not auto-stage.
Adding a new auto-generated section
If the user asks for a new section to be machine-managed:
- Pick a stable marker name (kebab-case):
AUTO-GENERATED:deps. - Insert the marker pair into
README.mdin the right place with placeholder content. - Extend this skill: add a "Procedure" step for the new section.
Anti-patterns
- Rewriting the whole README — touches user prose. Stick to marker blocks.
- Adding emojis or marketing copy. The README documents what exists.
- Drifting from the layout actually present on disk (e.g., listing
notebooks/if it's been deleted).