Files
Vijay Janapa Reddi 59d328bb11 chore: move bib_mitpress_openai.py from repo root to book/tools/scripts/
Branch added bib_mitpress_openai.py at the repo root, but the convention
for these standalone bibliography utilities is book/tools/scripts/ —
that's where the predecessor it replaces (bib_verify_gemini.py) lived,
and where its sibling tools (check_bib_boundaries.py,
check_bib_qmd_integrity.py, figure_audit_gemini.py, etc.) live.

Moved the file and updated its REPO_ROOT computation from
'Path(__file__).resolve().parent' (which only worked at repo root) to
'Path(__file__).resolve().parents[3]' (correct for the new location).
Smoke-tested with --help; runs cleanly. Nothing else in the repo
references this script by path.
2026-05-05 18:38:14 -04:00
..

Scripts directory

Python and shell automation used by the Machine Learning Systems textbook tooling. Most behavior is exposed through the Book Binder CLI; this tree is the implementation layer.

Use Binder first

From the repository root:

./book/binder validate all
./book/binder maintain repo-health
./book/binder help

If your shell is already in book/, use ./binder instead of ./book/binder.

Full command list, validation options, and setup: book/docs/BINDER.md.

Direct python3 book/tools/scripts/... use is for maintenance or cases not wired into Binder yet. Prefer ./book/binder when a subcommand exists.

Subfolder docs

Area README
Content tools content/README.md
Images images/README.md
Glossary glossary/README.md
Infra / CI helpers infrastructure/README.md
Utilities utilities/README.md
Extra script notes docs/README.md

Other directories (publish/, maintenance/, testing/, socratiQ/) are documented here only where needed; see source and --help on individual scripts.

Shell entrypoints (often run outside Binder)

These are common when you need the exact script interface:

./book/tools/scripts/publish/mit-press-release.sh --vol1
./book/tools/scripts/publish/publish.sh
./book/tools/scripts/maintenance/run_maintenance.sh

Python scripts

Use Python 3. Most modules support --help:

python3 book/tools/scripts/publish/extract_figures.py --help