Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
artwist-polyakov avatar

Sourcecraft Publisher

  • 13 installs
  • 177 repo stars
  • Updated May 10, 2026
  • artwist-polyakov/polyakov-claude-skills

sourcecraft-publisher is a Claude skill that publishes built static page artifacts to a SourceCraft Sites repository on Yandex infrastructure.

About

This skill deploys already-built static page artifacts to a SourceCraft Sites repository, which runs on Yandex infrastructure and works from Russia. A developer uses it as the output layer after another skill produces a static page or React artifact. It clones the repo, files the artifact under a year/year-month/slug path, optionally compresses images, force-pushes, and returns the public URL.

  • Publishes already-built static artifacts to a SourceCraft Sites repo on Yandex infrastructure
  • Enforces a YYYY/YYYY-MM/page-slug directory layout and returns the final public URL
  • Optionally optimizes oversized raster images before commit, with an original-image path

Sourcecraft Publisher by the numbers

  • 13 all-time installs (skills.sh)
  • Ranked #966 of 1,435 DevOps & CI/CD skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

sourcecraft-publisher capabilities & compatibility

Requires a SourceCraft token and repo; hosting cost is on the SourceCraft/Yandex account.

Capabilities
web design
Works with
github
Use cases
devops
Pricing
Bring your own API key
From the docs

What sourcecraft-publisher says it does

Publish already-built static artifacts to a SourceCraft Sites repository. Works from Russia (Yandex infrastructure).
SKILL.md
This skill is the **deployment/output layer** for page artifacts created by other skills
SKILL.md
Always return the final public URL:
SKILL.md
npx skills add https://github.com/artwist-polyakov/polyakov-claude-skills --skill sourcecraft-publisher

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs13
repo stars177
Last updatedMay 10, 2026
Repositoryartwist-polyakov/polyakov-claude-skills

What it does

Deploy a built static page or React artifact to SourceCraft Sites under a dated directory and return its public URL.

Who is it for?

Publishing static page or digest artifacts to SourceCraft Sites from Russia.

Skip if: Doing frontend design work; it packages and publishes what already exists.

When should I use this skill?

A static page or React artifact is built and needs to be deployed to SourceCraft under a YYYY/YYYY-MM/page-slug layout.

What you get

The artifact is committed to the SourceCraft repo under the correct dated path and its final public URL is returned.

  • Public URL of the published page

By the numbers

  • 7-step publish workflow
  • default target of 500KB per raster image

Files

SKILL.mdMarkdownGitHub ↗

SourceCraft Publisher

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).

Required repository layout

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.

What this skill expects

Input should already exist as one of these:

  • a folder of built static files
  • a single HTML artifact plus local assets
  • a small static site ready to serve from a subdirectory

This skill does not do frontend design work. It packages and publishes what already exists.

Config

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.

Workflow

1. Determine the publish date bucket:

  • year = YYYY
  • year-month = YYYY-MM

2. Create or update target directory:

  • <year>/<year-month>/<page-slug>/

3. Copy artifact files into that directory 4. Verify there is an entrypoint (index.html normally) 5. Ensure .sourcecraft/sites.yaml exists in repo root 6. Commit and force-push to the SourceCraft repo 7. Return the final public URL

Publishing command

python3 scripts/publish_static.py --source <dir-or-html> --slug <name> [--date YYYY-MM-DD] [--image-max-kb 500]

The script:

  • Clones the SourceCraft repo (shallow)
  • Ensures .sourcecraft/sites.yaml config exists
  • Copies artifact into YYYY/YYYY-MM/slug/
  • Optimizes oversized .jpg, .jpeg, .png, and .webp images before commit
  • Commits and force-pushes
  • Prints the final public URL

Image optimization

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 500

Slug rules

  • use lowercase letters, digits, and hyphens
  • keep it short and descriptive
  • avoid spaces, underscores, Cyrillic

URL contract

Always return the final public URL: <SOURCECRAFT_SITE_URL>/<year>/<year>-<month>/<page-slug>/

Pre-publish validation

Before pushing, verify:

  • artifact has index.html entrypoint
  • oversized raster images are optimized when practical, unless original-size sharing is intentional
  • no absolute local paths in HTML/CSS
  • no secrets in files
  • all local assets reachable from the target folder

Safety rules

  • do not delete unrelated directories in the repo
  • only replace contents of the target page directory
  • if overwriting, say so in the result
  • do not expose the token in output, logs, or committed files

References

Read if needed:

  • references/publish-checklist.md — operational checklist before pushing

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.