terraform-search-import
by hashicorpLearn terraform-search-import for discovering supported cloud resources with Terraform Search and bulk importing them into Terraform state. This terraform-search-import skill is useful for backend development, audits, and migration workflows when you want a practical guide to install, verify provider support, and start usage with less guesswork.
This skill scores 72/100 because it has real workflow value and enough repository evidence for directory users to make an install decision. It clearly targets a specific Terraform task—discovering supported resources and bulk importing unmanaged infrastructure—but the workflow is somewhat partial and depends on Terraform/provider support, so users should expect a useful but not fully self-contained operational guide.
- Strong triggerability: the description and "When to Use" section clearly target unmanaged infrastructure discovery, auditing, and migration to Terraform.
- Good operational leverage: includes a helper script for checking provider list-resource support, which reduces guesswork before attempting search/import.
- Credible workflow content: references bulk import and manual-import fallback guidance, plus no placeholder/test-only signals.
- Execution depends on Terraform >= 1.14 and provider list-resource support, so applicability is limited by environment and provider capability.
- The excerpted decision tree and manual-import reference indicate fallback paths, but the main workflow appears complex enough that users may still need Terraform expertise.
Overview of terraform-search-import skill
What terraform-search-import does
The terraform-search-import skill helps you discover existing cloud resources with Terraform Search queries and then bulk import them into Terraform state. It is most useful when you already have infrastructure in place and want to bring it under Terraform control without hand-mapping every object.
Who should use it
This terraform-search-import skill is a good fit for backend development teams, platform engineers, and operators working on migration, inventory, or governance tasks. It matters most when you need to audit unmanaged resources, standardize provisioning, or move from manual cloud setup to IaC with less guesswork.
Why it is different
The main advantage is that it starts with provider support, not assumptions. The skill explicitly checks whether a resource type can be discovered through Terraform Search before you commit to a bulk import path, which reduces dead ends and broken prompts. It also points you toward a manual fallback when the provider does not support list resources.
How to Use terraform-search-import skill
Install and verify the environment
Use the terraform-search-import install command from the repo context: npx skills add hashicorp/agent-skills --skill terraform-search-import. Then confirm your working directory has Terraform initialized, terraform available, and jq installed, because the helper script depends on both. The skill assumes Terraform >= 1.14 and a provider version with list resource support.
Start with the support check
Before asking for an import plan, run ./scripts/list_resources.sh <provider> or inspect the same output inside your prompt. This is the fastest way to tell whether Terraform Search can handle your target object type. If the resource is not listed, switch to the manual import reference instead of forcing the search workflow.
Give the skill a concrete import target
Strong prompts name the provider, the resource type, the scope, and the goal. For example: “Use terraform-search-import to discover and bulk import all aws_s3_bucket resources in us-east-1 for account prod, then show the Terraform Search query and import steps.” Better inputs reduce ambiguity around regions, accounts, and whether you want discovery only or discovery plus state import.
Read the right files first
For practical terraform-search-import usage, start with SKILL.md, then references/MANUAL-IMPORT.md, and finally scripts/list_resources.sh. SKILL.md gives the workflow, MANUAL-IMPORT.md shows the fallback path for unsupported resources, and the script reveals the provider capability check the skill expects you to use.
terraform-search-import skill FAQ
Is terraform-search-import only for bulk import?
No. It is also useful for resource discovery and support validation before import. If your only need is a one-off import of a single resource, a normal Terraform import workflow may be simpler.
When should I not use this skill?
Do not use terraform-search-import if the provider does not expose list resource support for your target type, or if you cannot run terraform init in the environment. In those cases, the manual import guidance is the better fit.
Is this beginner-friendly?
Yes, if you already know the cloud resource you want to manage and can identify the provider. The skill reduces setup friction, but you still need basic Terraform and provider familiarity to interpret the output and confirm the imported state.
How is this different from a generic prompt?
A generic prompt may suggest import steps without checking provider capability or tool prerequisites. The terraform-search-import guide anchors the workflow in Terraform Search support, which makes the result more actionable and less likely to fail late.
How to Improve terraform-search-import skill
Provide the inputs that change the result
The best results come from telling the skill the provider, exact resource type, environment scope, and whether you want discovery, import, or both. For example, “Find all supported azurerm_storage_account resources in subscription dev, then prepare bulk import instructions” is much better than “import my cloud resources.”
Watch for the common failure mode
The biggest failure is trying to use terraform-search-import on unsupported resources. If the support check returns nothing, stop and use references/MANUAL-IMPORT.md rather than trying to force a search-based solution. This saves time and keeps the workflow aligned with the provider’s actual capabilities.
Iterate from discovery to import
A good workflow is: verify support, list resources, choose a narrow scope, then expand to the full set only after the first resource looks correct. That sequence helps you catch naming mismatches, missing permissions, and region or account drift before bulk import creates noisy state.
Improve prompts with real inventory details
When you already know example resource names, ARNs, IDs, or account and region boundaries, include them. Those details help terraform-search-import produce a tighter query and a safer import plan, especially in backend development environments where the same resource type may exist across multiple stages.
