
New Terraform Provider
- 2.7k installs
- 781 repo stars
- Updated August 4, 2026
- hashicorp/agent-skills
new-terraform-provider is a skill for scaffolding a new Terraform Plugin Framework provider workspace.
About
new-terraform-provider scaffolds a fresh Terraform provider using the Plugin Framework. If already inside a provider workspace, confirm intent before creating a new root. Create a directory prefixed terraform-provider-, initialize a Go module, and run go get for terraform-plugin-framework latest. Write main.go following the bundled example asset in assets/main.go, remove TODO comments, then run go mod tidy, go build -o /dev/null, and go test ./... to verify compilation and tests pass. All subsequent steps occur inside the new workspace root. The skill is a concise procedural checklist focused on bootstrapping a compilable provider skeleton that agents extend with services, resources, and data sources in follow-on work. It is licensed MPL-2.0 with IBM copyright metadata and targets greenfield provider workspaces rather than extending existing mature providers without explicit user confirmation to skip steps.
- Confirm workspace intent before creating a new provider root.
- Directory name must be prefixed terraform-provider-.
- Initialize Go module and fetch plugin-framework latest.
- main.go follows bundled example; remove TODO comments.
- Verify with go mod tidy, go build, and go test ./...
New Terraform Provider by the numbers
- 2,747 all-time installs (skills.sh)
- +115 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #67 of 1,435 DevOps & CI/CD skills by installs in the Skillselion catalog
- Security screen: MEDIUM risk (skills.sh audit)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
new-terraform-provider capabilities & compatibility
- Capabilities
- new provider workspace directory creation · go module and plugin framework dependency setup · main.go bootstrap from example template · build and test verification commands
- Works with
- terraform
- Use cases
- devops · api development
- Pricing
- Free
What new-terraform-provider says it does
Create a new workspace root directory. The root directory name should be prefixed with "terraform-provider-".
Run `go get -u github.com/hashicorp/terraform-plugin-framework@latest`.
Run `go test ./...`
npx skills add https://github.com/hashicorp/agent-skills --skill new-terraform-providerAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2.7k |
|---|---|
| repo stars | ★ 781 |
| Security audit | 3 / 3 scanners passed |
| Last updated | August 4, 2026 |
| Repository | hashicorp/agent-skills ↗ |
How do I bootstrap a new Terraform provider project with Go module and Plugin Framework?
Scaffold a new Terraform provider workspace with Plugin Framework, Go module, and build verification.
Who is it for?
Developers starting a custom Terraform provider from an empty workspace.
Skip if: Skip for adding resources to an existing mature provider without new scaffolding.
When should I use this skill?
User asks to scaffold, create, or initialize a new Terraform provider project.
What you get
New terraform-provider- workspace that builds and passes go test ./...
- terraform-provider-* project directory
- Go module with Plugin Framework deps
By the numbers
- Skill metadata version 0.0.1
- Workspace directory must be prefixed terraform-provider-
Files
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. 1. Remove TODO comments from main.go 1. Run go mod tidy 1. Run go build -o /dev/null 1. Run go test ./...
// Copyright IBM Corp. 2025, 2026
// SPDX-License-Identifier: MPL-2.0
package main
import (
"context"
"flag"
"log"
"example.org/terraform-provider-demo/internal/provider"
"github.com/hashicorp/terraform-plugin-framework/providerserver"
)
var (
// these will be set by the goreleaser configuration
// to appropriate values for the compiled binary.
version string = "dev"
// goreleaser can pass other information to the main package, such as the specific commit
// https://goreleaser.com/cookbooks/using-main.version/
)
func main() {
var debug bool
flag.BoolVar(&debug, "debug", false, "set to true to run the provider with support for debuggers like delve")
flag.Parse()
opts := providerserver.ServeOpts{
// TODO: Update this string with the published name of your provider.
// Also update the tfplugindocs generate command to either remove the
// -provider-name flag or set its value to the updated provider name.
Address: "registry.terraform.io/example/demo",
Debug: debug,
}
err := providerserver.Serve(context.Background(), provider.New(version), opts)
if err != nil {
log.Fatal(err.Error())
}
}
Related skills
Forks & variants (1)
New Terraform Provider has 1 known copy in the catalog totaling 28 installs. They canonicalize to this original listing.
- hashicorp - 28 installs
How it compares
Pick new-terraform-provider for greenfield Plugin Framework providers; use provider-specific docs when extending an existing codebase.
FAQ
What directory naming is required?
Create a root directory prefixed with terraform-provider- for all subsequent steps.
Which framework package to install?
Run go get -u github.com/hashicorp/terraform-plugin-framework@latest.
How verify the scaffold compiles?
Run go mod tidy, go build -o /dev/null, then go test ./...
Is New Terraform Provider safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.