Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when the user asks to create, scaffold, or edit Jupyter notebooks (`.ipynb`) for experiments, explorations, or tutorials; prefer the bundled templates and run the helper script `new_notebook.py` to generate a clean starting notebook.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-09 | ✗→✓ | ▲ Improved | -36% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -9% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 7% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-14 | ✗→✓ | ▲ Improved | -40% | 0% |
Create clean, reproducible Jupyter notebooks for two primary modes:
Prefer the bundled templates and the helper script for consistent structure and fewer JSON mistakes.
.ipynb notebook from scratch.experiment.tutorial.bashexport CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" export JUPYTER_NOTEBOOK_CLI="$CODEX_HOME/skills/jupyter-notebook/scripts/new_notebook.py"
User-scoped skills install under $CODEX_HOME/skills (default: ~/.codex/skills).
Identify the notebook kind: experiment or tutorial. Capture the objective, audience, and what "done" looks like.
Use the helper script to avoid hand-authoring raw notebook JSON.
bashuv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \ --kind experiment \ --title "Compare prompt variants" \ --out output/jupyter-notebook/compare-prompt-variants.ipynb
bashuv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \ --kind tutorial \ --title "Intro to embeddings" \ --out output/jupyter-notebook/intro-to-embeddings.ipynb
Keep each code cell focused on one step. Add short markdown cells that explain the purpose and expected result. Avoid large, noisy outputs when a short summary works.
For experiments, follow references/experiment-patterns.md. For tutorials, follow references/tutorial-patterns.md.
Preserve the notebook structure; avoid reordering cells unless it improves the top-to-bottom story. Prefer targeted edits over full rewrites. If you must edit raw JSON, review references/notebook-structure.md first.
Run the notebook top-to-bottom when the environment allows. If execution is not possible, say so explicitly and call out how to validate locally. Use the final pass checklist in references/quality-checklist.md.
assets/experiment-template.ipynb and assets/tutorial-template.ipynb.Script path:
$JUPYTER_NOTEBOOK_CLI (installed default: $CODEX_HOME/skills/jupyter-notebook/scripts/new_notebook.py)tmp/jupyter-notebook/ for intermediate files; delete when done.output/jupyter-notebook/ when working in this repo.ablation-temperature.ipynb).Prefer uv for dependency management.
Optional Python packages for local notebook execution:
bashuv pip install jupyterlab ipykernel
The bundled scaffold script uses only the Python standard library and does not require extra dependencies.
No required environment variables.
references/experiment-patterns.md: experiment structure and heuristics.references/tutorial-patterns.md: tutorial structure and teaching flow.references/notebook-structure.md: notebook JSON shape and safe editing rules.references/quality-checklist.md: final validation checklist.Other measured skills in the registry, with their headline benchmark lift.