Skip to main content
skill CX Codex

setting-up-ci — Claude Code skill for GitHub Actions CI

A skill that writes a GitHub Actions pipeline with linting, tests, type-checking and a deploy step. Useful when the repo has no CI yet.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add spencerpauly/awesome-cursor-skills --skill setting-up-ci -a claude-code
Open on GitHub

What setting-up-ci does

The skill kicks in when you ask for CI, a build pipeline or GitHub Actions. It starts by reading the project: package.json for Node.js, requirements.txt or pyproject.toml for Python, go.mod for Go, monorepo tools like Turborepo. Then it writes .github/workflows/ci.yml for whatever stack it found.

For Node.js the file gets actions/checkout@v4, actions/setup-node@v4 with npm caching, then npm ci, lint, type-check, tests and build. If there is no typecheck script in package.json, the skill adds one as tsc --noEmit. Matrix testing across Node versions and a deploy job come only on request: the deploy job runs on main pushes and waits for the build job to pass. A status badge goes into the README.

Secrets such as VERCEL_TOKEN belong in GitHub repository settings, not in the workflow file. That is the practical limit here: without the token the deploy step fails, and npm ci needs a committed lockfile.

What it helps with

  • write .github/workflows/ci.yml for the project's stack
  • add a type-check step when no typecheck script exists
  • run tests across several Node versions with a matrix
  • gate deployment on a green build from main
  • put a CI status badge in the README

Example prompts for the agent

  • set up CI with GitHub Actions for this project
  • add lint, tests and type-checking to the pipeline
  • deploy to Vercel only on pushes to main

How to install setting-up-ci

1Skills CLI (Vercel)

npx skills add spencerpauly/awesome-cursor-skills --skill setting-up-ci -a claude-code

2Manually: put the files in place

~/.claude/skills/setting-up-ci/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/setting-up-ci/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about setting-up-ci

How do I install setting-up-ci in Claude?

Run npx skills add spencerpauly/awesome-cursor-skills --skill setting-up-ci -a claude-code. The skill file then sits at ~/.claude/skills/setting-up-ci/SKILL.md.

What does setting-up-ci do?

It generates a GitHub Actions workflow: detects the stack from project files, then wires up dependency install, lint, type-check, tests and build. Deploy and version matrix are added only when you ask.

Which secrets does the deploy step need?

A deploy token such as VERCEL_TOKEN, stored in GitHub repository settings and referenced through secrets. It does not go into the workflow file itself.

Source text

SKILL.md · CC0-1.0
---
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
   ![CI](https://github.com/OWNER/REPO/actions/workflows/ci.yml/badge.svg)
   ```

## 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.

© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills

Similar skills

Everything for DevOps and infrastructure →

From the same set59

finding-dev-server-url Scans running terminal sessions for dev server URLs and localhost ports. Useful when you need to locate active local endpoints or check port collisions. CX Codex +1 425installs best-of-n-solving Runs two or three approaches to a hard problem at once, each in its own git worktree, then helps you pick the winner. CX Codex +1 425installs converting-css-to-tailwind This skill walks a plain CSS file and rewrites its rules as Tailwind utility classes in your markup. Handy when a project moves off hand-written CSS. CX Codex +1 423installs detecting-port-conflicts Detects EADDRINUSE and port conflicts in terminal output, identifies blocking processes with lsof, and kills them or picks an open port for your dev server. CX Codex +1 418installs adding-api-docs This skill writes OpenAPI/Swagger documentation for an API: endpoint schemas, request and response types, and an interactive docs page. CX Codex +1 413installs parallel-test-fixing The skill runs your test suite and assigns each failing test file to a separate subagent for parallel fixes. It helps when multiple test files break simultaneously across a codebase. CX Codex +1 412installs profiling-performance This skill profiles web application CPU performance using browser MCP tools. It captures call stacks and pinpoints slow functions causing interface lag. CX Codex +1 410installs python-tdd-with-uv Runs your agent through red-green-refactor in Python and sets the project up on uv. Useful when tests come before the code. CX Codex +1 409installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor