Skip to content
cccskills
FreePublished on GitHub

enrich-notebooks

Enrich Jupyter notebooks with pedagogical markdown content. Arguments: [target] [--execute] [--fix-errors] [--strict] [--consecutive] [--iterate]

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md3.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Enrich Notebooks

Add pedagogical markdown content to Jupyter notebooks.

Target: $ARGUMENTS

Arguments

  • target: Notebook path, family name (Infer, Sudoku, Tweety, Lean, GenAI, etc.), or all
  • --execute: Run notebooks and capture outputs before enriching
  • --fix-errors: Correct code errors found during execution
  • --strict: Require interpretation after EVERY code cell
  • --consecutive: Focus on consecutive code cells without markdown
  • --iterate: Use cell-iterator for iterative correction

Process

  1. Parse target - Discover notebooks to enrich

  2. For each notebook, launch a background agent:

    • Read the notebook-enricher agent instructions (.claude/agents/notebook-enricher.md)
    • Analyze structure: python scripts/notebook_tools/notebook_helpers.py list {path} --verbose
    • Find gaps programmatically (Python API):
      from scripts.notebook_helpers import NotebookHelper
      helper = NotebookHelper(path)
      gaps = helper.find_cells_needing_enrichment()      # Cells missing interpretation
      consecutive = helper.find_consecutive_code_cells()  # Code cells without markdown between
      
    • Validate placement: helper.validate_enrichment_context(cell_index) returns what's needed
    • Insert markdown cells via NotebookEdit (bottom-to-top to preserve indices)
    • Verify with: helper.get_cell_sequence(start, end) after each insertion
  3. If --execute: Execute notebooks first to capture outputs for interpretation

  4. If --fix-errors: Analyze errors, propose corrections, re-execute

  5. If --consecutive: Prioritize fixing consecutive code cells

  6. If --iterate: Use notebook-cell-iterator agent for targeted cell fixes

Agent Delegation

Use model: sonnet for enrichment agents (good balance of speed and quality). For complex domains (Probas, Lean), consider model: inherit for better reasoning.

Task(
    subagent_type="general-purpose",
    model="sonnet",
    prompt="Tu es un agent notebook-enricher. Lis .claude/agents/notebook-enricher.md. Enrichis: {path}",
    description=f"Enrich {name}",
    run_in_background=True
)

Enrichment Criteria

TypePlacementTense
Section introBEFORE codeFuture: "This code will..."
Code explanationBETWEEN code cellsPresent: "This function..."
Result interpretationAFTER code outputPast: "The results show..."
TransitionBetween sections"After seeing X, let's explore Y..."
ConclusionEnd of sectionSummary table

After Enrichment

  • Verify with git diff (expect more insertions than deletions)
  • Run the enrich-quality scanner (rule C.7, mandatory):
    git show origin/main:<nb-path> > /tmp/base.ipynb
    python scripts/notebook_tools/scan_enrich_quality.py <nb-path> --base /tmp/base.ipynb
    # 0 HIGH finding before commit: anchors must resolve at HEAD (code[N] =
    # N-th CODE cell, 0-based, final layout), accents must survive, hrefs must
    # resolve, no phantom entities, no worked solution before a TODO exercise.
    
  • Consider running /cleanup-notebooks to fix any positioning issues
  • Update MEMORY.md with lessons learned about positioning accuracy

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Cycle 30 min du secrétaire vérificateur myia-po-2028:CoursIA-3. Atteste en tiers, du plus ancien au plus récent, les PRs ouvertes sans dossier valide (chaque READY, une fois lu et approuvé par ai-01, est mergé sans attendre son cycle), et fait circuler l'information sur workspace-CoursIA-3.

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

Analyze a Slidev deck qualitatively — organ reports (structure, composition) + vision AI on rendered PNGs. Arguments: <deck_id> [--slides 1,5,10]

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

Build or improve Jupyter notebooks iteratively with quality scoring. Arguments: <new|improve|fix> <path> [--topic] [--domain] [--level] [--quality] [--max-iter]

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

Detect cell-ordering / enchainement problems in Jupyter notebooks (canonical-order slippage, misplaced or forgotten cells). Arguments: [target] [--severity HIGH|MED|LOW] [--json]

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

Clean up and reorganize markdown in enriched Jupyter notebooks. Arguments: [target] [--dry-run] [--aggressive] [--hierarchy-only]

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

Cycle de coordination ai-01 (coordinateur UNIQUEMENT — jamais sur un worker). Lit memoire + dashboards + inbox + GitHub, merge les PRs pretes, tranche les design-gates, dispatche des grains par lane, reporte. Arguments: [--dispatch] [--focus <topic>]

The English summary is being prepared. Showing the original description.

jsboige/CoursIA16Updated Oct 22, 2026

See all skills by jsboige

Report a problem with this skill