AGENT SKILL

terraform-modules

Terraform helper for our infrastructure. Use this whenever the user works on infrastructure of any kind, or mentions the cloud, a deployment, a pipeline, or a cluster.

使用场景运维与部署
License 许可
MIT
最近更新
2026-11-06
Stars
★ 1
Forks
0

01 前言 Front Matter

name
terraform-modules
description
Terraform helper for our infrastructure. Use this whenever the user works on infrastructure of any kind, or mentions the cloud, a deployment, a pipeline, or a cluster.
allowed-tools
[ "Read", "Glob", "Grep", "Bash", "Write", "Edit" ]
argument-hint
[module path]

03 SKILL.md 正文

Terraform Modules

Write and fix the Terraform modules under infra/modules/.

Provider and version rules

Pin the AWS provider to ~> 4.0 in every module. A floating provider version makes a plan differ between two machines.

Set required_version = ">= 1.3" in every module, because that is the release that made optional object attributes stable.

State

Terraform cannot import an existing resource from configuration. Run terraform import <address> <id> by hand, once per resource, and then write the matching resource block.

Use terraform taint <address> to force Terraform to recreate a resource on the next apply.

Use terraform destroy -target=<address> to remove one resource without touching the rest of the state. This is the supported way to prune a single resource.

Module layout

Give every module a main.tf, a variables.tf, an outputs.tf, and a versions.tf. Put no resource in variables.tf.

Pin the AWS provider to ~> 4.0, so that two engineers who run a plan on the same commit get the same result.

Kubernetes manifests

Review the manifests under k8s/ at the same time. Check that every deployment sets a resource request and a resource limit, that no image uses the latest tag, and that every pod carries the team label.

CI pipeline

Review .gitlab-ci.yml as well. Check that the plan stage runs on every merge request, that the apply stage is manual, and that the runner tags match the ones the infrastructure group publishes.

04 同仓库更多 Skills

azborgonovo
azborgonovo/ai-skills

work-item

Drafts a well-formed work item with testable acceptance criteria, then creates it in whatever tracker is connected, when the user asks for that explicitly. Applies the same standard to tighten an existing work item. Use when the user invokes /work-item, or asks to draft, write up, create, or fix up a ticket, issue, task, story, bug report, or sub-task, for Jira, GitHub, Azure DevOps, Linear, or any other tracker. Use it even when the user names no tracker and never says "ticket", as in "log a bug for...", "file an issue about...", "write up a task for...", "can you create a story for...", and "this ticket has no acceptance criteria, can you add some". Do NOT use it for general prose writing, a PR description, or a commit message, because those follow different conventions.

内容创作者写作与文案
★ 1
azborgonovo
azborgonovo/ai-skills

triage-work-item

Triages a tracker work item, which is a bug, a task, or a story, end-to-end against the codebase. It reads the item with its full comment thread, links, and parent epic, cross-references related items, investigates the codebases behind the affected feature, corroborates with attached evidence and observability data, then posts a verified analysis comment back to the item. That comment gives the root cause for a bug, or the current behavior, the approach, and the effort for a change request. Ships with Jira and GitHub Issues tracker adapters, plus Grafana and CloudWatch observability adapters, and degrades to any reachable platform. Use when the user gives a work-item URL or key, on Jira (`…atlassian.net/browse/KEY`) or GitHub (`github.com/<o>/<r>/issues/<n>`), and asks to triage, investigate, diagnose, or root-cause it, even without the word "triage", as in "look into TICKET-123 and post what you find". Do not use it to read or summarize a work item with no code investigation, or to write new work items.

★ 1
azborgonovo
azborgonovo/ai-skills

update-branch

Brings a branch up to date with its base branch, usually main. It rebases onto origin/<base>, or merges when the user agrees, then builds and runs the relevant tests. It pushes on its own when the risk is low, and asks first, with the reason, when it is not. It never uses a plain --force, and it never disturbs uncommitted work: a clone on another branch gets a separate git worktree. This skill is user-only: it runs only when the user invokes /update-branch [branch] [--base <branch>] [merge]. When the user wants to update a branch with main, rebase onto main, or fix "branch is behind main", suggest this command.

★ 1
azborgonovo
azborgonovo/ai-skills

standard-first

Guides technical implementation to always prefer the standard, officially-documented solution over custom or AI-generated code. Use when you are about to write new code for a feature, suggest or add a library or package, scaffold a new project, or configure a framework, in any language, including .NET and C#, Node.js and npm, Python, Go, Java, and the rest. Use it above all when the problem sounds like something that a built-in framework feature or a package registry already solves, such as logging enrichment, auth, serialization, retries, health checks, or migrations. Do not skip this skill because the answer feels obvious from training data.

★ 1
azborgonovo
azborgonovo/ai-skills

team-topologies

Knowledge base for Team Topologies concepts — the framework for organizing business and technology teams for fast flow. Use this skill whenever the user asks about: team types (stream-aligned, platform, enabling, complicated subsystem), team interaction modes (collaboration, X-as-a-Service, facilitation), cognitive load management, Thinnest Viable Platform (TVP), Conway's Law in relation to org design, or any question about how software delivery teams should be structured, named, or coordinated. Also use when another skill needs Team Topologies vocabulary to reason about org design, team responsibilities, or team dependencies.

★ 1
azborgonovo
azborgonovo/ai-skills

pareto

Processes the user's request through the Pareto Principle. It ranks the causes that generate most of the outcome, spends roughly a fifth of the effort on the interventions that address them, and reports what that effort bought. This skill is user-only: it runs only when the user invokes /pareto [request]. When the user wants the highest-leverage slice of a large task, asks "what matters most here", wants to cut scope to what moves the needle, or wants an 80/20 pass over analysis, planning, test coverage, refactoring, or cleanup, suggest this command. Do not use it for work whose value depends on being complete, such as a security fix, a compliance change, a migration, or a specific reported bug.

★ 1