publish-to-pages

von github

Veröffentlichungen und Webinhalte auf GitHub Pages bereitstellen. Konvertiert PPTX, PDF, HTML oder Google Slides in eine Live-GitHub-Pages-URL. Übernimmt Repo-Erstellung, Datei…

npx skills add https://github.com/github/awesome-copilot --skill publish-to-pages

publish-to-pages

Publish any presentation or web content to GitHub Pages in one shot.

1. Prerequisites Check

Run these silently. Only surface errors:

command -v gh >/dev/null || echo "MISSING: gh CLI — install from https://cli.github.com"
gh auth status &>/dev/null || echo "MISSING: gh not authenticated — run 'gh auth login'"
command -v python3 >/dev/null || echo "MISSING: python3 (needed for PPTX conversion)"

poppler-utils is optional (PDF conversion via pdftoppm). Don't block on it.

2. Input Detection

Determine input type from what the user provides:

InputDetection
HTML fileExtension .html or .htm
PPTX fileExtension .pptx
PDF fileExtension .pdf
Google Slides URLURL contains docs.google.com/presentation

Ask the user for a repo name if not provided. Default: filename without extension.

3. Conversion

Large File Handling

Both conversion scripts automatically detect large files and switch to external assets mode:

  • PPTX: Files >20MB or with >50 images → images saved as separate files in assets/
  • PDF: Files >20MB or with >50 pages → page PNGs saved in assets/
  • Files >150MB print a warning (PPTX suggests PDF path instead)

This keeps individual files well under GitHub's 100MB limit. Small files still produce a single self-contained HTML.

You can force the behavior with --external-assets or --no-external-assets.

HTML

No conversion needed. Use the file directly as index.html.

PPTX

Run the conversion script:

python3 SKILL_DIR/scripts/convert-pptx.py INPUT_FILE /tmp/output.html
# For large files, force external assets:
python3 SKILL_DIR/scripts/convert-pptx.py INPUT_FILE /tmp/output.html --external-assets

If python-pptx is missing, tell the user: pip install python-pptx

PDF

Convert with the included script (requires poppler-utils for pdftoppm):

python3 SKILL_DIR/scripts/convert-pdf.py INPUT_FILE /tmp/output.html
# For large files, force external assets:
python3 SKILL_DIR/scripts/convert-pdf.py INPUT_FILE /tmp/output.html --external-assets

Each page is rendered as a PNG and embedded into HTML with slide navigation. If pdftoppm is missing, tell the user: apt install poppler-utils (or brew install poppler on macOS).

Google Slides

  1. Extract the presentation ID from the URL (the long string between /d/ and /)
  2. Download as PPTX:
curl -L "https://docs.google.com/presentation/d/PRESENTATION_ID/export/pptx" -o /tmp/slides.pptx
  1. Then convert the PPTX using the convert script above.

4. Publishing

Visibility

Repos are created public by default. If the user specifies private (or wants a private repo), use --private — but note that GitHub Pages on private repos requires a Pro, Team, or Enterprise plan.

Publish

bash SKILL_DIR/scripts/publish.sh /path/to/index.html REPO_NAME public "Description"

Pass private instead of public if the user requests it.

The script creates the repo, pushes index.html (plus assets/ if present), and enables GitHub Pages.

Note: When external assets mode is used, the output HTML references files in assets/. The publish script automatically detects and copies the assets/ directory alongside the HTML file. Make sure the HTML file and its assets/ directory are in the same parent directory.

5. Output

Tell the user:

  • Repository: https://github.com/USERNAME/REPO_NAME
  • Live URL: https://USERNAME.github.io/REPO_NAME/
  • Note: Pages takes 1-2 minutes to go live.

Error Handling

  • Repo already exists: Suggest appending a number (my-slides-2) or a date (my-slides-2026).
  • Pages enablement fails: Still return the repo URL. User can enable Pages manually in repo Settings.
  • PPTX conversion fails: Tell user to run pip install python-pptx.
  • PDF conversion fails: Suggest installing poppler-utils (apt install poppler-utils or brew install poppler).
  • Google Slides download fails: The presentation may not be publicly accessible. Ask user to make it viewable or download the PPTX manually.

Mehr Skills von github

console-rendering
github
Anleitung zur Verwendung des auf struct-Tags basierenden Konsolen-Rendering-Systems in Go
official
acquire-codebase-knowledge
github
Verwenden Sie diese Fähigkeit, wenn der Benutzer explizit darum bittet, eine bestehende Codebasis zu kartieren, zu dokumentieren oder sich in sie einzuarbeiten. Auslöser für Aufforderungen wie „diese Codebasis kartieren“, „dokumentieren…
official
acreadiness-assess
github
Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps `npx github:microsoft/agentrc…
official
acreadiness-generate-instructions
github
Generieren Sie maßgeschneiderte KI-Agenten-Anweisungsdateien über den AgentRC-Befehl. Erstellt .github/copilot-instructions.md (Standard, empfohlen für Copilot in VS…
official
acreadiness-policy
github
Helfen Sie dem Benutzer, eine AgentRC-Richtlinie auszuwählen, zu schreiben oder anzuwenden. Richtlinien passen die Bereitschaftsbewertung an, indem sie irrelevante Prüfungen deaktivieren, Auswirkungen/Stufen überschreiben, festlegen…
official
add-educational-comments
github
Füge pädagogische Kommentare zu Codedateien hinzu, um sie in effektive Lernressourcen zu verwandeln. Passt Erklärungstiefe und Ton an drei konfigurierbare Wissensstufen an: Anfänger, Fortgeschrittene und Fortgeschrittene. Fordert automatisch eine Datei an, falls keine bereitgestellt wird, mit nummerierter Liste für schnelle Auswahl. Erweitert Dateien um bis zu 125 % nur durch pädagogische Kommentare (hartes Limit: 400 neue Zeilen; 300 bei Dateien über 1.000 Zeilen). Bewahrt Dateikodierung, Einrückungsstil, Syntaxkorrektheit und...
official
adobe-illustrator-scripting
github
Schreiben, debuggen und optimieren Sie Adobe Illustrator-Automatisierungsskripte mit ExtendScript (JavaScript/JSX). Verwenden Sie dies beim Erstellen oder Ändern von Skripten, die…
official
agent-governance
github
Deklarative Richtlinien, Intent-Klassifizierung und Prüfpfade zur Kontrolle des Zugriffs und Verhaltens von KI-Agenten-Tools. Zusammensetzbare Governance-Richtlinien definieren erlaubte/blockierte Tools, Inhaltsfilter, Ratenbegrenzungen und Genehmigungsanforderungen – gespeichert als Konfiguration, nicht als Code. Semantische Intent-Klassifizierung erkennt gefährliche Eingabeaufforderungen (Datenerfassung, Privilegieneskalation, Prompt-Injection) vor der Tool-Ausführung mittels musterbasierter Signale. Der Governance-Decorator auf Tool-Ebene setzt Richtlinien bei Funktionen durch...
official