关于 upload-chapter-slides
Upload Chapter Slides 是一项技能,可将 PDF 教学幻灯片上传至 CDN,并更新对应章节 README 中的幻灯片元数据。它还负责查找章节目录和补充教学辅助标题。
主要功能
- 01将 PDF 上传为教学幻灯片
- 02按章节编号查找目录
- 03设置幻灯片标题和文件名
- 04更新 README 幻灯片元数据
- 05缺少时添加教学辅助标题
适用场景
- 01发布课程章节幻灯片
- 02替换章节幻灯片元数据
- 03为 README 添加教学辅助部分
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ panaversity/ agentfactory --skill upload-chapter-slides安装后在 Claude Code 中输入/upload-chapter-slides确认已加载。
详细介绍
上传章节幻灯片
将 PDF 教学幻灯片上传到 CDN,并使用正确的元数据更新章节 README。
用法
/upload-chapter-slides <pdf-path> <chapter-number> [--title "Custom Title"] [--name custom-filename]
示例
# Basic usage - chapter number only
/upload-chapter-slides /path/to/slides.pdf 4
# With custom title
/upload-chapter-slides /path/to/slides.pdf 3 --title "Agentic AI - The Digital FTE"
# With custom filename (for CDN URL)
/upload-chapter-slides /path/to/slides.pdf 4 --name context-engineering-blueprint
工作流
步骤 1:解析参数
从用户输入中提取:
pdf_path:PDF 文件的绝对路径(必需)chapter_num:章节编号(必需)title:幻灯片的自定义标题(可选)name:CDN 上的自定义文件名(可选)
步骤 2:解析章节路径
# Find chapter folder by number
ls -d apps/learn-app/docs/*/[0-9][0-9]-*/ | grep "/${CHAPTER_NUM}-\|/${CHAPTER_NUM}[0-9]-"
从路径中提取:
- 部分编号:第一段中的编号(例如,从
01-General-Agents-Foundations中提取01) - 章节文件夹:章节目录的完整路径
格式:apps/learn-app/docs/{NN}-{PartName}/{NN}-{ChapterName}/
步骤 3:上传 PDF
在项目根目录运行:
cd apps/panaversity-fs-py && uv run python scripts/upload_asset.py \
--file "{pdf_path}" \
--type slides \
--part {part_num} \
--chapter {chapter_num} \
--name {name_or_default}
从输出中获取 CDN URL(格式:https://pub-*.r2.dev/books/ai-native-dev/static/slides/part-{N}/chapter-{NN}/{filename}.pdf)
步骤 4:更新 README Frontmatter
读取 {chapter_path}/README.md 并更新 YAML frontmatter:
如果存在 slides::替换整个 slides 块
如果缺少 slides::在 title: 行后添加
slides:
source: "{cdn_url}"
title: "{title_or_chapter_title}"
height: 700
步骤 5:确保教学辅助标题存在
检查 README 中是否存在 ## 📚 Teaching Aid。
如果不存在:添加到 ## What You'll Learn 之前(如果没有 What You'll Learn,则添加到第一个 ## 标题之前):
## 📚 Teaching Aid
## What You'll Learn
如果存在:无需更改。
步骤 6:报告成功
✅ Chapter {N} slides uploaded
CDN URL: {cdn_url}
README: {chapter_path}/README.md
Title: {slides_title}
错误处理
| 错误 | 解决方法 |
|---|---|
| 未找到 PDF 文件 | 确认路径存在 |
| 未找到章节 | 运行 ls -d apps/learn-app/docs/*/ 列出有效章节 |
| 上传失败 | 检查 apps/panaversity-fs-py/.env 配置 |
| README 缺失 | 章节可能尚未初始化 |
路径常量
PROJECT_ROOT: /Users/mjs/Documents/code/panaversity-official/tutorsgpt/agentfactory
DOCS_PATH: apps/learn-app/docs
UPLOAD_SCRIPT: apps/panaversity-fs-py/scripts/upload_asset.py
README 结构参考
技能运行后的正确结构:
---
sidebar_position: N
title: "Chapter N: Title"
slides:
source: "https://pub-*.r2.dev/books/ai-native-dev/static/slides/part-N/chapter-NN/filename.pdf"
title: "Slide Title"
height: 700
---
# Chapter N: Title
[intro paragraphs]
## 📚 Teaching Aid
## What You'll Learn
[content]
评论
支持 Markdown