setting-up-ci
Set up a GitHub Actions CI/CD pipeline with linting, testing, type-checking, and deployment steps.
Install
npx skills add https://github.com/spencerpauly/awesome-cursor-skills/tree/main/resources/setting-up-ci
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install spencerpauly-awesome-cursor-skills@llmmart
git clone https://github.com/spencerpauly/awesome-cursor-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole spencerpauly/awesome-cursor-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Setup CI (GitHub Actions)
Use this skill when the user asks to set up CI, continuous integration, a build pipeline, or GitHub Actions.
Steps
Detect the project structure — check for
package.json(Node.js),requirements.txt/pyproject.toml(Python),go.mod(Go), or monorepo tools like Turborepo.Create
.github/workflows/ci.ymlFor a Node.js project:
name: CI on: push: branches: [main] pull_request: branches: [main] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 cache: npm - run: npm ci - run: npm run lint - run: npm run typecheck - run: npm test - run: npm run buildAdd type-checking — if
typecheckscript doesn't exist inpackage.json, add"typecheck": "tsc --noEmit".Add caching — the
actions/setup-nodecacheoption handlesnode_modules. For monorepos with Turborepo, add remote caching oractions/cachefor.turbo.Add matrix testing (optional) — if the user needs to test across Node versions or OS:
strategy: matrix: node-version: [18, 20, 22]Add deployment step (optional) — if requested, add a deploy job that runs only on
mainpushes, gated by the build job succeeding:deploy: needs: build if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npm ci && npm run build - run: npx vercel deploy --prod --token=${{ secrets.VERCEL_TOKEN }}Add status badge — add the workflow status badge to the project README:

Notes
- Keep CI fast — run lint and typecheck in parallel using separate jobs if the pipeline is slow.
- Use
npm ci(notnpm install) for deterministic installs. - Store secrets (API keys, deploy tokens) in GitHub repository settings, never in the workflow file.
Files (awesome-cursor-skills)
-
SKILL.md 2.3 KB
--- name: setting-up-ci description: Set up a GitHub Actions CI/CD pipeline with linting, testing, type-checking, and deployment steps. --- # Setup CI (GitHub Actions) Use this skill when the user asks to set up CI, continuous integration, a build pipeline, or GitHub Actions. ## Steps 1. **Detect the project structure** — check for `package.json` (Node.js), `requirements.txt` / `pyproject.toml` (Python), `go.mod` (Go), or monorepo tools like Turborepo. 2. **Create `.github/workflows/ci.yml`** For a Node.js project: ```yaml name: CI on: push: branches: [main] pull_request: branches: [main] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 cache: npm - run: npm ci - run: npm run lint - run: npm run typecheck - run: npm test - run: npm run build ``` 3. **Add type-checking** — if `typecheck` script doesn't exist in `package.json`, add `"typecheck": "tsc --noEmit"`. 4. **Add caching** — the `actions/setup-node` `cache` option handles `node_modules`. For monorepos with Turborepo, add remote caching or `actions/cache` for `.turbo`. 5. **Add matrix testing (optional)** — if the user needs to test across Node versions or OS: ```yaml strategy: matrix: node-version: [18, 20, 22] ``` 6. **Add deployment step (optional)** — if requested, add a deploy job that runs only on `main` pushes, gated by the build job succeeding: ```yaml deploy: needs: build if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npm ci && npm run build - run: npx vercel deploy --prod --token=${{ secrets.VERCEL_TOKEN }} ``` 7. **Add status badge** — add the workflow status badge to the project README: ```markdown  ``` ## Notes - Keep CI fast — run lint and typecheck in parallel using separate jobs if the pipeline is slow. - Use `npm ci` (not `npm install`) for deterministic installs. - Store secrets (API keys, deploy tokens) in GitHub repository settings, never in the workflow file.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.