terraform
Opt-in Azure/Terraform profile only — plan and apply Terraform changes using the safe Iris workflow.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Opt-in Azure/Terraform profile only — plan and apply Terraform changes using the safe Iris workflow.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Create a new sub-agent — no Terraform, no Docker by default. Starts as a systemd service, patched into the bridge immediately so @agent works right away.
Commit and push repo changes to GitHub using the standard Iris workflow.
Search the web using Perplexity AI API. Returns sourced, up-to-date information.
Send an email via Resend API from ${IRIS_EMAIL_FROM:-iris@example.com}. Use when human escalation is needed or to deliver results outside Slack/Telegram.
Transcribe an audio file (m4a, mp3, wav, ogg, webm) to text using OpenAI Whisper API. Use when a user shares a voice note or audio attachment.
Add, remove, and test MCP (Model Context Protocol) servers by editing meta/mcp.json. Tools from connected servers appear automatically as mcp__<server>__<tool>.
| name | terraform |
| description | Opt-in Azure/Terraform profile only — plan and apply Terraform changes using the safe Iris workflow. |
Opt-in profile: this skill only applies to installs using the Azure/Terraform profile. Local/Docker-only installs have no Terraform-managed infrastructure — do not use this skill there.
Apply Terraform changes safely. Always plan before applying. Always commit before applying.
terraform apply without terraform plan firstplan shows unexpected destroys — pause and report.tf files to GitHub before applying/iris/repo/terraform.tfstate filesterraform-apply [target]
Where [target] is an optional -target=<resource> argument for partial applies.
#!/usr/bin/env bash
# terraform — safe plan + apply
set -euo pipefail
REPO_DIR="${IRIS_REPO_DIR:-/iris/repo}"
TF_DIR="${REPO_DIR}/terraform"
TARGET="${1:-}"
cd "$TF_DIR"
echo "[terraform] Running plan..."
if [[ -n "$TARGET" ]]; then
terraform plan -target="$TARGET" -out=iris.tfplan
else
terraform plan -out=iris.tfplan
fi
# Abort if plan shows destroys (safety check)
DESTROYS=$(terraform show -json iris.tfplan 2>/dev/null \
| jq '[.resource_changes[] | select(.change.actions[] == "delete")] | length' 2>/dev/null || echo 0)
if [[ "$DESTROYS" -gt 0 ]]; then
echo "[terraform] WARNING: Plan includes $DESTROYS resource deletions."
echo "[terraform] Review the plan output above. Apply manually if intentional:"
echo " cd $TF_DIR && terraform apply iris.tfplan"
exit 1
fi
echo "[terraform] Applying..."
terraform apply iris.tfplan
rm -f iris.tfplan
echo "[terraform] Done."
terraform/backend.tf for backend-config), container tfstateterraform force-unlock <lock-id> (use with care).tf file → commit → run this skillChild agents are provisioned using the modules/agent module.
See spawn-agent skill for the full workflow.