upload-chapter-slides

Upload Chapter Slides

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "upload-chapter-slides" with this command: npx skills add panaversity/agentfactory/panaversity-agentfactory-upload-chapter-slides

Upload Chapter Slides

Upload PDF teaching slides to CDN and update chapter README with proper metadata.

Usage

/upload-chapter-slides <pdf-path> <chapter-number> [--title "Custom Title"] [--name custom-filename]

Examples

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

Workflow

Step 1: Parse Arguments

Extract from user input:

  • pdf_path : Absolute path to PDF file (required)

  • chapter_num : Chapter number (required)

  • title : Optional custom title for slides

  • name : Optional custom filename for CDN

Step 2: Resolve Chapter Path

Find chapter folder by number

ls -d apps/learn-app/docs//[0-9][0-9]-/ | grep "/${CHAPTER_NUM}-|/${CHAPTER_NUM}[0-9]-"

Extract from path:

  • Part number: First segment number (e.g., 01 from 01-General-Agents-Foundations )

  • Chapter folder: Full path to chapter directory

Pattern: apps/learn-app/docs/{NN}-{PartName}/{NN}-{ChapterName}/

Step 3: Upload PDF

Run from project root:

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}

Capture the CDN URL from output (format: https://pub-*.r2.dev/books/ai-native-dev/static/slides/part-{N}/chapter-{NN}/{filename}.pdf )

Step 4: Update README Frontmatter

Read {chapter_path}/README.md and update YAML frontmatter:

If slides: exists: Replace the entire slides block If slides: missing: Add after title: line

slides: source: "{cdn_url}" title: "{title_or_chapter_title}" height: 700

Step 5: Ensure Teaching Aid Heading

Check if ## 📚 Teaching Aid exists in README.

If missing: Add before ## What You'll Learn (or first ## heading if no What You'll Learn):

📚 Teaching Aid

What You'll Learn

If exists: No change needed.

Step 6: Report Success

✅ Chapter {N} slides uploaded

CDN URL: {cdn_url} README: {chapter_path}/README.md Title: {slides_title}

Error Handling

Error Resolution

PDF file not found Verify path exists

Chapter not found Run ls -d apps/learn-app/docs/*/ to list valid chapters

Upload failed Check apps/panaversity-fs-py/.env configuration

README missing Chapter may not be initialized

Path Constants

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 Structure Reference

Correct structure after skill runs:


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]

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

pptx

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

quiz-generator

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

ai-collaborate-teaching

No summary provided by upstream source.

Repository SourceNeeds Review