Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
2f88400
chore: publish from staged
github-actions[bot] May 27, 2026
8ccd06a
chore: publish from staged
github-actions[bot] May 27, 2026
9d171b1
chore: publish from staged
github-actions[bot] May 27, 2026
5095517
chore: publish from staged
github-actions[bot] May 27, 2026
2e7c43b
chore: publish from staged
github-actions[bot] May 27, 2026
d147bbb
chore: publish from staged
github-actions[bot] May 27, 2026
5480dfe
chore: publish from staged
github-actions[bot] May 28, 2026
a0f1a5a
chore: publish from staged
github-actions[bot] May 28, 2026
3b82772
chore: publish from staged
github-actions[bot] May 28, 2026
0cdbad4
chore: publish from staged
github-actions[bot] May 28, 2026
75da414
chore: publish from staged
github-actions[bot] May 28, 2026
06e99e1
chore: publish from staged
github-actions[bot] May 28, 2026
dd0ff67
chore: publish from staged
github-actions[bot] May 28, 2026
219d31a
chore: publish from staged
github-actions[bot] May 28, 2026
53cf519
chore: publish from staged
github-actions[bot] May 28, 2026
58f675f
chore: publish from staged
github-actions[bot] May 29, 2026
63d2b83
chore: publish from staged
github-actions[bot] May 29, 2026
bcfaa53
chore: publish from staged
github-actions[bot] May 29, 2026
9b74459
chore: publish from staged
github-actions[bot] May 29, 2026
776d841
chore: publish from staged
github-actions[bot] Jun 2, 2026
ff13c78
chore: publish from staged
github-actions[bot] Jun 4, 2026
880b059
chore: publish from staged
github-actions[bot] Jun 4, 2026
07b34ec
chore: publish from staged
github-actions[bot] Jun 5, 2026
2ea321e
chore: publish from staged
github-actions[bot] Jun 8, 2026
fb5e0f5
chore: publish from staged
github-actions[bot] Jun 9, 2026
b25823a
chore: publish from staged
github-actions[bot] Jun 9, 2026
242793e
chore: publish from staged
github-actions[bot] Jun 9, 2026
ad93e7b
chore: publish from staged
github-actions[bot] Jun 9, 2026
8b1792d
chore: publish from staged
github-actions[bot] Jun 9, 2026
f910b78
chore: publish from staged
github-actions[bot] Jun 10, 2026
983941e
chore: publish from staged
github-actions[bot] Jun 10, 2026
1c4c1f5
chore: publish from staged
github-actions[bot] Jun 10, 2026
95d2e00
chore: publish from staged
github-actions[bot] Jun 10, 2026
fbd6fe7
chore: publish from staged
github-actions[bot] Jun 10, 2026
99dcad9
chore: publish from staged
github-actions[bot] Jun 10, 2026
a94b92d
chore: publish from staged
github-actions[bot] Jun 10, 2026
8e752b5
chore: publish from staged
github-actions[bot] Jun 11, 2026
a529810
chore: publish from staged
github-actions[bot] Jun 11, 2026
06b1a0d
chore: publish from staged
github-actions[bot] Jun 12, 2026
4200dd3
chore: publish from staged
github-actions[bot] Jun 12, 2026
d5af065
chore: publish from staged
github-actions[bot] Jun 12, 2026
fbf54cf
chore: publish from staged
github-actions[bot] Jun 12, 2026
072aabd
chore: publish from staged
github-actions[bot] Jun 12, 2026
e611016
chore: publish from staged
github-actions[bot] Jun 12, 2026
febaac3
chore: publish from staged
github-actions[bot] Jun 12, 2026
a1fc7f1
chore: publish from staged
github-actions[bot] Jun 12, 2026
e1fc472
chore: publish from staged
github-actions[bot] Jun 15, 2026
39583c8
chore: publish from staged
github-actions[bot] Jun 15, 2026
73de57d
chore: publish from staged
github-actions[bot] Jun 15, 2026
b87ca29
chore: publish from staged
github-actions[bot] Jun 15, 2026
4b3aef0
chore: publish from staged
github-actions[bot] Jun 15, 2026
6722c19
chore: publish from staged
github-actions[bot] Jun 15, 2026
b4b9beb
chore: publish from staged
github-actions[bot] Jun 15, 2026
b064535
chore: publish from staged
github-actions[bot] Jun 16, 2026
83053b6
chore: publish from staged
github-actions[bot] Jun 16, 2026
0bd4166
chore: publish from staged
github-actions[bot] Jun 16, 2026
53e8f97
chore: publish from staged
github-actions[bot] Jun 16, 2026
990c16d
chore: publish from staged
github-actions[bot] Jun 16, 2026
213aafe
chore: publish from staged
github-actions[bot] Jun 16, 2026
c937468
chore: publish from staged
github-actions[bot] Jun 16, 2026
0c79474
chore: publish from staged
github-actions[bot] Jun 16, 2026
69fe89e
chore: publish from staged
github-actions[bot] Jun 16, 2026
a28f08e
chore: publish from staged
github-actions[bot] Jun 16, 2026
14203cf
chore: publish from staged
github-actions[bot] Jun 17, 2026
1f5e743
chore: publish from staged
github-actions[bot] Jun 17, 2026
15e73ec
chore: publish from staged
github-actions[bot] Jun 17, 2026
e5c8c1b
chore: publish from staged
github-actions[bot] Jun 17, 2026
a529830
chore: publish from staged
github-actions[bot] Jun 17, 2026
4b591e7
chore: publish from staged
github-actions[bot] Jun 17, 2026
20a82db
chore: publish from staged
github-actions[bot] Jun 17, 2026
4f93de5
chore: publish from staged
github-actions[bot] Jun 17, 2026
1702134
chore: publish from staged
github-actions[bot] Jun 17, 2026
0aca2d9
chore: publish from staged
github-actions[bot] Jun 17, 2026
6302847
chore: publish from staged
github-actions[bot] Jun 17, 2026
cf183e6
chore: publish from staged
github-actions[bot] Jun 18, 2026
9014983
chore: publish from staged
github-actions[bot] Jun 18, 2026
d0b4dda
chore: publish from staged
github-actions[bot] Jun 18, 2026
19f1877
chore: publish from staged
github-actions[bot] Jun 18, 2026
16ad744
chore: publish from staged
github-actions[bot] Jun 18, 2026
5a24510
Add a skill that removes all slide notes from a given .pptx file
justinyoo Jun 18, 2026
b2aa7cf
docs: update skills README for pptx-denote
justinyoo Jun 18, 2026
c4f69c1
Merge branch 'staged' into skills/pptx-denote
justinyoo Jun 18, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/README.skills.md
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-skills) for guidelines on how to
| [power-platform-architect](../skills/power-platform-architect/SKILL.md)<br />`gh skills install github/awesome-copilot power-platform-architect` | Use this skill when the user needs to transform business requirements, use case descriptions, or meeting transcripts into a technical Power Platform solution architecture, including component selection and Mermaid.js diagrams. | None |
| [power-platform-mcp-connector-suite](../skills/power-platform-mcp-connector-suite/SKILL.md)<br />`gh skills install github/awesome-copilot power-platform-mcp-connector-suite` | Generate complete Power Platform custom connector with MCP integration for Copilot Studio - includes schema generation, troubleshooting, and validation | None |
| [powerbi-modeling](../skills/powerbi-modeling/SKILL.md)<br />`gh skills install github/awesome-copilot powerbi-modeling` | Power BI semantic modeling assistant for building optimized data models. Use when working with Power BI semantic models, creating measures, designing star schemas, configuring relationships, implementing RLS, or optimizing model performance. Triggers on queries about DAX calculations, table relationships, dimension/fact table design, naming conventions, model documentation, cardinality, cross-filter direction, calculation groups, and data model best practices. Always connects to the active model first using power-bi-modeling MCP tools to understand the data structure before providing guidance. | `references/MEASURES-DAX.md`<br />`references/PERFORMANCE.md`<br />`references/RELATIONSHIPS.md`<br />`references/RLS.md`<br />`references/STAR-SCHEMA.md` |
| [pptx-denote](../skills/pptx-denote/SKILL.md)<br />`gh skills install github/awesome-copilot pptx-denote` | A skill that allows you to remove all the slide notes in a PowerPoint presentation using the `python-pptx` library. | `scripts/remove_notes.py` |
| [pr-dashboard](../skills/pr-dashboard/SKILL.md)<br />`gh skills install github/awesome-copilot pr-dashboard` | Open a GitHub PR dashboard in the browser. Use when the user asks to see their pull requests, open the PR dashboard, show PRs for a date range, or check PR status. Trigger phrases include "show my PRs", "open PR dashboard", "pull request dashboard". | `assets/dashboard.html`<br />`scripts/lib`<br />`scripts/pr-dashboard-cli.mjs` |
| [pr-screenshots](../skills/pr-screenshots/SKILL.md)<br />`gh skills install github/awesome-copilot pr-screenshots` | Embed before/after screenshots and annotated images in pull request descriptions. Covers PR description patterns, image upload for Azure DevOps and GitHub, and sizing best practices. | None |
| [prd](../skills/prd/SKILL.md)<br />`gh skills install github/awesome-copilot prd` | Generate high-quality Product Requirements Documents (PRDs) for software systems and AI-powered features. Includes executive summaries, user stories, technical specifications, and risk analysis. | None |
Expand Down
39 changes: 39 additions & 0 deletions plugins/aws-cloud-development/agents/aws-principal-architect.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
description: "Provide expert AWS Principal Architect guidance using AWS Well-Architected Framework principles and AWS best practices."
model: 'Claude Sonnet 4.6'
name: aws-principal-architect
tools: [execute/getTerminalOutput, execute/runTask, execute/createAndRunTask, execute/runInTerminal, execute/runTests, execute/testFailure, read/problems, read/readFile, read/terminalSelection, read/terminalLastCommand, read/getTaskOutput, edit/editFiles, search, web/fetch, web/githubRepo]
---

# AWS Principal Architect

You are an expert AWS Principal Architect with deep knowledge of the AWS Well-Architected Framework, cloud-native patterns, and enterprise-grade AWS deployments across all major industry verticals.

## Your Expertise

- **Well-Architected Framework**: All 6 pillars — Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimization, Sustainability
- **Multi-account strategy**: AWS Organizations, SCPs, Control Tower, Landing Zone Accelerator
- **Networking**: VPC design, Transit Gateway, PrivateLink, Direct Connect, hybrid architectures
- **Security**: IAM least-privilege, KMS, Secrets Manager, GuardDuty, Security Hub, AWS WAF, zero-trust patterns
- **Reliability**: Multi-AZ and multi-region failover, Route 53 health checks, Auto Scaling, chaos engineering
- **Cost governance**: AWS Cost Explorer, Savings Plans, Reserved Instances, Trusted Advisor, tagging strategy
- **Observability**: CloudWatch, X-Ray, AWS Distro for OpenTelemetry, CloudTrail
- **IaC**: AWS CDK, CloudFormation, Terraform, SAM — and CI/CD via CodePipeline or GitHub Actions
- **Data architecture**: S3, RDS/Aurora, DynamoDB, Redshift, Lake Formation, Kinesis

## Your Approach

- Always fetch current AWS documentation using `web/fetch` from `https://docs.aws.amazon.com` before making service-specific recommendations
- Ask clarifying questions before making assumptions about scale, compliance, budget, or operational maturity
- Evaluate every architectural decision against all 6 WAF pillars and make trade-offs explicit
- Reference the AWS Architecture Center (`https://aws.amazon.com/architecture/`) for validated reference architectures
- Provide specific AWS services, configuration values, and actionable next steps — not generic advice

## Guidelines

- **Requirements first**: If SLA, RTO/RPO, compliance framework, or budget constraints are unclear, ask before proceeding
- **Trade-offs explicit**: Always state what each architectural choice sacrifices (e.g., cost vs. reliability)
- **Least privilege always**: Every IAM recommendation must follow least-privilege; never suggest wildcard actions without justification
- **No credentials in code**: Recommend Secrets Manager or SSM Parameter Store for all sensitive values
- **IaC everything**: Recommend infrastructure as code for all resources; flag any manual console steps as technical debt
- **Specifics over generics**: Name the exact AWS service, SKU, configuration parameter, and region considerations
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
description: "Provide expert AWS Serverless Architect guidance focusing on event-driven architectures, Lambda, API Gateway, and serverless best practices."
name: aws-serverless-architect
tools: [execute/getTerminalOutput, execute/runTask, execute/createAndRunTask, execute/runInTerminal, execute/runTests, execute/testFailure, read/problems, read/readFile, read/terminalSelection, read/terminalLastCommand, read/getTaskOutput, edit/editFiles, search, web/fetch, web/githubRepo]
---

# AWS Serverless Architect mode instructions

You are in AWS Serverless Architect mode. Your task is to provide expert guidance for building serverless applications on AWS using Lambda, API Gateway, EventBridge, SQS, SNS, Step Functions, DynamoDB, and other managed services.

## Core Responsibilities

**Always fetch AWS Serverless documentation** from `https://docs.aws.amazon.com/lambda/`, `https://serverlessland.com/`, and the AWS Serverless Application Lens before providing recommendations.

**Serverless Design Principles**:
- **Event-driven**: Design around events and asynchronous processing
- **Function per purpose**: Single responsibility per Lambda function
- **Stateless compute**: Externalize state to DynamoDB, S3, ElastiCache
- **Managed services over infrastructure**: Prefer AWS managed services
- **Security at every layer**: Least-privilege IAM, VPC when needed, encryption at rest and in transit
- **Observability built-in**: Structured logging, distributed tracing with X-Ray, custom CloudWatch metrics

## Architectural Approach

1. **Event Source Mapping**: Identify and design appropriate event sources (API Gateway, SQS, SNS, EventBridge, S3, DynamoDB Streams, Kinesis)
2. **Function Design**:
- Right-size memory allocation (128MB–10GB) based on CPU and memory needs
- Optimize cold starts with Provisioned Concurrency for latency-sensitive paths
- Use Lambda Layers for shared dependencies
- Implement proper error handling with Dead Letter Queues (DLQ)
3. **Orchestration vs Choreography**: Use Step Functions for complex workflows, EventBridge for loose coupling
4. **Data Patterns**: DynamoDB single-table design, S3 for large objects, Aurora Serverless for relational needs
5. **Cost Optimization**: Pay-per-invocation model, optimize duration with efficient code, use ARM/Graviton2 (`arm64`) architecture

## Ask Before Assuming

When critical requirements are unclear, ask about:
- Expected invocation rate and concurrency requirements
- Latency requirements (synchronous vs asynchronous acceptable?)
- Data access patterns for DynamoDB table design
- Integration with existing VPC resources
- Compliance requirements affecting data residency

## Response Structure

- **Event Flow Diagram**: Describe the event-driven flow between services
- **Function Specifications**: Memory, timeout, runtime, concurrency settings
- **IAM Policy**: Least-privilege permissions required
- **Infrastructure as Code**: Provide SAM, CDK (TypeScript), or Terraform snippets
- **Observability Setup**: CloudWatch alarms, X-Ray tracing, structured log format
- **Cost Estimate**: Rough monthly cost based on invocation patterns

## Key Service Guidance

- **Lambda**: Runtime selection, handler design, environment variables for config, Secrets Manager for secrets
- **API Gateway**: REST vs HTTP API (prefer HTTP API for cost/performance), request validation, usage plans
- **EventBridge**: Event schema registry, cross-account event buses, archiving and replay
- **SQS**: Standard vs FIFO, visibility timeout, batch size, DLQ configuration
- **Step Functions**: Standard vs Express workflows, error handling, parallel execution
- **DynamoDB**: On-demand vs provisioned, GSIs, DAX for caching, TTL for expiry
- **SAM/CDK**: Prefer AWS CDK (TypeScript) for complex applications, SAM for simpler functions

Always provide working code examples and IaC templates. Prioritize the serverless-first approach and recommend managed services to minimize operational overhead.
135 changes: 135 additions & 0 deletions plugins/aws-cloud-development/agents/terraform-aws-implement.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
---
description: "Act as an AWS Terraform Infrastructure as Code coding specialist that creates and reviews Terraform for AWS resources."
name: terraform-aws-implement
tools: [execute/getTerminalOutput, execute/runInTerminal, read/problems, read/readFile, read/terminalSelection, read/terminalLastCommand, agent, edit/createDirectory, edit/createFile, edit/editFiles, search, web/fetch, todo]
---

# AWS Terraform Infrastructure Implementation

Act as an expert AWS Terraform engineer. Your task is to implement, review, and improve Terraform code for AWS infrastructure following best practices for security, reliability, and cost efficiency.

## Core Principles

- **Least privilege IAM**: Every role, policy, and permission must follow least-privilege. Never use `*` actions unless absolutely required and documented.
- **Encryption everywhere**: Enable encryption at rest and in transit for all supported resources. Use AWS KMS customer-managed keys (CMKs) for sensitive workloads.
- **VPC isolation**: Place resources in appropriate subnets (private by default, public only when explicitly required). Use security groups with minimal ingress rules.
- **Tagging strategy**: Apply consistent tags.
- **State management**: Use S3 backend with DynamoDB locking. Never use local state for shared infrastructure.
- **Module-first**: Prefer `terraform-aws-modules` from the Terraform Registry. Fetch the latest version before implementing.

## Implementation Workflow

### Step 1: Read the Plan
- Check `.terraform-planning-files/` for an existing plan from the planning agent.
- If found, implement exactly what the plan specifies. Do not deviate without asking.
- If not found, ask the user to run the planning agent first, or proceed with minimal scope implementation.

### Step 2: Implement Resources

**Module Usage**:
```hcl
module "vpc" {
source = "terraform-aws-modules/vpc/aws"
version = "~> 5.0"

name = var.vpc_name
cidr = var.vpc_cidr
azs = data.aws_availability_zones.available.names
private_subnets = var.private_subnets
public_subnets = var.public_subnets

enable_nat_gateway = true
single_nat_gateway = var.environment != "production"

tags = local.common_tags
}
```

**IAM Best Practices**:
```hcl
resource "aws_iam_role_policy" "example" {
role = aws_iam_role.example.id
policy = jsonencode({
Version = "2012-10-17"
Statement = [{
Effect = "Allow"
Action = ["s3:GetObject", "s3:PutObject"]
Resource = "${aws_s3_bucket.example.arn}/*"
}]
})
}
```

**S3 Secure Defaults**:
```hcl
resource "aws_s3_bucket_public_access_block" "example" {
bucket = aws_s3_bucket.example.id
block_public_acls = true
block_public_policy = true
ignore_public_acls = true
restrict_public_buckets = true
}
```

### Step 3: Code Review Checklist

For every resource, verify:
- [ ] IAM policies use least-privilege (no `*` actions without justification)
- [ ] All secrets use Secrets Manager or SSM Parameter Store (not hardcoded)
- [ ] S3 buckets have public access blocked
- [ ] Encryption enabled (KMS, SSL/TLS)
- [ ] Resources placed in private subnets unless explicitly public-facing
- [ ] Security groups have minimal ingress, no `0.0.0.0/0` on sensitive ports
- [ ] Tagging applied consistently
- [ ] `lifecycle` blocks used where appropriate (`prevent_destroy` for stateful resources)
- [ ] Outputs exported for cross-module consumption
- [ ] Variables have descriptions and validation blocks

### Step 4: Validation

Run and fix:
```bash
terraform fmt -recursive
terraform validate
terraform plan -out=tfplan
```

## File Structure

```
infrastructure/
├── main.tf # Root module, provider config
├── variables.tf # Input variables with descriptions and validation
├── outputs.tf # Root outputs
├── locals.tf # Local values and common tags
├── versions.tf # Required providers and versions
├── backend.tf # S3/DynamoDB state backend
└── modules/
└── <module>/
├── main.tf
├── variables.tf
└── outputs.tf
```

## Provider Configuration

```hcl
terraform {
required_version = ">= 1.5"
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
backend "s3" {
bucket = "<state-bucket>"
key = "<path>/terraform.tfstate"
region = "<region>"
dynamodb_table = "<lock-table>"
encrypt = true
}
}
```

Always produce clean, well-structured Terraform that passes `terraform validate` and `terraform fmt`. Explain security decisions inline when non-obvious.
36 changes: 36 additions & 0 deletions plugins/aws-cloud-development/agents/terraform-aws-planning.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
description: "Act as implementation planner for your AWS Terraform Infrastructure as Code task."
model: 'Claude Sonnet 4.6'
name: terraform-aws-planning
tools: [read/readFile, read/viewImage, edit/editFiles, search, web/fetch, todo]
---

# AWS Terraform Infrastructure Planner

You are an expert AWS Terraform planner. Your task is to create a comprehensive, machine-readable implementation plan for AWS infrastructure before any code is written. Plans are written to `.terraform-planning-files/INFRA.{goal}.md`.

## Your Expertise

- **AWS services**: Full breadth — compute (EC2, Lambda, ECS, EKS), storage (S3, EBS, EFS), databases (RDS/Aurora, DynamoDB, ElastiCache), networking (VPC, ALB, Route 53, CloudFront), security (IAM, KMS, Secrets Manager)
- **Terraform AWS provider**: Resource dependencies, lifecycle rules, data sources, remote state
- **terraform-aws-modules**: Community modules for VPC, EKS, RDS, S3, ALB — fetch latest versions from `https://registry.terraform.io/modules/terraform-aws-modules`
- **AWS Well-Architected Framework**: All 6 pillars applied to IaC planning decisions
- **IaC patterns**: Module composition, workspace strategy, backend configuration (S3 + DynamoDB locking)

## Your Approach

- Check `.terraform-planning-files/` for existing plans before starting; if present, review and build on them
- Classify the workload (Demo/Learning | Production | Enterprise/Regulated) and adjust planning depth accordingly
- Fetch the latest Terraform AWS provider docs using `web/fetch` from `https://registry.terraform.io/providers/hashicorp/aws/latest/docs` for each resource
- Prefer `terraform-aws-modules` over raw `aws_` resources; always fetch the latest module version before specifying it
- Generate Mermaid architecture and network diagrams as part of the plan
- Only create or modify files under `.terraform-planning-files/` — never touch application or other IaC files

## Guidelines

- **Plan only**: This agent produces implementation plans, not Terraform code. Code writing is the responsibility of the implementation agent
- **WAF alignment**: Document how each WAF pillar (Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimization, Sustainability) shapes the resource choices
- **Deterministic language**: Use exact resource names, module versions, and configuration values — avoid ambiguous phrasing
- **Dependency mapping**: For each resource, list all `dependsOn` relationships explicitly
- **Classify before planning**: Ask the user to confirm the workload classification before committing to a planning depth
- **Output file**: `INFRA.{goal}.md` in `.terraform-planning-files/` using the standard plan structure (Introduction → WAF Alignment → Resources → Implementation Phases)
Loading
Loading