New Terraform Provider
Use this when scaffolding a new Terraform provider with the Plugin Framework: workspace layout, go module setup, provider server main.go, and a provider.go with schema and Configure. Also use when a user wants to start building a provider for a new API or asks how to begin a terraform-provider-* project.
Install
npx skills add hashicorp/agent-skills --skill new-terraform-providergit clone --depth 1 https://github.com/hashicorp/agent-skills.git /tmp/agent-skills
mkdir -p ~/.claude/skills
cp -r /tmp/agent-skills/plugins/terraform/skills/new-terraform-provider ~/.claude/skills/new-terraform-providerPersonal skills live in ~/.claude/skills. Use .claude/skills in a project folder to share a skill with your team.
From the SKILL.md
To scaffold a new Terraform provider with Plugin Framework: 1. If I am already in a Terraform provider workspace, then confirm that I want to create a new workspace. If I do not want to create a new workspace, then skip all remaining steps. 1. Create a new workspace root directory. The root directory name should be prefixed with "terraform-provider-". Perform all subsequent steps in this new workspace. 1. Initialize a new Go module. 1. Run `go get -u github.com/hashicorp/terraform-plugin-framework@latest`. 1. Write a main.go file that follows [the example](assets/main.go). 1. Write an `internal/provider/provider.go` file that follows [the example](assets/provider.go). Rename the `demo` provider, the `DEMO_*` environment variables, and the authentication attributes to match the target API. 1. Remove TODO comments from `main.go` and `provider.go`. 1. Run `go mod tidy` 1. Run `go build -o /dev/null` 1. Run `go test ./...` The scaffold resolves credentials as explicit config with environment variable fallback. To grow that into a full credential provider chain (shared credentials files, profiles, platform identity, configure-time validation), use the `provider-configuration` skill (if available). To add the first resource or data source, use the `provider-resources` skill (if available).
Details
- Skill name
new-terraform-provider- Repository
- hashicorp/agent-skills
- Path
plugins/terraform/skills/new-terraform-provider/SKILL.md- License
- MPL-2.0
- Repo updated
- 28 October 2026
FAQ
What does the New Terraform Provider skill do?
Use this when scaffolding a new Terraform provider with the Plugin Framework: workspace layout, go module setup, provider server main.go, and a provider.go with schema and Configure. Also use when a user wants to start building a provider for a new API or asks how to begin a terraform-provider-* project.
How do I install the New Terraform Provider skill?
skills CLI (Claude Code, Cursor, Codex and more): npx skills add hashicorp/agent-skills --skill new-terraform-provider. Skills go in ~/.claude/skills (personal) or .claude/skills (project), and Claude loads them automatically when a task matches the description.
Is New Terraform Provider popular?
It lives in hashicorp/agent-skills, which has 910 GitHub stars and 134 forks, and is included in 2 curated skill lists.
Related skills
Provider Resources
910hashicorp/agent-skills
Implement Terraform Provider resources and data sources using the Plugin Framework: CRUD operations, schema design, plan modifiers and validators, not-found handling, waiters for eventually consistent APIs, import support, resource design principles, and required acceptance test coverage. Use when adding or changing a resource or data source, deciding whether an API concept should be a resource, wiring a resource to the provider's configured client, handling drift or resource-not-found, or reviewing a resource implementation before submission.
Provider Test Patterns
910hashicorp/agent-skills
Terraform provider acceptance test patterns using terraform-plugin-testing with the Plugin Framework. Covers test structure, TestCase/TestStep fields, ConfigStateChecks with custom statecheck.StateCheck implementations, plan checks, CompareValue for cross-step assertions, config helpers, import testing with ImportStateKind, sweepers, and scenario patterns (basic, update, disappears, validation, regression), and ephemeral resource testing with the echoprovider package. Use when writing, reviewing, or debugging provider acceptance tests, including questions about statecheck, plancheck, TestCheck
Refactor Module
910hashicorp/agent-skills
Transform monolithic Terraform configurations into reusable, maintainable modules following HashiCorp's module design principles and community best practices.
Terraform Stacks
910hashicorp/agent-skills
Comprehensive guide for working with HashiCorp Terraform Stacks. Use when creating, modifying, or validating Terraform Stack configurations (.tfcomponent.hcl, .tfdeploy.hcl files), working with stack components and deployments from local modules, public registry, or private registry sources, managing multi-region or multi-environment infrastructure, or troubleshooting Terraform Stacks syntax and structure.
Native Feel Cross Platform Desktop
1.9kyetone/native-feel-skill
Use when the user is designing, prototyping, or rewriting a desktop app that must run on multiple OSes (macOS + Windows, optionally Linux) AND feel indistinguishable from a native app to its users — fast launch, native windowing, native input handling, native materials. Trigger words include "cross-platform desktop", "Electron alternative", "Tauri vs native", "WebView wrapper", "near-native performance", "Raycast architecture", "WebKit/WebView2 quirks", "WKWebView", "system tray app", "global hotkey app", "launcher app". Do NOT trigger this skill for pure web apps, pure mobile apps, or for gre
Terraform Style Guide
910hashicorp/agent-skills
Generate Terraform HCL code following HashiCorp's official style conventions and best practices. Use when writing, reviewing, or generating Terraform configurations.
Browse the most popular Claude skills, all devops & cloud skills, or write your own with the skills generator.