Awesome-Agent-Skills-for-Empirical-Research freeze-check
Checks whether registered notebooks have current, stale, or missing outputs. Use before rendering or to verify freshness.
install
source · Clone the upstream repo
git clone https://github.com/brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/29-quarcs-lab-project20XXy/dot-claude/skills/freeze-check" ~/.claude/skills/brycewang-stanford-awesome-agent-skills-for-empirical-research-freeze-check && rm -rf "$T"
manifest:
skills/29-quarcs-lab-project20XXy/dot-claude/skills/freeze-check/SKILL.mdsource content
Check Notebook Execution Freshness
Verify that all registered notebooks have been executed and their outputs are current.
Steps
-
Read
and extract all notebook paths from_quarto.yml
.manuscript.notebooks -
For each registered notebook, check:
- Has outputs: Open the
JSON and check if any code cells have non-empty.ipynb
arraysoutputs - Last modified: File modification timestamp of the
.ipynb - Outputs age: Check
metadata timestamps in cell metadata (if present) to determine when outputs were last generatedexecution - Freeze cache: Check if
directory exists and contains cached output_freeze/notebooks/<name>/
- Has outputs: Open the
-
Determine freshness status for each notebook:
- Current: has outputs and the
has not been modified since outputs were generated.ipynb - Stale: has outputs but the
source cells have been modified more recently than the outputs.ipynb - Unexecuted: no outputs in any code cell
- Freeze only: no cell outputs but a
cache exists (Quarto will use the cache)_freeze/
- Current: has outputs and the
-
Report a summary table:
Notebook Has Outputs Last Modified Status ───────────────────────────────────────────────────────────────── notebook-01.ipynb Yes 2026-02-28 14:30 Current notebook-02.ipynb Yes 2026-03-01 09:15 Stale notebook-03.ipynb No 2026-02-25 11:00 Unexecuted -
If any notebooks are stale or unexecuted, flag them and offer to run
to re-execute all notebooks./project:execute -
If all notebooks are current, report "All notebooks are up to date."
Error handling
- If
has no notebooks registered, report "No notebooks found in _quarto.yml" and stop._quarto.yml - If a registered notebook file does not exist on disk, flag it as missing.