360 Secure SkillHub
360 安全技能中心

setting-up-ci

该 Skill 指导为项目创建 GitHub Actions CI 工作流:检测 Node.js、Python、Go 或 monorepo 结构,生成 ci.yml,加入 lint、测试、类型检查、构建、缓存、可选矩阵测试与 Vercel 部署,并补充类型检查脚本和 README 状态徽章。

spencerpauly
热度 0.00
最近更新 2026-10-19 06:54:50
分类:开发依赖:读写文件应用场景:DevOps / 代码生成 / 工作流 / 模板

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add spencerpauly/awesome-cursor-skills/setting-up-ci
Metadata
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:

    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:

    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:

    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:

    ![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.