CtrlK
BlogDocsLog inGet started
Tessl Logo

new-terraform-provider

Use this when scaffolding a new Terraform provider.

78

1.07x
Quality

47%

Does it follow best practices?

Impact

98%

1.07x

Average score across 6 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./terraform/provider-development/skills/new-terraform-provider/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

22%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This description is severely lacking in specificity about what the skill actually does — it only states when to use it without describing any concrete capabilities. The domain (Terraform provider) is reasonably distinct, but the absence of action descriptions and limited trigger terms make it difficult for Claude to confidently select this skill or understand its scope.

Suggestions

Add concrete actions the skill performs, e.g., 'Generates provider scaffolding including resource schemas, data sources, provider configuration, and acceptance test templates for Terraform providers.'

Expand trigger terms to include variations like 'terraform plugin', 'provider boilerplate', 'terraform-plugin-framework', 'new terraform provider project', 'custom provider'.

Restructure to cover both 'what' and 'when' explicitly, e.g., 'Scaffolds new Terraform providers with resource definitions, data sources, and test harnesses. Use when creating a new Terraform provider, setting up provider boilerplate, or starting a terraform-plugin-framework project.'

DimensionReasoningScore

Specificity

The description says 'scaffolding a new Terraform provider' which names the domain but does not describe any concrete actions (e.g., generating resource schemas, creating provider configuration, setting up acceptance tests). It's vague about what the skill actually does.

1 / 3

Completeness

The description answers 'when' ('when scaffolding a new Terraform provider') but completely fails to answer 'what does this do' — there is no explanation of the skill's capabilities or actions. The 'what' is missing entirely.

1 / 3

Trigger Term Quality

Includes 'Terraform provider' and 'scaffolding' which are relevant keywords a user might say, but misses common variations like 'terraform plugin', 'provider boilerplate', 'new provider project', 'terraform-plugin-sdk', or 'terraform-plugin-framework'.

2 / 3

Distinctiveness Conflict Risk

'Terraform provider' is a fairly specific niche that reduces conflict risk, but 'scaffolding' is generic enough that it could overlap with other Terraform-related skills (e.g., module scaffolding, general Terraform project setup).

2 / 3

Total

6

/

12

Passed

Implementation

72%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a concise, well-structured scaffolding skill that efficiently lists the steps needed to create a new Terraform provider. Its main weaknesses are missing explicit commands for some steps (e.g., 'go mod init') and lacking error recovery guidance for build/test failures. The reference to an asset file for the main.go example is good progressive disclosure but means actionability depends on that external file.

Suggestions

Replace 'Initialize a new Go module' with the explicit command: `go mod init github.com/<org>/terraform-provider-<name>`

Add error recovery guidance after the build and test steps, e.g., 'If build fails, check for missing imports and run go mod tidy again'

Fix the typo: double period after 'Initialize a new Go module..'

DimensionReasoningScore

Conciseness

The content is lean and efficient. Every line is a concrete step with no unnecessary explanation of what Terraform or Go modules are. No wasted tokens.

3 / 3

Actionability

Steps include specific commands (go get, go build, go test), but the main.go content is delegated to an asset file reference rather than shown inline. The instruction 'Write a main.go file that follows the example' is somewhat vague without seeing the asset. Step 3 'Initialize a new Go module' lacks the specific command (go mod init).

2 / 3

Workflow Clarity

Steps are clearly sequenced and include build/test validation at the end. However, there are no explicit error recovery steps—if 'go build' or 'go test' fails, there's no guidance on what to do. The conditional check in step 1 is a nice touch, but the workflow lacks feedback loops for the build/test steps.

2 / 3

Progressive Disclosure

For a simple skill under 50 lines, the structure is appropriate. It references an asset file (assets/main.go) for the detailed example rather than inlining it, which is good progressive disclosure with a one-level-deep reference.

3 / 3

Total

10

/

12

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
hashicorp/agent-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.