This skill should be used when the user asks to "convert notebook to text", "use jupytext", "version control notebooks", "share data between kernels", "set up multi-kernel project", "pair notebooks with Python files", "sync ipynb and py files", or needs multi-kernel projects (Python/R/Stata/SAS) with version-control-friendly notebooks.
View on GitHubFebruary 4, 2026
Select agents to install to:
npx add-skill https://github.com/edwinhu/workflows/blob/main/skills/jupytext/SKILL.md -a claude-code --skill jupytextInstallation paths:
.claude/skills/jupytext/## Contents - [Execution Enforcement](#execution-enforcement) - [Core Concepts](#core-concepts) - [Multi-Kernel Data Sharing](#multi-kernel-data-sharing) - [Workflow Integration](#workflow-integration) - [Project Structure](#project-structure) - [Kernel Specification](#kernel-specification) - [Quick Troubleshooting](#quick-troubleshooting) - [Additional Resources](#additional-resources) - [Best Practices](#best-practices) # Jupytext Skill Jupytext converts Jupyter notebooks to/from text formats (.py, .R, .md), enabling version control and multi-kernel workflows. ## Execution Enforcement ### IRON LAW: NO EXECUTION CLAIM WITHOUT OUTPUT VERIFICATION Before claiming ANY jupytext script executed successfully, follow this sequence: 1. **EXECUTE** using the papermill pipeline: `jupytext --to notebook --output - script.py | papermill - output.ipynb` 2. **CHECK** for execution errors (papermill exit code and stderr) 3. **VERIFY** output.ipynb exists and is non-empty 4. **INSPECT** outputs using notebook-debug skill verification 5. **CLAIM** success only after verification passes This is non-negotiable. Claiming "script works" without executing through papermill is LYING to the user. ### Rationalization Table - STOP If You Think: | Excuse | Reality | Do Instead | |--------|---------|------------| | "I converted to ipynb, so it works" | Conversion ≠ execution | EXECUTE with papermill, not just convert | | "The .py file looks correct" | Syntax correctness ≠ runtime correctness | RUN and CHECK outputs | | "I'll let the user execute it" | You're passing broken code | VERIFY before claiming completion | | "Just a conversion task, no execution needed" | User expects working notebook | EXECUTE to confirm it works | | "I can use `jupyter nbconvert --execute`" | Papermill has better error handling | USE the recommended papermill pipeline | | "I'll save the intermediate ipynb first" | Creates clutter | USE the recommended pipeline (no intermediate files) | | "Exit code 0 means