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

sentinel-review

Dockerfile・Compose・Terraform・GitHub Actionsの差分または指定パスを決定的な検出器で検査し、共通Finding schemaとredaction基準で結果を返す。IaCの危険設定検査専用で、secretや一般の脆弱性はreviewerのsecurity観点を使う。

明示的な `/sentinel-review` の指定でだけ使う。

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

연동 도구GitHubTerraform
설치 방법 보기

포함된 파일(3)

  • SKILL.md6.5 KB
  • references/findings-schema.md4.3 KB
  • references/redaction.md2.0 KB

SKILL.md(원문)

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

sentinel-review

明示的に /sentinel-review が指定されたとき、対象スコープを決定する。必要なIaC確認は標準子の担当ラベルsentinel-iacへ委任し、返却されたFindingを親が正規化・統合してMarkdownレポートへ集約する。親が直接確認する場合も同じ資料とFinding形式を使う。

親は入出力の確認と結果集約のため、同directoryのreferences/findings-schema.mdの「JSON契約」節とreferences/redaction.md、全体の結果原本../code-review-guidance/references/result-contract.mdを読む。検出の専門本文は実際の評価者が読む。対象repoに契約文書があると仮定しない。

引数

  • <path> (任意): 対象パス。指定すればそのパス以下が対象。
  • --diff <base>...<head> (任意): merge-baseからheadまでの差分を明示。
  • --severity-min <level> (任意, 既定 low): severityの序列はcritical > high > medium > low > info。この閾値未満は本文から除外し、除外件数をサマリに残す。閾値以上のinfoは折りたたんで表示する。

引数を取らない場合は、親が確定した対象repoのgit statusとgit diffから変更ファイルを拾う。親が指定したscope、base/head、untrackedの境界を維持する。

手順

  1. 対象スコープを決定

    • <path> 指定があればそのパス以下を対象(Glob 展開、ただし .gitignore 尊重)。
    • --diff 指定があれば git diff --name-only <base>...<head> で対象ファイル列挙。
    • どちらも無ければ git status --porcelain と git diff --name-only で変更ファイルを取得。
    • 対象が0件なら、対象なしの理由とCOVERAGE: none、VERDICT: NOT_APPLICABLEを返す。取得失敗やscope不明は対象なしにしない。
  2. 検査担当を決める

    • 対象ファイルに以下のいずれかが含まれる場合のみ、標準子の担当ラベルsentinel-iacへ検査を委任する:
      • Dockerfile, *.dockerfile
      • docker-compose*.yml, docker-compose*.yaml, compose*.yml, compose*.yaml
      • *.tf
      • .github/workflows/*.yml, .github/workflows/*.yaml
    • 含まれなければ「IaC 対象ファイルなし」の理由とCOVERAGE: none、VERDICT: NOT_APPLICABLEを返して終了する。
  3. 検査を実行

    • 担当ラベルsentinel-iacの検査を、利用中runtimeの標準の汎用subagentとして起動する。sentinel-iacはラベルであり、agent定義名やsubagent typeとして指定しない。固定modelや固定人数をこのSkillで決めない。
    • 入力として「対象ファイルの相対パス一覧」と、findings-schema.md、redaction.mdの実体絶対pathを渡す。委任された子は受け取った専門資料を自身でReadしてから検査する。
    • 親が直接確認する場合は、親自身が上記2つの専門資料と共有結果原本../code-review-guidance/references/result-contract.mdをReadする。
  4. 応答をパース

    • 応答末尾の ```json ... ``` ブロックを 1 個だけ取り出して JSON.parse 相当の解釈を行う。
    • パースに失敗した場合はFindingを0件と結論・表示せず、検査完了とは扱わない。COVERAGE: partialまたはnone、失敗理由、未確認範囲をサマリに明記する。
  5. Finding を正規化・統合

    • references/findings-schema.mdに従って:
      • detector_id + path + start_line で重複統合
      • 未知のcategoryはmiscに倒し、変換件数を記録する
      • スキーマに合わない Finding は捨てる(捨てた件数をサマリに記録)
    • severity 降順、次に priority 降順で並び替え。
    • --severity-min未満は出力対象から外すが、除外件数をサマリへ記録する。
    • 子が返す固有Finding JSONとout_of_scope項目は保持したまま、親がこの手順でMarkdownへ集約する。担当外検出はFindingにせず、別欄で値をマスクして表示する。全体のCOVERAGE/VERDICTは共有結果原本に従って、取得失敗・未確認・Findingの有無を統合する。
    • 全体判定と他の評価結果との集約では、Findingのseverityを共有結果原本の重大度へcritical→P0、high→P1、medium→P2、low・info→P3と対応させる。表示上のseverity値は変えない。完了阻害性はP0–P3と共有結果原本の規則で判断する。
  6. Markdown レポートを出力

    • 冒頭にサマリ:
      • severity 別件数
      • スキップ/失敗エージェント
      • スキーマ違反で捨てた件数
      • 担当外の検出(out_of_scope)
    • 各 Finding は次の体裁で表示:
      • 見出し: #### [<SEVERITY>] <title>
      • 場所、原因、影響、修正案、優先度、信頼度、由来エージェント
      • suggested_patch があれば ```diff ブロック
      • recurrence_checklist は <details> で折りたたみ
    • confidence=low と、閾値以上のseverity=infoのFindingは<details>で折りたたむ。

制約

  • このスキルおよび配下のsubagentは 書き込みを実行しない。技術的にread-onlyであることは、runtimeの実効権限を確認した場合だけ主張する。修正はsuggested_patchの提示で止める。apply、deploy、workflow実行、外部pushは行わない。
  • 攻撃手順や PoC コードは生成しない。Finding の rationale は原理レベルの説明にとどめる。
  • 外部ネット呼び出し(curl、wget、git fetch等)は行わない。secret、個人情報、長いランダム文字列はreferences/redaction.mdに従いマスクする。

完了の判定

  • 対象repoで /sentinel-review を実行すると、 対象 IaC ファイルがあれば Finding 入りの Markdown が、 なければ「対象なし」が返ること。
  • sentinel-iacの応答が壊れていてもスキル全体は落とさず、サマリに失敗を記録し、未確認をPASSで補完しないこと。

리뷰

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

댓글

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

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

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

0 / 1,000자

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

같은 저장소의 스킬

agent-cli

무료

別AIのCLI呼び出しを支援する。Codex以外のCLIを使う依頼で使う。 Codexへの相談・実装委譲は codex Skill を使う。Skill運用の移行は agent-skill-migrate、配置監査は overlay-audit を使う。

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

coil398/dotfiles82026년 10월 19일 업데이트

明示されたリポジトリのSkill・Agent・呼出し・生成配布を点検または移行する。通常の実装・レビュー・調査では起動しない。一般的な指示ファイルの整理は instruction-refactor を使う。

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

coil398/dotfiles82026년 10월 19일 업데이트

明示されたCodex・CursorのSkill運用移行を、指定設計と既存点検に基づき適用する。一般的な指示ファイルの整理は instruction-refactor を使う。通常の実装依頼では起動しない。

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

coil398/dotfiles82026년 10월 19일 업데이트

デザインシステムの作成・監査・保守、デザイントークンやUIの一貫性・個性・アクセシビリティの改善に使う。

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

coil398/dotfiles82026년 10월 19일 업데이트

プロジェクトのデザインシステムを SSOT として作成・監査・更新する。トークン、デザインシステムに関わるアクセシビリティ、Typography、Motion、aesthetic direction の作業に使う。デザインシステムに紐づかない単発UI実装や個別デザインレビューには使わない。

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

coil398/dotfiles82026년 10월 19일 업데이트

ai-diary

무료

AIに日記を書かせるスキル。会話を振り返り、AI視点の自由な日記風テキストを生成して保存する。「日記書いて」「AI日記」「日記風に振り返って」「感想を日記にして」「diary」「write a diary」といった日記・感想の依頼に使う。作業改善の振り返りは /retro、知見の記録や要約は /ai-ltm を使う。

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

coil398/dotfiles82026년 10월 19일 업데이트

coil398의 스킬 모두 보기

이 스킬의 문제 신고