#949 by GitHub stars

hashicorp/agent-skills

A collection of Agent skills and Claude Code plugins for HashiCorp products.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

plugins/packer/skills/aws-ami-builder/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/packer/skills/azure-image-builder/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/packer/skills/push-to-registry/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/packer/skills/windows-builder/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/azure-verified-modules/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/new-terraform-provider/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-actions/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-configuration/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-docs/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-ephemeral-resources/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-framework-migration/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-resources/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/provider-test-patterns/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/refactor-module/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/run-acceptance-tests/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/terraform-policy/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

A local comparison is unavailable. You can inspect the recorded versions on GitHub.

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/terraform-search-import/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/terraform-stacks/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/terraform-style-guide/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

plugins/terraform/skills/terraform-test/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Not checked yet → After Network or broad shell

f706481af9b8 → 5e30fa5c867b

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Not checked yet

First observation → f706481af9b8

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 5e30fa5c867ba6777c37e4206babfd08049c396f

git clone --filter=blob:none --no-checkout https://github.com/hashicorp/agent-skills.git .hotskills/hashicorp-agent-skills && git -C .hotskills/hashicorp-agent-skills checkout --detach 5e30fa5c867ba6777c37e4206babfd08049c396f # Copy each selected skill directory from .hotskills/hashicorp-agent-skills into .claude/skills/<skill-name>/
git clone --filter=blob:none --no-checkout https://github.com/hashicorp/agent-skills.git .hotskills/hashicorp-agent-skills && git -C .hotskills/hashicorp-agent-skills checkout --detach 5e30fa5c867ba6777c37e4206babfd08049c396f # Copy each selected skill directory from .hotskills/hashicorp-agent-skills into .agents/skills/<skill-name>/
918GitHub stars
8stars in 7 days
20skills in this repository
2commits in 30 days

Heat

6.0
  • Star growth, last 7 daysAhead of 80% of tracked repositories
  • Star growth, last 24 hoursAhead of 86% of tracked repositories
  • Rank movement, last 7 daysAhead of 35% of tracked repositories
  • Commits, last 30 daysAhead of 60% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 2026918

Individual skills in this repository

How it works

aws-ami-builder

When your agent uses it

Build Amazon Machine Images (AMIs) with Packer using the amazon-ebs builder. Use when creating custom AMIs for EC2 instances.

What it loads into context

Frontmatter

45 tokens

Always available to the agent

SKILL.md

998 tokens

When the skill is activated

Reference documents

151,344 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Basic AMI Template
  2. Common Source AMI Filters
  3. Multi-Region AMI
  4. Authentication
  5. Build Commands
  6. Common Issues
  7. References

Scripts executed separately

  • ../../../terraform/skills/new-terraform-provider/assets/main.go
  • ../../../terraform/skills/new-terraform-provider/assets/provider.go
  • ../../../terraform/skills/terraform-search-import/scripts/list_resources.sh

Files

  • ../../../../.claude-plugin/marketplace.jsonasset909 bytes
  • ../../.claude-plugin/plugin.jsonasset451 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • SKILL.mdcore3,700 bytes
  • ../azure-image-builder/SKILL.mddoc4,240 bytes
  • ../push-to-registry/SKILL.mddoc4,778 bytes
  • ../windows-builder/SKILL.mddoc4,601 bytes
  • ../../../terraform/.claude-plugin/plugin.jsonasset492 bytes
  • ../../../terraform/skills/azure-verified-modules/SKILL.mddoc16,300 bytes
  • ../../../terraform/skills/new-terraform-provider/SKILL.mddoc1,808 bytes
  • ../../../terraform/skills/new-terraform-provider/assets/main.goruns1,141 bytes
  • ../../../terraform/skills/new-terraform-provider/assets/provider.goruns4,395 bytes
  • ../../../terraform/skills/provider-actions/SKILL.mddoc17,274 bytes
  • ../../../terraform/skills/provider-configuration/SKILL.mddoc14,094 bytes
  • ../../../terraform/skills/provider-configuration/references/case-studies.mddoc6,272 bytes
  • ../../../terraform/skills/provider-configuration/references/credential-chain.mddoc18,130 bytes
  • ../../../terraform/skills/provider-docs/SKILL.mddoc4,022 bytes
  • ../../../terraform/skills/provider-docs/agents/openai.yamlasset343 bytes
  • ../../../terraform/skills/provider-docs/references/hashicorp-provider-docs.mddoc5,516 bytes
  • ../../../terraform/skills/provider-ephemeral-resources/SKILL.mddoc9,338 bytes
  • ../../../terraform/skills/provider-framework-migration/SKILL.mddoc8,812 bytes
  • ../../../terraform/skills/provider-framework-migration/references/schema-mapping.mddoc6,224 bytes
  • ../../../terraform/skills/provider-resources/SKILL.mddoc18,322 bytes
  • ../../../terraform/skills/provider-resources/references/design-principles.mddoc4,981 bytes
  • ../../../terraform/skills/provider-resources/references/retries-and-waiters.mddoc5,824 bytes
  • ../../../terraform/skills/provider-test-patterns/SKILL.mddoc12,993 bytes
  • ../../../terraform/skills/provider-test-patterns/references/checks.mddoc6,844 bytes
  • ../../../terraform/skills/provider-test-patterns/references/ephemeral.mddoc6,002 bytes
  • ../../../terraform/skills/provider-test-patterns/references/sweepers.mddoc2,403 bytes
  • ../../../terraform/skills/refactor-module/SKILL.mddoc14,729 bytes
  • ../../../terraform/skills/run-acceptance-tests/SKILL.mddoc3,059 bytes
  • ../../../terraform/skills/terraform-policy/.gitignoreasset29 bytes
  • ../../../terraform/skills/terraform-policy/README.mddoc2,822 bytes
  • ../../../terraform/skills/terraform-policy/SKILL.mddoc6,431 bytes
  • ../../../terraform/skills/terraform-policy/examples/README.mddoc2,592 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudfront-associated-with-waf/README.mddoc871 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudfront-associated-with-waf/cloudfront-associated-with-waf.policy.hclasset589 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudfront-associated-with-waf/cloudfront-associated-with-waf.sentinelasset1,613 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudtrail-server-side-encryption-enabled/README.mddoc846 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudtrail-server-side-encryption-enabled/cloudtrail-server-side-encryption-enabled.policy.hclasset512 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/cloudtrail-server-side-encryption-enabled/cloudtrail-server-side-encryption-enabled.sentinelasset1,466 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoint-should-be-ssl-configured/README.mddoc872 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoint-should-be-ssl-configured/dms-endpoint-should-be-ssl-configured.policy.hclasset516 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoint-should-be-ssl-configured/dms-endpoint-should-be-ssl-configured.sentinelasset1,547 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoints-should-use-ssl/README.mddoc800 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoints-should-use-ssl/dms-endpoints-should-use-ssl.policy.hclasset579 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/dms-endpoints-should-use-ssl/dms-endpoints-should-use-ssl.sentinelasset1,421 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-network-acl-should-have-subnet-ids/README.mddoc970 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-network-acl-should-have-subnet-ids/ec2-network-acl-should-have-subnet-ids.policy.hclasset1,035 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-network-acl-should-have-subnet-ids/ec2-network-acl-should-have-subnet-ids.sentinelasset2,941 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-vpc-default-security-group-no-traffic/README.mddoc1,107 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-vpc-default-security-group-no-traffic/ec2-vpc-default-security-group-no-traffic.policy.hclasset865 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/ec2-vpc-default-security-group-no-traffic/ec2-vpc-default-security-group-no-traffic.sentinelasset3,658 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/efs-access-point-should-enforce-user-identity/README.mddoc727 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/efs-access-point-should-enforce-user-identity/efs-access-point-should-enforce-user-identity.policy.hclasset448 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/efs-access-point-should-enforce-user-identity/efs-access-point-should-enforce-user-identity.sentinelasset1,336 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticache-redis-replication-group-encryption-at-transit-enabled/README.mddoc777 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticache-redis-replication-group-encryption-at-transit-enabled/elasticache-redis-replication-group-encryption-at-transit-enabled.policy.hclasset547 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticache-redis-replication-group-encryption-at-transit-enabled/elasticache-redis-replication-group-encryption-at-transit-enabled.sentinelasset1,532 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-encrypted-at-rest/README.mddoc734 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-encrypted-at-rest/elasticsearch-encrypted-at-rest.policy.hclasset584 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-encrypted-at-rest/elasticsearch-encrypted-at-rest.sentinelasset1,571 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-https-required/README.mddoc904 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-https-required/elasticsearch-https-required.policy.hclasset1,132 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-https-required/elasticsearch-https-required.sentinelasset2,352 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-in-vpc-only/README.mddoc890 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-in-vpc-only/elasticsearch-in-vpc-only.policy.hclasset589 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/elasticsearch-in-vpc-only/elasticsearch-in-vpc-only.sentinelasset1,935 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/eventbridge-custom-event-bus-should-have-attached-policy/README.mddoc1,103 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/eventbridge-custom-event-bus-should-have-attached-policy/eventbridge-custom-event-bus-should-have-attached-policy.policy.hclasset845 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/eventbridge-custom-event-bus-should-have-attached-policy/eventbridge-custom-event-bus-should-have-attached-policy.sentinelasset2,125 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-block-public-access-bucket-level/README.mddoc1,123 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-block-public-access-bucket-level/s3-block-public-access-bucket-level.policy.hclasset1,184 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-block-public-access-bucket-level/s3-block-public-access-bucket-level.sentinelasset3,304 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-bucket-should-have-object-lock-enabled/README.mddoc975 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-bucket-should-have-object-lock-enabled/s3-bucket-should-have-object-lock-enabled.policy.hclasset1,030 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/s3-bucket-should-have-object-lock-enabled/s3-bucket-should-have-object-lock-enabled.sentinelasset2,868 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/secretsmanager-auto-rotation-enabled-check/README.mddoc955 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/secretsmanager-auto-rotation-enabled-check/secretsmanager-auto-rotation-enabled-check.policy.hclasset867 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/secretsmanager-auto-rotation-enabled-check/secretsmanager-auto-rotation-enabled-check.sentinelasset2,250 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/step-functions-state-machine-logging-enabled/README.mddoc778 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/step-functions-state-machine-logging-enabled/step-functions-state-machine-logging-enabled.policy.hclasset724 bytes
  • ../../../terraform/skills/terraform-policy/examples/conversion/step-functions-state-machine-logging-enabled/step-functions-state-machine-logging-enabled.sentinelasset1,594 bytes
  • ../../../terraform/skills/terraform-policy/references/tfpolicy-author.mddoc104,578 bytes
  • ../../../terraform/skills/terraform-policy/references/tfpolicy-test.mddoc47,617 bytes
  • ../../../terraform/skills/terraform-policy/references/verified-syntax.mddoc103,651 bytes
  • ../../../terraform/skills/terraform-search-import/SKILL.mddoc9,927 bytes
  • ../../../terraform/skills/terraform-search-import/references/MANUAL-IMPORT.mddoc2,449 bytes
  • ../../../terraform/skills/terraform-search-import/scripts/list_resources.shruns1,231 bytes
  • ../../../terraform/skills/terraform-stacks/SKILL.mddoc17,274 bytes
  • ../../../terraform/skills/terraform-stacks/references/api-monitoring.mddoc16,608 bytes
  • ../../../terraform/skills/terraform-stacks/references/component-blocks.mddoc10,147 bytes
  • ../../../terraform/skills/terraform-stacks/references/deployment-blocks.mddoc8,863 bytes
  • ../../../terraform/skills/terraform-stacks/references/examples.mddoc30,727 bytes
  • ../../../terraform/skills/terraform-stacks/references/linked-stacks.mddoc4,341 bytes
  • ../../../terraform/skills/terraform-stacks/references/troubleshooting.mddoc16,711 bytes
  • ../../../terraform/skills/terraform-style-guide/SECURITY.mddoc4,872 bytes
  • ../../../terraform/skills/terraform-style-guide/SKILL.mddoc6,963 bytes
  • ../../../terraform/skills/terraform-test/SKILL.mddoc11,148 bytes
  • ../../../terraform/skills/terraform-test/references/CI_CD.mddoc1,931 bytes
  • ../../../terraform/skills/terraform-test/references/EXAMPLES.mddoc6,609 bytes
  • ../../../terraform/skills/terraform-test/references/MOCK_PROVIDERS.mddoc4,519 bytes
Read SKILL.md

# AWS AMI Builder

Build Amazon Machine Images (AMIs) using Packer's `amazon-ebs` builder.

**Reference:** [Amazon EBS Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/amazon/latest/components/builder/ebs)

> **Note:** Building AMIs incurs AWS costs (EC2 instances, EBS storage, data transfer). Builds typically take 10-30 minutes depending on provisioning complexity.

## Basic AMI Template

```hcl
packer {
  required_plugins {
    amazon = {
View the complete source on GitHub

Skills included

  • aws-ami-builder
  • azure-image-builder
  • push-to-registry
  • windows-builder
  • azure-verified-modules
  • new-terraform-provider
  • provider-actions
  • provider-configuration
  • provider-docs
  • provider-ephemeral-resources
  • provider-framework-migration
  • provider-resources
  • provider-test-patterns
  • refactor-module
  • run-acceptance-tests
  • terraform-policy
  • terraform-search-import
  • terraform-stacks
  • terraform-style-guide
  • terraform-test

Repository facts

License
MPL-2.0
Created
Nov 8, 2025
Last pushed
Nov 4, 2026
Forks
137
Open issues
12
Project activity
Active

Rank over the last 12 weeks

Now #949 · best #625 · down 164 in 30 days

  1. #938 on Oct 30
  2. #940 on Oct 31
  3. #942 on Nov 1
  4. #947 on Nov 2
  5. #954 from Nov 3 to Nov 4
  6. #949 since Nov 5
60 earlier periods
  1. #641 on Aug 2
  2. #636 on Aug 7
  3. #630 on Aug 8
  4. #634 on Aug 9
  5. #662 on Aug 10
  6. #667 on Aug 11
  7. #659 on Aug 12
  8. #656 on Aug 13
  9. #653 on Aug 14
  10. #629 on Aug 15
  11. #641 on Aug 16
  12. #653 on Aug 17
  13. #656 from Aug 19 to Aug 20
  14. #658 on Aug 21
  15. #625 on Aug 22
  16. #655 on Aug 23
  17. #670 on Aug 24
  18. #676 on Aug 25
  19. #673 on Aug 27
  20. #692 on Aug 28
  21. #642 on Aug 30
  22. #672 on Aug 31
  23. #687 on Sep 1
  24. #674 on Sep 2
  25. #680 on Sep 3
  26. #656 on Sep 4
  27. #648 on Sep 5
  28. #688 on Sep 7
  29. #707 on Sep 15
  30. #719 on Sep 16
  31. #721 on Sep 17
  32. #679 on Sep 19
  33. #694 on Sep 20
  34. #714 on Sep 21
  35. #730 on Sep 22
  36. #681 on Sep 25
  37. #711 on Sep 27
  38. #725 on Sep 28
  39. #759 on Sep 29
  40. #693 on Oct 1
  41. #710 on Oct 2
  42. #691 on Oct 3
  43. #721 on Oct 4
  44. #725 on Oct 5
  45. #746 on Oct 7
  46. #785 on Oct 8
  47. #752 on Oct 9
  48. #736 on Oct 10
  49. #743 on Oct 11
  50. #764 on Oct 13
  51. #775 on Oct 14
  52. #770 on Oct 15
  53. #752 on Oct 17
  54. #786 on Oct 19
  55. #793 on Oct 20
  56. #794 on Oct 23
  57. #758 on Oct 24
  58. #917 on Oct 25
  59. #930 on Oct 28
  60. #935 on Oct 29

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 4, 2026

Changed on Nov 4, 2026

New signal: Dangerous shell operation

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 97 notes
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/aws-ami-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/terraform/skills/terraform-policy/SKILL.md:23 Analysis incomplete: physical or joined line exceeds character limit
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/azure-image-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/push-to-registry/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/push-to-registry/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/windows-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/packer/skills/windows-builder/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/terraform/skills/azure-verified-modules/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/terraform/skills/azure-verified-modules/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • plugins/terraform/skills/azure-verified-modules/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 576 signals by file

plugins/packer/.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "HashiCorp",     "url": "https://github.com/hashicorp"
  • Network accessline 6
    "name": "HashiCorp",     "url": "https://github.com/hashicorp"   },
  • Network accessline 7
    "url": "https://github.com/hashicorp"
  • Network accessline 8
    },   "homepage": "https://developer.hashicorp.com/packer",   "repository": "https://github.com/hashicorp/agent-skills",
  • Network accessline 9
    "homepage": "https://developer.hashicorp.com/packer",
  • Network accessline 10
    "repository": "https://github.com/hashicorp/agent-skills",

plugins/packer/skills/aws-ami-builder/SKILL.md

  • Network accessline 12
    **Reference:** [Amazon EBS Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/amazon/latest/components/builder/ebs)
  • Dangerous shell operationline 65
    "sudo apt-get update",
  • Dangerous shell operationline 66
    "sudo apt-get upgrade -y",
  • Access to secretsline 127
    [Credential-related source omitted]
  • Access to secretsline 128
    [Credential-related source omitted]
  • Access to secretsline 133
    [Credential-related source omitted]
  • Network accessline 171
    - [Amazon EBS Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/amazon/latest/components/builder/ebs)
  • Network accessline 172
    - [AWS AMI Documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html)

plugins/packer/skills/azure-image-builder/SKILL.md

  • Network accessline 12
    **Reference:** [Azure ARM Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/azure/latest/components/builder/arm)
  • Network accessline 12
    **Reference:** [Azure ARM Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/azure/latest/components/builder/arm)
  • Access to secretsline 33
    [Credential-related source omitted]
  • Access to secretsline 33
    [Credential-related source omitted]
  • Access to secretsline 57
    [Credential-related source omitted]
  • Access to secretsline 57
    [Credential-related source omitted]
  • Dangerous shell operationline 83
    "sudo apt-get update",
  • Dangerous shell operationline 83
    "sudo apt-get update",
  • Dangerous shell operationline 84
    "sudo apt-get upgrade -y",
  • Dangerous shell operationline 84
    "sudo apt-get upgrade -y",
  • Access to secretsline 95
    [Credential-related source omitted]
  • Access to secretsline 95
    [Credential-related source omitted]
  • Access to secretsline 130
    [Credential-related source omitted]
  • Access to secretsline 130
    [Credential-related source omitted]
  • Access to secretsline 149
    [Credential-related source omitted]
  • Access to secretsline 149
    [Credential-related source omitted]
  • Network accessline 182
    - [Azure ARM Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/azure/latest/components/builder/arm)
  • Network accessline 182
    - [Azure ARM Builder](https://developer.hashicorp.com/packer/integrations/hashicorp/azure/latest/components/builder/arm)
  • Network accessline 183
    - [Azure Compute Gallery](https://learn.microsoft.com/en-us/azure/virtual-machines/azure-compute-gallery)
  • Network accessline 183
    - [Azure Compute Gallery](https://learn.microsoft.com/en-us/azure/virtual-machines/azure-compute-gallery)

plugins/packer/skills/push-to-registry/SKILL.md

  • Network accessline 12
    **Reference:** [HCP Packer Registry](https://developer.hashicorp.com/hcp/docs/packer)
  • Network accessline 12
    **Reference:** [HCP Packer Registry](https://developer.hashicorp.com/hcp/docs/packer)
  • Dangerous shell operationline 67
    "sudo apt-get update",
  • Dangerous shell operationline 67
    "sudo apt-get update",
  • Dangerous shell operationline 68
    "sudo apt-get upgrade -y",
  • Dangerous shell operationline 68
    "sudo apt-get upgrade -y",
  • Access to secretsline 80
    [Credential-related source omitted]
  • Access to secretsline 80
    [Credential-related source omitted]
  • Access to secretsline 138
    [Credential-related source omitted]
  • Access to secretsline 138
    [Credential-related source omitted]
  • Access to secretsline 180
    [Credential-related source omitted]
  • Access to secretsline 180
    [Credential-related source omitted]
  • Network accessline 203
    - [HCP Packer Documentation](https://developer.hashicorp.com/hcp/docs/packer)
  • Network accessline 203
    - [HCP Packer Documentation](https://developer.hashicorp.com/hcp/docs/packer)
  • Network accessline 204
    - [hcp_packer_registry Block](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/hcp_packer_registry)
  • Network accessline 204
    - [hcp_packer_registry Block](https://developer.hashicorp.com/packer/docs/templates/hcl_templates/blocks/build/hcp_packer_registry)
  • Network accessline 205
    - [HCP Terraform Provider](https://registry.terraform.io/providers/hashicorp/hcp/latest/docs/data-sources/packer_artifact)
  • Network accessline 205
    - [HCP Terraform Provider](https://registry.terraform.io/providers/hashicorp/hcp/latest/docs/data-sources/packer_artifact)

plugins/packer/skills/windows-builder/SKILL.md

  • Network accessline 12
    **Reference:** [WinRM Communicator](https://developer.hashicorp.com/packer/docs/communicators/winrm)
  • Network accessline 12
    **Reference:** [WinRM Communicator](https://developer.hashicorp.com/packer/docs/communicators/winrm)
  • Access to secretsline 72
    [Credential-related source omitted]
  • Access to secretsline 72
    [Credential-related source omitted]
  • Network accessline 106
    inline = [       "Set-ExecutionPolicy Bypass -Scope Process -Force",       "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
  • Network accessline 106
    inline = [       "Set-ExecutionPolicy Bypass -Scope Process -Force",       "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
  • Network accessline 107
    "Set-ExecutionPolicy Bypass -Scope Process -Force",       "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"     ]
  • Network accessline 107
    "Set-ExecutionPolicy Bypass -Scope Process -Force",       "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"     ]
  • Network accessline 108
    "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
  • Network accessline 108
    "iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))"
  • Network accessline 187
    - [WinRM Communicator](https://developer.hashicorp.com/packer/docs/communicators/winrm)
  • Network accessline 187
    - [WinRM Communicator](https://developer.hashicorp.com/packer/docs/communicators/winrm)
  • Network accessline 188
    - [PowerShell Provisioner](https://developer.hashicorp.com/packer/docs/provisioners/powershell)
  • Network accessline 188
    - [PowerShell Provisioner](https://developer.hashicorp.com/packer/docs/provisioners/powershell)

plugins/terraform/.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "HashiCorp",     "url": "https://github.com/hashicorp"
  • Network accessline 6
    "name": "HashiCorp",     "url": "https://github.com/hashicorp"   },
  • Network accessline 7
    "url": "https://github.com/hashicorp"
  • Network accessline 8
    },   "homepage": "https://developer.hashicorp.com/terraform",   "repository": "https://github.com/hashicorp/agent-skills",
  • Network accessline 9
    "homepage": "https://developer.hashicorp.com/terraform",
  • Network accessline 10
    "repository": "https://github.com/hashicorp/agent-skills",

plugins/terraform/skills/azure-verified-modules/SKILL.md

  • Network accessline 12
    **References:** - [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/)
  • Network accessline 12
    **References:** - [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/)
  • Network accessline 13
    - [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/)
  • Network accessline 13
    - [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/)
  • Network accessline 14
    - [AVM Module Specifications](https://azure.github.io/Azure-Verified-Modules/specs/module-specs/)
  • Network accessline 14
    - [AVM Module Specifications](https://azure.github.io/Azure-Verified-Modules/specs/module-specs/)
  • Network accessline 39
    - Modules **MUST** be referenced using HashiCorp Terraform registry reference to a pinned version   - Example: `source = "Azure/xxx/azurerm"` with `version = "1.2.3"` - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xx
  • Network accessline 39
    - Modules **MUST** be referenced using HashiCorp Terraform registry reference to a pinned version   - Example: `source = "Azure/xxx/azurerm"` with `version = "1.2.3"` - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xx
  • Network accessline 40
    - Example: `source = "Azure/xxx/azurerm"` with `version = "1.2.3"` - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xxx.git` or `github.com/xxx/yyy`) - Modules **MUST NOT** contain references to non-AVM modules
  • Network accessline 40
    - Example: `source = "Azure/xxx/azurerm"` with `version = "1.2.3"` - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xxx.git` or `github.com/xxx/yyy`) - Modules **MUST NOT** contain references to non-AVM modules
  • Network accessline 41
    - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xxx.git` or `github.com/xxx/yyy`)
  • Network accessline 41
    - Modules **MUST NOT** use git references (e.g., `git::https://xxx.yyy/xxx.git` or `github.com/xxx/yyy`)
  • Network accessline 270
    - Follow [HashiCorp's naming rules](https://www.terraform.io/docs/extend/best-practices/naming.html)
  • Network accessline 270
    - Follow [HashiCorp's naming rules](https://www.terraform.io/docs/extend/best-practices/naming.html)
  • Network accessline 481
    - Documentation **MUST** be automatically generated via [Terraform Docs](https://github.com/terraform-docs/terraform-docs)
  • Network accessline 481
    - Documentation **MUST** be automatically generated via [Terraform Docs](https://github.com/terraform-docs/terraform-docs)

plugins/terraform/skills/new-terraform-provider/assets/main.go

  • Executable scriptline 1
    Executable file
  • Executable scriptline 1
    Executable file
  • Network accessline 20
    // goreleaser can pass other information to the main package, such as the specific commit 	// https://goreleaser.com/cookbooks/using-main.version/
  • Network accessline 20
    // goreleaser can pass other information to the main package, such as the specific commit 	// https://goreleaser.com/cookbooks/using-main.version/
  • Network accessline 21
    // https://goreleaser.com/cookbooks/using-main.version/
  • Network accessline 21
    // https://goreleaser.com/cookbooks/using-main.version/

plugins/terraform/skills/new-terraform-provider/assets/provider.go

  • Executable scriptline 1
    Executable file
  • Executable scriptline 1
    Executable file
  • Access to secretsline 33
    [Credential-related source omitted]
  • Access to secretsline 33
    [Credential-related source omitted]
  • Access to secretsline 34
    [Credential-related source omitted]
  • Access to secretsline 34
    [Credential-related source omitted]
  • Access to secretsline 49
    [Credential-related source omitted]
  • Access to secretsline 49
    [Credential-related source omitted]
  • Access to secretsline 55
    [Credential-related source omitted]
  • Access to secretsline 55
    [Credential-related source omitted]
  • Access to secretsline 58
    [Credential-related source omitted]
  • Access to secretsline 58
    [Credential-related source omitted]
  • Access to secretsline 82
    [Credential-related source omitted]
  • Access to secretsline 82
    [Credential-related source omitted]
  • Access to secretsline 84
    [Credential-related source omitted]
  • Access to secretsline 84
    [Credential-related source omitted]
  • Access to secretsline 98
    [Credential-related source omitted]
  • Access to secretsline 98
    [Credential-related source omitted]
  • Access to secretsline 110
    [Credential-related source omitted]
  • Access to secretsline 110
    [Credential-related source omitted]
  • Access to secretsline 112
    [Credential-related source omitted]
  • Access to secretsline 112
    [Credential-related source omitted]

plugins/terraform/skills/provider-actions/SKILL.md

  • Network accessline 16
    **References:** - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 16
    **References:** - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 17
    - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 17
    - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 18
    - [Terraform Plugin Framework Actions](https://developer.hashicorp.com/terraform/plugin/framework/actions)
  • Network accessline 18
    - [Terraform Plugin Framework Actions](https://developer.hashicorp.com/terraform/plugin/framework/actions)
  • Network accessline 478
    Some providers (e.g. terraform-provider-aws) track release notes with [go-changelog](https://github.com/hashicorp/go-changelog): one file per PR
  • Network accessline 478
    Some providers (e.g. terraform-provider-aws) track release notes with [go-changelog](https://github.com/hashicorp/go-changelog): one file per PR
  • Network accessline 479
    [go-changelog](https://github.com/hashicorp/go-changelog): one file per PR
  • Network accessline 479
    [go-changelog](https://github.com/hashicorp/go-changelog): one file per PR
  • Network accessline 510
    - [Terraform Plugin Framework Documentation](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 510
    - [Terraform Plugin Framework Documentation](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 511
    - [Terraform Provider Development](https://developer.hashicorp.com/terraform/plugin)
  • Network accessline 511
    - [Terraform Provider Development](https://developer.hashicorp.com/terraform/plugin)
  • Network accessline 512
    - [terraform-plugin-framework GitHub](https://github.com/hashicorp/terraform-plugin-framework)
  • Network accessline 512
    - [terraform-plugin-framework GitHub](https://github.com/hashicorp/terraform-plugin-framework)
  • Network accessline 513
    - [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 513
    - [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 514
    - [Writing a Terraform Action (blog)](https://danielmschmidt.de/posts/2025-09-26-writing-a-terraform-action/)
  • Network accessline 514
    - [Writing a Terraform Action (blog)](https://danielmschmidt.de/posts/2025-09-26-writing-a-terraform-action/)

plugins/terraform/skills/provider-configuration/SKILL.md

  • Network accessline 26
    well-designed credential provider chain is what separates a production-grade provider from a demo. The examples use a fictional `examplecloud` provider and the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework/pr
  • Network accessline 26
    well-designed credential provider chain is what separates a production-grade provider from a demo. The examples use a fictional `examplecloud` provider and the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework/pr
  • Network accessline 28
    and the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework/providers).
  • Network accessline 28
    and the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework/providers).
  • Access to secretsline 55
    [Credential-related source omitted]
  • Access to secretsline 55
    [Credential-related source omitted]
  • Access to secretsline 57
    [Credential-related source omitted]
  • Access to secretsline 57
    [Credential-related source omitted]
  • Network accessline 83
    Resolve credentials by consulting an ordered list of sources and taking the first one that produces a **complete** set. This is the pattern the AWS provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base),
  • Network accessline 83
    Resolve credentials by consulting an ordered list of sources and taking the first one that produces a **complete** set. This is the pattern the AWS provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base),
  • Network accessline 84
    first one that produces a **complete** set. This is the pattern the AWS provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base), and it generalizes to any provider. The canonical precedence, highest first:
  • Network accessline 84
    first one that produces a **complete** set. This is the pattern the AWS provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base), and it generalizes to any provider. The canonical precedence, highest first:
  • Network accessline 85
    provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base),
  • Network accessline 85
    provider uses via [`aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base),
  • Access to secretsline 90
    [Credential-related source omitted]
  • Access to secretsline 90
    [Credential-related source omitted]
  • Access to secretsline 107
    [Credential-related source omitted]
  • Access to secretsline 107
    [Credential-related source omitted]
  • Access to secretsline 161
    [Credential-related source omitted]
  • Access to secretsline 161
    [Credential-related source omitted]
  • Access to secretsline 164
    [Credential-related source omitted]
  • Access to secretsline 164
    [Credential-related source omitted]
  • Access to secretsline 166
    [Credential-related source omitted]
  • Access to secretsline 166
    [Credential-related source omitted]
  • Access to secretsline 167
    [Credential-related source omitted]
  • Access to secretsline 167
    [Credential-related source omitted]
  • Network accessline 187
    [Credential-related source omitted]
  • Network accessline 187
    [Credential-related source omitted]
  • Access to secretsline 187
    [Credential-related source omitted]
  • Access to secretsline 187
    [Credential-related source omitted]
  • Network accessline 188
    [Credential-related source omitted]
  • Network accessline 188
    [Credential-related source omitted]
  • Access to secretsline 188
    [Credential-related source omitted]
  • Access to secretsline 188
    [Credential-related source omitted]
  • Network accessline 189
    "~/.examplecloud/credentials. See https://example.com/docs/auth.",
  • Network accessline 189
    "~/.examplecloud/credentials. See https://example.com/docs/auth.",

plugins/terraform/skills/provider-configuration/references/case-studies.md

  • Network accessline 9
    The Terraform AWS provider, the AWSCC provider, and the S3 backend all resolve credentials through one shared library, [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base)
  • Network accessline 9
    The Terraform AWS provider, the AWSCC provider, and the S3 backend all resolve credentials through one shared library, [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base)
  • Network accessline 10
    resolve credentials through one shared library, [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base) (MPL-2.0). Its entry point `GetAwsConfig(ctx, *Config)` is the most
  • Network accessline 10
    resolve credentials through one shared library, [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base) (MPL-2.0). Its entry point `GetAwsConfig(ctx, *Config)` is the most
  • Network accessline 11
    [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base)
  • Network accessline 11
    [`hashicorp/aws-sdk-go-base`](https://github.com/hashicorp/aws-sdk-go-base)
  • Access to secretsline 83
    [Credential-related source omitted]
  • Access to secretsline 83
    [Credential-related source omitted]

plugins/terraform/skills/provider-configuration/references/credential-chain.md

  • Access to secretsline 222
    [Credential-related source omitted]
  • Access to secretsline 222
    [Credential-related source omitted]
  • Access to secretsline 223
    [Credential-related source omitted]
  • Access to secretsline 223
    [Credential-related source omitted]
  • Access to secretsline 354
    [Credential-related source omitted]
  • Access to secretsline 354
    [Credential-related source omitted]
  • Access to secretsline 382
    [Credential-related source omitted]
  • Access to secretsline 382
    [Credential-related source omitted]

plugins/terraform/skills/provider-docs/references/hashicorp-provider-docs.md

  • Network accessline 3
    Source of truth for this skill: - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 3
    Source of truth for this skill: - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 4
    - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 4
    - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 141
    - Provider docs guidance:   - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 141
    - Provider docs guidance:   - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 142
    - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 142
    - https://developer.hashicorp.com/terraform/registry/providers/docs
  • Network accessline 144
    - https://github.com/hashicorp/terraform-plugin-docs
  • Network accessline 144
    - https://github.com/hashicorp/terraform-plugin-docs

plugins/terraform/skills/provider-ephemeral-resources/SKILL.md

  • Network accessline 28
    Official docs: [Ephemeral Resources](https://developer.hashicorp.com/terraform/plugin/framework/ephemeral-resources).
  • Network accessline 28
    Official docs: [Ephemeral Resources](https://developer.hashicorp.com/terraform/plugin/framework/ephemeral-resources).

plugins/terraform/skills/provider-framework-migration/SKILL.md

  • Network accessline 34
    Official guide: [Framework migration](https://developer.hashicorp.com/terraform/plugin/framework/migrating).
  • Network accessline 34
    Official guide: [Framework migration](https://developer.hashicorp.com/terraform/plugin/framework/migrating).

plugins/terraform/skills/provider-resources/SKILL.md

  • Network accessline 27
    **Use the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 27
    **Use the [Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 29
    resources that already exist on it; do not write new code against it. A provider can serve both during migration by muxing ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)),
  • Network accessline 29
    resources that already exist on it; do not write new code against it. A provider can serve both during migration by muxing ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)),
  • Network accessline 30
    provider can serve both during migration by muxing ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)), so adopting the Framework never requires a big-bang rewrite. To tell which
  • Network accessline 30
    provider can serve both during migration by muxing ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)), so adopting the Framework never requires a big-bang rewrite. To tell which
  • Network accessline 31
    ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)),
  • Network accessline 31
    ([terraform-plugin-mux](https://developer.hashicorp.com/terraform/plugin/mux)),
  • Network accessline 518
    - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 518
    - [Terraform Plugin Framework](https://developer.hashicorp.com/terraform/plugin/framework)
  • Network accessline 519
    - [Resource Development](https://developer.hashicorp.com/terraform/plugin/framework/resources)
  • Network accessline 519
    - [Resource Development](https://developer.hashicorp.com/terraform/plugin/framework/resources)
  • Network accessline 520
    - [Data Source Development](https://developer.hashicorp.com/terraform/plugin/framework/data-sources)
  • Network accessline 520
    - [Data Source Development](https://developer.hashicorp.com/terraform/plugin/framework/data-sources)
  • Network accessline 521
    - [HashiCorp Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)
  • Network accessline 521
    - [HashiCorp Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)

plugins/terraform/skills/provider-resources/references/design-principles.md

  • Network accessline 3
    Distilled from HashiCorp's [Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)
  • Network accessline 3
    Distilled from HashiCorp's [Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)
  • Network accessline 4
    [Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)
  • Network accessline 4
    [Provider Design Principles](https://developer.hashicorp.com/terraform/plugin/best-practices/hashicorp-provider-design-principles)

plugins/terraform/skills/provider-test-patterns/SKILL.md

  • Network accessline 22
    Patterns for writing acceptance tests using [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 22
    Patterns for writing acceptance tests using [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 23
    [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 23
    [terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing)
  • Network accessline 24
    with the [Plugin Framework](https://github.com/hashicorp/terraform-plugin-framework).
  • Network accessline 24
    with the [Plugin Framework](https://github.com/hashicorp/terraform-plugin-framework).
  • Network accessline 26
    Source: [HashiCorp Testing Patterns](https://developer.hashicorp.com/terraform/plugin/testing/testing-patterns)
  • Network accessline 26
    Source: [HashiCorp Testing Patterns](https://developer.hashicorp.com/terraform/plugin/testing/testing-patterns)
  • Access to secretsline 148
    [Credential-related source omitted]
  • Access to secretsline 148
    [Credential-related source omitted]
  • Network accessline 163
    resource.TestCheckResourceAttrSet(name, "id"),     resource.TestCheckNoResourceAttr(name, "removed"),     resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),
  • Network accessline 163
    resource.TestCheckResourceAttrSet(name, "id"),     resource.TestCheckNoResourceAttr(name, "removed"),     resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),
  • Network accessline 164
    resource.TestCheckNoResourceAttr(name, "removed"),     resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),     resource.TestCheckResourceAttrPair(res1, "ref_id", res2, "id"),
  • Network accessline 164
    resource.TestCheckNoResourceAttr(name, "removed"),     resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),     resource.TestCheckResourceAttrPair(res1, "ref_id", res2, "id"),
  • Network accessline 165
    resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),
  • Network accessline 165
    resource.TestMatchResourceAttr(name, "url", regexp.MustCompile(`^https://`)),
  • Network accessline 273
    // TestAccExample_regressionGH1234 verifies fix for https://github.com/org/repo/issues/1234
  • Network accessline 273
    // TestAccExample_regressionGH1234 verifies fix for https://github.com/org/repo/issues/1234
  • Access to secretsline 411
    [Credential-related source omitted]
  • Access to secretsline 411
    [Credential-related source omitted]
  • Access to secretsline 412
    [Credential-related source omitted]
  • Access to secretsline 412
    [Credential-related source omitted]

plugins/terraform/skills/provider-test-patterns/references/checks.md

  • Network accessline 6
    Source: [State Checks](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/state-checks/resource),
  • Network accessline 6
    Source: [State Checks](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/state-checks/resource),
  • Network accessline 7
    [Plan Checks](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/plan-checks)
  • Network accessline 7
    [Plan Checks](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/plan-checks)
  • Access to secretsline 46
    [Credential-related source omitted]
  • Access to secretsline 46
    [Credential-related source omitted]
  • Access to secretsline 207
    [Credential-related source omitted]
  • Access to secretsline 207
    [Credential-related source omitted]

plugins/terraform/skills/provider-test-patterns/references/ephemeral.md

  • Network accessline 8
    Source: [Ephemeral Resource Acceptance Tests](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/ephemeral-resources)
  • Network accessline 8
    Source: [Ephemeral Resource Acceptance Tests](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/ephemeral-resources)

plugins/terraform/skills/provider-test-patterns/references/sweepers.md

  • Network accessline 7
    Source: [Sweepers](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/sweepers)
  • Network accessline 7
    Source: [Sweepers](https://developer.hashicorp.com/terraform/plugin/testing/acceptance-tests/sweepers)

plugins/terraform/skills/refactor-module/SKILL.md

  • Network accessline 527
    # Use semantic versioning for modules module "vpc" {   source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"
  • Network accessline 527
    # Use semantic versioning for modules module "vpc" {   source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"
  • Network accessline 528
    module "vpc" {   source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"   version = "~> 1.2"
  • Network accessline 528
    module "vpc" {   source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"   version = "~> 1.2"
  • Network accessline 529
    source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"
  • Network accessline 529
    source  = "git::https://github.com/org/terraform-modules.git//vpc?ref=v1.2.0"
  • Network accessline 548
    ## Related Skills - [Terraform code generation](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/terraform-style-guide/SKILL.md) - Style guide for the new Terraform Module
  • Network accessline 548
    ## Related Skills - [Terraform code generation](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/terraform-style-guide/SKILL.md) - Style guide for the new Terraform Module
  • Network accessline 549
    - [Terraform code generation](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/terraform-style-guide/SKILL.md) - Style guide for the new Terraform Module
  • Network accessline 549
    - [Terraform code generation](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/terraform-style-guide/SKILL.md) - Style guide for the new Terraform Module
  • Network accessline 550
    - [Azure Verified Modules](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/azure-verified-modules/SKILL.md) - Recommended module specifications for Azure
  • Network accessline 550
    - [Azure Verified Modules](https://raw.githubusercontent.com/hashicorp/agent-skills/refs/heads/main/plugins/terraform/skills/azure-verified-modules/SKILL.md) - Recommended module specifications for Azure
  • Network accessline 552
    ## Resources - [Terraform Module Development](https://developer.hashicorp.com/terraform/language/modules/develop)
  • Network accessline 552
    ## Resources - [Terraform Module Development](https://developer.hashicorp.com/terraform/language/modules/develop)
  • Network accessline 553
    - [Terraform Module Development](https://developer.hashicorp.com/terraform/language/modules/develop)
  • Network accessline 553
    - [Terraform Module Development](https://developer.hashicorp.com/terraform/language/modules/develop)
  • Network accessline 554
    - [Module Best Practices](https://developer.hashicorp.com/terraform/cloud-docs/registry/design)
  • Network accessline 554
    - [Module Best Practices](https://developer.hashicorp.com/terraform/cloud-docs/registry/design)

plugins/terraform/skills/run-acceptance-tests/SKILL.md

  • Access to secretsline 37
    [Credential-related source omitted]
  • Access to secretsline 37
    [Credential-related source omitted]

plugins/terraform/skills/terraform-policy/README.md

  • Network accessline 3
    A family of focused agent skills for working with [Terraform Policy](https://developer.hashicorp.com/terraform/cloud-docs/policy-enforcement) — HCP Terraform's native policy-as-code engine for `.policy.hcl` and `.policytest.hcl` files.
  • Network accessline 3
    A family of focused agent skills for working with [Terraform Policy](https://developer.hashicorp.com/terraform/cloud-docs/policy-enforcement) — HCP Terraform's native policy-as-code engine for `.policy.hcl` and `.policytest.hcl` files.

plugins/terraform/skills/terraform-policy/examples/conversion/cloudfront-associated-with-waf/cloudfront-associated-with-waf.sentinel

  • Network accessline 16
    const = { 	"policy_name": "cloudfront-associated-with-waf", 	"message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/clo
  • Network accessline 16
    const = { 	"policy_name": "cloudfront-associated-with-waf", 	"message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/clo
  • Network accessline 17
    "policy_name": "cloudfront-associated-with-waf", 	"message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudfront-con
  • Network accessline 17
    "policy_name": "cloudfront-associated-with-waf", 	"message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudfront-con
  • Network accessline 18
    "message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudfront-controls.html#cloudfront-6 for more details.",
  • Network accessline 18
    "message":     "'aws_cloudfront_distribution' are associated with either AWS WAF Classic or AWS WAF web ACLs. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudfront-controls.html#cloudfront-6 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/cloudtrail-server-side-encryption-enabled/cloudtrail-server-side-encryption-enabled.sentinel

  • Network accessline 17
    "resource_aws_cloudtrail":         "aws_cloudtrail", 	"policy_name":                     "cloudtrail-server-side-encryption-enabled", 	"message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources
  • Network accessline 17
    "resource_aws_cloudtrail":         "aws_cloudtrail", 	"policy_name":                     "cloudtrail-server-side-encryption-enabled", 	"message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources
  • Network accessline 18
    "policy_name":                     "cloudtrail-server-side-encryption-enabled", 	"message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources. Refer to https://docs.aws.amazon.com/securityhub/lat
  • Network accessline 18
    "policy_name":                     "cloudtrail-server-side-encryption-enabled", 	"message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources. Refer to https://docs.aws.amazon.com/securityhub/lat
  • Network accessline 19
    "message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudtrail-controls.html#cloudtrail-2 for more details.",
  • Network accessline 19
    "message":                         "Attribute 'kms_key_id' must be present for 'aws_cloudtrail' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/cloudtrail-controls.html#cloudtrail-2 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/dms-endpoint-should-be-ssl-configured/dms-endpoint-should-be-ssl-configured.sentinel

  • Network accessline 14
    const = { 	"policy_name":               "dms-endpoint-should-be-ssl-configured", 	"message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/use
  • Network accessline 14
    const = { 	"policy_name":               "dms-endpoint-should-be-ssl-configured", 	"message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/use
  • Network accessline 15
    "policy_name":               "dms-endpoint-should-be-ssl-configured", 	"message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-
  • Network accessline 15
    "policy_name":               "dms-endpoint-should-be-ssl-configured", 	"message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-
  • Network accessline 16
    "message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-controls.html#dms-9 for more details.",
  • Network accessline 16
    "message":                   "Attribute 'certificate_arn' shouldn't be empty for AWS DMS Endpoint. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-controls.html#dms-9 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/dms-endpoints-should-use-ssl/dms-endpoints-should-use-ssl.sentinel

  • Network accessline 16
    const = { 	"policy_name":               "dms-ssl-enabled", 	"message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/sec
  • Network accessline 16
    const = { 	"policy_name":               "dms-ssl-enabled", 	"message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/sec
  • Network accessline 17
    "policy_name":               "dms-ssl-enabled", 	"message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/securityhub/la
  • Network accessline 17
    "policy_name":               "dms-ssl-enabled", 	"message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/securityhub/la
  • Network accessline 18
    "message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-controls.html#dms-9 for more d
  • Network accessline 18
    "message":                   "Attribute 'ssl_mode' must be set to one of: require, verify-ca, verify-full for 'aws_dms_endpoint' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/dms-controls.html#dms-9 for more d

plugins/terraform/skills/terraform-policy/examples/conversion/ec2-network-acl-should-have-subnet-ids/ec2-network-acl-should-have-subnet-ids.sentinel

  • Network accessline 17
    const = { 	"policy_name":                          "ec2-network-acl-should-have-subnet-ids", 	"message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' 
  • Network accessline 17
    const = { 	"policy_name":                          "ec2-network-acl-should-have-subnet-ids", 	"message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' 
  • Network accessline 18
    "policy_name":                          "ec2-network-acl-should-have-subnet-ids", 	"message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' through 'aw
  • Network accessline 18
    "policy_name":                          "ec2-network-acl-should-have-subnet-ids", 	"message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' through 'aw
  • Network accessline 19
    "message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' through 'aws_network_acl_association'. Refer to https://docs.aws.amazon.com/securityhub/latest
  • Network accessline 19
    "message":                              "Attribute 'subnet_ids' must be present for 'aws_network_acl' resources or it should include 'subnet_ids' through 'aws_network_acl_association'. Refer to https://docs.aws.amazon.com/securityhub/latest

plugins/terraform/skills/terraform-policy/examples/conversion/ec2-vpc-default-security-group-no-traffic/ec2-vpc-default-security-group-no-traffic.sentinel

  • Network accessline 16
    const = { 	"message":                             "VPC default security group should not allow inbound and outbound traffic. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2 for more details.",
  • Network accessline 16
    const = { 	"message":                             "VPC default security group should not allow inbound and outbound traffic. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2 for more details.",
  • Network accessline 17
    "message":                             "VPC default security group should not allow inbound and outbound traffic. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2 for more details.",
  • Network accessline 17
    "message":                             "VPC default security group should not allow inbound and outbound traffic. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-2 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/efs-access-point-should-enforce-user-identity/efs-access-point-should-enforce-user-identity.sentinel

  • Network accessline 16
    const = { 	"policy_name":                   "efs-access-point-should-enforce-user-identity", 	"message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.
  • Network accessline 16
    const = { 	"policy_name":                   "efs-access-point-should-enforce-user-identity", 	"message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.
  • Network accessline 17
    "policy_name":                   "efs-access-point-should-enforce-user-identity", 	"message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.com/securit
  • Network accessline 17
    "policy_name":                   "efs-access-point-should-enforce-user-identity", 	"message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.com/securit
  • Network accessline 18
    "message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/efs-controls.html#efs-4 for more details.",
  • Network accessline 18
    "message":                       "Attribute 'posix_user' should be defined for 'aws_efs_access_point' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/efs-controls.html#efs-4 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/elasticache-redis-replication-group-encryption-at-transit-enabled/elasticache-redis-replication-group-encryption-at-transit-enabled.sentinel

  • Network accessline 37
    "address":        v.address, 			"module_address": v.module_address, 			"message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub
  • Network accessline 37
    "address":        v.address, 			"module_address": v.module_address, 			"message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub
  • Network accessline 38
    "module_address": v.module_address, 			"message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/elasticache-co
  • Network accessline 38
    "module_address": v.module_address, 			"message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/elasticache-co
  • Network accessline 39
    "message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/elasticache-controls.html#elasticache-5 for more deta
  • Network accessline 39
    "message":        "Attribute 'transit_encryption_enabled' must be true for 'aws_elasticache_replication_group' resources.Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/elasticache-controls.html#elasticache-5 for more deta

plugins/terraform/skills/terraform-policy/examples/conversion/elasticsearch-encrypted-at-rest/elasticsearch-encrypted-at-rest.sentinel

  • Network accessline 15
    const = { 	"policy_name":                       "elasticsearch-encrypted-at-rest", 	"message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. 
  • Network accessline 15
    const = { 	"policy_name":                       "elasticsearch-encrypted-at-rest", 	"message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. 
  • Network accessline 16
    "policy_name":                       "elasticsearch-encrypted-at-rest", 	"message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. Refer to ht
  • Network accessline 16
    "policy_name":                       "elasticsearch-encrypted-at-rest", 	"message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. Refer to ht
  • Network accessline 17
    "message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/es-controls.html#e
  • Network accessline 17
    "message":                           "Attribute 'enabled' must be set to true for the attribute 'encrypt_at_rest' for 'aws_elasticsearch_domain' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/es-controls.html#e

plugins/terraform/skills/terraform-policy/examples/conversion/elasticsearch-https-required/elasticsearch-https-required.sentinel

  • Network accessline 18
    const = { 	"policy_name":                       "elasticsearch-https-required", 	"message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https'
  • Network accessline 18
    const = { 	"policy_name":                       "elasticsearch-https-required", 	"message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https'
  • Network accessline 19
    "policy_name":                       "elasticsearch-https-required", 	"message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https' set to tru
  • Network accessline 19
    "policy_name":                       "elasticsearch-https-required", 	"message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https' set to tru
  • Network accessline 20
    "message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https' set to true for the attribute 'domain_endpoint_options' for 'aws_elasticsearch_d
  • Network accessline 20
    "message":                           "Attribute 'tls_security_policy' must be set to latest policy that is 'Policy-Min-TLS-1-2-PFS-2023-10' and 'enforce_https' set to true for the attribute 'domain_endpoint_options' for 'aws_elasticsearch_d

plugins/terraform/skills/terraform-policy/examples/conversion/elasticsearch-in-vpc-only/elasticsearch-in-vpc-only.sentinel

  • Network accessline 15
    const = { 	"policy_name":                       "elasticsearch-in-vpc-only", 	"message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer t
  • Network accessline 15
    const = { 	"policy_name":                       "elasticsearch-in-vpc-only", 	"message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer t
  • Network accessline 16
    "policy_name":                       "elasticsearch-in-vpc-only", 	"message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer to https://d
  • Network accessline 16
    "policy_name":                       "elasticsearch-in-vpc-only", 	"message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer to https://d
  • Network accessline 17
    "message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/es-controls.html#es
  • Network accessline 17
    "message":                           "Attribute 'subnet_ids' should not be empty for the attribute 'vpc_options' for 'aws_elasticsearch_domain' resources. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/es-controls.html#es

plugins/terraform/skills/terraform-policy/examples/conversion/eventbridge-custom-event-bus-should-have-attached-policy/eventbridge-custom-event-bus-should-have-attached-policy.sentinel

  • Network accessline 17
    const = { 	"policy_name": "eventbridge-custom-event-bus-should-have-attached-policy", 	"message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/even
  • Network accessline 17
    const = { 	"policy_name": "eventbridge-custom-event-bus-should-have-attached-policy", 	"message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/even
  • Network accessline 18
    "policy_name": "eventbridge-custom-event-bus-should-have-attached-policy", 	"message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/eventbridge-con
  • Network accessline 18
    "policy_name": "eventbridge-custom-event-bus-should-have-attached-policy", 	"message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/eventbridge-con
  • Network accessline 19
    "message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/eventbridge-controls.html#eventbridge-3 for more details.",
  • Network accessline 19
    "message":     "Policy should be attached for 'aws_cloudwatch_event_bus' resource. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/eventbridge-controls.html#eventbridge-3 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/s3-block-public-access-bucket-level/s3-block-public-access-bucket-level.sentinel

  • Network accessline 21
    "module_address":                             "module_address", 	"address":                                    "address", 	"message":                                    "Bucket level Amazon S3 block public access settings are not compliant.
  • Network accessline 21
    "module_address":                             "module_address", 	"address":                                    "address", 	"message":                                    "Bucket level Amazon S3 block public access settings are not compliant.
  • Network accessline 22
    "address":                                    "address", 	"message":                                    "Bucket level Amazon S3 block public access settings are not compliant. Refer to https://docs.aws.amazon.com/securityhub/latest/userguid
  • Network accessline 22
    "address":                                    "address", 	"message":                                    "Bucket level Amazon S3 block public access settings are not compliant. Refer to https://docs.aws.amazon.com/securityhub/latest/userguid
  • Network accessline 23
    "message":                                    "Bucket level Amazon S3 block public access settings are not compliant. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/s3-controls.html#s3-8 for more details.",
  • Network accessline 23
    "message":                                    "Bucket level Amazon S3 block public access settings are not compliant. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/s3-controls.html#s3-8 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/s3-bucket-should-have-object-lock-enabled/s3-bucket-should-have-object-lock-enabled.sentinel

  • Network accessline 22
    const = { 	"policy_name":                                      "s3-bucket-should-have-object-lock-enabled", 	"message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.c
  • Network accessline 22
    const = { 	"policy_name":                                      "s3-bucket-should-have-object-lock-enabled", 	"message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.c
  • Network accessline 23
    "policy_name":                                      "s3-bucket-should-have-object-lock-enabled", 	"message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.com/security
  • Network accessline 23
    "policy_name":                                      "s3-bucket-should-have-object-lock-enabled", 	"message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.com/security
  • Network accessline 24
    "message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/s3-controls.html#s3-15 for more details.",
  • Network accessline 24
    "message":                                          "S3 Buckets should have object lock enabled. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/s3-controls.html#s3-15 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/secretsmanager-auto-rotation-enabled-check/secretsmanager-auto-rotation-enabled-check.sentinel

  • Network accessline 17
    const = { 	"policy_name": "secretsmanager-auto-rotation-enabled-check", 	"message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-c
  • Network accessline 17
    const = { 	"policy_name": "secretsmanager-auto-rotation-enabled-check", 	"message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-c
  • Network accessline 18
    "policy_name": "secretsmanager-auto-rotation-enabled-check", 	"message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-controls.htm
  • Network accessline 18
    "policy_name": "secretsmanager-auto-rotation-enabled-check", 	"message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-controls.htm
  • Network accessline 19
    "message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-controls.html#secretsmanager-1 for more details.",
  • Network accessline 19
    "message":     "Secrets Manager secrets should be configured for automatic rotation. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/secretsmanager-controls.html#secretsmanager-1 for more details.",

plugins/terraform/skills/terraform-policy/examples/conversion/step-functions-state-machine-logging-enabled/step-functions-state-machine-logging-enabled.sentinel

  • Network accessline 14
    const = { 	"policy_name":         "sfn-logging-enabled", 	"message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/lat
  • Network accessline 14
    const = { 	"policy_name":         "sfn-logging-enabled", 	"message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/lat
  • Network accessline 15
    "policy_name":         "sfn-logging-enabled", 	"message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/latest/usergui
  • Network accessline 15
    "policy_name":         "sfn-logging-enabled", 	"message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/latest/usergui
  • Network accessline 16
    "message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/stepfunctions-controls.html#stepfunctions-1 
  • Network accessline 16
    "message":             "AWS Step Functions state machines must have logging enabled with level set to 'ALL', 'ERROR', or 'FATAL'. Refer to https://docs.aws.amazon.com/securityhub/latest/userguide/stepfunctions-controls.html#stepfunctions-1 

plugins/terraform/skills/terraform-policy/references/tfpolicy-author.md

  • Network accessline 650
    > **Cross-resource policies — use the Terraform Registry to identify the parent, linking attribute, and filter value.** For any child resource type involved in a cross-resource lookup, fetch its documentation at `https://raw.githubuserconte
  • Network accessline 650
    > **Cross-resource policies — use the Terraform Registry to identify the parent, linking attribute, and filter value.** For any child resource type involved in a cross-resource lookup, fetch its documentation at `https://raw.githubuserconte
  • Network accessline 772
    13. Convert sets to lists before indexing: `[for item in set : item][0]`. 14. Don't use `core::try()` defaults to mask missing values that should fail the policy — use `filter` instead. 15. For cross-resource lookups where the filter value 
  • Network accessline 772
    13. Convert sets to lists before indexing: `[for item in set : item][0]`. 14. Don't use `core::try()` defaults to mask missing values that should fail the policy — use `filter` instead. 15. For cross-resource lookups where the filter value 
  • Network accessline 773
    14. Don't use `core::try()` defaults to mask missing values that should fail the policy — use `filter` instead. 15. For cross-resource lookups where the filter value is the current resource's own attribute: use an inline `core::getresources
  • Network accessline 773
    14. Don't use `core::try()` defaults to mask missing values that should fail the policy — use `filter` instead. 15. For cross-resource lookups where the filter value is the current resource's own attribute: use an inline `core::getresources
  • Network accessline 774
    15. For cross-resource lookups where the filter value is the current resource's own attribute: use an inline `core::getresources()` with the direct filter inside `resource_policy`. To find the correct linking attribute name and filter value
  • Network accessline 774
    15. For cross-resource lookups where the filter value is the current resource's own attribute: use an inline `core::getresources()` with the direct filter inside `resource_policy`. To find the correct linking attribute name and filter value
  • Network accessline 775
    16. **Cross-resource enforcement — registry check determines the structure unconditionally:**     - **First, verify every resource type via the Terraform Registry.** For any resource type involved in a cross-resource check, fetch `https://r
  • Network accessline 775
    16. **Cross-resource enforcement — registry check determines the structure unconditionally:**     - **First, verify every resource type via the Terraform Registry.** For any resource type involved in a cross-resource check, fetch `https://r
  • Network accessline 776
    - **First, verify every resource type via the Terraform Registry.** For any resource type involved in a cross-resource check, fetch `https://raw.githubusercontent.com/hashicorp/terraform-provider-aws/main/website/docs/r/{resource_name_witho
  • Network accessline 776
    - **First, verify every resource type via the Terraform Registry.** For any resource type involved in a cross-resource check, fetch `https://raw.githubusercontent.com/hashicorp/terraform-provider-aws/main/website/docs/r/{resource_name_witho

plugins/terraform/skills/terraform-policy/references/verified-syntax.md

  • Network accessline 527
    > **Dependent child resources — use inline filter, verify via Terraform Registry.** Before writing a direct `resource_policy "child_type"` block or a top-level cache for a cross-resource lookup, fetch the Terraform Registry documentation fo
  • Network accessline 527
    > **Dependent child resources — use inline filter, verify via Terraform Registry.** Before writing a direct `resource_policy "child_type"` block or a top-level cache for a cross-resource lookup, fetch the Terraform Registry documentation fo
  • Network accessline 528
    > - URL pattern: `https://raw.githubusercontent.com/hashicorp/terraform-provider-aws/main/website/docs/r/{resource_name_without_aws_prefix}.html.markdown`
  • Network accessline 528
    > - URL pattern: `https://raw.githubusercontent.com/hashicorp/terraform-provider-aws/main/website/docs/r/{resource_name_without_aws_prefix}.html.markdown`
  • Access to secretsline 1583
    [Credential-related source omitted]
  • Access to secretsline 1583
    [Credential-related source omitted]
  • Access to secretsline 1586
    [Credential-related source omitted]
  • Access to secretsline 1586
    [Credential-related source omitted]
  • Access to secretsline 1587
    [Credential-related source omitted]
  • Access to secretsline 1587
    [Credential-related source omitted]

plugins/terraform/skills/terraform-search-import/SKILL.md

  • Network accessline 15
    **References:** - [Terraform Search - list block](https://developer.hashicorp.com/terraform/language/block/tfquery/list)
  • Network accessline 15
    **References:** - [Terraform Search - list block](https://developer.hashicorp.com/terraform/language/block/tfquery/list)
  • Network accessline 16
    - [Terraform Search - list block](https://developer.hashicorp.com/terraform/language/block/tfquery/list)
  • Network accessline 16
    - [Terraform Search - list block](https://developer.hashicorp.com/terraform/language/block/tfquery/list)
  • Network accessline 17
    - [Bulk Import](https://developer.hashicorp.com/terraform/language/import/bulk)
  • Network accessline 17
    - [Bulk Import](https://developer.hashicorp.com/terraform/language/import/bulk)

plugins/terraform/skills/terraform-search-import/scripts/list_resources.sh

  • Executable scriptline 1
    #!/bin/bash
  • Executable scriptline 1
    #!/bin/bash
  • Access to secretsline 24
    [Credential-related source omitted]
  • Access to secretsline 24
    [Credential-related source omitted]
  • Access to secretsline 25
    [Credential-related source omitted]
  • Access to secretsline 25
    [Credential-related source omitted]
  • Access to secretsline 26
    [Credential-related source omitted]
  • Access to secretsline 26
    [Credential-related source omitted]

plugins/terraform/skills/terraform-stacks/SKILL.md

  • Network accessline 52
    - Public registry: `terraform-aws-modules/vpc/aws` - Private registry: `app.terraform.io/<org-name>/vpc/aws` - Git: `git::https://github.com/org/repo.git//path?ref=v1.0.0`
  • Network accessline 52
    - Public registry: `terraform-aws-modules/vpc/aws` - Private registry: `app.terraform.io/<org-name>/vpc/aws` - Git: `git::https://github.com/org/repo.git//path?ref=v1.0.0`
  • Network accessline 54
    - Git: `git::https://github.com/org/repo.git//path?ref=v1.0.0`
  • Network accessline 54
    - Git: `git::https://github.com/org/repo.git//path?ref=v1.0.0`
  • Network accessline 155
    Configure workload identity using `identity_token` blocks and `assume_role_with_web_identity` in provider configuration. For detailed setup instructions for AWS, Azure, and GCP, see: https://developer.hashicorp.com/terraform/cloud-docs/dyna
  • Network accessline 155
    Configure workload identity using `identity_token` blocks and `assume_role_with_web_identity` in provider configuration. For detailed setup instructions for AWS, Azure, and GCP, see: https://developer.hashicorp.com/terraform/cloud-docs/dyna
  • Network accessline 432
    - Use artifacts endpoint to retrieve Stack outputs: `GET /api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description` - Diagnostics endpoint requires `stack_deployment_step_id` query parameter - Artifacts endpoint returns HTTP
  • Network accessline 432
    - Use artifacts endpoint to retrieve Stack outputs: `GET /api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description` - Diagnostics endpoint requires `stack_deployment_step_id` query parameter - Artifacts endpoint returns HTTP
  • Network accessline 434
    - Artifacts endpoint returns HTTP 307 redirect (use `curl -L`)
  • Network accessline 434
    - Artifacts endpoint returns HTTP 307 redirect (use `curl -L`)

plugins/terraform/skills/terraform-stacks/references/api-monitoring.md

  • Access to secretsline 38
    [Credential-related source omitted]
  • Access to secretsline 38
    [Credential-related source omitted]
  • Access to secretsline 39
    [Credential-related source omitted]
  • Access to secretsline 39
    [Credential-related source omitted]
  • Network accessline 64
    [Credential-related source omitted]
  • Network accessline 64
    [Credential-related source omitted]
  • Network accessline 66
    "https://app.terraform.io/api/v2/stack-configurations/{configuration-id}" | jq '.'
  • Network accessline 66
    "https://app.terraform.io/api/v2/stack-configurations/{configuration-id}" | jq '.'
  • Network accessline 103
    [Credential-related source omitted]
  • Network accessline 103
    [Credential-related source omitted]
  • Network accessline 105
    "https://app.terraform.io/api/v2/stack-configurations/{configuration-id}/stack-deployment-group-summaries" | jq '.'
  • Network accessline 105
    "https://app.terraform.io/api/v2/stack-configurations/{configuration-id}/stack-deployment-group-summaries" | jq '.'
  • Network accessline 146
    [Credential-related source omitted]
  • Network accessline 146
    [Credential-related source omitted]
  • Network accessline 148
    "https://app.terraform.io/api/v2/stack-deployment-groups/{group-id}/stack-deployment-runs" | jq '.'
  • Network accessline 148
    "https://app.terraform.io/api/v2/stack-deployment-groups/{group-id}/stack-deployment-runs" | jq '.'
  • Network accessline 184
    [Credential-related source omitted]
  • Network accessline 184
    [Credential-related source omitted]
  • Network accessline 186
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}/stack-deployment-steps" | jq '.'
  • Network accessline 186
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}/stack-deployment-steps" | jq '.'
  • Network accessline 236
    [Credential-related source omitted]
  • Network accessline 236
    [Credential-related source omitted]
  • Network accessline 238
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | jq '.'
  • Network accessline 238
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | jq '.'
  • Network accessline 314
    [Credential-related source omitted]
  • Network accessline 314
    [Credential-related source omitted]
  • Network accessline 315
    [Credential-related source omitted]
  • Network accessline 315
    [Credential-related source omitted]
  • Network accessline 316
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | \
  • Network accessline 316
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | \
  • Network accessline 319
    [Credential-related source omitted]
  • Network accessline 319
    [Credential-related source omitted]
  • Network accessline 320
    [Credential-related source omitted]
  • Network accessline 320
    [Credential-related source omitted]
  • Network accessline 321
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | \
  • Network accessline 321
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}" | \
  • Network accessline 331
    **Important Notes:** - This endpoint returns HTTP 307 redirect - use `curl -L` to follow redirects automatically
  • Network accessline 331
    **Important Notes:** - This endpoint returns HTTP 307 redirect - use `curl -L` to follow redirects automatically
  • Network accessline 332
    - This endpoint returns HTTP 307 redirect - use `curl -L` to follow redirects automatically
  • Network accessline 332
    - This endpoint returns HTTP 307 redirect - use `curl -L` to follow redirects automatically
  • Network accessline 340
    [Credential-related source omitted]
  • Network accessline 340
    [Credential-related source omitted]
  • Network accessline 341
    "https://app.terraform.io/api/v2/stack-deployment-steps/{final-apply-step-id}/artifacts?name=apply-description"
  • Network accessline 341
    "https://app.terraform.io/api/v2/stack-deployment-steps/{final-apply-step-id}/artifacts?name=apply-description"
  • Network accessline 352
    "change": {         "actions": ["no-op"],         "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 352
    "change": {         "actions": ["no-op"],         "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 353
    "actions": ["no-op"],         "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",         "after": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 353
    "actions": ["no-op"],         "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",         "after": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 354
    "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 354
    "before": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 355
    "after": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 355
    "after": "http://my-alb-123456789.us-west-2.elb.amazonaws.com",
  • Network accessline 380
    [Credential-related source omitted]
  • Network accessline 380
    [Credential-related source omitted]
  • Network accessline 381
    "https://app.terraform.io/api/v2/stack-deployment-steps/{final-apply-step-id}/artifacts?name=apply-description" | \
  • Network accessline 381
    "https://app.terraform.io/api/v2/stack-deployment-steps/{final-apply-step-id}/artifacts?name=apply-description" | \
  • Network accessline 388
    alb_url: http://my-alb-123456789.us-west-2.elb.amazonaws.com
  • Network accessline 388
    alb_url: http://my-alb-123456789.us-west-2.elb.amazonaws.com
  • Network accessline 418
    [Credential-related source omitted]
  • Network accessline 418
    [Credential-related source omitted]
  • Network accessline 419
    [Credential-related source omitted]
  • Network accessline 419
    [Credential-related source omitted]
  • Network accessline 420
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}" | \
  • Network accessline 420
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}" | \
  • Network accessline 476
    [Credential-related source omitted]
  • Network accessline 476
    [Credential-related source omitted]
  • Network accessline 478
    BASE_URL="https://app.terraform.io/api/v2"
  • Network accessline 478
    BASE_URL="https://app.terraform.io/api/v2"
  • Network accessline 480
    [Credential-related source omitted]
  • Network accessline 480
    [Credential-related source omitted]
  • Network accessline 481
    [Credential-related source omitted]
  • Network accessline 481
    [Credential-related source omitted]
  • Network accessline 482
    [Credential-related source omitted]
  • Network accessline 482
    [Credential-related source omitted]
  • Network accessline 519
    [Credential-related source omitted]
  • Network accessline 519
    [Credential-related source omitted]
  • Network accessline 520
    [Credential-related source omitted]
  • Network accessline 520
    [Credential-related source omitted]

plugins/terraform/skills/terraform-stacks/references/component-blocks.md

  • Network accessline 221
    source = "git::https://github.com/org/repo.git//modules/vpc?ref=v1.0.0"
  • Network accessline 221
    source = "git::https://github.com/org/repo.git//modules/vpc?ref=v1.0.0"
  • Network accessline 227
    source = "https://example.com/modules/vpc-module.tar.gz"
  • Network accessline 227
    source = "https://example.com/modules/vpc-module.tar.gz"

plugins/terraform/skills/terraform-stacks/references/deployment-blocks.md

  • Network accessline 59
    **Setup Documentation:** For detailed instructions on configuring OIDC/workload identity for each cloud provider (including IAM roles, trust policies, and federated credentials), see: https://developer.hashicorp.com/terraform/cloud-docs/dyn
  • Network accessline 59
    **Setup Documentation:** For detailed instructions on configuring OIDC/workload identity for each cloud provider (including IAM roles, trust policies, and federated credentials), see: https://developer.hashicorp.com/terraform/cloud-docs/dyn

plugins/terraform/skills/terraform-stacks/references/troubleshooting.md

  • Network accessline 199
    [Credential-related source omitted]
  • Network accessline 199
    [Credential-related source omitted]
  • Network accessline 200
    [Credential-related source omitted]
  • Network accessline 200
    [Credential-related source omitted]
  • Network accessline 201
    [Credential-related source omitted]
  • Network accessline 201
    [Credential-related source omitted]
  • Network accessline 202
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}/stack-deployment-steps" | \
  • Network accessline 202
    "https://app.terraform.io/api/v2/stack-deployment-runs/{run-id}/stack-deployment-steps" | \
  • Network accessline 315
    - Application ID matches the one in provider configuration - Subject matches: `organization:<org>:project:<project>:stack:<stack>:deployment:<deployment>` - Issuer is `https://app.terraform.io`
  • Network accessline 315
    - Application ID matches the one in provider configuration - Subject matches: `organization:<org>:project:<project>:stack:<stack>:deployment:<deployment>` - Issuer is `https://app.terraform.io`
  • Network accessline 317
    - Issuer is `https://app.terraform.io`
  • Network accessline 317
    - Issuer is `https://app.terraform.io`
  • Network accessline 543
    curl "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics"
  • Network accessline 543
    curl "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics"
  • Network accessline 556
    curl "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}"
  • Network accessline 556
    curl "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/stack-diagnostics?stack_deployment_step_id={step-id}"
  • Network accessline 572
    [Credential-related source omitted]
  • Network accessline 572
    [Credential-related source omitted]
  • Network accessline 573
    [Credential-related source omitted]
  • Network accessline 573
    [Credential-related source omitted]
  • Network accessline 574
    "https://app.terraform.io/api/v2/stack-deployment-steps/$APPLY_STEP/artifacts?name=apply-description" | \
  • Network accessline 574
    "https://app.terraform.io/api/v2/stack-deployment-steps/$APPLY_STEP/artifacts?name=apply-description" | \
  • Network accessline 599
    [Credential-related source omitted]
  • Network accessline 599
    [Credential-related source omitted]
  • Network accessline 600
    [Credential-related source omitted]
  • Network accessline 600
    [Credential-related source omitted]
  • Network accessline 601
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}" | \
  • Network accessline 601
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}" | \
  • Network accessline 604
    [Credential-related source omitted]
  • Network accessline 604
    [Credential-related source omitted]
  • Network accessline 605
    [Credential-related source omitted]
  • Network accessline 605
    [Credential-related source omitted]
  • Network accessline 606
    [Credential-related source omitted]
  • Network accessline 606
    [Credential-related source omitted]
  • Network accessline 607
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description"
  • Network accessline 607
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description"
  • Network accessline 620
    [Credential-related source omitted]
  • Network accessline 620
    [Credential-related source omitted]
  • Network accessline 621
    [Credential-related source omitted]
  • Network accessline 621
    [Credential-related source omitted]
  • Network accessline 622
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description"
  • Network accessline 622
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-description"
  • Network accessline 624
    # Python requests: allow_redirects=True (default) import requests response = requests.get(url, headers=headers, allow_redirects=True)
  • Network accessline 624
    # Python requests: allow_redirects=True (default) import requests response = requests.get(url, headers=headers, allow_redirects=True)
  • Network accessline 626
    response = requests.get(url, headers=headers, allow_redirects=True)
  • Network accessline 626
    response = requests.get(url, headers=headers, allow_redirects=True)
  • Network accessline 628
    # Node.js fetch: redirect: 'follow' (default) const response = await fetch(url, {
  • Network accessline 628
    # Node.js fetch: redirect: 'follow' (default) const response = await fetch(url, {
  • Network accessline 629
    const response = await fetch(url, {
  • Network accessline 629
    const response = await fetch(url, {
  • Network accessline 646
    [Credential-related source omitted]
  • Network accessline 646
    [Credential-related source omitted]
  • Network accessline 647
    [Credential-related source omitted]
  • Network accessline 647
    [Credential-related source omitted]
  • Network accessline 648
    [Credential-related source omitted]
  • Network accessline 648
    [Credential-related source omitted]
  • Network accessline 649
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-debug-log"
  • Network accessline 649
    "https://app.terraform.io/api/v2/stack-deployment-steps/{step-id}/artifacts?name=apply-debug-log"
  • Network accessline 654
    If experiencing widespread issues, check HCP Terraform status page: - https://status.hashicorp.com
  • Network accessline 654
    If experiencing widespread issues, check HCP Terraform status page: - https://status.hashicorp.com
  • Network accessline 655
    - https://status.hashicorp.com
  • Network accessline 655
    - https://status.hashicorp.com

plugins/terraform/skills/terraform-style-guide/SECURITY.md

  • Network accessline 58
    Ephemeral resources prevent sensitive data being stored in state. For more information on ephemeral resources, see the [Terraform documentation](https://developer.hashicorp.com/terraform/language/block/ephemeral).
  • Network accessline 58
    Ephemeral resources prevent sensitive data being stored in state. For more information on ephemeral resources, see the [Terraform documentation](https://developer.hashicorp.com/terraform/language/block/ephemeral).
  • Network accessline 60
    [Terraform documentation](https://developer.hashicorp.com/terraform/language/block/ephemeral).
  • Network accessline 60
    [Terraform documentation](https://developer.hashicorp.com/terraform/language/block/ephemeral).

plugins/terraform/skills/terraform-style-guide/SKILL.md

  • Network accessline 12
    **Reference:** [HashiCorp Terraform Style Guide](https://developer.hashicorp.com/terraform/language/style)
  • Network accessline 12
    **Reference:** [HashiCorp Terraform Style Guide](https://developer.hashicorp.com/terraform/language/style)
  • Network accessline 316
    *Based on: [HashiCorp Terraform Style Guide](https://developer.hashicorp.com/terraform/language/style)*
  • Network accessline 316
    *Based on: [HashiCorp Terraform Style Guide](https://developer.hashicorp.com/terraform/language/style)*

plugins/terraform/skills/terraform-test/SKILL.md

  • Network accessline 450
    - [Terraform Testing Documentation](https://developer.hashicorp.com/terraform/language/tests)
  • Network accessline 450
    - [Terraform Testing Documentation](https://developer.hashicorp.com/terraform/language/tests)
  • Network accessline 451
    - [Terraform Test Command](https://developer.hashicorp.com/terraform/cli/commands/test)
  • Network accessline 451
    - [Terraform Test Command](https://developer.hashicorp.com/terraform/cli/commands/test)

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 470 facts

and 420 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexNativeManifest AGENTS.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md plugins/packer/skills/aws-ami-builder/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md plugins/packer/skills/aws-ami-builder/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md plugins/packer/skills/aws-ami-builder/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md plugins/packer/skills/aws-ami-builder/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

hashicorp/agent-skills: #949 on hotskills, 918 stars

[![hashicorp/agent-skills on hotskills](https://hotskills.dev/badge/hashicorp-agent-skills.svg)](https://hotskills.dev/skill/hashicorp-agent-skills/)