本文へ移動
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.

インストール方法を見る

含まれるファイル(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

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

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-basecamp172026年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-basecamp172026年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-basecamp172026年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-basecamp172026年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-basecamp172026年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-basecamp172026年10月1日 更新

Benkapner のスキルをすべて見る

このスキルの問題を報告する