terraform-schema-inspector-skill

Identify Terraform provider support for resources, data sources, actions, list resources, ephemeral resources, and functions. Use when checking provider capabilities, asking "what resources does X provider support", "does provider Y have actions", or querying specific provider features.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "terraform-schema-inspector-skill" with this command: npx skills add quixoticmonk/terraform-schema-inspector-skill/quixoticmonk-terraform-schema-inspector-skill-terraform-schema-inspector-skill

Terraform Schema Inspector

Identify which capabilities a Terraform provider supports:

  • Resources: Standard managed resources
  • Data Sources: Read-only data queries
  • Actions: Imperative operations during lifecycle events
  • List Resources: Resources supporting bulk list operations
  • Ephemeral Resources: Temporary resources for credentials/tokens
  • Functions: Provider-specific functions

Workflow

When a user asks about provider capabilities:

  1. Prepare working directory

    • Create a temporary directory: /tmp/tf-inspect-$$
    • Change to that directory
  2. Determine provider source

    • Use get_latest_provider_version tool to find namespace and version
    • Common namespaces: hashicorp (aws, google, azurerm), integrations (github), oracle (oci)
  3. Create provider configuration

    • Create main.tf with provider source:
      terraform {
        required_providers {
          <provider> = {
            source = "<namespace>/<provider>"
            version = "~> <version>"
          }
        }
      }
      
      provider "<provider>" {}
      
  4. Initialize Terraform

    • Run terraform init -upgrade using execute_bash
    • This downloads provider binaries from the registry
    • User can see what's being downloaded
  5. Run inspection script

    /path/to/skill/scripts/check.sh <capability_type> <provider_name>
    

    The script:

    • Validates inputs
    • Reads existing schema from initialized providers
    • Filters and formats output as JSON
  6. Present results

    • Display JSON output
    • Empty arrays mean no capabilities of that type
  7. Clean up

    • Remove temporary directory: rm -rf /tmp/tf-inspect-*

Security

Agent-Managed Operations:

  • Provider configuration creation (agent creates main.tf)
  • Terraform initialization (agent runs terraform init)
  • Provider binary downloads (visible to user during init)

Script Operations (Read-Only):

  • Input validation: Provider names restricted to ^[a-zA-Z0-9_-]{1,64}$
  • Schema reading: Queries existing .terraform/ directory
  • Safe string handling: Uses jq's --arg to prevent injection

User Visibility:

  • All provider downloads happen via agent's terraform init command
  • User sees what's being downloaded before script execution
  • Script only reads existing schema data

Capability Types

  • resources - Standard managed resources
  • data-sources - Read-only data sources
  • actions - Imperative lifecycle actions
  • list - List resource capabilities
  • ephemeral - Ephemeral resources (credentials, tokens)
  • functions - Provider-specific functions

Examples

Check Google provider for actions

# In temporary directory with provider config:
/path/to/skill/scripts/check.sh actions google

Check AWS ephemeral resources

/path/to/skill/scripts/check.sh ephemeral aws

Check Azure data sources

/path/to/skill/scripts/check.sh data-sources azurerm

Check all configured providers for a capability

# Omit provider name to check all:
/path/to/skill/scripts/check.sh functions

Output Format

Returns JSON mapping providers to their supported capabilities:

{
  "aws": [
    "aws_cognito_identity_openid_token_for_developer_identity",
    "aws_ecr_authorization_token",
    "aws_eks_cluster_auth",
    "aws_kms_secrets",
    "aws_lambda_invocation",
    "aws_secretsmanager_random_password",
    "aws_secretsmanager_secret_version",
    "aws_ssm_parameter"
  ]
}

Requirements

  • Terraform CLI installed
  • jq (JSON processor)

Notes

  • Agent handles provider configuration and initialization
  • Script operates in read-only mode on existing schema
  • Work in temporary directories to avoid workspace pollution
  • Empty arrays mean provider has no capabilities of that type

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

image-gen

Generate AI images from text prompts. Triggers on: "生成图片", "画一张", "AI图", "generate image", "配图", "create picture", "draw", "visualize", "generate an image".

Archived SourceRecently Updated
General

explainer

Create explainer videos with narration and AI-generated visuals. Triggers on: "解说视频", "explainer video", "explain this as a video", "tutorial video", "introduce X (video)", "解释一下XX(视频形式)".

Archived SourceRecently Updated
General

asr

Transcribe audio files to text using local speech recognition. Triggers on: "转录", "transcribe", "语音转文字", "ASR", "识别音频", "把这段音频转成文字".

Archived SourceRecently Updated
General

axure-prototype-generator

Axure 原型代码生成器 - 输出 JavaScript 格式 HTML 代码,支持内联框架直接加载可交互原型

Archived SourceRecently Updated