Operational readiness checklist (security, cost, legal, data design, performance, incident response, LLM integration defenses) applied when a change touches deployment, infrastructure, external services, secrets, or user data.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add Bizuayeu/Plugins-Weave --skill ops-rules --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Ops Rules?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/bizuayeu-ops-rules)More formats (shields.io, HTML) on the badges page.
---
name: ops-rules
description: Operational readiness checklist (security, cost, legal, data design, performance, incident response, LLM integration defenses) applied when a change touches deployment, infrastructure, external services, secrets, or user data.
paths:
- "**/Dockerfile"
- "**/docker-compose.*"
- "**/railway.*"
- "**/Procfile"
- "**/.github/workflows/*"
- "**/deploy*"
- "**/infrastructure/**"
- "**/vercel.json"
- "**/.vercel/**"
- "**/.env*"
- "**/scripts/register*"
---
# Operations Guidelines
デプロイ・インフラ・運用に関わる作業時の確認事項。
開発方法論は同梱の dev-rules 規範を参照。
詳細チェックリストは [エンジニア歴20年の私が、素人バイブコーディング勢に物申す(Qiita)](https://qiita.com/Akira-Isegawa/items/00f23d206c504db2ac3b) を参照。
---
## 1. セキュリティ
- **シークレットをコードに直書きしない** — 環境変数 or シークレット管理サービスを使う
- **認証 ≠ 認可** — ログインできることと、他人のデータにアクセスできないことは別問題(IDOR)
- **入力は全て疑う** — サーバーサイドバリデーション必須、クライアント側は UX のためだけ
- **デフォルト設定を信用しない** — PaaS/BaaS のデフォルトは「開発者が楽」であって「安全」ではない
- **ログを残す** — 認証イベント、エラー、異常アクセスは記録する。ログにシークレットを含めない
- **本番でスタックトレースを返さない** — テーブル名・ファイルパス・SQL が漏れる。本番は抽象的なエラーメッセージのみ
- **AI 提案ライブラリを鵜呑みにしない** — ハルシネーション・タイポスクワッティングのリスク。npm/PyPI で実在確認、最終更新・スター数・ライセンスを検証
## 2. コスト管理
- **課金単位を事前に把握する** — リクエスト課金か、時間課金か、ストレージ課金か
- **予算アラートをコードより先に設定する**
- **リリース後に定期確認する** — 想定外のスパイクは早期発見
## 3. 法的確認
- **外部データ取得時** — スクレイピング可否、利用規約、robots.txt を確認
- **個人情報を扱う場合** — 個人情報保護法への準拠、プライバシーポリシーの必要性
- **OSSライセンス** — 依存ライブラリのライセンス互換性を確認
## 4. データ設計(永続性の判断)
使い捨てでないなら:
- **スキーマ設計を先にやる** — 後からの変更コストは指数関数的に増える
- **トランザクション境界を明確にする** — 部分的な書き込みが起きない設計
- **冪等性を確保する** — リトライで壊れない API 設計
- **開発環境と本番環境を分離する**
## 5. 性能見積もり
- **N+1 問題** — ORM 利用時は特に注意、クエリログで確認
- **インデックス設計** — 頻繁な検索条件には事前にインデックスを張る
- **想定負荷を明示する** — 「何人が同時に使うか」を設計前に確認
## 6. 障害対応
障害発生時の優先順位:
1. **止める** — 被害拡大を防ぐ
2. **記録する** — ログ、スクリーンショット、タイムスタンプ
3. **通知する** — 影響範囲を関係者に伝える
4. **原因を究明する** — 推測ではなくログから追う
5. **仕組みで再発防止する** — 人の注意力に頼らない
## 7. LLM 統合アプリの防御
LLM を組み込んだアプリは通常の Web セキュリティに加えて以下を必要とする:
- **プロンプトフェンシング** — ユーザー入力を XML タグ等で隔離し「データとして扱え」と LLM に指示
- **プロンプトインジェクション検知** — role override、system prompt 抽出、credential 要求をパターン検出。
ブロックせずフラグのみ(偽陽性リスク回避、本来の防御は fencing 側)
- **出力漏洩スキャン** — LLM 応答に API キー、環境変数名、system prompt 本文が混入していないか
post-generation でチェック
- **レート制限** — LLM 呼び出しは IP/ユーザー単位で sliding window 制限(コスト暴走と DoS 両方の防御)
- **入力正規化** — 全角/半角、Unicode 異体字、サロゲートペアを正規化してから validation
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!