This skill should be used when the user says "set up CI", "create GitHub Actions", "scaffold CI pipeline", "add CI/CD", "configure continuous integration", "create test workflow", "create release workflow", "add pre-commit hooks", "set up linting pipeline", "configure ruff in CI", "configure biome in CI", "add typo checking", or wants to add, update, or customize CI/CD pipelines for their project. For initial project setup including basic CI, see init-project. Use ci-scaffolding for adding or customizing CI/CD in existing projects.
From projectnpx claudepluginhub neuromechanist/research-skills --plugin projectThis skill uses the workspace's default tool permissions.
references/ci-best-practices.mdreferences/workflow-templates.mdInventories ECC automations including jobs, hooks, connectors, MCP servers, and wrappers; audits overlaps and classifies live, broken, redundant, or missing before fixes.
Transforms Claude Code into autonomous agent system with persistent memory, scheduled operations, computer use, and task queuing. Use for continuous operation, scheduled tasks, or self-directing agent loops.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Generate and configure CI/CD pipelines following project conventions. Supports Python (ruff + pytest + coverage) and TypeScript/JavaScript (biome + bun test) stacks, with templates for testing, documentation, and release workflows.
Standard Python CI pipeline:
# .github/workflows/test.yml
name: Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v5
- run: uv sync --dev
- run: uv run ruff check .
- run: uv run ruff format --check .
- run: uv run pytest --cov --cov-report=xml
Key conventions:
astral-sh/setup-uv (not pip)# .github/workflows/test.yml
name: Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- run: bun run biome check .
- run: bun test
Key conventions:
oven-sh/setup-bun (not npm/node)Tag-based release automation:
# .github/workflows/release.yml
name: Release
on:
push:
tags: ['v*']
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
MkDocs deployment to GitHub Pages:
# .github/workflows/docs.yml
name: Docs
on:
push:
branches: [main]
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v5
- run: uv sync --group docs
- run: uv run mkdocs gh-deploy --force
Add typo checking to any project:
# In existing test.yml or standalone
- uses: crate-ci/typos@master
#!/bin/sh
# .git/hooks/pre-commit
STAGED=$(git diff --cached --name-only --diff-filter=d -- '*.py')
[ -z "$STAGED" ] && exit 0
echo "$STAGED" | xargs uv run ruff check --fix --unsafe-fixes
echo "$STAGED" | xargs uv run ruff format
git add $STAGED
#!/bin/sh
# .git/hooks/pre-commit
STAGED=$(git diff --cached --name-only --diff-filter=d -- '*.ts' '*.tsx' '*.js' '*.jsx')
[ -z "$STAGED" ] && exit 0
echo "$STAGED" | xargs bunx biome check --write
git add $STAGED
Scan for language markers (pyproject.toml, package.json, Cargo.toml, go.mod) and existing CI configuration.
Based on detection:
Create .github/workflows/ directory and write workflow files. Never overwrite existing workflows without asking.
Run act locally if available to validate workflows, or do a dry-run check of YAML syntax.