
Skill
provider-docs
generate and review Terraform provider documentation
Description
Create, update, and review Terraform provider documentation for Terraform Registry using HashiCorp-recommended patterns, tfplugindocs templates, and schema descriptions. Use when adding or changing provider configuration, resources, data sources, ephemeral resources, list resources, functions, or guides; when validating generated docs; and when troubleshooting missing or incorrect Registry documentation.
SKILL.md
Terraform Provider Docs
Follow This Workflow
- Confirm scope and documentation targets.
- Map code changes to the exact doc targets: provider index, resources, data sources, ephemeral resources, list resources, functions, or guides.
- Decide whether content should come from schema descriptions, templates, or both.
- Write schema descriptions first.
- Add precise user-facing descriptions to schema fields so generated docs stay aligned with behavior.
- Keep wording specific to argument purpose, constraints, defaults, and computed behavior.
- Add or update template files in
docs/.
- Create only files that map to implemented provider objects.
- Use HashiCorp-recommended template paths:
docs/index.md.tmpldocs/data-sources/<name>.md.tmpldocs/resources/<name>.md.tmpldocs/ephemeral-resources/<name>.md.tmpldocs/list-resources/<name>.md.tmpldocs/functions/<name>.md.tmpldocs/guides/<name>.md.tmpl
- Keep templates focused on overview and examples; rely on generated sections for field-by-field details.
- Generate documentation with
tfplugindocs.
- Prefer repository defaults when configured:
go generate ./...
- Otherwise run the generator directly:
go run github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs generate --provider-name <provider_name>
- Re-run generation after every schema or template edit.
- Validate the generated markdown.
- Verify files in
docs/match the current provider implementation. - Verify examples are valid HCL and reflect current argument/attribute names.
- Verify required/optional/computed semantics in docs match schema behavior.
- Apply Registry publication rules before release.
- Use semantic version tags prefixed with
v(for examplev1.2.3). - Create release tags from the default branch.
- Keep
terraform-registry-manifest.jsonin the repository root. - Expect docs to be versioned in Registry and switchable with the version selector.
- Preview or troubleshoot publication when needed.
- Use the HashiCorp preview process to inspect rendered docs before release when accuracy risk is high.
- If docs are missing in Registry, check tag format, tag source branch, manifest file presence, and provider publication status.
Enforce Quality Bar
- Keep documentation behaviorally accurate; never describe unsupported arguments or attributes.
- Keep examples minimal, realistic, and runnable.
- Keep terminology and naming consistent across provider, resources, and data sources.
- Avoid duplicating generated argument/attribute blocks in manual templates.
- Keep doc changes tied to the same PR as schema/API changes whenever possible.
Load References On Demand
- Read
references/hashicorp-provider-docs.mdfor source-backed rules and official links. - Load only the sections needed for the current change to keep context lean.
More skills from the agent-skills repository
View all 17 skillsaws-ami-builder
build Amazon Machine Images with Packer
Apr 6AWSDeploymentInfrastructure as CodePackerazure-image-builder
build Azure managed images with Packer
Apr 6AzureDeploymentPackerazure-verified-modules
develop certified Azure Verified Modules
Apr 6AzureComplianceInfrastructure as CodeTerraformnew-terraform-provider
scaffold new Terraform providers
Apr 6Plugin DevelopmentTemplatesTerraformprovider-actions
implement Terraform Provider lifecycle actions
Apr 6API DevelopmentPlugin DevelopmentTerraformprovider-resources
implement Terraform Provider resources and data sources
Apr 6API DevelopmentPlugin DevelopmentTerraform
More from HashiCorp
View publisherprovider-test-patterns
implement Terraform provider acceptance test patterns
agent-skills
Apr 6Plugin DevelopmentQATerraformTestingpush-to-registry
push Packer build metadata to HCP registry
agent-skills
Apr 6DeploymentGovernanceHCPPackerrefactor-module
refactor Terraform configurations into reusable modules
agent-skills
Apr 6ArchitectureInfrastructure as CodeTerraformrun-acceptance-tests
run acceptance tests for Terraform providers
agent-skills
Apr 6Plugin DevelopmentQATerraformTestingterraform-policy
write and test Terraform policy files
agent-skills
Jul 18ComplianceInfrastructure as CodeSecurityTerraform