# provider-docs

Guides Terraform provider documentation workflows for the Terraform Registry. It coordinates schema descriptions, docs templates, and tfplugindocs generation.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 3200 installs · ★ 909
- Author: hashicorp
- License: MPL-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/hashicorp/agent-skills/tree/HEAD/plugins/terraform/skills/provider-docs/SKILL.md
- Updated: 2026-10-05
- HTML: https://affpapa.org/en/nevibecode/skills/provider-docs

## What it does

This skill directs how to write and maintain documentation for Terraform providers. The process starts in Go schema descriptions for arguments and computed attributes, then moves to templates in the `docs/` directory. Output markdown is generated with `tfplugindocs` through `go generate` or the standalone CLI command. Every generated page gets verified against current provider code.

Strict formatting rules apply to HCL snippets. Sample configurations belong in the `examples/` folder, isolated to one scenario per file and imported via `tffile`. They cannot include `terraform`, `provider`, or `output` blocks. When documenting actions introduced in Terraform v1.14.0+, templates must link `action` and `action_trigger` lifecycle wiring without attribute sections. Ignoring these details causes broken rendering in the public Registry.

Publication requires specific release metadata. The root folder must hold `terraform-registry-manifest.json`, and release tags must follow semantic versioning with a `v` prefix such as `v1.2.3` from the default branch. Missing manifest files or non-standard branch tags prevent the Registry from parsing doc updates.

## Requirements
- Works with: Terraform

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add hashicorp/agent-skills --skill provider-docs -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/provider-docs/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/provider-docs/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add hashicorp/agent-skills --skill provider-docs -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/provider-docs/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add hashicorp/agent-skills --skill provider-docs -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/provider-docs/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install hashicorp/agent-skills provider-docs
```

2. **Manually: put the files in place**
- File: `.github/skills/provider-docs/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add hashicorp/agent-skills --skill provider-docs -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/hashicorp/agent-skills --path plugins/terraform/skills/provider-docs
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/provider-docs/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add hashicorp/agent-skills --skill provider-docs -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/hashicorp/agent-skills/tree/HEAD/plugins/terraform/skills/provider-docs/SKILL.md

## When to use it
- structure docs templates for new provider resources and functions
- align Go schema attribute descriptions with generated registry pages
- clean HCL examples of disallowed provider and terraform blocks
- run tfplugindocs generation across provider schema changes
- verify registry manifest and release tag formatting before publishing

## Example prompts
- Update provider documentation templates for our new data source and run tfplugindocs
- Audit HCL snippets in the examples directory against Terraform Registry requirements
- Set up an action template with action_trigger lifecycle wiring for Terraform v1.14.0+

## Similar
- [terraform-skill](https://affpapa.org/en/nevibecode/skills/terraform-skill.md) — skill · 7400 installs
- [terraform-validator](https://affpapa.org/en/nevibecode/skills/terraform-validator.md) — skill · 640 installs
- [terraform-generator](https://affpapa.org/en/nevibecode/skills/terraform-generator.md) — skill · 639 installs
- [terraform-patterns](https://affpapa.org/en/nevibecode/skills/terraform-patterns.md) — skill · 617 installs
- [infisical-terraform](https://affpapa.org/en/nevibecode/skills/infisical-terraform.md) — skill · 478 installs
- [terraform](https://affpapa.org/en/nevibecode/plugins/terraform.md) — plugin · ★ 44635

From the same set: [hashicorp/agent-skills](https://affpapa.org/en/nevibecode/by/hashicorp/agent-skills.md) — 16 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
