🏗️ Terraform Cloud — 基于 REST API 管理工作空间、运行、计划、状态和变量
v1.0.0Terraform Cloud 技能通过 REST API 管理工作空间、运行、计划、状态和变量。提供 CLI 工具进行列表、创建、更新和删除资源操作,输出 JSON 格式,支持人可读格式。需要 TFC_TOKEN 和 TFC_ORG 环境变量进行身份验证,兼容 Python 3.10+ 标准库,无依赖。
0· 261·0 当前·0 累计
安全扫描
OpenClaw
可疑
medium confidence该技能主要符合 Terraform Cloud 的目的,但运行时脚本读取未记录的 .env 回退值,并包含 API 路径/占位符 bug,应在使用前验证行为。
评估建议
该技能似乎是 Terraform Cloud CLI,只要求 TFC_TOKEN 和 TFC_ORG(如预期)。但是:1) 安装前审查 scripts/terraform-cloud.py 脚本 — 它将从 $WORKSPACE/.env 或 ~/.openclaw/workspace/.env 读取未记录的 .env 回退值。2) 验证脚本的请求路径(它留下 '{org}' 占位符,可能不替换),首先在非生产数据上测试。3) 使用最小权限 TFC 令牌(有限范围),避免将高权限令牌放在共享 .env 文件中。4) 如果不信任发布者,请不要安装 — 或在隔离环境/VM 中手动运行 CLI,并在基本操作期间检查行为。...详细分析 ▾
✓ 用途与能力
名称/描述、所需环境变量(TFC_TOKEN、TFC_ORG)以及包含的 Python CLI 都与 Terraform Cloud REST API 客户端保持一致。
⚠ 指令范围
SKILL.md 指示运行捆绑的 CLI 并记录 TFC_TOKEN/TFC_ORG,但如果环境变量缺失,脚本还将尝试从工作空间路径(WORKSPACE 环境变量或 ~/.openclaw/workspace/.env)读取 .env 文件 — 此文件访问未记录。脚本还接受请求帮助器中的完整 URL,并包含几个占位符/格式化 bug(例如,路径中的 '{org}' 未替换),这影响了请求的形成方式。
✓ 安装机制
无安装规格 — 该技能仅包含指令和单个 Python 标准库脚本。从安装/执行来源的角度看,这是低风险的。
⚠ 凭证需求
仅 TFC_TOKEN 和 TFC_ORG 对 Terraform Cloud 是所需和适当的,但脚本将读取 WORKSPACE 环境变量和 .env 文件作为回退。该未记录的文件系统访问增加了攻击面(它将解析找到任何 .env 来提取声明的变量)。
✓ 持久化与权限
该技能不总是启用,并且不请求超出读取可选 .env 文件的系统范围更改或权限;它不修改其他技能或代理配置。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.0.02026/3/7
Terraform Cloud 技能的初始发布。- 通过 REST API 管理 Terraform Cloud 中的工作空间、运行、计划、状态、变量和团队。- 提供 CLI 工具用于常见操作:列表、创建、更新和删除资源。- 默认输出 JSON,支持人可读格式选项。- 需要 TFC_TOKEN 和 TFC_ORG 环境变量进行身份验证。- 无依赖;兼容 Python 3.10+ 标准库。
● 无害
安装命令 点击复制
官方npx clawhub@latest install terraform-cloud
镜像加速npx clawhub@latest install terraform-cloud --registry https://cn.clawhub-mirror.com
技能文档
Terraform Cloud — 基于 REST API 管理工作空间、运行、计划、状态和变量
需求
| 变量 | 必需 | 描述 |
|---|---|---|
TFC_TOKEN | ✅ | 从 app.terraform.io 获取的 API 令牌 |
TFC_ORG | ✅ | 组织名称 |
# 列出组织
python3 {{baseDir}}/scripts/terraform-cloud.py orgs
# 列出工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspaces --search[name] <值>
# 获取工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspace-get id <值>
# 创建工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspace-create --name <值> --auto-apply <值> --terraform-version <值>
# 删除工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspace-delete id <值>
# 锁定工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspace-lock id <值> --reason <值>
# 解锁工作空间
python3 {{baseDir}}/scripts/terraform-cloud.py workspace-unlock id <值>
# 列出运行
python3 {{baseDir}}/scripts/terraform-cloud.py runs id <值>
所有命令
| 命令 | 描述 |
|---|---|
orgs | 列出组织 |
workspaces | 列出工作空间 |
workspace-get | 获取工作空间 |
workspace-create | 创建工作空间 |
workspace-delete | 删除工作空间 |
workspace-lock | 锁定工作空间 |
workspace-unlock | 解锁工作空间 |
runs | 列出运行 |
run-get | 获取运行 |
run-create | 创建运行 |
run-apply | 应用运行 |
run-discard | 丢弃运行 |
run-cancel | 取消运行 |
plan-get | 获取计划 |
state-version | 获取当前状态 |
variables | 列出变量 |
variable-create | 创建变量 |
variable-delete | 删除变量 |
teams | 列出团队 |
--human 获取可读性格式。
python3 {{baseDir}}/scripts/terraform-cloud.py <命令> --human
脚本参考
| 脚本 | 描述 |
|---|---|
{{baseDir}}/scripts/terraform-cloud.py | 主 CLI — 所有命令在一个工具中 |
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制