23seriy/devops-ai-workflows

GitHub: 23seriy/devops-ai-workflows

一套面向 DevOps/SRE 场景的 AI 代理工作流与提示词集合,覆盖集群调试、云审计、IaC 审查、CI 排障和安全扫描等日常运维任务。

Stars: 1 | Forks: 0

# devops-ai-workflows 一个不断增长的集合,包含用于日常 DevOps / SRE / 平台工作的 **AI-agent 工作流、提示词和规则**。 ## 包含内容 | 文件夹 | 用途 | 受众 | |---|---|---| | [`.claude/commands/`](./.claude/commands) | 工作流定义,由 Claude Code 自动发现为斜杠命令。 | 所有人 | | [`.claude/agents/`](./.claude/agents) | 仓库维护子代理(例如通过 `Agent` 工具调用的 `workflow-author`)。 | 维护者 | | [`.claude/settings.json`](./.claude/settings.json) | 共享项目设置:预先批准的只读 `Bash(...)` 模式 + 一个拒绝列表,即使工作流尝试执行,也会阻止集群/云变更。 | Claude Code 用户 | | [`prompts/`](./prompts) | 可重用的系统 / 任务提示词(事件分类、代码审查、复盘等) | 任何 LLM | | [`rules/`](./rules) | 可重用的安全规则集,可加载到 Claude Code(通过 `CLAUDE.md` `@`-引用)或任何其他代理中 | 任何代理 | | [`scripts/`](./scripts) | 工作流引用的独立 shell 脚本 | 任何拥有 shell 的人 | ## 可用工作流 ### Kubernetes | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [k8s-debug](./.claude/commands/k8s-debug.md) | `/k8s-debug` | 通用、只读的集群诊断,涵盖节点、Pod、工作负载、网络、存储、RBAC、事件和资源压力。 | `kubectl`。可选:`jq`、metrics-server。 | | [k8s-workload-debug](./.claude/commands/k8s-workload-debug.md) | `/k8s-workload-debug` | 深入排查单个 Deployment / StatefulSet / DaemonSet / Job / Pod:发布、规格、探针、资源、日志、网络、存储、配置。 | `kubectl`。可选:`jq`、metrics-server。 | | [k8s-rbac-audit](./.claude/commands/k8s-rbac-audit.md) | `/k8s-rbac-audit` | RBAC 风险审计 — 通配符、cluster-admin 绑定、高风险动词/资源组合、权限过高的 ServiceAccounts、匿名访问。 | `kubectl`、`jq`。可选:`kubectl-who-can`。 | | [k8s-cost-hotspots](./.claude/commands/k8s-cost-hotspots.md) | `/k8s-cost-hotspots` | 查找浪费:过度配置的工作负载、缺失的 requests/limits、闲置工作负载、孤立的 PVC/PV、闲置的 LoadBalancers。 | `kubectl`、`jq`、metrics-server。 | | [k8s-upgrade-readiness](./.claude/commands/k8s-upgrade-readiness.md) | `/k8s-upgrade-readiness` | 控制平面 / 节点升级前的预检:废弃的 API、版本偏差、PDB 缺口、过期的证书、损坏的 webhooks。 | `kubectl`。可选:`kubent` 或 `pluto`、`helm`。 | | [helm-release-debug](./.claude/commands/helm-release-debug.md) | `/helm-release-debug` | 诊断卡住或失败的 Helm release:历史记录、values 差异、hook 失败、渲染出的清单与集群对比、工作负载健康状况。 | `helm` v3、`kubectl`。可选:`jq`、`yq`。 | | [helm-chart-review](./.claude/commands/helm-chart-review.md) | `/helm-chart-review` | 审查 Helm chart 的安全性、可靠性和最佳实践:资源规格、探针、security context、PDB、反亲和性、RBAC。 | Helm chart 源码。可选:`helm` CLI。 | ### AWS / 云 | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [aws-account-audit](./.claude/commands/aws-account-audit.md) | `/aws-account-audit` | 只读的 AWS 账户安全与卫生审计:IAM、S3、EC2、RDS、CloudTrail、加密、GuardDuty、SecurityHub。 | `aws` CLI。可选:`jq`。 | | [aws-cost-quickscan](./.claude/commands/aws-cost-quickscan.md) | `/aws-cost-quickscan` | 查找 AWS 成本浪费:闲置的 EC2/RDS、未挂载的 EBS、旧快照、昂贵的日志组、NAT 数据处理、缺失的 Savings Plans。 | `aws` CLI,已启用 Cost Explorer。可选:`jq`。 | | [aws-vpc-debug](./.claude/commands/aws-vpc-debug.md) | `/aws-vpc-debug` | 诊断 VPC 连接性:跨 SG、NACL、路由表、NAT/IGW/TGW、VPC endpoints、DNS 和 flow logs 跟踪路径。 | `aws` CLI。可选:`jq`、`dig`。 | | [aws-iam-policy-review](./.claude/commands/aws-iam-policy-review.md) | `/aws-iam-policy-review` | 解释 IAM 策略并标记风险:管理员等效访问、权限提升路径、通配符操作、缺失的条件。 | `aws` CLI。可选:`jq`。 | ### IaC | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [terraform-plan-review](./.claude/commands/terraform-plan-review.md) | `/terraform-plan-review` | 解释 Terraform plan 并标记高风险变更:销毁、替换、安全组变更、IAM 变更、影响范围。 | `terraform plan` 输出。可选:`terraform` CLI、`jq`。 | ### 容器与 CI/CD | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [ci-debug](./.claude/commands/ci-debug.md) | `/ci-debug` | 诊断失败的 CI/CD 流水线:解析来自 Jenkins、GitHub Actions、GitLab CI 或 Bitbucket Pipelines 的构建日志。根本原因分析及修复建议。 | 构建日志输出。可选:仓库源码、CI 配置文件。 | | [jenkins-pipeline-review](./.claude/commands/jenkins-pipeline-review.md) | `/jenkins-pipeline-review` | 审查 Jenkinsfile / 共享库 Groovy 的安全风险、反模式、缺失的错误处理、凭据泄漏、CPS 问题,并交叉检查构建配置。 | Jenkinsfile(s) 或 `vars/*.groovy`。可选:`repositories_v2.json`。 | | [release-checklist](./.claude/commands/release-checklist.md) | `/release-checklist` | 发布前的安全关卡:在生产环境发布前检查范围、部署顺序、回滚、测试、监控和沟通。 | PR/diff 摘要。可选:测试结果、计划、diff。 | | [dockerfile-review](./.claude/commands/dockerfile-review.md) | `/dockerfile-review` | 审查 Dockerfile 的安全性、大小、缓存和最佳实践。标记易受 CVE 攻击的基础镜像、泄漏的密钥、缺失的健康检查。 | Dockerfile(s)。可选:`docker`、`trivy`。 | ### 安全 | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [secrets-leak-scan](./.claude/commands/secrets-leak-scan.md) | `/secrets-leak-scan` | 扫描 git 仓库历史记录中的泄漏密钥:API 密钥、密码、token、私钥。使用 gitleaks、trufflehog 或正则表达式回退。 | Git 仓库。可选:`gitleaks`、`trufflehog`。 | | [repo-health](./.claude/commands/repo-health.md) | `/repo-health` | 审计仓库健康状况:README、许可证、CI、分支/发布规范、被跟踪的密钥、所有权及自动化缺失。 | 本地 git 仓库。可选:`gh`、`jq`。 | ### 可观测性与事件 | 工作流 | 斜杠命令 | 描述 | 前置条件 | |---|---|---|---| | [incident-triage](./.claude/commands/incident-triage.md) | `/incident-triage` | 生产事件前 15 分钟的引导:时间线、影响范围、证据收集、缓解建议。 | 访问受影响环境的权限。 | 更多功能正在路上 — 请参阅[路线图](#roadmap)。 ## 提示词 可重用的系统提示词,你可以将其粘贴到任何 AI 代理中以执行常见的 DevOps 任务: | 提示词 | 功能 | |---|---| | [incident-commander](./prompts/incident-commander.md) | 将 AI 置于 incident-commander 模式:时间线、影响范围、行动追踪、状态更新。 | | [postmortem-writer](./prompts/postmortem-writer.md) | 根据事件记录生成无指责的复盘报告:时间线、根本原因、影响、后续行动。 | | [code-review-devops](./prompts/code-review-devops.md) | 以安全第一的 DevOps 视角审查 IaC / 流水线 / Docker / K8s 代码。 | | [pr-description](./prompts/pr-description.md) | 根据差异生成 PR 描述:是什么、为什么、如何做、测试、风险、回滚计划。 | | [explain-like-a-senior](./prompts/explain-like-a-senior.md) | 向初级工程师解释基础设施代码:它的作用、原因、注意事项以及它们是如何组合在一起的。 | | [runbook-from-incident](./prompts/runbook-from-incident.md) | 将事件记录或复盘报告转换为可重用的 runbook,包含诊断、缓解、升级和后续步骤。 | ## 规则 可重用、与代理无关的安全规则集。你可以从项目的 `CLAUDE.md` 中引用它们(例如 `@rules/kubernetes.md`),粘贴到系统提示词中,或作为上下文包含进去: | 规则文件 | 功能 | |---|---| | [devops-agent.md](./rules/devops-agent.md) | DevOps 仓库中 AI 的安全护栏:未经确认绝不修改生产环境、优先使用只读、绝不硬编码密钥、始终检查上下文、GitOps 感知、多仓库协调。 | | [terraform.md](./rules/terraform.md) | Terraform 专用:state 安全、ForceNew 属性警告、provider/module 版本固定、workspace 安全、import 工作流、`prevent_destroy` 提醒。 | | [kubernetes.md](./rules/kubernetes.md) | Kubernetes 专用:上下文验证、优先 dry-run、Helm 安全、ArgoCD/GitOps 感知、secret 处理、调试方法、RBAC 最佳实践。 | ## 脚本 被工作流引用或独立使用的独立 shell 实用工具: | 脚本 | 用法 | |---|---| | [k8s-snapshot.sh](./scripts/k8s-snapshot.sh) | `./k8s-snapshot.sh [namespace\|all] [output-dir]` — 将集群状态(节点、Pod、事件、服务、top)转储到带有时间戳的 Markdown 文件中。 | | [aws-whoami.sh](./scripts/aws-whoami.sh) | `./aws-whoami.sh [profile]` — 快速的 AWS 身份检查:调用者、区域、账户别名、组织、SSO 角色。 | | [stale-branches.sh](./scripts/stale-branches.sh) | `./stale-branches.sh [days] [--remote]` — 列出超过 N 天的 git 分支及其最后提交信息。 | | [validate-repo.sh](./scripts/validate-repo.sh) | `./scripts/validate-repo.sh` — 验证工作流 frontmatter、README 链接、脚本可执行性以及可选的 lint 检查。 | ## 使用工作流 ### 在 Claude Code 中 克隆仓库并从仓库根目录运行 Claude Code。[`.claude/commands/`](./.claude/commands) 下的每个工作流都会被自动发现为斜杠命令 — 例如,`.claude/commands/k8s-debug.md` 会作为 `/k8s-debug` 被调用,等等。当你输入时,每个文件 frontmatter 中的 `argument-hint` 会内联显示。 [`CLAUDE.md`](./CLAUDE.md) 通过 `@` 导入 [`rules/`](./rules) 下的规则文件,因此无论你何时在此目录中运行 Claude Code,Kubernetes、Terraform 和一般 DevOps 工作的安全护栏都会自动加载。 [`.claude/settings.json`](./.claude/settings.json) 预先批准了在此处开发时常用的只读 bash 模式(validate-repo、find、grep、git status/diff/log),并拒绝集群/云变更(`kubectl apply|delete|scale`、`helm install|upgrade`、`terraform apply|destroy`、`aws iam create|delete|put` 等)— 从而在工具层面强制执行仓库的只读契约。 ### 在其他 AI 代理中打开 [`.claude/commands/`](./.claude/commands) 中匹配的文件,然后: - 将相关部分粘贴到代理的聊天中,或 - 将该文件作为上下文包含进去,并要求代理遵循它。 ### 作为纯人类工作流 每个工作流只是带有 shell 命令的 Markdown。你可以在终端中自行运行这些步骤 — 无需 AI。 ## 斜杠命令 frontmatter 每个工作流都声明了两个 YAML 键: ``` --- description: One-sentence summary shown in the slash-command picker. argument-hint: "REQUIRED= [OPTIONAL=default]" --- ``` `description` 会显示在 `/`-选择器中。`argument-hint` 映射到输入部分,以便用户内联看到预期的参数。有关示例,请参阅 [CONTRIBUTING.md](./CONTRIBUTING.md)。 ## 仓库布局 ``` devops-ai-workflows/ ├── .claude/ │ ├── commands/ # Workflow definitions (Claude Code slash commands) │ ├── agents/ # Repo-maintenance subagents (workflow-author, ...) │ └── settings.json # Shared allow/deny permissions ├── prompts/ # Reusable LLM prompts ├── rules/ # Editor/agent rule files (auto-loaded via CLAUDE.md) ├── scripts/ # Standalone shell helpers ├── CLAUDE.md # Claude Code project instructions ├── CONTRIBUTING.md ├── LICENSE └── README.md ``` ## 路线图 我计划添加的想法(欢迎提交 PR): **AWS / 云** - [ ] `/aws-eks-debug` — 桥接 EKS + Kubernetes:节点组、OIDC、附加组件、服务账户的 IAM 角色 - [ ] `/aws-rds-health` — RDS/Aurora 诊断:事件、指标、参数组、复制延迟 - [ ] `/aws-lambda-debug` — Lambda 诊断:错误、节流、DLQ、VPC/ENI、CloudWatch 日志 - [ ] `/aws-ecs-service-debug` — ECS/Fargate 服务发布失败:任务事件、目标组健康状况、IAM 角色 **IaC** - [ ] `/terraform-state-debug` — 诊断锁、偏差、孤儿资源 - [ ] `/iac-secrets-scan` — 全仓库范围的硬编码密钥扫描 **容器与 CI/CD** - [ ] `/image-cve-triage` — 根据可利用性和修复可用性对 CVE 扫描器输出进行优先级排序 - [ ] `/github-actions-review` — GitHub Actions 工作流文件的安全审查 **可观测性与事件** - [ ] `/prometheus-query-helper` — 意图 → 附带理由的 PromQL - [ ] `/log-pattern-extract` — 从日志转储中聚类重复的错误 - [ ] `/postmortem` — 根据记录生成无指责的复盘报告 - [ ] `/runbook-from-incident` — 将已解决的事件转化为可重用的 runbook **网络 / 数据库** - [ ] `/dns-debug` — 多解析器 dig、传播、DNSSEC - [ ] `/tls-cert-audit` — 跨主机列表的链检查、过期、弱密码 - [ ] `/postgres-health` — 膨胀、长查询、复制延迟、缺失索引 - [ ] `/redis-health` — 内存压力、慢日志、持久化配置、驱逐模式 - [ ] `/db-migration-review` — 标记高风险的迁移模式 **安全与仓库健康** - [ ] `/cve-impact-assessment` — 给定一个 CVE,检查你的技术栈是否受到影响 - [ ] `/repo-health` — README、许可证、CI、分支保护、陈旧分支 - [ ] `/dependency-upgrade-plan` — 根据风险对过时的依赖进行分组,并建议分批处理 ## 贡献 请参阅 [CONTRIBUTING.md](./CONTRIBUTING.md)。简短版本如下: 1. 将标准工作流添加到 `.claude/commands/.md`。 2. 更新此 README 中的 **可用工作流** 表。 3. 保持工作流 **默认只读**。任何变更操作都必须是可选的(例如 `DEEP=yes` 标志),并且要明确标记。 ## 许可证 [MIT](./LICENSE) — 自由使用,感谢署名但非必须。
标签:AI代理, Cutter, LLM提示词, SRE, 云安全审计, 偏差过滤, 子域名突变, 请求拦截, 防御加固