Skill Distribution
Skill Distribution
ContribFlow ships agent skills under skills/ so harnesses can run the CLI workflow with minimal setup.
Available Skills
generic-agentcodexclaude-codeoss-contrib-orchestrator
The orchestrator skill is the recommended default for autonomous OSS contribution workflows.
Publishing Status
Skills are distributed through the @freakpirate/contribflow-skills npm package, this repository, and release artifacts.
Use npx or a global npm install for normal installs. Use the source installer or local release tarball while developing release changes.
Install With Script
List skills:
./scripts/install-skills.sh --list
List skills as JSON:
./scripts/install-skills.sh --list --json
Preview an install without writing files:
./scripts/install-skills.sh --target codex --skill all --dry-run
Preview as JSON for harness automation:
./scripts/install-skills.sh --target codex --skill all --dry-run --json
Install the orchestrator skill for Codex:
./scripts/install-skills.sh --target codex --skill oss-contrib-orchestrator
Install all skills for Codex:
./scripts/install-skills.sh --target codex --skill all
Install into a custom directory:
./scripts/install-skills.sh --dest /path/to/skills --skill all
Install From Release Tarball
Build release artifacts:
npm run release:artifacts
Install the local skills npm tarball:
npm install -g ./dist/release/freakpirate-contribflow-skills-0.1.1.tgz
contribflow-skills --target codex --skill oss-contrib-orchestrator
The short alias is also available:
cflow-skills --list
Install From npm
One-shot install:
npx -y @freakpirate/contribflow-skills --target codex --skill oss-contrib-orchestrator
Persistent global install:
npm install -g @freakpirate/contribflow-skills
contribflow-skills --target codex --skill oss-contrib-orchestrator
Project install:
npm i @freakpirate/contribflow-skills
npm exec contribflow-skills -- --target codex --skill oss-contrib-orchestrator
The npm package is the installer and skill bundle. Installing it as a dependency does not by itself copy skills into a harness; the installer command must run so it can write to the Codex, Claude Code, generic, or custom --dest skills directory.
Default Targets
Codex:
${CODEX_HOME:-$HOME/.codex}/skills
Claude Code:
${CLAUDE_CODE_SKILLS_DIR:-$HOME/.claude/skills}
Generic:
./.contribflow/skills
If a harness uses a different skills directory, pass --dest.
Skill Manifest
skills/manifest.json records the available skills, required files, recommended default, and install targets. Harness-specific installers can consume this manifest without scraping docs.
The current manifest schema is:
schemaVersionnameversiondefaultSkillrequiredFilesskillsinstallTargets
The installer validates the manifest before copying files and fails if a listed skill is missing SKILL.md or starter-prompt.md.
Installer QA
Run the installer smoke test:
npm run validate:skills
This validates list output, JSON dry-run output, custom-destination installs, and unknown-skill errors.
Public Action Rule
No skill may run:
cflow pr --draft --yes --json
until it has explicit human approval in the current conversation or workflow run.
Source markdown: docs/SKILL_DISTRIBUTION.md