@slamb2k/mad-skills 2.0.14 → 2.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,257 @@
1
+ # Keel Interview Guide
2
+
3
+ Prompts and questions for the detection and interview phases of /keel.
4
+
5
+ ---
6
+
7
+ ## Detection Prompt
8
+
9
+ **Agent:** Explore (medium)
10
+
11
+ ```
12
+ Scan the codebase to detect existing infrastructure-as-code, cloud provider
13
+ signals, and infrastructure dependencies.
14
+
15
+ Limit INFRA_DETECTION_REPORT to 30 lines maximum.
16
+
17
+ ## What to scan
18
+
19
+ 1. **Existing IaC**
20
+ - Terraform: *.tf files, .terraform/, terraform.tfstate, .terraform.lock.hcl
21
+ - Bicep: *.bicep, *.bicepparam
22
+ - Pulumi: Pulumi.yaml, Pulumi.*.yaml
23
+ - AWS CDK: cdk.json, cdk.out/
24
+ - CloudFormation: template.yaml, template.json, *-template.yml
25
+ - ARM: azuredeploy.json, azuredeploy.parameters.json
26
+ Report: tool, file locations, what resources are defined
27
+
28
+ 2. **Cloud provider signals**
29
+ - Azure: .azure/, azure-pipelines.yml, AZURE_* env vars in workflows,
30
+ @azure packages in deps, Bicep files, ARM templates
31
+ - AWS: .aws/, buildspec.yml, AWS_* env vars, @aws-sdk packages,
32
+ CDK files, CloudFormation templates, SAM templates
33
+ - GCP: .gcloud/, cloudbuild.yaml, GOOGLE_* env vars, @google-cloud packages
34
+ Report: detected provider(s) with confidence
35
+
36
+ 3. **CI/CD system**
37
+ - .github/workflows/*.yml → GitHub Actions
38
+ - azure-pipelines.yml → Azure Pipelines
39
+ - .gitlab-ci.yml → GitLab CI
40
+ Report: system, existing infra-related jobs if any
41
+
42
+ 4. **Container config (signals for /dock integration)**
43
+ - Dockerfile, docker-compose.yml
44
+ - deploy/ directory (from /dock)
45
+ - deploy/environments.json or .yml
46
+ Report: what deployment targets are configured
47
+
48
+ 5. **Database signals**
49
+ - prisma/schema.prisma → PostgreSQL/MySQL/SQLite
50
+ - migrations/ or alembic/ → database migrations
51
+ - knex migrations, sequelize migrations
52
+ - Database connection string patterns in .env.example
53
+ Report: database type and ORM/migration tool
54
+
55
+ 6. **Cache/queue signals**
56
+ - Redis client packages (ioredis, redis, bull, celery)
57
+ - Message queue packages (amqplib, @azure/service-bus, @aws-sdk/client-sqs)
58
+ Report: detected services
59
+
60
+ 7. **Storage signals**
61
+ - S3/Blob Storage SDK packages
62
+ - File upload handling code
63
+ Report: detected storage needs
64
+
65
+ 8. **State backends**
66
+ - terraform.tfstate (local state — bad sign)
67
+ - backend config blocks in *.tf
68
+ - Pulumi.*.yaml with backend settings
69
+ Report: current state management
70
+
71
+ ## Output Format
72
+
73
+ INFRA_DETECTION_REPORT:
74
+ - existing_iac: {tool and files, or "none"}
75
+ - cloud_provider: {detected provider(s) with confidence}
76
+ - ci_system: {detected CI system}
77
+ - dock_config: {deployment targets from /dock, or "none"}
78
+ - database: {type and migration tool, or "none"}
79
+ - cache: {redis/memcached, or "none"}
80
+ - storage: {blob/s3/gcs, or "none"}
81
+ - queue: {service bus/sqs/pubsub, or "none"}
82
+ - state_backend: {current state management, or "none"}
83
+ - confidence: {high/medium/low}
84
+ - notes: {anything ambiguous}
85
+ ```
86
+
87
+ ---
88
+
89
+ ## Interview Questions
90
+
91
+ Use AskUserQuestion for each topic. Present detected values as defaults.
92
+ Skip questions where detection provided high-confidence answers.
93
+
94
+ ### Cloud Provider
95
+
96
+ ```
97
+ Which cloud provider(s) will host your infrastructure?
98
+
99
+ {If detected: "I detected {PROVIDER} signals in your codebase."}
100
+
101
+ Options:
102
+ 1. Azure (Recommended if Azure signals detected)
103
+ 2. AWS (Recommended if AWS signals detected)
104
+ 3. Google Cloud
105
+ 4. Multi-cloud (provision across providers)
106
+ 5. Self-hosted / VPS (provision a VPS, install Dokku/Coolify/CapRover)
107
+ ```
108
+
109
+ ### IaC Tool
110
+
111
+ Suggest based on provider:
112
+
113
+ ```
114
+ Which Infrastructure as Code tool should I use?
115
+
116
+ {If existing IaC detected: "I found existing {TOOL} files in your project."}
117
+
118
+ Options:
119
+ 1. Terraform (Recommended — works with any cloud, largest ecosystem)
120
+ 2. Bicep (Azure-native, simpler syntax, no state management needed)
121
+ 3. Pulumi (code-first in TypeScript/Python/Go, great type safety)
122
+ 4. AWS CDK (AWS-native, TypeScript/Python, compiles to CloudFormation)
123
+ ```
124
+
125
+ Decision matrix (present if user is unsure):
126
+
127
+ | Factor | Terraform | Bicep | Pulumi | CDK |
128
+ |--------|-----------|-------|--------|-----|
129
+ | Multi-cloud | ✅ | ❌ Azure only | ✅ | ❌ AWS only |
130
+ | State mgmt | External (S3/Blob) | None (ARM) | Cloud or self | None (CFN) |
131
+ | Language | HCL | Bicep DSL | TS/Py/Go | TS/Py |
132
+ | Learning curve | Medium | Low | Low (if you code) | Medium |
133
+ | Ecosystem | Largest | Azure only | Growing | AWS only |
134
+
135
+ ### Infrastructure Components
136
+
137
+ Present detected + suggested components:
138
+
139
+ ```
140
+ Which infrastructure components do you need?
141
+
142
+ Based on your codebase, I suggest these. Check/uncheck as needed:
143
+
144
+ Container platform:
145
+ {auto-checked items based on detection}
146
+ [ ] Container registry
147
+ [ ] Kubernetes cluster (AKS/EKS/GKE)
148
+ [ ] Serverless containers (Container Apps/Fargate/Cloud Run)
149
+ [ ] Self-hosted PaaS (Dokku/Coolify/CapRover on VPS)
150
+
151
+ Data:
152
+ {auto-checked if database migrations detected}
153
+ [ ] Managed PostgreSQL
154
+ [ ] Managed MySQL
155
+ [ ] Redis cache
156
+ [ ] Object storage (Blob/S3/GCS)
157
+ [ ] Message queue (Service Bus/SQS/Pub-Sub)
158
+
159
+ Networking:
160
+ [ ] DNS zone
161
+ [ ] CDN / Front Door / CloudFront
162
+ [ ] Virtual network / VPC
163
+ [ ] API Gateway
164
+
165
+ Security:
166
+ [ ] Key Vault / Secrets Manager
167
+ [ ] Managed identity / IAM roles
168
+
169
+ Monitoring:
170
+ [ ] Application Insights / CloudWatch / Cloud Logging
171
+ [ ] Dashboards and alerts
172
+ ```
173
+
174
+ ### Environment Topology
175
+
176
+ ```
177
+ How many infrastructure environments do you need?
178
+
179
+ {If /dock config found: "I see /dock configured {N} environments: {list}.
180
+ I'll match those."}
181
+
182
+ Options:
183
+ 1. Simple: dev + prod (Recommended to start)
184
+ 2. Standard: dev + staging + prod
185
+ 3. Custom: define your own
186
+ ```
187
+
188
+ ### State Management (Terraform/Pulumi only)
189
+
190
+ ```
191
+ Where should infrastructure state be stored?
192
+
193
+ Options (based on {PROVIDER}):
194
+ 1. {Provider-native option} (Recommended)
195
+ 2. Terraform Cloud / Pulumi Cloud
196
+ 3. Local (not recommended for teams)
197
+ ```
198
+
199
+ Provider-native defaults:
200
+ - Azure → Azure Blob Storage
201
+ - AWS → S3 + DynamoDB lock
202
+ - GCP → Google Cloud Storage
203
+
204
+ ### CI/CD Strategy
205
+
206
+ ```
207
+ How should infrastructure changes be applied?
208
+
209
+ Options:
210
+ 1. Plan on PR, auto-apply on merge (Recommended)
211
+ 2. Plan on PR, manual approval to apply
212
+ 3. Apply on merge only (no PR preview)
213
+ ```
214
+
215
+ ### Naming Convention
216
+
217
+ ```
218
+ What naming convention for cloud resources?
219
+
220
+ Options:
221
+ 1. Cloud Adoption Framework style (Recommended)
222
+ Example: rg-myapp-dev-eastus, acr-myapp-dev
223
+ 2. Simple: {project}-{resource}-{env}
224
+ Example: myapp-registry-dev, myapp-db-dev
225
+ 3. Custom prefix (you define the pattern)
226
+ ```
227
+
228
+ ### Resource Sizing
229
+
230
+ ```
231
+ What resource sizing tier?
232
+
233
+ Options:
234
+ 1. Minimal (Recommended for dev — smallest/cheapest SKUs)
235
+ 2. Standard (balanced cost/performance)
236
+ 3. Production (high availability, redundancy, scaling)
237
+
238
+ I'll use tier-appropriate sizing per environment:
239
+ dev = Minimal, staging = Standard, prod = Production
240
+ ```
241
+
242
+ ### /dock Integration
243
+
244
+ If /dock artifacts detected:
245
+
246
+ ```
247
+ I found /dock deployment config targeting:
248
+ {env}: {platform} for each environment
249
+
250
+ Should I provision the infrastructure for those targets?
251
+ This includes: container registry, {platform} compute resources, networking.
252
+
253
+ Options:
254
+ 1. Yes, provision everything /dock needs (Recommended)
255
+ 2. Yes, but let me customize which components
256
+ 3. No, I'll provision separately
257
+ ```