CtrlK
BlogDocsLog inGet started
Tessl Logo

provider-actions

Implement Terraform Provider actions using the Plugin Framework. Use when developing imperative operations that execute at lifecycle events (before/after create, update, destroy).

95

6.18x
Quality

51%

Does it follow best practices?

Impact

99%

6.18x

Average score across 15 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

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

Quality

Discovery

75%

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

The description is well-structured with a clear 'what' and 'when' clause, and occupies a distinct niche that minimizes conflict risk. However, it could benefit from listing more specific concrete actions and including additional natural trigger terms that users might use when seeking this skill.

Suggestions

Add more specific concrete actions, e.g., 'define action functions, register before/after hooks, handle action errors, implement idempotent operations'.

Include additional natural trigger terms users might say, such as 'terraform plugin', 'resource lifecycle hooks', 'pre-create action', 'post-destroy hook', or 'provider development'.

DimensionReasoningScore

Specificity

It names the domain (Terraform Provider Plugin Framework) and a general action (implement actions/imperative operations at lifecycle events), but doesn't list multiple specific concrete actions like 'define action functions, register lifecycle hooks, handle error responses'.

2 / 3

Completeness

Clearly answers both 'what' (implement Terraform Provider actions using the Plugin Framework) and 'when' (Use when developing imperative operations that execute at lifecycle events before/after create, update, destroy), with explicit trigger guidance.

3 / 3

Trigger Term Quality

Includes relevant terms like 'Terraform Provider', 'Plugin Framework', 'lifecycle events', 'create, update, destroy', but misses common variations users might say such as 'terraform plugin', 'resource actions', 'hooks', 'pre-create', 'post-destroy', or 'provider development'.

2 / 3

Distinctiveness Conflict Risk

Very specific niche — Terraform Provider Plugin Framework actions at lifecycle events — is unlikely to conflict with other skills. The combination of 'actions', 'Plugin Framework', and 'lifecycle events' creates a distinct trigger profile.

3 / 3

Total

10

/

12

Passed

Implementation

27%

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

This skill covers Terraform Provider Actions comprehensively but suffers from excessive verbosity and poor information architecture. It tries to be a complete reference document rather than a concise, actionable skill guide, resulting in a monolithic file that explains many concepts Claude already understands. The code examples, while present, are often incomplete with placeholder comments rather than being copy-paste ready.

Suggestions

Reduce content by 60%+ by removing explanations of basic concepts (error handling patterns, what batch operations are, what pagination is) and condensing to only Terraform Actions-specific knowledge Claude wouldn't already have.

Split into multiple files: keep SKILL.md as a concise overview (~50-80 lines) with references to separate files for TESTING.md, SCHEMA_PATTERNS.md, DOCUMENTATION.md, and COMMON_PATTERNS.md.

Replace placeholder/pseudocode examples with complete, executable code — especially the Invoke method template and the Common Action Patterns section which has zero code.

Add an explicit numbered workflow for implementing an action from scratch (create file → define schema → implement invoke → register → test → document) with validation checkpoints between steps.

DimensionReasoningScore

Conciseness

The skill is extremely verbose at ~400+ lines, with significant redundancy (e.g., schema validation checklist repeated in pre-submission checklist, multiple sections explaining error handling). It explains concepts Claude already knows (what batch operations are, what error handling means, basic Go patterns) and includes extensive boilerplate that could be dramatically condensed. Many sections describe rather than instruct.

1 / 3

Actionability

Code examples are provided for schema definition, invoke method, error handling, polling, and testing, which is good. However, many examples are incomplete/pseudocode-like (e.g., the Invoke method has placeholder comments like '// Implement action logic', the sweep function uses '/* get client for region */'). The 'Common Action Patterns' section is entirely abstract with no code.

2 / 3

Workflow Clarity

The pre-submission checklist provides a clear sequence, and the testing section has concrete commands. However, the overall implementation workflow is not clearly sequenced — there's no explicit 'Step 1: Create file, Step 2: Define schema, Step 3: Implement Invoke' flow. The schema validation checklist is good but the broader multi-step process of building an action lacks explicit ordering and validation checkpoints between steps.

2 / 3

Progressive Disclosure

This is a monolithic wall of text with no bundle files to reference. All content is inline in a single massive document — schema details, testing patterns, documentation standards, changelog format, common patterns — all crammed into one file. There are external URL references but no structured breakdown into separate files for detailed topics like testing, documentation, or common patterns.

1 / 3

Total

6

/

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.