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.