본문으로 건너뛰기
cccskills
무료GitHub에 공개

ci-guard

Use when starting work in a repository under repositories/ that may lack CI configuration. Detects missing CI workflows (GitHub Actions, GitLab CI, CircleCI) and alerts the user to add one. Skips repos marked as research-only.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구GitHubGitLab
설치 방법 보기

포함된 파일(2)

  • SKILL.md3.1 KB
  • scripts/check-ci.py2.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

CI Guard

Repositories benefit from CI, but this skill is advisory. It checks for CI configuration and alerts when it is missing, while allowing research, prototypes, and intentionally local projects.

When to Activate

  • At session start, after repository status is reported
  • When a user clones or creates a new repo under repositories/
  • When running /verify or /quality-gate in a repo without CI

How to Check

Run the check script against any repo:

uv run skills/ci-guard/scripts/check-ci.py <repo-path>

The script checks for common CI indicators and the research exemption.

CI Indicators (any one is sufficient)

ProviderPath
GitHub Actions.github/workflows/ (with at least one .yml/.yaml)
GitLab CI.gitlab-ci.yml
CircleCI.circleci/config.yml
JenkinsJenkinsfile
Travis.travis.yml
Azureazure-pipelines.yml

Research Exemption

A repo is exempt from the CI requirement if:

  1. A .research file exists in the repo root, OR
  2. pyproject.toml contains purpose = "research" in [project.optional] or as a comment marker

To mark a repo as research: touch <repo>/.research

Alert Behavior

When CI is missing and the repo is not research:

  1. Warn clearly at session start: "This repo has no CI configuration."
  2. Suggest a starter workflow based on the detected stack (Python/Node/Rust/Go)
  3. Reference the basecamp's own CI (.github/workflows/ci.yml) as a working template
  4. Do not block work - this is an alert, not a gate

Starter Templates

Python (uv-based, matching basecamp conventions)

name: CI
on:
  pull_request:
    branches: [main]
  push:
    branches: [main]

jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: astral-sh/setup-uv@v6
      - run: uv python install 3.12
      - run: uv sync --group dev
      - run: uv run ruff check .
      - run: uv run ruff format --check .

  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: astral-sh/setup-uv@v6
      - run: uv python install 3.12
      - run: uv sync --group dev
      - run: uv run pytest -v

Node.js

name: CI
on:
  pull_request:
    branches: [main]
  push:
    branches: [main]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npm ci
      - run: npm run lint
      - run: npm test

Common Mistakes

MistakeFix
Forgetting CI on quick prototype reposUse .research file for true prototypes, add CI for everything else
Adding CI but not running testsCI without tests is a false safety net - at minimum lint
Blocking the user from workingThis is an alert, not a blocker - warn and continue

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

User asks for design, planning, or approach exploration before implementation. Covers new features, components, refactors, or architecture decisions. Creates design docs and proposes approaches with trade-offs.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Use when the user asks to measure command execution time or optimize a feedback loop. Records explicit measurements and recommends faster alternatives such as unit tests versus integration tests. It is opt-in; it does not run on every command.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Team conventions for Python development — credentials, API clients, LLM response parsing, testing patterns, and data pipeline structure. Covers dotenv loading, retry logic, secret validation, and pipeline anti-patterns.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Measurement-driven code refactoring — profile before changing, measure after, keep only if metrics improve. Covers complexity reduction, extraction patterns, and bulk refactoring for mechanical changes across many files.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Scan projects for credential leaks, secrets in code, insecure patterns, LLM API key exposure, PII leakage to external AI services, and .env/.gitignore misconfigurations. Especially useful for data and API integrations, regardless of implementation language.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Use when committing or pushing changes and the repository needs a version bump. Analyzes commits using conventional commit prefixes to determine whether the next release is a major, minor, or patch increment. Also use when the user asks about versioning, release planning, or changelog generation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Benkapner/claude-code-basecamp182026년 10월 1일 업데이트

Benkapner의 스킬 모두 보기

이 스킬의 문제 신고