mcpField
O
openai-jupyter-notebook

openai-jupyter-notebook

github.com/trailofbits数据与数据库52276 次安装15 周前更新
代码仓库

关于 openai-jupyter-notebook

openai-jupyter-notebook 是用于创建和重构可复现 Jupyter 笔记本的 Agent 技能,面向实验与教程。它通过模板和辅助脚本提供统一起始结构,并指导编辑与验证。

主要功能

  1. 01搭建实验笔记本框架
  2. 02搭建教程笔记本框架
  3. 03重构现有笔记本
  4. 04使用模板和辅助脚本
  5. 05遵循执行与质量检查流程

适用场景

  1. 01将分析笔记整理为结构化笔记本
  2. 02创建循序渐进的教学笔记本
  3. 03提升现有笔记本的可复现性

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/trailofbits/skills-curated --skill openai-jupyter-notebook

安装后在 Claude Code 中输入/openai-jupyter-notebook确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
experiment-patterns.md
notebook-structure.md
quality-checklist.md
tutorial-patterns.md
scripts/
new_notebook.py

详细介绍

Jupyter Notebook Skill

创建简洁、可复现的 Jupyter notebook,适用于两种主要场景:

  • 实验和探索性分析
  • 教程和教学型演示

优先使用捆绑的模板和辅助脚本,以保持结构一致并减少 JSON 错误。

适用场景

  • 从头创建新的 .ipynb notebook。
  • 将粗略笔记或脚本转换为结构化 notebook。
  • 重构现有 notebook,使其更具可复现性,也更易于浏览。
  • 构建供他人阅读或重新运行的实验或教程。

决策树

  • 如果请求是探索性、分析性或由假设驱动的,请选择 experiment。
  • 如果请求是指导性、循序渐进或面向特定受众的,请选择 tutorial。
  • 如果要编辑现有 notebook,请将其视为重构:保留原意并改进结构。

脚本和参考资料位于 {baseDir}/ 下。

工作流

  1. 明确意图。 确定 notebook 类型:experiment 或 tutorial。 记录目标、受众,以及怎样才算“完成”。

  2. 使用模板搭建框架。 使用辅助脚本,避免手动编写原始 notebook JSON。

uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \
  --kind experiment \
  --title "Compare prompt variants" \
  --out output/jupyter-notebook/compare-prompt-variants.ipynb
uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \
  --kind tutorial \
  --title "Intro to embeddings" \
  --out output/jupyter-notebook/intro-to-embeddings.ipynb
  1. 用小而可运行的步骤填充 notebook。 每个代码单元格只专注于一个步骤。 添加简短的 Markdown 单元格,说明目的和预期结果。 如果简短摘要就能说明问题,请避免冗长、嘈杂的输出。

  2. 应用合适的模式。 对于实验,请遵循 references/experiment-patterns.md。 对于教程,请遵循 references/tutorial-patterns.md。

  3. 安全地编辑现有 notebook。 保留 notebook 结构;除非有助于改善从上到下的叙述逻辑,否则不要调整单元格顺序。 优先进行有针对性的修改,而非彻底重写。 如果必须编辑原始 JSON,请先查看 references/notebook-structure.md。

  4. 验证结果。 如果环境允许,请从头到尾运行 notebook。 如果无法执行,请明确说明,并指出如何在本地验证。 使用 references/quality-checklist.md 中的最终检查清单。

模板和辅助脚本

  • 模板位于 assets/experiment-template.ipynb 和 assets/tutorial-template.ipynb。
  • 辅助脚本会加载模板、更新标题单元格,并写入 notebook。

脚本路径:

  • $JUPYTER_NOTEBOOK_CLI(安装后的默认路径:{baseDir}/scripts/new_notebook.py)

临时文件和输出约定

  • 将中间文件放在 tmp/jupyter-notebook/ 下;完成后删除。
  • 在此仓库中工作时,将最终产物写入 output/jupyter-notebook/ 下。
  • 使用稳定且描述性强的文件名(例如 ablation-temperature.ipynb)。

依赖(仅在需要时安装)

优先使用 uv 管理依赖。

用于在本地执行 notebook 的可选 Python 包:

uv pip install jupyterlab ipykernel

捆绑的框架搭建脚本仅使用 Python 标准库,无需额外依赖。

环境

无需设置环境变量。

参考资料索引

  • references/experiment-patterns.md:实验结构和启发式方法。
  • references/tutorial-patterns.md:教程结构和教学流程。
  • references/notebook-structure.md:notebook JSON 结构和安全编辑规则。
  • references/quality-checklist.md:最终验证清单。

不适用场景

评论

支持 Markdown