Publishes built static page or React artifacts to SourceCraft Sites repo (Yandex infra, Russia) using YYYY/YYYY-MM/page-slug layout via Python script.
npx claudepluginhub artwist-polyakov/polyakov-claude-skills --plugin sourcecraft-publisherThis skill uses the workspace's default tool permissions.
Publish already-built static artifacts to a SourceCraft Sites repository. Works from Russia (Yandex infrastructure).
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Publish already-built static artifacts to a SourceCraft Sites repository. Works from Russia (Yandex infrastructure).
This skill is the deployment/output layer for page artifacts created by other skills (e.g. telegram-channel-parser digest).
Every published artifact must go into this path shape inside the target repo:
<year>/<year>-<month>/<page-slug>/
Example:
2026/2026-03/ai-digest-week/Never publish flat at repo root. Never skip the year or year-month nesting.
Input should already exist as one of these:
This skill does not do frontend design work. It packages and publishes what already exists.
Read config/README.md for required environment variables and token setup.
cp config/.env.example config/.env
Required: SOURCECRAFT_TOKEN, SOURCECRAFT_REPO, SOURCECRAFT_SITE_URL.
YYYYYYYY-MM<year>/<year-month>/<page-slug>/index.html normally).sourcecraft/sites.yaml exists in repo rootpython3 scripts/publish_static.py --source <dir-or-html> --slug <name> [--date YYYY-MM-DD]
The script:
.sourcecraft/sites.yaml config existsYYYY/YYYY-MM/slug/Always return the final public URL:
<SOURCECRAFT_SITE_URL>/<year>/<year>-<month>/<page-slug>/
Before pushing, verify:
index.html entrypointRead if needed:
references/publish-checklist.md — operational checklist before pushing