natureco-cli 5.18.3 → 5.20.0

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.
Files changed (346) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/package.json +1 -1
  3. package/skills/a-b-testing/SKILL.md +34 -0
  4. package/skills/accessibility-audit/SKILL.md +34 -0
  5. package/skills/agent-memory/SKILL.md +34 -0
  6. package/skills/agent-orchestration/SKILL.md +34 -0
  7. package/skills/airunway-aks-setup/SKILL.md +73 -0
  8. package/skills/algorithmic-art/SKILL.md +405 -0
  9. package/skills/analytics-setup/SKILL.md +34 -0
  10. package/skills/api-design/SKILL.md +34 -0
  11. package/skills/api-versioning/SKILL.md +34 -0
  12. package/skills/appinsights-instrumentation/SKILL.md +76 -0
  13. package/skills/audio-transcription/SKILL.md +34 -0
  14. package/skills/authentication-patterns/SKILL.md +34 -0
  15. package/skills/authorization-rbac/SKILL.md +34 -0
  16. package/skills/azure-ai/SKILL.md +71 -0
  17. package/skills/azure-aigateway/SKILL.md +129 -0
  18. package/skills/azure-cloud-migrate/SKILL.md +52 -0
  19. package/skills/azure-compliance/SKILL.md +108 -0
  20. package/skills/azure-compute/SKILL.md +46 -0
  21. package/skills/azure-cost/SKILL.md +45 -0
  22. package/skills/azure-deploy/SKILL.md +97 -0
  23. package/skills/azure-diagnostics/SKILL.md +151 -0
  24. package/skills/azure-enterprise-infra-planner/SKILL.md +54 -0
  25. package/skills/azure-hosted-copilot-sdk/SKILL.md +89 -0
  26. package/skills/azure-kubernetes/SKILL.md +153 -0
  27. package/skills/azure-kusto/SKILL.md +231 -0
  28. package/skills/azure-messaging/SKILL.md +57 -0
  29. package/skills/azure-prepare/SKILL.md +165 -0
  30. package/skills/azure-quotas/SKILL.md +276 -0
  31. package/skills/azure-rbac/SKILL.md +17 -0
  32. package/skills/azure-reliability/SKILL.md +387 -0
  33. package/skills/azure-resource-lookup/SKILL.md +108 -0
  34. package/skills/azure-resource-visualizer/SKILL.md +183 -0
  35. package/skills/azure-storage/SKILL.md +100 -0
  36. package/skills/azure-upgrade/SKILL.md +91 -0
  37. package/skills/azure-validate/SKILL.md +72 -0
  38. package/skills/backup-strategy/SKILL.md +34 -0
  39. package/skills/bash-scripting/SKILL.md +34 -0
  40. package/skills/batch-api-calls/SKILL.md +34 -0
  41. package/skills/batch-processing/SKILL.md +34 -0
  42. package/skills/brainstorming/SKILL.md +159 -0
  43. package/skills/brand-guidelines/SKILL.md +73 -0
  44. package/skills/brandkit/SKILL.md +798 -0
  45. package/skills/brutalist-skill/SKILL.md +92 -0
  46. package/skills/bulk-file-operations/SKILL.md +34 -0
  47. package/skills/cache-responses/SKILL.md +34 -0
  48. package/skills/caching-strategy/SKILL.md +34 -0
  49. package/skills/calendar-optimization/SKILL.md +34 -0
  50. package/skills/canvas-design/SKILL.md +130 -0
  51. package/skills/cavecrew/SKILL.md +82 -0
  52. package/skills/caveman-commit/SKILL.md +65 -0
  53. package/skills/caveman-help/SKILL.md +63 -0
  54. package/skills/caveman-review/SKILL.md +55 -0
  55. package/skills/caveman-stats/SKILL.md +10 -0
  56. package/skills/changelog-generation/SKILL.md +34 -0
  57. package/skills/chat-bot-design/SKILL.md +34 -0
  58. package/skills/chunking-strategy/SKILL.md +34 -0
  59. package/skills/ci-cd-pipeline/SKILL.md +34 -0
  60. package/skills/classification-pipeline/SKILL.md +34 -0
  61. package/skills/claude-api/SKILL.md +356 -0
  62. package/skills/clipboard-master/SKILL.md +34 -0
  63. package/skills/code-explanation/SKILL.md +34 -0
  64. package/skills/code-generation/SKILL.md +34 -0
  65. package/skills/code-migration/SKILL.md +34 -0
  66. package/skills/code-review-checklist/SKILL.md +34 -0
  67. package/skills/composition-patterns/SKILL.md +89 -0
  68. package/skills/contact-management/SKILL.md +34 -0
  69. package/skills/content-generation/SKILL.md +34 -0
  70. package/skills/context-pruning/SKILL.md +34 -0
  71. package/skills/context-window-management/SKILL.md +34 -0
  72. package/skills/continuous-improvement/SKILL.md +34 -0
  73. package/skills/cron-scheduling/SKILL.md +34 -0
  74. package/skills/cross-platform-compat/SKILL.md +34 -0
  75. package/skills/csv-processing/SKILL.md +34 -0
  76. package/skills/daily-journal/SKILL.md +34 -0
  77. package/skills/data-analysis/SKILL.md +34 -0
  78. package/skills/data-backup/SKILL.md +34 -0
  79. package/skills/data-cleaning/SKILL.md +34 -0
  80. package/skills/data-extraction/SKILL.md +34 -0
  81. package/skills/data-validation/SKILL.md +34 -0
  82. package/skills/database-migrations/SKILL.md +34 -0
  83. package/skills/database-schema-design/SKILL.md +34 -0
  84. package/skills/decision-mapping/SKILL.md +84 -0
  85. package/skills/decision-matrix/SKILL.md +34 -0
  86. package/skills/dependency-management/SKILL.md +34 -0
  87. package/skills/deploy-to-vercel/SKILL.md +296 -0
  88. package/skills/design-an-interface/SKILL.md +94 -0
  89. package/skills/design-doc-mermaid/SKILL.md +498 -0
  90. package/skills/dev-environment-setup/SKILL.md +34 -0
  91. package/skills/develop-userscripts/SKILL.md +84 -0
  92. package/skills/distraction-blocker/SKILL.md +34 -0
  93. package/skills/doc-coauthoring/SKILL.md +375 -0
  94. package/skills/docker-optimization/SKILL.md +34 -0
  95. package/skills/document-template/SKILL.md +34 -0
  96. package/skills/documentation/SKILL.md +109 -0
  97. package/skills/documentation-gen/SKILL.md +34 -0
  98. package/skills/docx/SKILL.md +590 -0
  99. package/skills/edit-article/SKILL.md +15 -0
  100. package/skills/efficient-formatting/SKILL.md +34 -0
  101. package/skills/email-management/SKILL.md +34 -0
  102. package/skills/email-service/SKILL.md +34 -0
  103. package/skills/embedding-generation/SKILL.md +34 -0
  104. package/skills/entity-extraction/SKILL.md +34 -0
  105. package/skills/entra-agent-id/SKILL.md +356 -0
  106. package/skills/entra-app-registration/SKILL.md +191 -0
  107. package/skills/environment-config/SKILL.md +34 -0
  108. package/skills/error-handling/SKILL.md +34 -0
  109. package/skills/estimation-techniques/SKILL.md +34 -0
  110. package/skills/event-driven-architecture/SKILL.md +34 -0
  111. package/skills/excel-automation/SKILL.md +34 -0
  112. package/skills/execution-monitoring/SKILL.md +34 -0
  113. package/skills/expense-tracking/SKILL.md +34 -0
  114. package/skills/faceless-explainer/SKILL.md +202 -0
  115. package/skills/fastify/SKILL.md +75 -0
  116. package/skills/feature-engineering/SKILL.md +34 -0
  117. package/skills/feature-flags/SKILL.md +34 -0
  118. package/skills/file-conversion/SKILL.md +34 -0
  119. package/skills/file-upload-handling/SKILL.md +34 -0
  120. package/skills/fine-tuning-prep/SKILL.md +34 -0
  121. package/skills/focus-mode/SKILL.md +34 -0
  122. package/skills/form-validation/SKILL.md +34 -0
  123. package/skills/function-calling/SKILL.md +34 -0
  124. package/skills/general-video/SKILL.md +143 -0
  125. package/skills/git-guardrails-claude-code/SKILL.md +95 -0
  126. package/skills/git-workflow/SKILL.md +34 -0
  127. package/skills/github-actions-docs/SKILL.md +98 -0
  128. package/skills/goal-setting/SKILL.md +34 -0
  129. package/skills/gpt-tasteskill/SKILL.md +74 -0
  130. package/skills/graphql-design/SKILL.md +34 -0
  131. package/skills/grill-me/SKILL.md +7 -0
  132. package/skills/grilling/SKILL.md +10 -0
  133. package/skills/habit-tracker/SKILL.md +34 -0
  134. package/skills/hallucination-detection/SKILL.md +34 -0
  135. package/skills/handoff/SKILL.md +16 -0
  136. package/skills/hyperframes/SKILL.md +152 -0
  137. package/skills/hyperframes-animation/SKILL.md +82 -0
  138. package/skills/hyperframes-cli/SKILL.md +109 -0
  139. package/skills/hyperframes-core/SKILL.md +78 -0
  140. package/skills/hyperframes-creative/SKILL.md +68 -0
  141. package/skills/hyperframes-media/SKILL.md +97 -0
  142. package/skills/image-processing/SKILL.md +34 -0
  143. package/skills/image-to-code-skill/SKILL.md +1228 -0
  144. package/skills/imagegen-frontend-mobile/SKILL.md +1465 -0
  145. package/skills/imagegen-frontend-web/SKILL.md +987 -0
  146. package/skills/implement/SKILL.md +15 -0
  147. package/skills/init/SKILL.md +91 -0
  148. package/skills/internal-comms/SKILL.md +32 -0
  149. package/skills/json-transformation/SKILL.md +34 -0
  150. package/skills/keyboard-shortcuts/SKILL.md +34 -0
  151. package/skills/knowledge-base/SKILL.md +34 -0
  152. package/skills/knowledge-graph/SKILL.md +34 -0
  153. package/skills/kubernetes-deployment/SKILL.md +34 -0
  154. package/skills/language-translation/SKILL.md +34 -0
  155. package/skills/lark-approval/SKILL.md +56 -0
  156. package/skills/lark-base/SKILL.md +157 -0
  157. package/skills/lark-doc/SKILL.md +81 -0
  158. package/skills/lark-shared/SKILL.md +168 -0
  159. package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
  160. package/skills/linting-neostandard-eslint9/SKILL.md +64 -0
  161. package/skills/llm-chaining/SKILL.md +34 -0
  162. package/skills/localization-i18n/SKILL.md +34 -0
  163. package/skills/logging-best-practices/SKILL.md +34 -0
  164. package/skills/loop-me/SKILL.md +32 -0
  165. package/skills/machine-learning-pipeline/SKILL.md +34 -0
  166. package/skills/meeting-notes/SKILL.md +34 -0
  167. package/skills/meeting-scheduler/SKILL.md +34 -0
  168. package/skills/message-queues/SKILL.md +34 -0
  169. package/skills/message-summarization/SKILL.md +34 -0
  170. package/skills/microservices-architecture/SKILL.md +34 -0
  171. package/skills/microsoft-foundry/SKILL.md +262 -0
  172. package/skills/migrate-to-shoehorn/SKILL.md +118 -0
  173. package/skills/milestone-tracking/SKILL.md +34 -0
  174. package/skills/minimalist-skill/SKILL.md +85 -0
  175. package/skills/model-deployment/SKILL.md +34 -0
  176. package/skills/model-evaluation/SKILL.md +34 -0
  177. package/skills/monitoring-setup/SKILL.md +34 -0
  178. package/skills/monorepo-setup/SKILL.md +34 -0
  179. package/skills/motion-graphics/SKILL.md +170 -0
  180. package/skills/multi-agent-systems/SKILL.md +34 -0
  181. package/skills/music-to-video/SKILL.md +197 -0
  182. package/skills/network-troubleshooting/SKILL.md +34 -0
  183. package/skills/node/SKILL.md +94 -0
  184. package/skills/nodejs-core/SKILL.md +156 -0
  185. package/skills/note-organization/SKILL.md +34 -0
  186. package/skills/oauth/SKILL.md +186 -0
  187. package/skills/obsidian-vault/SKILL.md +59 -0
  188. package/skills/octocat/SKILL.md +93 -0
  189. package/skills/openclaw-secure-linux-cloud/SKILL.md +157 -0
  190. package/skills/opensource-guide-coach/SKILL.md +218 -0
  191. package/skills/output-skill/SKILL.md +49 -0
  192. package/skills/package-publishing/SKILL.md +34 -0
  193. package/skills/password-generator/SKILL.md +34 -0
  194. package/skills/pdf/SKILL.md +314 -0
  195. package/skills/pdf-processing/SKILL.md +34 -0
  196. package/skills/performance-optimization/SKILL.md +34 -0
  197. package/skills/pomodoro-timer/SKILL.md +34 -0
  198. package/skills/powershell-automation/SKILL.md +34 -0
  199. package/skills/pptx/SKILL.md +232 -0
  200. package/skills/pr-to-video/SKILL.md +235 -0
  201. package/skills/priority-filtering/SKILL.md +34 -0
  202. package/skills/product-launch-video/SKILL.md +205 -0
  203. package/skills/project-tracking/SKILL.md +34 -0
  204. package/skills/prompt-compression/SKILL.md +34 -0
  205. package/skills/prompt-engineering/SKILL.md +34 -0
  206. package/skills/push-notifications/SKILL.md +34 -0
  207. package/skills/python-appservice-deploy/SKILL.md +36 -0
  208. package/skills/qa/SKILL.md +130 -0
  209. package/skills/rag-implementation/SKILL.md +34 -0
  210. package/skills/rate-limiting/SKILL.md +34 -0
  211. package/skills/react-best-practices/SKILL.md +149 -0
  212. package/skills/react-native-skills/SKILL.md +121 -0
  213. package/skills/react-view-transitions/SKILL.md +320 -0
  214. package/skills/readme-i18n/SKILL.md +176 -0
  215. package/skills/real-time-communication/SKILL.md +34 -0
  216. package/skills/redesign-skill/SKILL.md +178 -0
  217. package/skills/refactoring-strategy/SKILL.md +34 -0
  218. package/skills/regex-mastery/SKILL.md +34 -0
  219. package/skills/remotion/SKILL.md +364 -0
  220. package/skills/report-generation/SKILL.md +34 -0
  221. package/skills/request-refactor-plan/SKILL.md +68 -0
  222. package/skills/research-compiler/SKILL.md +34 -0
  223. package/skills/resolving-merge-conflicts/SKILL.md +14 -0
  224. package/skills/responsive-design/SKILL.md +34 -0
  225. package/skills/rest-api-patterns/SKILL.md +34 -0
  226. package/skills/retrospectives/SKILL.md +34 -0
  227. package/skills/risk-assessment/SKILL.md +34 -0
  228. package/skills/roadmap-creation/SKILL.md +34 -0
  229. package/skills/running-claude-code-via-litellm-copilot/SKILL.md +263 -0
  230. package/skills/scaffold-exercises/SKILL.md +106 -0
  231. package/skills/search-implementation/SKILL.md +34 -0
  232. package/skills/secrets-management/SKILL.md +34 -0
  233. package/skills/secure-linux-web-hosting/SKILL.md +162 -0
  234. package/skills/security-audit/SKILL.md +34 -0
  235. package/skills/selective-memory/SKILL.md +34 -0
  236. package/skills/semantic-search/SKILL.md +34 -0
  237. package/skills/semantic-versioning/SKILL.md +34 -0
  238. package/skills/sentiment-analysis/SKILL.md +34 -0
  239. package/skills/seo-optimization/SKILL.md +34 -0
  240. package/skills/setup-pre-commit/SKILL.md +91 -0
  241. package/skills/shadcn/SKILL.md +267 -0
  242. package/skills/simple/SKILL.md +52 -0
  243. package/skills/skill-creator/SKILL.md +485 -0
  244. package/skills/skill-optimizer/SKILL.md +47 -0
  245. package/skills/skills-cli/SKILL.md +281 -0
  246. package/skills/slack-gif-creator/SKILL.md +254 -0
  247. package/skills/snipgrapher/SKILL.md +58 -0
  248. package/skills/snippet-manager/SKILL.md +34 -0
  249. package/skills/soft-skill/SKILL.md +98 -0
  250. package/skills/sprint-planning/SKILL.md +34 -0
  251. package/skills/sql-query-optimization/SKILL.md +34 -0
  252. package/skills/stakeholder-communication/SKILL.md +34 -0
  253. package/skills/state-management/SKILL.md +34 -0
  254. package/skills/statistical-analysis/SKILL.md +34 -0
  255. package/skills/stitch-skill/SKILL.md +184 -0
  256. package/skills/streaming-responses/SKILL.md +34 -0
  257. package/skills/structured-output/SKILL.md +34 -0
  258. package/skills/summarization-techniques/SKILL.md +34 -0
  259. package/skills/supabase/SKILL.md +135 -0
  260. package/skills/supabase-postgres-best-practices/SKILL.md +64 -0
  261. package/skills/system-diagnostics/SKILL.md +34 -0
  262. package/skills/systematic-debugging/SKILL.md +296 -0
  263. package/skills/talking-head-recut/SKILL.md +1191 -0
  264. package/skills/task-decomposition/SKILL.md +34 -0
  265. package/skills/task-prioritization/SKILL.md +34 -0
  266. package/skills/taste-skill/SKILL.md +1206 -0
  267. package/skills/taste-skill-v1/SKILL.md +226 -0
  268. package/skills/tdd/SKILL.md +108 -0
  269. package/skills/teach/SKILL.md +140 -0
  270. package/skills/template-library/SKILL.md +34 -0
  271. package/skills/test-driven-development/SKILL.md +371 -0
  272. package/skills/test-generation/SKILL.md +34 -0
  273. package/skills/testing-strategy/SKILL.md +34 -0
  274. package/skills/text-expansion/SKILL.md +34 -0
  275. package/skills/theme-factory/SKILL.md +59 -0
  276. package/skills/time-blocking/SKILL.md +34 -0
  277. package/skills/to-prd/SKILL.md +75 -0
  278. package/skills/token-budgeting/SKILL.md +34 -0
  279. package/skills/token-optimization/SKILL.md +34 -0
  280. package/skills/tool-calling-patterns/SKILL.md +34 -0
  281. package/skills/typescript-magician/SKILL.md +117 -0
  282. package/skills/tzst/SKILL.md +68 -0
  283. package/skills/ubiquitous-language/SKILL.md +93 -0
  284. package/skills/use-my-browser/SKILL.md +110 -0
  285. package/skills/using-superpowers/SKILL.md +121 -0
  286. package/skills/vector-database-setup/SKILL.md +34 -0
  287. package/skills/vercel-cli-with-tokens/SKILL.md +353 -0
  288. package/skills/vercel-optimize/SKILL.md +322 -0
  289. package/skills/video-editing/SKILL.md +34 -0
  290. package/skills/viral-instagram-reels/SKILL.md +180 -0
  291. package/skills/viral-short-form/SKILL.md +147 -0
  292. package/skills/viral-short-form-ideas/SKILL.md +184 -0
  293. package/skills/viral-tiktok-content/SKILL.md +180 -0
  294. package/skills/visualization-creation/SKILL.md +34 -0
  295. package/skills/web-artifacts-builder/SKILL.md +74 -0
  296. package/skills/web-design-guidelines/SKILL.md +39 -0
  297. package/skills/web-scraping/SKILL.md +34 -0
  298. package/skills/webapp-testing/SKILL.md +96 -0
  299. package/skills/webhook-handling/SKILL.md +34 -0
  300. package/skills/website-to-video/SKILL.md +145 -0
  301. package/skills/weekly-review/SKILL.md +34 -0
  302. package/skills/workflow-automation/SKILL.md +34 -0
  303. package/skills/writing-beats/SKILL.md +67 -0
  304. package/skills/writing-fragments/SKILL.md +79 -0
  305. package/skills/writing-great-skills/SKILL.md +82 -0
  306. package/skills/writing-guidelines/SKILL.md +39 -0
  307. package/skills/writing-plans/SKILL.md +174 -0
  308. package/skills/writing-shape/SKILL.md +79 -0
  309. package/skills/xdrop/SKILL.md +78 -0
  310. package/skills/xget/SKILL.md +87 -0
  311. package/skills/xlsx/SKILL.md +292 -0
  312. package/src/commands/code_v5.js +377 -73
  313. package/src/commands/repl.js +505 -86
  314. package/src/providers/model/anthropic.js +84 -0
  315. package/src/providers/model/gemini.js +49 -0
  316. package/src/providers/model/minimax.js +48 -0
  317. package/src/providers/model/ollama.js +42 -0
  318. package/src/providers/model/openai.js +49 -0
  319. package/src/providers/search/duckduckgo.js +45 -0
  320. package/src/providers/search/exa.js +52 -0
  321. package/src/providers/search/searxng.js +51 -0
  322. package/src/providers/search/tavily.js +47 -0
  323. package/src/tools/model_provider.js +71 -0
  324. package/src/tools/parallel_search.js +40 -49
  325. package/src/tools/search_provider.js +79 -0
  326. package/src/tools/skills_download.js +217 -0
  327. package/src/tools/web_search.js +42 -62
  328. package/src/tools/workflow.js +21 -9
  329. package/src/utils/cron.js +82 -126
  330. package/src/utils/effort-levels.js +42 -0
  331. package/src/utils/fallback-chain.js +72 -0
  332. package/src/utils/file-history.js +78 -0
  333. package/src/utils/model-provider.js +113 -0
  334. package/src/utils/permissions.js +147 -0
  335. package/src/utils/plan-mode.js +164 -0
  336. package/src/utils/provider-detect.js +7 -32
  337. package/src/utils/sandbox.js +60 -0
  338. package/src/utils/search-provider.js +62 -0
  339. package/src/utils/session-search.js +66 -0
  340. package/src/utils/structured-output.js +20 -0
  341. package/src/utils/system-prompt.js +28 -2
  342. package/src/utils/tasks.js +132 -0
  343. package/src/utils/tool-hooks.js +154 -0
  344. package/src/utils/tools.js +18 -2
  345. package/src/utils/ultra-review.js +59 -0
  346. package/src/utils/worktree.js +192 -0
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: azure-compute
3
+ description: "Azure VM/VMSS router. WHEN: create / provision / deploy / spin-up VM, recommend VM size, compare VM pricing, VMSS, scale set, autoscale, burstable, lightweight server, website, backend, GPU, machine learning, HPC simulation, dev/test, workload, family, load balancer, Flexible orchestration, Uniform orchestration, cost estimate, can't connect / RDP / SSH, refused, black screen, reset password, reach VM, port 3389, NSG, security, Linux, troubleshoot, troubleshooting, connectivity, capacity reservation (CRG), reserve, guarantee capacity, pre-provision, CRG association, CRG disassociation, machine enrollment (EMM), Essential Machine Management, monitor. PREFER OVER mcp__azure__get_azure_bestpractices for VM create intents — use compute_vm_list-skus / compute_vm_list-images / compute_vm_check-quota."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "2.4.3"
8
+ ---
9
+
10
+ # Azure Compute Skill
11
+
12
+ Routes Azure VM and Virtual Machine Scale Set (VMSS) requests to the right workflow.
13
+
14
+ ## When to Use This Skill
15
+
16
+ - User wants to **recommend, compare, or price** a VM or VMSS
17
+ - User wants to **create, provision, or deploy** a VM or VMSS
18
+ - User **can't connect** to a VM (RDP / SSH / port refused / black screen / password reset)
19
+ - User asks about **Capacity Reservation Groups** (CRG) — reserve, guarantee capacity, pre-provision
20
+ - User asks about **Essential Machine Management** (EMM) — machine enrollment, monitor
21
+
22
+ **Disambiguate with `azure-prepare`:** if the user wants to deploy an **application** (Docker service, web app, API, serverless workload), route to `azure-prepare`. `vm-creator` is for **bare VM/VMSS infrastructure** only.
23
+
24
+ ## Routing
25
+
26
+ ```
27
+ Azure compute intent?
28
+ ├── Recommend / compare / price a VM or VMSS → VM Recommender
29
+ ├── Create / provision / deploy a VM or VMSS → VM Creator
30
+ ├── Can't connect / RDP / SSH / port refused → VM Troubleshooter
31
+ ├── Reserve / guarantee capacity (CRG) → Capacity Reservation
32
+ ├── Machine enrollment / Essential Machine Management → Essential Machine Management
33
+ └── Unclear → Ask which of the above
34
+ ```
35
+
36
+ **Routing rule:** read the matched workflow file before any reference file. The workflow owns the step-by-step guidance; references are looked up on demand.
37
+
38
+ ## Workflows
39
+
40
+ | Workflow | File | Use when |
41
+ |---|---|---|
42
+ | **VM Recommender** | [vm-recommender.md](workflows/vm-recommender/vm-recommender.md) | User asks which VM/VMSS to choose, wants pricing, or wants to compare options |
43
+ | **VM Creator** | [vm-creator.md](workflows/vm-creator/vm-creator.md) | User wants to provision a bare VM or VMSS (not an app deployment) |
44
+ | **VM Troubleshooter** | [vm-troubleshooter.md](workflows/vm-troubleshooter/vm-troubleshooter.md) | User can't connect, RDP/SSH refused, black screen, needs password reset |
45
+ | **Capacity Reservation** | [capacity-reservation.md](workflows/capacity-reservation/capacity-reservation.md) | User needs to reserve / guarantee VM capacity (CRG create / associate / disassociate) |
46
+ | **Essential Machine Management** | [essential-machine-management.md](workflows/essential-machine-management/essential-machine-management.md) | User asks about EMM / machine enrollment / monitor |
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: azure-cost
3
+ description: "Azure cost management: query costs, forecast spending, optimize to reduce waste. WHEN: \"Azure costs\", \"Azure bill\", \"cost breakdown\", \"how much am I spending\", \"forecast spending\", \"optimize costs\", \"reduce spending\", \"orphaned resources\", \"rightsize VMs\", \"cost spike\", \"reduce storage costs\", \"AKS cost\". DO NOT USE FOR: deploying resources, provisioning, diagnostics, or security audits."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "1.2.2"
8
+ ---
9
+
10
+ # Azure Cost Management Skill
11
+
12
+ Query historical costs, forecast future spending, optimize to reduce waste.
13
+
14
+ ## Routing
15
+
16
+ | User Intent | Workflow |
17
+ |-------------|----------|
18
+ | Understand current costs | [Cost Query](cost-query/workflow.md) |
19
+ | Reduce costs / find waste | [Cost Optimization](cost-optimization/workflow.md) |
20
+ | Project future costs | [Cost Forecast](cost-forecast/workflow.md) |
21
+
22
+ ## Quick Reference
23
+
24
+ | Property | Value |
25
+ |----------|-------|
26
+ | **Query API** | `POST {scope}/providers/Microsoft.CostManagement/query?api-version=2023-11-01` |
27
+ | **Forecast API** | `POST {scope}/providers/Microsoft.CostManagement/forecast?api-version=2023-11-01` |
28
+ | **Required Role** | Cost Management Reader + Monitoring Reader + Reader (on target scope) |
29
+
30
+ ## Scope Patterns
31
+
32
+ - Subscription: `/subscriptions/<id>`
33
+ - Resource Group: `/subscriptions/<id>/resourceGroups/<name>`
34
+ - Management Group: `/providers/Microsoft.Management/managementGroups/<id>`
35
+ - Billing Account: `/providers/Microsoft.Billing/billingAccounts/<id>`
36
+
37
+ ## Service-Specific Optimization
38
+
39
+ - [Redis](cost-optimization/services/redis/azure-cache-for-redis.md)
40
+ - [Storage](cost-optimization/services/storage/azure-storage.md)
41
+
42
+ ## References
43
+
44
+ - [MCP Tools, Best Practices, Safety](references/tools-and-best-practices.md)
45
+ - [SDK: Redis .NET](cost-optimization/sdk/azure-resource-manager-redis-dotnet.md)
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: azure-deploy
3
+ description: "Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: \"run azd up\", \"run azd deploy\", \"execute deployment\", \"push to production\", \"push to cloud\", \"go live\", \"ship it\", \"bicep deploy\", \"terraform apply\", \"publish to Azure\", \"launch on Azure\". DO NOT USE WHEN: \"create and deploy\", \"build and deploy\", \"create a new app\", \"set up infrastructure\", \"create and deploy to Azure using Terraform\" — use azure-prepare for these."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "1.1.2"
8
+ ---
9
+
10
+ # Azure Deploy
11
+
12
+ > **AUTHORITATIVE GUIDANCE — MANDATORY COMPLIANCE**
13
+ >
14
+ > **PREREQUISITE**: The **azure-validate** skill **MUST** be invoked and completed with status `Validated` BEFORE executing this skill.
15
+
16
+ > **⛔ STOP — PREREQUISITE CHECK REQUIRED**
17
+ > Before proceeding, verify BOTH prerequisites are met:
18
+ >
19
+ > 1. **azure-prepare** was invoked and completed → `.azure/deployment-plan.md` exists
20
+ > 2. **azure-validate** was invoked and passed → plan status = `Validated`
21
+ >
22
+ > If EITHER is missing, **STOP IMMEDIATELY**:
23
+ > - No plan? → Invoke **azure-prepare** skill first
24
+ > - Status not `Validated`? → Invoke **azure-validate** skill first
25
+ >
26
+ > **⛔ DO NOT MANUALLY UPDATE THE PLAN STATUS**
27
+ >
28
+ > You are **FORBIDDEN** from changing the plan status to `Validated` yourself. Only the **azure-validate** skill is authorized to set this status after running actual validation checks. If you update the status without running validation, deployments will fail.
29
+ >
30
+ > **DO NOT ASSUME** the app is ready. **DO NOT SKIP** validation to save time. Skipping steps causes deployment failures. The complete workflow ensures success:
31
+ >
32
+ > `azure-prepare` → `azure-validate` → `azure-deploy`
33
+
34
+ ## Triggers
35
+
36
+ Activate this skill when user wants to:
37
+ - Execute deployment of an already-prepared application (azure.yaml and infra/ exist)
38
+ - Push updates to an existing Azure deployment
39
+ - Run `azd up`, `azd deploy`, or `az deployment` on a prepared project
40
+ - Ship already-built code to production
41
+ - Deploy an application that already includes API Management (APIM) gateway infrastructure
42
+
43
+ > **Scope**: This skill executes deployments. It does not create applications, generate infrastructure code, or scaffold projects. For those tasks, use **azure-prepare**.
44
+
45
+ > **APIM / AI Gateway**: Use this skill to deploy applications whose APIM/AI gateway infrastructure was already created during **azure-prepare**. For creating or changing APIM resources, see [APIM deployment guide](https://learn.microsoft.com/azure/api-management/get-started-create-service-instance). For AI governance policies, invoke **azure-aigateway** skill.
46
+
47
+ ## Rules
48
+
49
+ 1. Run after azure-prepare and azure-validate
50
+ 2. `.azure/deployment-plan.md` must exist with status `Validated`
51
+ 3. **Pre-deploy checklist required** — [Pre-Deploy Checklist](references/pre-deploy-checklist.md)
52
+ 4. ⛔ **Destructive actions require `ask_user`** — [global-rules](references/global-rules.md)
53
+ 5. **Scope: deployment execution only** — This skill owns execution of `azd up`, `azd deploy`, `terraform apply`, and `az deployment` commands. These commands are run through this skill's error recovery and verification pipeline.
54
+
55
+ ---
56
+
57
+ ## Steps
58
+
59
+ | # | Action | Reference |
60
+ |---|--------|-----------|
61
+ | 1 | **Check Plan** — Read `.azure/deployment-plan.md`, verify status = `Validated` AND **Validation Proof** section is populated | `.azure/deployment-plan.md` |
62
+ | 2 | **Pre-Deploy Checklist** — MUST complete ALL steps | [Pre-Deploy Checklist](references/pre-deploy-checklist.md) |
63
+ | 3 | **Load Recipe** — Based on `recipe.type` in `.azure/deployment-plan.md` | [recipes/README.md](references/recipes/README.md) |
64
+ | 4 | **RBAC Health Check** — For Container Apps + ACR with managed identity: run `azd provision --no-prompt`, then verify `AcrPull` role has propagated before proceeding (see checklist) | [Pre-Deploy Checklist — Container Apps RBAC](references/pre-deploy-checklist.md#container-apps--acr--pre-deploy-rbac-health-check) |
65
+ | 5 | **Execute Deploy** — Follow recipe steps | Recipe README |
66
+ | 6 | **Post-Deploy** — Configure SQL managed identity and apply EF migrations if applicable | [Post-Deployment](references/recipes/azd/post-deployment.md) |
67
+ | 7 | **Handle Errors** — See recipe's `errors.md` | — |
68
+ | 8 | **Verify Success** — Confirm deployment completed and endpoints are accessible | [Verification](references/recipes/azd/verify.md) |
69
+ | 9 | **Live Role Verification** — Query Azure to confirm provisioned RBAC roles are correct and sufficient | [live-role-verification.md](references/live-role-verification.md) |
70
+ | 10 | **Report Results** — Present deployed endpoint URLs to the user as fully-qualified `https://` links | [Verification](references/recipes/azd/verify.md) |
71
+
72
+ > **⛔ URL FORMAT RULE**
73
+ >
74
+ > When presenting endpoint URLs to the user, you **MUST** always use fully-qualified URLs with the `https://` scheme (e.g. `https://myapp.azurewebsites.net`, not `myapp.azurewebsites.net`). Many Azure CLI commands return bare hostnames without a scheme — always prepend `https://` before presenting them.
75
+
76
+ > **⛔ VALIDATION PROOF CHECK**
77
+ >
78
+ > When checking the plan, verify the **Validation Proof** section (Section 7) contains actual validation results with commands run and timestamps. If this section is empty, validation was bypassed — invoke **azure-validate** skill first.
79
+
80
+ ## SDK Quick References
81
+
82
+ - **Azure Developer CLI**: [azd](references/sdk/azd-deployment.md)
83
+ - **Azure Identity**: [Python](references/sdk/azure-identity-py.md) | [.NET](references/sdk/azure-identity-dotnet.md) | [TypeScript](references/sdk/azure-identity-ts.md) | [Java](references/sdk/azure-identity-java.md)
84
+
85
+ ## MCP Tools
86
+
87
+ | Tool | Purpose |
88
+ |------|---------|
89
+ | `mcp_azure_mcp_subscription_list` | List available subscriptions |
90
+ | `mcp_azure_mcp_group_list` | List resource groups in subscription |
91
+ | `mcp_azure_mcp_azd` | Execute AZD commands |
92
+ | `azure__role` | List role assignments for live RBAC verification (step 9) |
93
+
94
+ ## References
95
+
96
+ - [Troubleshooting](references/troubleshooting.md) - Common issues and solutions
97
+ - [Post-Deployment Steps](references/recipes/azd/post-deployment.md) - SQL + EF Core setup
@@ -0,0 +1,151 @@
1
+ ---
2
+ name: azure-diagnostics
3
+ description: "Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, troubleshoot functions, troubleshoot AKS, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, analyze logs, KQL, insights, image pull failures, cold start issues, health probe failures, resource health, root cause of errors, troubleshoot event hubs, troubleshoot service bus, messaging SDK error, AMQP connection failure, message lock lost, service bus dead letter."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "1.1.6"
8
+ ---
9
+
10
+ # Azure Diagnostics
11
+
12
+ > **AUTHORITATIVE GUIDANCE — MANDATORY COMPLIANCE**
13
+ >
14
+ > This document is the **official source** for debugging and troubleshooting Azure production issues. Follow these instructions to diagnose and resolve common Azure service problems systematically.
15
+
16
+ ## Triggers
17
+
18
+ Activate this skill when user wants to:
19
+ - Debug or troubleshoot production issues
20
+ - Diagnose errors in Azure services
21
+ - Analyze application logs or metrics
22
+ - Fix image pull, cold start, or health probe issues
23
+ - Investigate why Azure resources are failing
24
+ - Find root cause of application errors
25
+ - Troubleshoot App Service issues (high CPU, deployment failures, crashes, slow responses, TLS/custom domains)
26
+ - Respond to prompts like "troubleshoot app service", "app service high CPU", or "app service deployment failure"
27
+ - Troubleshoot Azure Function Apps (invocation failures, timeouts, binding errors)
28
+ - Find the App Insights or Log Analytics workspace linked to a Function App
29
+ - Troubleshoot AKS clusters, nodes, pods, ingress, or Kubernetes networking issues
30
+ - Troubleshoot Azure Messaging SDK issues (Event Hubs, Service Bus connection failures, AMQP errors, message lock issues)
31
+
32
+ ## Rules
33
+
34
+ 1. Start with systematic diagnosis flow
35
+ 2. Use AppLens (MCP) for AI-powered diagnostics when available
36
+ 3. Check resource health before deep-diving into logs
37
+ 4. Select appropriate troubleshooting guide based on service type
38
+ 5. Document findings and attempted remediation steps
39
+ 6. Route AKS incidents to the dedicated AKS troubleshooting document
40
+
41
+ ---
42
+
43
+ ## Quick Diagnosis Flow
44
+
45
+ 1. **Identify symptoms** - What's failing?
46
+ 2. **Check resource health** - Is Azure healthy?
47
+ 3. **Review logs** - What do logs show?
48
+ 4. **Analyze metrics** - Performance patterns?
49
+ 5. **Investigate recent changes** - What changed?
50
+
51
+ ---
52
+
53
+ ## Troubleshooting Guides by Service
54
+
55
+ | Service | Common Issues | Reference |
56
+ |---------|---------------|-----------|
57
+ | **Container Apps** | Image pull failures, cold starts, health probes, port mismatches | [container-apps/](references/container-apps/README.md) |
58
+ | **App Service** | High CPU, deployment failures, crashes, slow responses, TLS/custom domains | [app-service/](references/app-service/README.md) |
59
+ | **Function Apps** | App details, invocation failures, timeouts, binding errors, cold starts, missing app settings | [functions/](references/functions/README.md) |
60
+ | **AKS** | Cluster access, nodes, `kube-system`, scheduling, crash loops, ingress, DNS, upgrades | [AKS Troubleshooting](troubleshooting/aks/aks-troubleshooting.md) |
61
+ | **Messaging** | Event Hubs & Service Bus SDK errors, AMQP failures, message lock, connectivity | [Messaging Troubleshooting](troubleshooting/messaging/README.md) |
62
+
63
+ ---
64
+
65
+ ## Routing
66
+
67
+ - Keep Container Apps and Function Apps diagnostics in this parent skill.
68
+ - Route active AKS incidents, AKS-specific intake, evidence gathering, and remediation guidance to [AKS Troubleshooting](troubleshooting/aks/aks-troubleshooting.md).
69
+ - Route Azure Messaging SDK troubleshooting (Event Hubs, Service Bus) to [Messaging Troubleshooting](troubleshooting/messaging/README.md).
70
+
71
+ ---
72
+
73
+ ## Quick Reference
74
+
75
+ ### Common Diagnostic Commands
76
+
77
+ ```bash
78
+ # Check resource health
79
+ az resource show --ids RESOURCE_ID
80
+ # View activity log
81
+ az monitor activity-log list -g RG --max-events 20
82
+ # Container Apps logs
83
+ az containerapp logs show --name APP -g RG --follow
84
+ # Function App logs (query App Insights traces)
85
+ az monitor app-insights query --apps APP-INSIGHTS -g RG \
86
+ --analytics-query "traces | where timestamp > ago(1h) | order by timestamp desc | take 50"
87
+ ```
88
+
89
+ ### AppLens (MCP Tools)
90
+
91
+ For AI-powered diagnostics, use:
92
+ ```
93
+ mcp_azure_mcp_applens
94
+ intent: "diagnose issues with <resource-name>"
95
+ command: "diagnose"
96
+ parameters:
97
+ resourceId: "<resource-id>"
98
+
99
+ Provides:
100
+ - Automated issue detection
101
+ - Root cause analysis
102
+ - Remediation recommendations
103
+ ```
104
+
105
+ ### Azure Monitor (MCP Tools)
106
+
107
+ For querying logs and metrics:
108
+ ```
109
+ mcp_azure_mcp_monitor
110
+ intent: "query logs for <resource-name>"
111
+ command: "logs_query"
112
+ parameters:
113
+ workspaceId: "<workspace-id>"
114
+ query: "<KQL-query>"
115
+ ```
116
+
117
+ See [kql-queries.md](references/kql-queries.md) for common diagnostic queries.
118
+
119
+ ---
120
+
121
+ ## Check Azure Resource Health
122
+
123
+ ### Using MCP
124
+
125
+ ```
126
+ mcp_azure_mcp_resourcehealth
127
+ intent: "check health status of <resource-name>"
128
+ command: "get"
129
+ parameters:
130
+ resourceId: "<resource-id>"
131
+ ```
132
+
133
+ ### Using CLI
134
+
135
+ ```bash
136
+ # Check specific resource health
137
+ az resource show --ids RESOURCE_ID
138
+
139
+ # Check recent activity
140
+ az monitor activity-log list -g RG --max-events 20
141
+ ```
142
+
143
+ ---
144
+
145
+ ## References
146
+
147
+ - [KQL Query Library](references/kql-queries.md)
148
+ - [Azure Resource Graph Queries](references/azure-resource-graph.md)
149
+ - [App Service Troubleshooting](references/app-service/README.md)
150
+ - [Function Apps Troubleshooting](references/functions/README.md)
151
+ - [Messaging Troubleshooting](troubleshooting/messaging/README.md)
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: azure-enterprise-infra-planner
3
+ description: "Architect and provision enterprise Azure infrastructure from workload descriptions. For cloud architects and platform engineers planning networking, identity, security, compliance, and multi-resource topologies with WAF alignment. Generates Bicep or Terraform directly (no azd). WHEN: 'plan Azure infrastructure', 'architect Azure landing zone', 'design hub-spoke network', 'plan multi-region DR topology', 'set up VNets firewalls and private endpoints', 'subscription-scope Bicep deployment', 'Azure Backup for VM workloads'. PREFER azure-prepare FOR app-centric workflows."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "1.2.3"
8
+ ---
9
+
10
+ # Azure Enterprise Infra Planner
11
+
12
+ ## When to Use This Skill
13
+
14
+ Activate this skill when user wants to:
15
+ - Plan enterprise Azure infrastructure from a workload or architecture description
16
+ - Architect a landing zone, hub-spoke network, or multi-region topology
17
+ - Design networking infrastructure: VNets, subnets, firewalls, private endpoints, VPN gateways
18
+ - Plan identity, RBAC, and compliance-driven infrastructure
19
+ - Generate Bicep or Terraform for subscription-scope or multi-resource-group deployments
20
+ - Plan disaster recovery, failover, or cross-region high-availability topologies
21
+
22
+ ## Quick Reference
23
+
24
+ | Property | Details |
25
+ |---|---|
26
+ | MCP tools | `insights_get`, `get_azure_bestpractices_get`, `wellarchitectedframework_serviceguide_get`, `microsoft_docs_fetch`, `microsoft_docs_search`, `bicepschema_get` |
27
+ | CLI commands | `az deployment group create`, `az bicep build`, `az resource list`, `terraform init`, `terraform plan`, `terraform validate`, `terraform apply` |
28
+ | Output schema | [schema.md](references/schema.md) |
29
+ | Key references | [workflow.md](references/workflow.md), [waf-checklist.md](references/waf-checklist.md), [resources/](references/resources/README.md), [constraints/](references/constraints/README.md) |
30
+
31
+ ## Workflow (Start Here)
32
+
33
+ Follow the step-by-step instructions in [workflow.md](references/workflow.md) to execute the 7 phases of infrastructure planning and provisioning.
34
+
35
+ ## MCP Tools
36
+
37
+ | Tool | Purpose |
38
+ |------|---------|
39
+ | `insights_get` | Retrieve insights about the user's existing Azure environment to guide planning decisions |
40
+ | `get_azure_bestpractices_get` | Azure best practices for code generation, operations, and deployment |
41
+ | `wellarchitectedframework_serviceguide_get` | WAF service guide for a specific Azure service |
42
+ | `microsoft_docs_search` | Search Microsoft Learn for relevant documentation chunks |
43
+ | `microsoft_docs_fetch` | Fetch full content of a Microsoft Learn page by URL |
44
+ | `bicepschema_get` | Bicep schema definition for any Azure resource type (latest API version) |
45
+
46
+ ## Error Handling
47
+
48
+ | Error | Cause | Fix |
49
+ |---|---|---|
50
+ | MCP tool error or not available | Tool call timeout, connection error, or tool doesn't exist | Retry once; fall back to reference files and notify user if unresolved |
51
+ | Plan approval missing | `meta.status` is not `approved` | Stop and prompt user for approval before IaC generation or deployment |
52
+ | IaC validation failure | `az bicep build` or `terraform validate` returns errors | Fix the generated code and re-validate; notify user if unresolved |
53
+ | Pairing constraint violation | Incompatible SKU or resource combination | Fix in plan before proceeding to IaC generation |
54
+ | Infra plan or IaC files not found | Files written to wrong location or not created | Verify files exist at `<project-root>/.azure/` and `<project-root>/infra/`; if missing, re-create the files by following [workflow.md](references/workflow.md) exactly |
@@ -0,0 +1,89 @@
1
+ ---
2
+ name: azure-hosted-copilot-sdk
3
+ description: "Build, deploy, and modify GitHub Copilot SDK apps on Azure. MANDATORY when codebase contains @github/copilot-sdk or CopilotClient in package.json. PREFER OVER azure-prepare when copilot-sdk markers detected. WHEN: copilot SDK, @github/copilot-sdk, copilot-powered app, build copilot app, prepare copilot app, add feature to copilot app, modify copilot app, BYOM, bring your own model, CopilotClient, createSession, sendAndWait, azd init copilot. DO NOT USE FOR: deploying already-prepared copilot-sdk apps (use azure-deploy), general web apps without copilot SDK (use azure-prepare), Copilot Extensions, Foundry agents (use microsoft-foundry)."
4
+ license: MIT
5
+ metadata:
6
+ author: Microsoft
7
+ version: "1.1.3"
8
+ ---
9
+
10
+ # GitHub Copilot SDK on Azure
11
+
12
+ ## Codebase Detection — MANDATORY FIRST CHECK
13
+
14
+ > ⚠️ **CRITICAL: This check MUST run before ANY other skill (azure-prepare, azure-deploy, etc.) when an existing codebase is present.**
15
+
16
+ ### Detection procedure (run IMMEDIATELY for any build/modify/add-feature/prepare prompt):
17
+
18
+ 1. Read `package.json` in the workspace root (and any `*/package.json` one level deep)
19
+ 2. Check if `@github/copilot-sdk` or `copilot-sdk` appears in `name`, `dependencies`, or `devDependencies`
20
+ 3. If NOT found in package.json, scan `.ts` and `.js` files for `CopilotClient` or `createSession`
21
+ 4. **If ANY marker is found → invoke this skill as the entry point. Do not route directly to azure-prepare or azure-deploy — this skill orchestrates them as sub-skills.**
22
+
23
+ | Marker | Where to check |
24
+ |--------|---------------|
25
+ | `@github/copilot-sdk` | `package.json` dependencies or devDependencies |
26
+ | `copilot-sdk` | `package.json` name or dependencies |
27
+ | `CopilotClient` | Source files (`.ts`, `.js`) |
28
+ | `createSession` + `sendAndWait` | Source files (`.ts`, `.js`) |
29
+
30
+ ### Generic prompts that MUST trigger this skill when markers are detected:
31
+
32
+ | Prompt pattern (no "copilot" keyword) | Why this skill |
33
+ |---------------------------------------|---------------|
34
+ | "Build this app" / "Prepare this app for Azure" | Codebase contains `@github/copilot-sdk` - needs SDK-aware scaffolding |
35
+ | "Add a new feature to this app" | Requires SDK-aware implementation patterns |
36
+ | "Update this app" / "Modify this app" | Must preserve SDK integration patterns |
37
+
38
+ > ⚠️ **Warning:** ANY build, modify, add-feature, or prepare prompt targeting an existing codebase MUST route to this skill when codebase contains `@github/copilot-sdk`, even if the prompt does not mention "copilot". This skill then orchestrates azure-prepare and azure-deploy as sub-skills.
39
+
40
+ > ⚠️ **Yield to azure-deploy:** When the codebase already has `.azure/deployment-plan.md` and the user wants to **deploy** (not modify or add features), route to **azure-deploy** instead. This skill handles preparation; azure-deploy handles execution.
41
+
42
+ ## Step 1: Route
43
+
44
+ | User wants | Action |
45
+ |------------|--------|
46
+ | Build new (empty project) | Step 2A (scaffold) |
47
+ | Add new SDK service to existing repo | Step 2B (scaffold alongside) |
48
+ | Deploy existing SDK app to Azure | Step 2C (add infra to existing SDK app) |
49
+ | Modify/add features to existing SDK app | Use codebase context + SDK references to implement |
50
+ | Add SDK to existing app code | [Integrate SDK](references/existing-project-integration.md) |
51
+ | Use Azure/own model | Step 3 (BYOM config) |
52
+
53
+ ## Step 2A: Scaffold New (Greenfield)
54
+
55
+ `azd init --template azure-samples/copilot-sdk-service`
56
+
57
+ Template includes API (Express/TS) + Web UI (React/Vite) + infra (Bicep) + Dockerfiles + token scripts — do NOT recreate. See [SDK ref](references/copilot-sdk.md).
58
+
59
+ ## Step 2B: Add SDK Service to Existing Repo
60
+
61
+ User has existing code and wants a new Copilot SDK service alongside it. Scaffold template to a temp dir, copy the API service + infra into the user's repo, adapt `azure.yaml` to include both existing and new services. See [deploy existing ref](references/deploy-existing.md).
62
+
63
+ ## Step 2C: Deploy Existing SDK App
64
+
65
+ User already has a working Copilot SDK app and needs Azure infra. See [deploy existing ref](references/deploy-existing.md).
66
+
67
+ ## Step 3: Model Configuration
68
+
69
+ Three model paths (layers on top of 2A/2B):
70
+
71
+ | Path | Config |
72
+ |------|--------|
73
+ | **GitHub default** | No `model` param — SDK picks default |
74
+ | **GitHub specific** | `model: "<name>"` — use `listModels()` to discover |
75
+ | **Azure BYOM** | `model` + `provider` with `bearerToken` via `DefaultAzureCredential` |
76
+
77
+ > ⚠️ **BYOM Auth — MANDATORY**: Azure BYOM configurations MUST use `DefaultAzureCredential` (local dev) or `ManagedIdentityCredential` (production) to obtain a `bearerToken`. The ONLY supported auth pattern is `bearerToken` in the provider config. See [auth-best-practices.md](references/auth-best-practices.md) for the credential pattern and [model config ref](references/azure-model-config.md) for the full BYOM code example.
78
+
79
+ See [model config ref](references/azure-model-config.md).
80
+
81
+ ## Step 4: Deploy
82
+
83
+ Invoke **azure-prepare** (skip its Step 0 routing — scaffolding is done) → **azure-validate** → **azure-deploy** in order.
84
+
85
+ ## Rules
86
+
87
+ - Read `AGENTS.md` in user's repo before changes
88
+ - Docker required (`docker info`)
89
+ - BYOM auth: ONLY `bearerToken` via `DefaultAzureCredential` or `ManagedIdentityCredential` — no other auth pattern is supported
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: azure-kubernetes
3
+ license: MIT
4
+ metadata:
5
+ author: Microsoft
6
+ version: "1.1.4"
7
+ description: "Plan, create, and configure production-ready Azure Kubernetes Service (AKS) clusters. Covers Day-0 checklist, SKU selection (Automatic vs Standard), networking options (private API server, Azure CNI Overlay, egress configuration), security, and operations (autoscaling, upgrade strategy, cost analysis). WHEN: create AKS environment, provision AKS, enable AKS observability, design AKS networking, choose AKS SKU, secure AKS, optimize AKS, AKS spot nodes, AKS cluster-autoscaler, rightsize AKS pod, pod rightsizing, over-provisioned AKS pod, pod resource requests and limits, Vertical Pod Autoscaler, VPA recommendations."
8
+ ---
9
+
10
+ # Azure Kubernetes Service
11
+
12
+ > **AUTHORITATIVE GUIDANCE — MANDATORY COMPLIANCE**
13
+ >
14
+ > This skill produces a **recommended AKS cluster configuration** based on user requirements, distinguishing **Day-0 decisions** (networking, API server — hard to change later) from **Day-1 features** (can enable post-creation). See [CLI reference](./references/cli-reference.md) for commands.
15
+
16
+ ## Quick Reference
17
+ | Property | Value |
18
+ |----------|-------|
19
+ | Best for | AKS cluster planning and Day-0 decisions |
20
+ | MCP Tools | `mcp_azure_mcp_aks` |
21
+ | CLI | `az aks create`, `az aks show`, `kubectl get`, `kubectl describe` |
22
+ | Related skills | azure-diagnostics (troubleshooting AKS), azure-validate (readiness checks), azure-kubernetes-automatic-readiness (migrate existing cluster to AKS Automatic) |
23
+
24
+ ## When to Use This Skill
25
+ Activate this skill when user wants to:
26
+ - Create a new AKS cluster
27
+ - Plan AKS cluster configuration for production workloads
28
+ - Design AKS networking (API server access, pod IP model, egress)
29
+ - Set up AKS identity and secrets management
30
+ - Configure AKS governance (Azure Policy, Deployment Safeguards)
31
+ - Enable AKS observability (Container Insights, Managed Prometheus, Grafana)
32
+ - Define AKS upgrade and patching strategy
33
+ - Understand AKS Automatic vs Standard SKU differences
34
+ - Get a Day-0 checklist for AKS cluster setup and configuration
35
+
36
+ ## Rules
37
+ 1. Start with the user's requirements for provisioning compute, networking, security, and other settings.
38
+ 2. Use the `azure` MCP server and select `mcp_azure_mcp_aks` first to discover the exact AKS-specific MCP tools surfaced by the client. Choose the smallest discovered AKS tool that fits the task, and fall back to Azure CLI (`az aks`) only when the needed functionality is not exposed through the AKS MCP surface.
39
+ 3. Determine if AKS Automatic or Standard SKU is more appropriate based on the user's need for control vs convenience. Default to AKS Automatic unless specific customizations are required.
40
+ 4. Document decisions and rationale for cluster configuration choices, especially for Day-0 decisions that are hard to change later (networking, API server access).
41
+
42
+
43
+ ## Required Inputs (Ask only what’s needed)
44
+ If the user is unsure, use safe defaults.
45
+ - AKS environment type: dev/test or production
46
+ - Region(s), availability zones, preferred node VM sizes
47
+ - Expected scale (node/cluster count, workload size)
48
+ - Networking requirements (API server access, pod IP model, ingress/egress control)
49
+ - Security and identity requirements, including image registry
50
+ - Upgrade and observability preferences
51
+ - Cost constraints
52
+
53
+ ## Workflow
54
+
55
+ ### 1. Cluster Type
56
+ - **AKS Automatic** (default): Best for most production workloads, provides a curated experience with pre-configured best practices for security, reliability, and performance. Use unless you have specific custom requirements for networking, autoscaling, or node pool configurations not supported by Node Auto-Provisioning (NAP).
57
+ - **AKS Standard**: Use if you need full control over environment configuration, which requires additional overhead to set up and manage.
58
+
59
+ ### 2. Networking (Pod IP, Egress, Ingress, Dataplane)
60
+
61
+ **Pod IP Model** (Key Day-0 decision):
62
+ - **Azure CNI Overlay** (recommended): pod IPs from private overlay range, not VNet-routable, scales to large environments and good for most workloads
63
+ - **Azure CNI (VNet-routable)**: pod IPs directly from VNet (pod subnet or node subnet), use when pods must be directly addressable from VNet or on-prem
64
+ - Docs: https://learn.microsoft.com/azure/aks/azure-cni-overlay
65
+
66
+ **Dataplane & Network Policy**:
67
+ - **Azure CNI powered by Cilium** (recommended): eBPF-based for high-performance packet processing, network policies, and observability
68
+
69
+ **Egress**:
70
+ - **Static Egress Gateway** for stable, predictable outbound IPs
71
+ - For restricted egress: UDR + Azure Firewall or NVA
72
+
73
+ **Ingress**:
74
+ - **App Routing addon with Gateway API** — recommended default for HTTP/HTTPS workloads
75
+ - **Istio service mesh with Gateway API** - for advanced traffic management, mTLS, canary releases
76
+ - **Application Gateway for Containers** — for L7 load balancing with WAF integration
77
+
78
+ **DNS**:
79
+ - Enable **LocalDNS** on all node pools for reliable, performant DNS resolution
80
+
81
+ ### 3. Security
82
+ - Use **Microsoft Entra ID** everywhere (control plane, Workload Identity for pods, node access). Avoid static credentials.
83
+ - Azure Key Vault via **Secrets Store CSI Driver** for secrets
84
+ - Enable **Azure Policy** + **Deployment Safeguards**
85
+ - Enable **Encryption at rest** for etcd/API server; **in-transit** for node-to-node
86
+ - Allow only signed, policy-approved images (Azure Policy + Ratify), prefer **Azure Container Registry**
87
+ - **Isolation**: Use namespaces, network policies, scoped logging
88
+
89
+ ### 4. Observability
90
+ - Use Managed Prometheus and Container Insights with Grafana for AKS observability (logs + metrics).
91
+ - Enable Diagnostic Settings to collect control plane logs and audit logs in a Log Analytics workspace for security monitoring and troubleshooting.
92
+ - For other monitoring and troubleshooting tools, use features like the Agentic CLI for AKS, Application Insights, Resource Health Center, AppLens detectors, and Azure Advisors.
93
+
94
+ ### 5. Upgrades & Patching
95
+ - Configure **Maintenance Windows** for controlled upgrade timing
96
+ - Enable **auto-upgrades** for control plane and node OS to stay up-to-date with security patches and Kubernetes versions
97
+ - Consider **LTS versions** for enterprise stability (2-year support) by upgrading your AKS environment to the Premium tier
98
+ - **Fleet upgrades**: Use **AKS Fleet Manager** for staged rollout across test to production environments
99
+
100
+ ### 6. Performance
101
+ - Use **Ephemeral OS disks** (`--node-osdisk-type Ephemeral`) for faster node startup
102
+ - Select **Azure Linux** as node OS (smaller footprint, faster boot)
103
+ - Enable **KEDA** for event-driven autoscaling beyond HPA
104
+
105
+ ### 7. Node Pools & Compute
106
+ - **Dedicated system node pool**: At least 2 nodes, tainted for system workloads only (`CriticalAddonsOnly`)
107
+ - Enable **Node Auto Provisioning (NAP)** on all pools for cost savings and responsive scaling
108
+ - Use **latest generation SKUs (v5/v6)** for host-level optimizations
109
+ - **Avoid B-series VMs** — burstable SKUs cause performance/reliability issues
110
+ - Use SKUs with **at least 4 vCPUs** for production workloads
111
+ - Set **topology spread constraints** to distribute pods across hosts/zones per SLO
112
+
113
+ ### 8. Reliability
114
+ - Deploy across **3 Availability Zones** (`--zones 1 2 3`)
115
+ - Use **Standard tier** for zone-redundant control plane + 99.95% SLA for API server availability
116
+ - Enable **Microsoft Defender for Containers** for runtime protection
117
+ - Configure **PodDisruptionBudgets** for all production workloads
118
+ - Use **topology spread constraints** to ensure pod distribution across failure domains
119
+
120
+ ### 9. Cost Controls
121
+ - Use **Spot node pools** for batch/interruptible workloads (up to 90% savings)
122
+ - **Stop/Start** dev/test clusters: `az aks stop/start`
123
+ - Consider **Reserved Instances** or **Savings Plans** for steady-state workloads
124
+
125
+ **Deep-dive scenarios** — load only the relevant reference file:
126
+
127
+ | Scenario | Trigger Keywords | Reference |
128
+ |----------|-----------------|-----------|
129
+ | Pod Rightsizing | over-provisioned pods, CPU requests, memory requests, rightsize workloads | [azure-aks-rightsizing.md](./references/azure-aks-rightsizing.md) |
130
+ | VPA Setup | vertical pod autoscaler, VPA recommendations, VPA enable | [azure-aks-vpa.md](./references/azure-aks-vpa.md) |
131
+ | Cluster Autoscaler | idle nodes, CAS off, enable autoscaler, scale-down profile, node utilization | [azure-aks-autoscaler.md](./references/azure-aks-autoscaler.md) |
132
+ | Spot Node Pools | Spot VMs, Spot nodes, batch workloads, cheaper nodes | [azure-aks-spot.md](./references/azure-aks-spot.md) |
133
+
134
+ > **Disambiguation:** If a prompt matches multiple rows (e.g., "cheaper nodes" could suggest both Spot and autoscaler), prefer the most specific match. If ambiguous, ask the user to clarify their intent before loading a reference file.
135
+
136
+ ## Guardrails / Safety
137
+ - Do not request or output secrets (tokens, keys).
138
+ - Do not ask the user to paste subscription IDs. Discover subscription and resource scope via MCP tools (e.g., list subscriptions, list resource groups) or `az account show` / `az account list` so the agent can resolve context without exposing identifiers.
139
+ - If requirements are ambiguous for day-0 critical decisions, ask the user clarifying questions. For day-1 enabled features, propose 2–3 safe options with tradeoffs and choose a conservative default.
140
+ - Do not promise zero downtime; advise workload safeguards (PDBs, probes, replicas) and staged upgrades along with best practices for reliability and performance.
141
+
142
+ ## MCP Tools
143
+ | Tool | Purpose | Key Parameters |
144
+ |------|---------|----------------|
145
+ | `mcp_azure_mcp_aks` | AKS MCP entry point used to discover the exact AKS-specific tools exposed by the client | Discover the callable AKS tool first, then use that tool's parameters |
146
+
147
+ ## Error Handling
148
+ | Error / Symptom | Likely Cause | Remediation |
149
+ |-----------------|--------------|-------------|
150
+ | MCP tool call fails or times out | Invalid credentials, subscription, or AKS context | Verify `az login`, confirm the active subscription context with `az account show`, and check the target resource group without echoing subscription identifiers back to the user |
151
+ | Quota exceeded | Regional vCPU or resource limits | Request quota increase or select different region/VM SKU |
152
+ | Networking conflict (IP exhaustion) | Pod subnet too small for overlay/CNI | Re-plan IP ranges; may require cluster recreation (Day-0) |
153
+ | Workload Identity not working | Missing OIDC issuer or federated credential | Enable `--enable-oidc-issuer --enable-workload-identity`, configure federated identity |