Cloudflare Pages
sickn33/agentic-awesome-skills
Deploy static sites and full-stack apps on Cloudflare Pages with previews, functions, and custom domains.
Publishes already-built static pages to a GitHub Pages repo under a year, year-month and slug folder layout, optimizes large images and returns the public URL.
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisher --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .claude/skills/github-pages-publisher && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .claude/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisherType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisher --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .agents/skills/github-pages-publisher && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .agents/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisher --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .cursor/skills/github-pages-publisher && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .cursor/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/artwist-polyakov/polyakov-claude-skills.git --path plugins/github-pages-publisher/skills/github-pages-publisher--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisher --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .gemini/skills/github-pages-publisher && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .gemini/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisherInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .github/skills/github-pages-publisher && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .github/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install artwist-polyakov/polyakov-claude-skills github-pages-publisher --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artwist-polyakov/polyakov-claude-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/github-pages-publisher/skills/github-pages-publisher .opencode/skills/github-pages-publisher && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "github-pages-publisher" agent skill from https://github.com/artwist-polyakov/polyakov-claude-skills/tree/main/plugins/github-pages-publisher/skills/github-pages-publisher into .opencode/skills/github-pages-publisher/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "github-pages-publisher", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
github-pages-publisherPublishes already-built static pages to a GitHub Pages repo under a year, year-month and slug folder layout, optimizes large images and returns the public URL.
This is the output stage for page artifacts made by other skills, not a design tool. It takes a built static folder, a single HTML file with local assets, or a small static site and places it at year/year-month/page-slug inside the Pages repository, never at the repo root and never skipping the date folders. It prefers index.html as the entry, keeps relative asset paths, and updates the folder deliberately when the same slug is republished.
scripts/publish_static.py does the work: it copies the artifact, shrinks oversized jpg, jpeg, png and webp files (with an image-max-kb option, 500 in the example), commits, pushes with a configured fine-grained token and prints the final public URL, which is the Pages base URL plus the dated path. scripts/optimize_images.py covers the image step, references/publish-checklist.md lists pre-publish validation, and original-size sharing can be chosen on purpose.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit b86e36d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3uvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
GitHub Pages Publisher loads about 1.2k tokens when it runs, and up to ~1.3k if it reads all its reference files. Until then it costs about 107 tokens; SKILL.md has 553 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from artwist-polyakov/polyakov-claude-skills at commit b86e36d, republished under its MIT licence (© artwist-polyakov). 553 words, ~1,195 tokens.
.claude/skills/github-pages-publisher/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Publish already-built static artifacts to a GitHub Pages repository.
This skill is the deployment/output layer for page artifacts created by other skills.
Every published artifact must go into this path shape inside the target repo:
<year>/<year>-<month>/<page-slug>/
Example:
2026/2026-03/my-landing-page/Never publish flat at repo root. Never skip the year or year-month nesting.
Input should already exist as one of these:
This skill should not do major frontend design work. It should package and publish what already exists.
index.html as entrypoint inside the target page directoryAlways return the final public URL of the artifact.
Assume GitHub Pages serves from the repo's configured Pages base URL. The final URL should be:
<pages-base-url>/<year>/<year>-<month>/<page-slug>/
or, if needed explicitly:
.../<page-slug>/index.html
Prefer the clean directory URL when it resolves correctly.
YYYYYYYY-MM<year>/<year-month>/<page-slug>/index.html normally)python3 scripts/publish_static.py --source <dir-or-html> --slug <name> [--date YYYY-MM-DD] [--image-max-kb 500]The script copies the artifact into YYYY/YYYY-MM/slug/, optimizes oversized .jpg, .jpeg, .png, and .webp images, commits, pushes, and prints the final public URL.
Image optimization is a recommendation, not a hard requirement. By default, the publishing script tries to keep each raster image under 500KB by stripping metadata, recompressing, and resizing long edges when needed.
Use --image-max-kb <kb> for a different target.
Use --keep-large-images or --image-max-kb 0 when the user explicitly needs original-size images (for example, a full-resolution infographic, map, or downloadable media asset).
The original --source artifact is not changed. Optimization happens only after files are copied into the publish repo target directory. If Pillow/uv is unavailable or optimization fails, continue publishing originals and mention the warning.
Manual console run for a prepared artifact:
uv run --with pillow python3 scripts/optimize_images.py <artifact-dir> --max-kb 500Before pushing, the agent must verify:
index.html entrypointRead config/README.md for required environment variables and URL derivation.
Read if needed:
references/publish-checklist.md — operational checklist before pushing© artwist-polyakov, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (scripts, references) in plugins/github-pages-publisher/skills/github-pages-publisher of artwist-polyakov/polyakov-claude-skills.
Open the folder on GitHubat commit b86e36d
GitHub Pages Publisher next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| GitHub Pages Publisher this skillartwist-polyakov/polyakov-claude-skills | 206 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Cloudflare Pagessickn33/agentic-awesome-skills | 47k | 2 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Great Docspymc-labs/pathmc | 132 | — | ~2.7k | Automated safety check: Pass | MIT | |
| EverOS Release WorkflowEverMind-AI/EverOS | 13k | — | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Quartz Wikiliangdabiao/llm-wiki | 156 | — | ~861 | Automated safety check: Pass | None | |
| Static Deploynexu-io/nexu | 3.3k | — | ~989 | Automated safety check: Pass | MIT |
sickn33/agentic-awesome-skills
Deploy static sites and full-stack apps on Cloudflare Pages with previews, functions, and custom domains.
pymc-labs/pathmc
Generate documentation sites for Python packages with Great Docs.
EverMind-AI/EverOS
Walks through cutting a versioned everos release: bump the version, update the changelog, tag it, and review the drafted GitHub Release page before publishing.
liangdabiao/llm-wiki
Set up and deploy Quartz v4 static site for markdown wikis. An agent skill from liangdabiao/llm-wiki.
nexu-io/nexu
Deploy static pages to nexu.space. An agent skill from nexu-io/nexu.
hyhmrright/brooks-lint
Cut a brooks-lint release: set the version in package.json, propagate it across all four plugin manifests and every version-bearing text file (README badges, docs site metadata), write the CHANGELOG…
artwist-polyakov/polyakov-claude-skills
Launches, monitors and collects results from child AI agent sessions with the agent-deck terminal session manager.
artwist-polyakov/polyakov-claude-skills
Crawls a site with Crawl4AI to audit titles, meta tags, H1s, canonicals, navigation and internal links, and to compare landing pages and competitor sites.
artwist-polyakov/polyakov-claude-skills
Shell scripts for web search and research through the Perplexity API: raw results, cited answers, background deep research and page fetching, with results cached on disk.
artwist-polyakov/polyakov-claude-skills
Publish static page artifacts to SourceCraft Sites (Yandex infrastructure, works in Russia), with advisory image optimization and an original-image path.
artwist-polyakov/polyakov-claude-skills
Searches X/Twitter through the xAI Grok API to build digests, trend reports and thread analysis, meant to surface post ideas for a Telegram channel.
artwist-polyakov/polyakov-claude-skills
Яндекс Метрика: детализация трафика по источникам и UTM-меткам, отчёты по конверсиям и поисковым системам, API-сегменты и доступы к счётчикам.
Categories
Publishes already-built static pages to a GitHub Pages repo under a year, year-month and slug folder layout, optimizes large images and returns the public URL. This is the output stage for page artifacts made by other skills, not a design tool. It takes a built static folder, a single HTML file with local assets, or a small static site and places it at year/year-month/page-slug inside the Pages repository, never at the repo root and never skipping the date folders.
GitHub Pages Publisher fits situations like: publishing a finished landing page to a GitHub Pages repository; pushing a small static site into a dated slug folder; compressing oversized images before publishing a page; getting the final public URL for a published artifact.
Run `npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a claude-code`. Or copy the skill folder (plugins/github-pages-publisher/skills/github-pages-publisher in artwist-polyakov/polyakov-claude-skills) into .claude/skills/github-pages-publisher in your project. Claude Code loads it when a task matches its description.
Run `npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a codex`. Or copy the skill folder (plugins/github-pages-publisher/skills/github-pages-publisher in artwist-polyakov/polyakov-claude-skills) into .agents/skills/github-pages-publisher in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add artwist-polyakov/polyakov-claude-skills --skill github-pages-publisher -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/github-pages-publisher, .gemini/skills/github-pages-publisher, .github/skills/github-pages-publisher and .opencode/skills/github-pages-publisher in your project.
Going by SKILL.md and its folder, GitHub Pages Publisher needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and uv). Our summary lists: Python 3 for scripts/publish_static.py; A fine-grained GitHub token with access to the Pages repository; A built static artifact with an index.html.
SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
GitHub Pages Publisher is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.2k tokens (SKILL.md is roughly 4.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 86 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with GitHub Pages Publisher: Cloudflare Pages (sickn33/agentic-awesome-skills, 47k stars), Great Docs (pymc-labs/pathmc, 132 stars), EverOS Release Workflow (EverMind-AI/EverOS, 13k stars) and Quartz Wiki (liangdabiao/llm-wiki, 156 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
artwist-polyakov (a GitHub user) maintains it in artwist-polyakov/polyakov-claude-skills, which has 206 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on September 23, 2026.
Source: artwist-polyakov/polyakov-claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.