Goal
SkillDev toolsImplement a Jupyter notebook from an outline description (including interactive notebooks with widgets)
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Goal skill
What this skill tells your AI
The instructions your AI receives, as published by causify-ai/helpers in .claude/skills/notebook.implement_outline/SKILL.md and read by ahel’s review.
- Input: A
notebook_outline.<tag>.mdoutline file describing each notebook cell (created via.claude/skills/notebook.create_outline/SKILL.md) - Outputs:
.ipynbfile: Fully functional Jupyter notebook with working code, visualizations, and interactive widgets.pyfile: A Python file paired usingjupytextto the.ipynbusing py:percent*_utils.pyfile: Reusable helper functions for the notebook code
- Purpose: Implement the pedagogical design as a fully executable, interactive notebook
- Each visualization follows the triplet structure:
- Pre-visualization markdown (goal + plot descriptions under each title)
- Code cell (visualization / interactive widget)
- Post-visualization markdown (key observations)
Core Workflow
- Understand the outline: Review each cell's Purpose, Display, and (if present) Widgets and Key Insights
- Implement utility functions: Write reusable widget and visualization code
in
*_utils.py - Create notebook cells: Add markdown cells (context) and code cells (widget calls) to the notebook
- Follow the separation principle: Utilities contain implementation; notebook contains only function calls
Key Conventions
-
Follow
.claude/skills/notebook.rules.md: General notebook conventions and structure, especially:## Visualization Cell Triplet Details: Pre-viz and post-viz markdown cells# Interactive Cells: Widget patterns and comments panel conventions
-
Follow outline cell format from
.claude/skills/notebook.create_outline/SKILL.md -
Follow
.claude/skills/coding.rules.mdfor Python code in*_utils.pyand in the Python cells in.ipynbfile -
Follow
.claude/skills/notebook.rules.md# Utilities vs. Notebook Responsibilitiesfor organizing utility files and notebooks
Code Organization
- Follow the section
Utilities vs. Notebook Responsibilitiesfrom the file.claude/skills/notebook.rules.mdfor organizing utility files and notebook cells
Reference Templates
-
Study these before implementing; they establish the quality bar and idioms
.claude/templates/notebook.template.py- End-to-end notebook covering both static and interactive cell types
.claude/templates/notebook_utils_template.py- Paired utilities file with widget creation, state management, and visualization functions
-
Examples of notebooks
msml610/tutorials/Lesson94_Information_Theory_utils.py- Production example with complex interactive patterns (especially
plot_joint_entropy_interactive())
Implementation Patterns
Cell Structure in Notebook
- Each visualization in the outline becomes three notebook cells (triplet):
- Markdown cell (pre-viz): Goal + plot descriptions (under each title)
- Code cell: Visualization / interactive widget with comments panel containing only variable state
- Markdown cell (post-viz): Key observations and what to learn
- Make sure to follow the section
## Visualization Cell Triplet Detailsfrom the file.claude/skills/notebook.rules.md
Simple Interactive Widgets
- Follow the conventions in
.claude/skills/notebook.rules.md## Simple Interactive Widgets
Complex Interactive Widgets
- Follow the conventions in
.claude/skills/notebook.rules.md## Complex Interactive Widgets
Sync with Jupytext
- After all modifications are complete, sync the paired
.pyfile with Jupytext following the conventions in# Setup and Initialization→## Utilities vs. Notebook Responsibilitiesin.claude/skills/notebook.rules.md
Signals
- GitHub stars
- 145
- Forks
- 159
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
notebook-implement-outline- Source
- github.com/causify-ai/helpers