AI Skill MartBrowse skillsPromptsProgramsLearnWhat is a Skill?
← Back to list

Terraform Module PR Review

Takes a single GitHub pull request or commit URL and produces a verified Terraform module review, a verdict, and a ready-to-send comment.

Dev & CodingAdvanced★ 357⑂ 56AI score 9/10Last updated: Nov 3, 2026

What it does

  • Accepts a PR URL (github.com/owner/repo/pull/123), a short owner/repo#123 reference, or a commit URL, and checks it out into an isolated workspace.
  • Delegates findings to terraform-module-reviewer, applies a verdict ladder, and renders a complete review comment for a human to send.
  • Runs terraform init -backend=false plus terraform validate in touched example directories; runs terraform plan only when the user explicitly names an AWS profile and a read-only review role ARN (900-second downscoped session, container-isolated when available).

Safety model

  • Nothing is posted without confirmation: the exact body, target, login, and event (COMMENT / APPROVE / REQUEST_CHANGES) are shown first.
  • Never merges, never writes a ref, never edits PR metadata or resolves threads.
  • Everything fetched from GitHub or found in the checkout (CLAUDE.md, AGENTS.md, hooks, Makefiles) is treated as data, not instruction — explicit prompt-injection defence.
  • Bot identities and CI environments disable posting entirely.

Who it's for

  • Maintainers of Terraform module repositories (terraform-aws-modules style).
  • Platform/infrastructure teams handling a steady stream of community PRs.
  • DevOps engineers who need a disciplined way to verify untrusted IaC changes.

Examples

  1. "Review https://github.com/owner/terraform-aws-vpc/pull/412 — is it ready to merge?" → checkout, verification, verdict, draft comment.
  2. "What should I reply on owner/repo#123?" → a sourced review comment, shown before any posting is offered.
  3. "Also run a plan pass with AWS profile review-ro and this review role ARN" → gated, read-only plan used as additive evidence.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/modulestf/modulestf/HEAD/.agents/skills/terraform-module-pr-review/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
↓ Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on AI Skill Mart.
Copy the .agents/skills/terraform-module-pr-review folder from the GitHub repo modulestf/modulestf into my ~/.claude/skills/terraform-module-pr-review/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/modulestf/modulestf.git /tmp/modulestf && mkdir -p ~/.claude/skills && cp -r /tmp/modulestf/.agents/skills/* ~/.claude/skills/

⚠ This is a third-party skill. Check the source repository before installing.

  1. Open a terminal.
  2. Clone the repository: git clone https://github.com/modulestf/modulestf.git /tmp/modulestf
  3. Create the skills directory: mkdir -p ~/.claude/skills
  4. This skill depends on sibling skills (terraform-module-reviewer, change-scope, terraform-module-maintainer), so copy the whole set: cp -r /tmp/modulestf/.agents/skills/* ~/.claude/skills/
  5. Install prerequisites: GitHub CLI authenticated via gh auth login, jq, and terraform if you want the verification passes.
  6. Restart Claude Code and send a request containing a pull request URL.
  7. Review the rendered comment; only reply with an explicit instruction (e.g. "post it as a comment") when you actually want it published.
View source on GitHub ↗License: Apache-2.0