Help us improve
Share bugs, ideas, or general feedback.
From pub-pipeline
This skill should be used when the user asks to "publish my package", "publication pipeline", "get this published", "how do I publish this", or mentions publication without specifying an ecosystem. It detects the project type (R package or Python package) and routes to the appropriate ecosystem-specific publication skill.
npx claudepluginhub queelius/claude-anvil --plugin pub-pipelineHow this skill is triggered — by the user, by Claude, or both
Slash command
/pub-pipeline:pub-pipelineThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Detect the current project type and route to the appropriate publication workflow.
Creates and publishes distributable scientific Python packages using pyproject.toml, src layout, Hatchling, metadata, CLI entry points, and PyPI following community best practices.
Sets up pubm in JS/TS and Rust projects: analyzes structure, installs pubm, configures registries (npm, jsr, crates.io, private), and integrates CI workflows.
Sets up GitHub Actions or GitLab CI pipelines for Python packages, including ruff linting, ty type checking, pytest testing with coverage, and automated PyPI publishing on git tags.
Share bugs, ideas, or general feedback.
Detect the current project type and route to the appropriate publication workflow.
Check the current working directory for project type indicators:
| Check | Project Type | Route To |
|---|---|---|
DESCRIPTION file with Package: field | R package | /r-publish (the r-pub-pipeline skill) |
pyproject.toml or setup.py or setup.cfg | Python package | /pypi-publish (the pypi-publish skill) |
| Multiple types detected | Ambiguous | Ask the user which workflow to run |
| None detected | Unknown | Ask the user what they want to publish |
Search the current directory for:
DESCRIPTION (R package indicator — verify it contains a Package: field)pyproject.toml, setup.py, setup.cfg (Python package indicators)Read .claude/pub-pipeline.local.md if it exists. If missing, inform the user and offer to create one from the template at ${CLAUDE_PLUGIN_ROOT}/docs/user-config-template.md.
Based on detection, invoke the appropriate ecosystem skill. If the project type is ambiguous (e.g., both DESCRIPTION and pyproject.toml exist), present options to the user and ask which publication workflow to run.
| Ecosystem | Skills | Commands |
|---|---|---|
| R packages | cran-audit, joss-audit, joss-draft, r-pub-pipeline | /cran-audit, /joss-audit, /joss-draft, /r-publish |
| Python packages | pypi-publish | /pypi-publish |
${CLAUDE_PLUGIN_ROOT}/docs/user-config-template.md — Shared user config template