/terraform
Terraform Cloud workspace management, run monitoring, and log retrieval. Use when listing workspaces, checking run status, fetching plan/apply logs, or looking up providers and modules in the Terraform Registry.
$ npx -y skills add bendrucker/claude --skill terraform --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/terraform
Context preview
The summary Claude sees to decide when to auto-load this skill.
Terraform Cloud workspace management, run monitoring, and log retrieval. Use when listing workspaces, checking run status, fetching plan/apply logs, or looking up providers and modules in the Terraform Registry.
SKILL.md
terraform.SKILL.mdname: terraform
description: >-
Terraform Cloud workspace management, run monitoring, and log retrieval. Use when
listing workspaces, checking run status, fetching plan/apply logs, or looking up
providers and modules in the Terraform Registry.
disable-model-invocation: true
allowed-tools:
- mcp__terraform
- Bash(curl:*)
- Bash(jq:*)
Terraform
Tool Selection
- **MCP tools** (`mcp__terraform`): workspace listing, run management, provider/module registry lookups
- **curl**: plan and apply log retrieval — the MCP server does not expose these endpoints
Run Monitoring
Use MCP tools to find and inspect runs:
1. `list_workspaces` to find the workspace by name 2. `list_runs` with the workspace ID to see recent runs 3. `get_run_details` with the run ID for status, relationships, and timestamps
Run details include `relationships.plan.data.id` and `relationships.apply.data.id` — use these to fetch logs.
Fetching Plan/Apply Logs
The MCP server does not expose log retrieval; use the TFC API directly.
# Get the apply details (includes log-read-url)
curl -s \
-H "Authorization: Bearer $TFE_TOKEN" \
-H "Content-Type: application/vnd.api+json" \
https://app.terraform.io/api/v2/applies/{apply-id} | jq -r '.data.attributes."log-read-url"'Then fetch the raw logs from the archivist URL (no auth needed — pre-signed):
curl -s "$(archivist_url)"
The same pattern works for plans via `/api/v2/plans/{plan-id}`.
See [references/api.md](references/api.md).
Authentication
`$TFE_TOKEN` is sourced from:
- `terraform login` (stored at `~/.terraform.d/credentials.tfrc.json`)
- Or set directly as an environment variable
The MCP server reads `TFE_TOKEN` from the environment. For curl calls, use it as a Bearer token.
Registry
Provider and module searches use MCP tools (`search_providers`, `search_modules`, `provider_details`, `module_details`). No curl needed.
Read more
name: terraform description: >- Terraform Cloud workspace management, run monitoring, and log retrieval. Use when listing workspaces, checking run status, fetching plan/apply logs, or looking up providers and modules in the Terraform Registry. disable-model-invocation: true allowed-tools: - mcp__terraform - Bash(curl:*) - Bash(jq:*)
Terraform
Tool Selection
- **MCP tools** (`mcp__terraform`): workspace listing, run management, provider/module registry lookups
- **curl**: plan and apply log retrieval — the MCP server does not expose these endpoints
Run Monitoring
Use MCP tools to find and inspect runs:
1. `list_workspaces` to find the workspace by name 2. `list_runs` with the workspace ID to see recent runs 3. `get_run_details` with the run ID for status, relationships, and timestamps
Run details include `relationships.plan.data.id` and `relationships.apply.data.id` — use these to fetch logs.
Fetching Plan/Apply Logs
The MCP server does not expose log retrieval; use the TFC API directly.
# Get the apply details (includes log-read-url)
curl -s \
-H "Authorization: Bearer $TFE_TOKEN" \
-H "Content-Type: application/vnd.api+json" \
https://app.terraform.io/api/v2/applies/{apply-id} | jq -r '.data.attributes."log-read-url"'Then fetch the raw logs from the archivist URL (no auth needed — pre-signed):
curl -s "$(archivist_url)"
The same pattern works for plans via `/api/v2/plans/{plan-id}`.
See [references/api.md](references/api.md).
Authentication
`$TFE_TOKEN` is sourced from:
- `terraform login` (stored at `~/.terraform.d/credentials.tfrc.json`)
- Or set directly as an environment variable
The MCP server reads `TFE_TOKEN` from the environment. For curl calls, use it as a Bearer token.
Registry
Provider and module searches use MCP tools (`search_providers`, `search_modules`, `provider_details`, `module_details`). No curl needed.
My personal plugin marketplace for Claude Code, Anthropic's AI coding assistant.
Repo: bendrucker/claude
Other skills on bendrucker-claude.
cleye
Type-safe CLI argument parsing with cleye, the standard parser for this repo's Bun scripts. Use when writing or editing any script that takes arguments (flags,…
activity
Report real device usage from ActivityWatch. Covers per-app time, window titles, and active vs idle spans. Use when asked "what apps did I use", "how long was…
history
Report shell history from atuin's local capture. Covers what commands ran, when, where, and how they exited. Use when asked "what commands did I run", "what…
bun
Bun runtime patterns. Use when running bun commands, working with package.json/bun.lock, writing TypeScript scripts under Bun, or developing Claude Code…
agent-team
Orchestrating Claude Code agent teams. Use when creating teams, spawning teammates, assigning tasks, configuring teammate modes, or setting up team quality…

