sharatvikas/Terraform AI Guardian
AI-powered Terraform plan reviewer — flags security risks, blast radius, cost, and org-standards drift before merge
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| plan-file | Path to terraform show -json output file | yes | plan.json |
| anthropic-api-key | Anthropic API key for Claude analysis | yes | — |
| github-token | GitHub token for posting PR comments | yes | ${{ github.token }} |
| fail-on-risk | Minimum risk level that causes the action to fail (CRITICAL, HIGH, MEDIUM, LOW) | no | CRITICAL |
| standards-file | Path to the org standards config. Defaults to auto-discovery of .tf-guardian.yml / .tf-guardian.yaml / .guardian/standards.yaml / standards.yaml in the working directory. | no | "" |
| max-tokens | Maximum tokens for Claude analysis (cost control) | no | 4096 |
| post-comment | Post analysis as PR comment (true/false) | no | true |
| slack-webhook-url | Slack incoming webhook URL for review notifications (simple mode, no threading) | no | "" |
| slack-bot-token | Slack bot token (xoxb-…) for chat.postMessage delivery. Enables the thread-per-PR convention: repeat reviews of the same PR reply in one thread. Requires slack-channel. Scopes needed: chat:write, channels:history. | no | "" |
| slack-channel | Slack channel ID (e.g. C0123456789) used with slack-bot-token | no | "" |
| slack-dry-run | Log the Slack payload instead of sending it (true/false) — useful while wiring credentials | no | false |
Outputs
| name | description |
|---|---|
| risk-level | Detected risk level: CRITICAL, HIGH, MEDIUM, LOW, or NONE |
| critical-count | Number of critical issues found |
| warning-count | Number of warnings found |
| standards-violations | Number of org-standards violations found |
| monthly-cost-delta | Estimated net monthly cost delta in USD |
| report-url | URL to the full analysis report |