Skills · Claude Code · Agent Skills
state 是基础设施的记忆,plan 是契约 — 没有商量余地。
以 HCL 编写 IaC,OpenTofu 与 Terraform 同等对待:state 加密、版本固定、模块即 API,保存的 plan 经评审后只由 CI 执行。
schematize-terraform · v0.3.0bash
$ schematize install terraform不可妥协的底线
绝不为“求快”而关闭。完整清单见技能。
每个仓库只用一种工具
OpenTofu 与 Terraform 地位相同,没有默认项;每个仓库选一个,绝不混用。
每个环境一个根目录
绝不用 workspace 区分 hml 与 prd:它共享 backend、凭据和代码。
远程、带锁、加密的 state
每个环境和每个 stack 一份并受版本控制;禁止明文 state,*.tfstate 与 *.tfplan 永不入 git。
固定版本与锁文件
required_version 与 required_providers 都带 version,并提交含全部平台哈希的 .terraform.lock.hcl。
模块即 API
变量带 type、description 和 validation,输出最少,密钥标 sensitive,子模块内绝不放 provider。
密钥不写进 HCL
绝不放在 .tf、.tfvars 或 default 中;优先选不进入 state 的方式(ephemeral、运行时读取的密钥库)。
保存 plan、人工评审、由 CI 执行 apply
只应用那份 plan;prd 只通过 CI 在受保护的 environment 中执行,绝不本地 apply。
命令
安装在 .claude/commands/。随时运行 /tf-help。
/tf-ccContext compact:将上下文和清单写入归档并运行 /compact。/tf-claude在仓库根目录创建或合并常开的 IaC CLAUDE.md(不覆盖其他技能的区块)。/tf-drift检测并分类 drift(plan -detailed-exitcode),并以 PR 形式提出处理方案。/tf-handoff生成上下文交接而不压缩——会话结束或任务切换。/tf-help列出所有命令。/tf-import用 import、moved 或 removed 块接管现有资源,不手动执行 state mv。/tf-load强制加载全部规范内容:工具、结构、state、版本与模块、密钥、流程、质量和 provider。/tf-module按内部契约创建模块:带 validation 的变量、输出、不含 provider 的 versions.tf 以及测试。/tf-planplan 流程:生成保存的 plan,按正确顺序阅读并准备人工评审。从不执行 apply。/tf-review审查 IaC 仓库:运行门禁,并在有的情况下运行 fmt/validate/tflint,检查机器读不出的部分。面向 AI 智能体
无需人工即可安装。元数据见 llms.txt。
- 运行:git clone https://github.com/schematizeme/skill-terraform.git && ./skill-terraform/install.sh
- 或下载:https://github.com/schematizeme/skill-terraform/releases/latest/download/skill-terraform.zip 并解压到 .claude/skills/
- 将 assets/CLAUDE.md 复制到仓库根目录(常开规则)。
- 用 /tf-help 确认。
讨论
加载中…