AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Add Terraform Module

skill-makigjuro-cloudstack-ai-plugins-add-terraform-module · by makigjuro

Scaffold a new Terraform module with variables, main, and outputs. Use when provisioning a new cloud resource (database, cache, storage, etc.) that needs its own Terraform module and optional IaC wrapper wiring.

No reviews yet
0 installs
20 views
0.0% view→install

Install

$ agentstack add skill-makigjuro-cloudstack-ai-plugins-add-terraform-module

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-makigjuro-cloudstack-ai-plugins-add-terraform-module)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Add Terraform Module? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Add Terraform Module

Scaffold a new Terraform module following project conventions.

Arguments

  • {module-name} — Name of the module (required, e.g., redis, service-bus, postgresql)
  • {description} — What this module provisions (optional)

Configuration

Read cloudstack.json from the project root at the start of execution. Extract:

  • TF_PATH = infrastructure.terraformPath (default: infra/terraform/modules)
  • TG_PATH = infrastructure.terragruntPath (default: infra/terragrunt)
  • IAC_WRAPPER = infrastructure.iacWrapper (default: none)
  • CLOUD = infrastructure.cloud (default: azure)

If cloudstack.json does not exist, auto-detect by scanning the project structure.

Process

  1. Read existing modules in {TF_PATH}/ to follow established patterns.
  1. Create the module directory:
{TF_PATH}/{module-name}/
├── variables.tf
├── main.tf
├── outputs.tf
  1. variables.tf — Always include these standard variables:
variable "environment" {
  description = "Environment name (e.g. dev, staging, prod)"
  type        = string
}

variable "location" {
  description = "Cloud region (e.g. westeurope, us-east-1)"
  type        = string
}

variable "project" {
  description = "Project prefix for resource naming"
  type        = string
}

variable "tags" {
  description = "Common tags applied to all resources"
  type        = map(string)
  default     = {}
}

Add module-specific variables after the standard ones.

  1. main.tf — Follow the naming convention from existing modules. Derive a location short code from the region (e.g., westeurope -> weu, us-east-1 -> use1):
locals {
  location_short = # derive from var.location or use a lookup map
  name           = "${var.project}-{resource-abbrev}-${var.environment}-${local.location_short}"
}

Scan existing modules to discover the project's established naming convention and location short mapping. Use that pattern.

  1. outputs.tf — Export name, id, and any connection strings or keys needed by downstream modules.
  1. IaC Wrapper Wiring (conditional on IAC_WRAPPER):

If IAC_WRAPPER = terragrunt: Create Terragrunt wiring for the dev environment:

`` {TG_PATH}/dev/{module-name}/ └── terragrunt.hcl ``

With content: ```hcl include "root" { path = findinparent_folders() }

terraform { source = "../../../terraform/modules/{module-name}" }

dependency "resourcegroup" { configpath = "../resource-group" }

inputs = { resourcegroupname = dependency.resource_group.outputs.name } ```

Adjust the source path to be the correct relative path from {TG_PATH}/dev/{module-name}/ to {TF_PATH}/{module-name}. Add additional dependencies based on what the module needs.

If IAC_WRAPPER = none: Skip wrapper wiring. Note that the user can run terraform plan directly from the module directory.

Output

After scaffolding, report:

## Scaffolded: {module-name} Terraform module

Files created:
- `{TF_PATH}/{module-name}/variables.tf`
- `{TF_PATH}/{module-name}/main.tf`
- `{TF_PATH}/{module-name}/outputs.tf`
- `{TG_PATH}/dev/{module-name}/terragrunt.hcl` (if IAC_WRAPPER = terragrunt)

Next: Add resource definitions in `main.tf`, then run `/infra-lint` to validate.

Error Handling

  • Module directory already exists: Warn the user and ask whether to overwrite or extend.
  • Terraform not installed: Suggest installing with brew install terraform.
  • IaC wrapper root config not found: If using Terragrunt, check that {TG_PATH}/terragrunt.hcl exists as the root config.

After Scaffolding

Remind to:

  • Add module-specific resource definitions in main.tf
  • Add any needed dependencies in the wrapper config (if applicable)
  • Run /infra-lint to validate

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.