agentsclimarketplace

Managing github ci

Skill saleor/configurator/.claude/skills/managing-github-ci

Configures GitHub Actions workflows and CI/CD pipelines. Use when creating workflow YAML, managing npm releases, troubleshooting CI failures, configuring Husky hooks, or setting up release automation. Do NOT use for local development commands or application code.From its SKILL.md

Install
npx -y skills add saleor/configurator --skill managing-github-ci

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

4.8 KB, as published. Nobody here has run it

GitHub CI Automation

Overview

Guide the configuration and management of GitHub Actions workflows, release automation, and CI/CD pipelines for the Saleor Configurator project.

When to Use

  • Creating or modifying GitHub Actions workflows
  • Setting up automated releases via Changesets
  • Troubleshooting CI failures
  • Configuring pre-commit/pre-push hooks (Husky)

Quick Reference

WorkflowTriggerPurpose
test-on-pr.ymlPR to mainTypecheck, lint, test, build
release.ymlPush to mainChangesets publish to npm
changeset-bot.ymlPR opened/syncedComment on missing changesets

Project CI Architecture

.github/
├── workflows/
│   ├── test-on-pr.yml      # PR validation
│   ├── release.yml         # Automated releases
│   └── changeset-bot.yml   # Changeset automation

.husky/
├── pre-push               # Schema docs generation

.changeset/
├── config.json            # Changeset configuration
└── *.md                   # Pending changesets

Workflows

test-on-pr.yml

Validates PRs before merge. Runs: typecheck, lint, test, build. Uses pnpm 9 + Node 20.

See references/workflow-templates.md for full YAML.

Required Checks

CheckCommandPurpose
Type checkpnpm typecheckTypeScript validation
Lintpnpm lintBiome linting
Testpnpm testVitest test suite
Buildpnpm buildCompilation check

release.yml

Automated npm releases via Changesets. Triggers on push to main with concurrency control.

Uses changesets/action@v1 with pnpm publish:ci-prod. Requires GITHUB_TOKEN and NPM_TOKEN.

Release Flow

1. Developer creates changeset -> pnpm changeset
2. PR merged to main
3. Changesets action runs:
   a. If changesets exist -> Creates "Version Packages" PR
   b. If version PR merged -> Publishes to npm

changeset-bot.yml

Comments on PRs about missing changesets. Uses changesets/bot@v1.

Pre-Push Hooks (Husky)

Located in .husky/pre-push:

  • Runs pnpm generate-schema-docs before every push
  • Auto-commits schema documentation updates
  • Ensures docs stay in sync with schema changes

Changesets Configuration

Located in .changeset/config.json. Key settings: access: "public", baseBranch: "main".

TypeWhen to Use
patchBug fixes, documentation, refactoring
minorNew features, non-breaking enhancements
majorBreaking changes, API modifications

GitHub CLI

Use gh for workflow management: gh run list, gh run view <id>, gh run watch <id>, gh run rerun <id>, gh pr checks <number>.

Troubleshooting CI Failures

Reproduce Locally

FailureCommand
Type checkpnpm typecheck or npx tsc --noEmit
Lintpnpm lint then pnpm check:fix
Testspnpm test -- --filter=<file>
Buildpnpm build

Debugging Steps

  1. Check workflow logs in GitHub Actions UI
  2. Reproduce failure locally with commands above
  3. Fix the issue
  4. Push fix to PR
  5. Re-run failed jobs: gh run rerun <run-id>

npm Publish Rate Limiting

If npm publish fails: wait and retry. Check status at https://status.npmjs.org/

Secrets Management

SecretPurposeWhere Set
GITHUB_TOKENAuto-providedGitHub
NPM_TOKENnpm publishingRepository Settings > Secrets > Actions

Common Mistakes

MistakeFix
Missing --frozen-lockfileAlways use in CI installs
Using @latest action versionsPin to specific versions (@v4)
No concurrency settingAdd to prevent duplicate runs
Forgetting to add changesetRun pnpm changeset before PR

References

Skill Reference Files

Project Resources

  • .github/workflows/ - Workflow files
  • .husky/ - Git hooks
  • .changeset/ - Changeset configuration

Related Skills

  • Creating releases: See creating-changesets for changeset creation
  • Local validation: See validating-pre-commit for reproducing CI checks locally

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.