H

provider-resources

by hashicorp

provider-resources is a Terraform Provider development skill for implementing resources and data sources with the Plugin Framework. Use it for CRUD operations, schema design, state management, and acceptance testing in backend development workflows.

Stars0
Favorites0
Comments0
AddedApr 29, 2026
CategoryBackend Development
Install Command
npx skills add hashicorp/agent-skills --skill provider-resources
Curation Score

This skill scores 78/100, which means it is a solid directory candidate for users building Terraform provider resources and data sources. The repository gives enough implementation guidance to help an agent trigger the skill correctly and follow a real workflow, though users should still expect some missing polish around packaging and installability details.

78/100
Strengths
  • Explicit use case: implementing Terraform Provider resources and data sources with CRUD, schema design, state management, and acceptance testing.
  • Substantial procedural content: long SKILL.md with many headings, workflow sections, and code fences that reduce guesswork.
  • Good directory clarity: frontmatter is valid, the description is specific, and there are no placeholder markers or experimental flags.
Cautions
  • No install command or companion resources are provided, so adoption relies on reading the SKILL.md rather than a more guided setup.
  • Evidence shows no support files or references bundle, which may limit trust and make edge-case implementation details harder to verify.
Overview

Overview of provider-resources skill

provider-resources is a Terraform Provider development skill for implementing resources and data sources with the Terraform Plugin Framework. It is best for backend engineers building CRUD-backed provider endpoints, designing schema and state, or adding acceptance tests with less trial and error than a generic prompt.

The real job-to-be-done is not “write Terraform code” in the abstract. It is to help you structure a provider feature so it fits HashiCorp conventions, maps cleanly to remote APIs, and is testable before it lands. That makes the provider-resources skill most useful when you already know the target API shape and need implementation guidance, not when you are still deciding what the provider should expose.

What provider-resources covers

The skill focuses on resource and data source implementation patterns, file layout, schema organization, state handling, and acceptance-test workflow. It is a strong fit for provider-resources for Backend Development work where the backend API is the source of truth and Terraform must keep state aligned with it.

When this skill is the right fit

Use provider-resources when you need help with resource CRUD, importer behavior, computed and optional attributes, nested schema design, or package structure in a provider repository. It is also useful when you want a consistent implementation path for a new endpoint instead of hand-assembling patterns from multiple examples.

What to watch before installing

This skill assumes Terraform provider work and the Plugin Framework. If you need modules, registry publishing, or provider scaffolding from scratch, this is the wrong level of focus. It also will not replace product-specific API knowledge; you still need the endpoint contract, error modes, and identity rules.

How to Use provider-resources skill

Install provider-resources in your skill set

Use the repo’s install flow to add the skill, then reference it in the context of a specific provider task:

npx skills add hashicorp/agent-skills --skill provider-resources

If your environment uses a different skill loader, keep the same skill name and point it at the terraform/provider-development/skills/provider-resources path.

Start with the right source files

Read SKILL.md first, then inspect the sections that define implementation shape and conventions. In this repository, that means paying attention to the overview and file-structure guidance before jumping into code generation. If your local copy includes extra provider templates or adjacent skills, compare them only after you understand this one’s resource workflow.

Give the skill a complete task brief

The provider-resources usage works best when you provide the remote object type, required identifiers, CRUD behavior, and any special state rules. A weak prompt says “build a resource.” A stronger prompt says:

  • the API object and endpoint
  • which fields are required, optional, computed, or ForceNew
  • how to detect drift
  • how updates are applied
  • whether read is eventually consistent
  • what acceptance tests must prove

That information lets the skill produce code and guidance that fit the backend instead of inventing assumptions.

Use a repository-first workflow

For best results, ask for a plan that maps the resource into the existing provider layout, then implement one piece at a time: schema, create/read/update/delete, importer, and tests. If the repository already has similar resources, point to them explicitly so the skill can reuse local patterns rather than generic examples.

provider-resources skill FAQ

Is provider-resources only for new resources?

No. The skill is equally useful for refactors, adding a data source next to an existing resource, or fixing state and test issues in an established provider. It is strongest when the API already exists and the work is to express it cleanly in Terraform.

Do I need Plugin Framework experience first?

Not necessarily. The skill can help beginners follow the right structure, but it works best if you can describe the API and provider behavior clearly. If you cannot explain identity, lifecycle, or update semantics, gather that first or expect a rough first pass.

How is this different from a normal prompt?

A normal prompt often produces plausible provider code without local conventions or test discipline. provider-resources is more useful because it pushes toward Terraform-native layout, resource/documentation pairing, and acceptance-test thinking, which reduces rework during review.

When should I not use this skill?

Do not use it for unrelated backend CRUD apps, general Go architecture, or Terraform module authoring. If your task is mostly about packaging, release automation, or registry docs, choose a skill focused on those concerns instead.

How to Improve provider-resources skill

Provide API facts, not just feature names

The fastest way to improve provider-resources output is to describe the object contract precisely: IDs, create inputs, read shape, mutable fields, and delete semantics. If the API has quirks such as async creation, partial updates, or server-generated names, say so early. Those details change the provider design.

Point to the local pattern you want copied

If the repository already contains a close analog, name the exact file or resource. That helps the skill align with existing provider conventions instead of inventing a fresh style. This matters most for schema naming, test helpers, and state transitions.

Ask for the first risky pieces first

The most failure-prone parts are usually import/state handling, computed fields, and acceptance tests. Ask the skill to resolve those before polishing docs or helper functions. If the first answer is close but incomplete, iterate with the failing test output or a diff of the schema so the next pass can correct the exact mismatch.

Ratings & Reviews

No ratings yet
Share your review
Sign in to leave a rating and comment for this skill.
G
0/10000
Latest reviews
Saving...