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.
- package/CHANGELOG.md +32 -0
- package/package.json +1 -1
- package/skills/a-b-testing/SKILL.md +34 -0
- package/skills/accessibility-audit/SKILL.md +34 -0
- package/skills/agent-memory/SKILL.md +34 -0
- package/skills/agent-orchestration/SKILL.md +34 -0
- package/skills/airunway-aks-setup/SKILL.md +73 -0
- package/skills/algorithmic-art/SKILL.md +405 -0
- package/skills/analytics-setup/SKILL.md +34 -0
- package/skills/api-design/SKILL.md +34 -0
- package/skills/api-versioning/SKILL.md +34 -0
- package/skills/appinsights-instrumentation/SKILL.md +76 -0
- package/skills/audio-transcription/SKILL.md +34 -0
- package/skills/authentication-patterns/SKILL.md +34 -0
- package/skills/authorization-rbac/SKILL.md +34 -0
- package/skills/azure-ai/SKILL.md +71 -0
- package/skills/azure-aigateway/SKILL.md +129 -0
- package/skills/azure-cloud-migrate/SKILL.md +52 -0
- package/skills/azure-compliance/SKILL.md +108 -0
- package/skills/azure-compute/SKILL.md +46 -0
- package/skills/azure-cost/SKILL.md +45 -0
- package/skills/azure-deploy/SKILL.md +97 -0
- package/skills/azure-diagnostics/SKILL.md +151 -0
- package/skills/azure-enterprise-infra-planner/SKILL.md +54 -0
- package/skills/azure-hosted-copilot-sdk/SKILL.md +89 -0
- package/skills/azure-kubernetes/SKILL.md +153 -0
- package/skills/azure-kusto/SKILL.md +231 -0
- package/skills/azure-messaging/SKILL.md +57 -0
- package/skills/azure-prepare/SKILL.md +165 -0
- package/skills/azure-quotas/SKILL.md +276 -0
- package/skills/azure-rbac/SKILL.md +17 -0
- package/skills/azure-reliability/SKILL.md +387 -0
- package/skills/azure-resource-lookup/SKILL.md +108 -0
- package/skills/azure-resource-visualizer/SKILL.md +183 -0
- package/skills/azure-storage/SKILL.md +100 -0
- package/skills/azure-upgrade/SKILL.md +91 -0
- package/skills/azure-validate/SKILL.md +72 -0
- package/skills/backup-strategy/SKILL.md +34 -0
- package/skills/bash-scripting/SKILL.md +34 -0
- package/skills/batch-api-calls/SKILL.md +34 -0
- package/skills/batch-processing/SKILL.md +34 -0
- package/skills/brainstorming/SKILL.md +159 -0
- package/skills/brand-guidelines/SKILL.md +73 -0
- package/skills/brandkit/SKILL.md +798 -0
- package/skills/brutalist-skill/SKILL.md +92 -0
- package/skills/bulk-file-operations/SKILL.md +34 -0
- package/skills/cache-responses/SKILL.md +34 -0
- package/skills/caching-strategy/SKILL.md +34 -0
- package/skills/calendar-optimization/SKILL.md +34 -0
- package/skills/canvas-design/SKILL.md +130 -0
- package/skills/cavecrew/SKILL.md +82 -0
- package/skills/caveman-commit/SKILL.md +65 -0
- package/skills/caveman-help/SKILL.md +63 -0
- package/skills/caveman-review/SKILL.md +55 -0
- package/skills/caveman-stats/SKILL.md +10 -0
- package/skills/changelog-generation/SKILL.md +34 -0
- package/skills/chat-bot-design/SKILL.md +34 -0
- package/skills/chunking-strategy/SKILL.md +34 -0
- package/skills/ci-cd-pipeline/SKILL.md +34 -0
- package/skills/classification-pipeline/SKILL.md +34 -0
- package/skills/claude-api/SKILL.md +356 -0
- package/skills/clipboard-master/SKILL.md +34 -0
- package/skills/code-explanation/SKILL.md +34 -0
- package/skills/code-generation/SKILL.md +34 -0
- package/skills/code-migration/SKILL.md +34 -0
- package/skills/code-review-checklist/SKILL.md +34 -0
- package/skills/composition-patterns/SKILL.md +89 -0
- package/skills/contact-management/SKILL.md +34 -0
- package/skills/content-generation/SKILL.md +34 -0
- package/skills/context-pruning/SKILL.md +34 -0
- package/skills/context-window-management/SKILL.md +34 -0
- package/skills/continuous-improvement/SKILL.md +34 -0
- package/skills/cron-scheduling/SKILL.md +34 -0
- package/skills/cross-platform-compat/SKILL.md +34 -0
- package/skills/csv-processing/SKILL.md +34 -0
- package/skills/daily-journal/SKILL.md +34 -0
- package/skills/data-analysis/SKILL.md +34 -0
- package/skills/data-backup/SKILL.md +34 -0
- package/skills/data-cleaning/SKILL.md +34 -0
- package/skills/data-extraction/SKILL.md +34 -0
- package/skills/data-validation/SKILL.md +34 -0
- package/skills/database-migrations/SKILL.md +34 -0
- package/skills/database-schema-design/SKILL.md +34 -0
- package/skills/decision-mapping/SKILL.md +84 -0
- package/skills/decision-matrix/SKILL.md +34 -0
- package/skills/dependency-management/SKILL.md +34 -0
- package/skills/deploy-to-vercel/SKILL.md +296 -0
- package/skills/design-an-interface/SKILL.md +94 -0
- package/skills/design-doc-mermaid/SKILL.md +498 -0
- package/skills/dev-environment-setup/SKILL.md +34 -0
- package/skills/develop-userscripts/SKILL.md +84 -0
- package/skills/distraction-blocker/SKILL.md +34 -0
- package/skills/doc-coauthoring/SKILL.md +375 -0
- package/skills/docker-optimization/SKILL.md +34 -0
- package/skills/document-template/SKILL.md +34 -0
- package/skills/documentation/SKILL.md +109 -0
- package/skills/documentation-gen/SKILL.md +34 -0
- package/skills/docx/SKILL.md +590 -0
- package/skills/edit-article/SKILL.md +15 -0
- package/skills/efficient-formatting/SKILL.md +34 -0
- package/skills/email-management/SKILL.md +34 -0
- package/skills/email-service/SKILL.md +34 -0
- package/skills/embedding-generation/SKILL.md +34 -0
- package/skills/entity-extraction/SKILL.md +34 -0
- package/skills/entra-agent-id/SKILL.md +356 -0
- package/skills/entra-app-registration/SKILL.md +191 -0
- package/skills/environment-config/SKILL.md +34 -0
- package/skills/error-handling/SKILL.md +34 -0
- package/skills/estimation-techniques/SKILL.md +34 -0
- package/skills/event-driven-architecture/SKILL.md +34 -0
- package/skills/excel-automation/SKILL.md +34 -0
- package/skills/execution-monitoring/SKILL.md +34 -0
- package/skills/expense-tracking/SKILL.md +34 -0
- package/skills/faceless-explainer/SKILL.md +202 -0
- package/skills/fastify/SKILL.md +75 -0
- package/skills/feature-engineering/SKILL.md +34 -0
- package/skills/feature-flags/SKILL.md +34 -0
- package/skills/file-conversion/SKILL.md +34 -0
- package/skills/file-upload-handling/SKILL.md +34 -0
- package/skills/fine-tuning-prep/SKILL.md +34 -0
- package/skills/focus-mode/SKILL.md +34 -0
- package/skills/form-validation/SKILL.md +34 -0
- package/skills/function-calling/SKILL.md +34 -0
- package/skills/general-video/SKILL.md +143 -0
- package/skills/git-guardrails-claude-code/SKILL.md +95 -0
- package/skills/git-workflow/SKILL.md +34 -0
- package/skills/github-actions-docs/SKILL.md +98 -0
- package/skills/goal-setting/SKILL.md +34 -0
- package/skills/gpt-tasteskill/SKILL.md +74 -0
- package/skills/graphql-design/SKILL.md +34 -0
- package/skills/grill-me/SKILL.md +7 -0
- package/skills/grilling/SKILL.md +10 -0
- package/skills/habit-tracker/SKILL.md +34 -0
- package/skills/hallucination-detection/SKILL.md +34 -0
- package/skills/handoff/SKILL.md +16 -0
- package/skills/hyperframes/SKILL.md +152 -0
- package/skills/hyperframes-animation/SKILL.md +82 -0
- package/skills/hyperframes-cli/SKILL.md +109 -0
- package/skills/hyperframes-core/SKILL.md +78 -0
- package/skills/hyperframes-creative/SKILL.md +68 -0
- package/skills/hyperframes-media/SKILL.md +97 -0
- package/skills/image-processing/SKILL.md +34 -0
- package/skills/image-to-code-skill/SKILL.md +1228 -0
- package/skills/imagegen-frontend-mobile/SKILL.md +1465 -0
- package/skills/imagegen-frontend-web/SKILL.md +987 -0
- package/skills/implement/SKILL.md +15 -0
- package/skills/init/SKILL.md +91 -0
- package/skills/internal-comms/SKILL.md +32 -0
- package/skills/json-transformation/SKILL.md +34 -0
- package/skills/keyboard-shortcuts/SKILL.md +34 -0
- package/skills/knowledge-base/SKILL.md +34 -0
- package/skills/knowledge-graph/SKILL.md +34 -0
- package/skills/kubernetes-deployment/SKILL.md +34 -0
- package/skills/language-translation/SKILL.md +34 -0
- package/skills/lark-approval/SKILL.md +56 -0
- package/skills/lark-base/SKILL.md +157 -0
- package/skills/lark-doc/SKILL.md +81 -0
- package/skills/lark-shared/SKILL.md +168 -0
- package/skills/lark-workflow-meeting-summary/SKILL.md +122 -0
- package/skills/linting-neostandard-eslint9/SKILL.md +64 -0
- package/skills/llm-chaining/SKILL.md +34 -0
- package/skills/localization-i18n/SKILL.md +34 -0
- package/skills/logging-best-practices/SKILL.md +34 -0
- package/skills/loop-me/SKILL.md +32 -0
- package/skills/machine-learning-pipeline/SKILL.md +34 -0
- package/skills/meeting-notes/SKILL.md +34 -0
- package/skills/meeting-scheduler/SKILL.md +34 -0
- package/skills/message-queues/SKILL.md +34 -0
- package/skills/message-summarization/SKILL.md +34 -0
- package/skills/microservices-architecture/SKILL.md +34 -0
- package/skills/microsoft-foundry/SKILL.md +262 -0
- package/skills/migrate-to-shoehorn/SKILL.md +118 -0
- package/skills/milestone-tracking/SKILL.md +34 -0
- package/skills/minimalist-skill/SKILL.md +85 -0
- package/skills/model-deployment/SKILL.md +34 -0
- package/skills/model-evaluation/SKILL.md +34 -0
- package/skills/monitoring-setup/SKILL.md +34 -0
- package/skills/monorepo-setup/SKILL.md +34 -0
- package/skills/motion-graphics/SKILL.md +170 -0
- package/skills/multi-agent-systems/SKILL.md +34 -0
- package/skills/music-to-video/SKILL.md +197 -0
- package/skills/network-troubleshooting/SKILL.md +34 -0
- package/skills/node/SKILL.md +94 -0
- package/skills/nodejs-core/SKILL.md +156 -0
- package/skills/note-organization/SKILL.md +34 -0
- package/skills/oauth/SKILL.md +186 -0
- package/skills/obsidian-vault/SKILL.md +59 -0
- package/skills/octocat/SKILL.md +93 -0
- package/skills/openclaw-secure-linux-cloud/SKILL.md +157 -0
- package/skills/opensource-guide-coach/SKILL.md +218 -0
- package/skills/output-skill/SKILL.md +49 -0
- package/skills/package-publishing/SKILL.md +34 -0
- package/skills/password-generator/SKILL.md +34 -0
- package/skills/pdf/SKILL.md +314 -0
- package/skills/pdf-processing/SKILL.md +34 -0
- package/skills/performance-optimization/SKILL.md +34 -0
- package/skills/pomodoro-timer/SKILL.md +34 -0
- package/skills/powershell-automation/SKILL.md +34 -0
- package/skills/pptx/SKILL.md +232 -0
- package/skills/pr-to-video/SKILL.md +235 -0
- package/skills/priority-filtering/SKILL.md +34 -0
- package/skills/product-launch-video/SKILL.md +205 -0
- package/skills/project-tracking/SKILL.md +34 -0
- package/skills/prompt-compression/SKILL.md +34 -0
- package/skills/prompt-engineering/SKILL.md +34 -0
- package/skills/push-notifications/SKILL.md +34 -0
- package/skills/python-appservice-deploy/SKILL.md +36 -0
- package/skills/qa/SKILL.md +130 -0
- package/skills/rag-implementation/SKILL.md +34 -0
- package/skills/rate-limiting/SKILL.md +34 -0
- package/skills/react-best-practices/SKILL.md +149 -0
- package/skills/react-native-skills/SKILL.md +121 -0
- package/skills/react-view-transitions/SKILL.md +320 -0
- package/skills/readme-i18n/SKILL.md +176 -0
- package/skills/real-time-communication/SKILL.md +34 -0
- package/skills/redesign-skill/SKILL.md +178 -0
- package/skills/refactoring-strategy/SKILL.md +34 -0
- package/skills/regex-mastery/SKILL.md +34 -0
- package/skills/remotion/SKILL.md +364 -0
- package/skills/report-generation/SKILL.md +34 -0
- package/skills/request-refactor-plan/SKILL.md +68 -0
- package/skills/research-compiler/SKILL.md +34 -0
- package/skills/resolving-merge-conflicts/SKILL.md +14 -0
- package/skills/responsive-design/SKILL.md +34 -0
- package/skills/rest-api-patterns/SKILL.md +34 -0
- package/skills/retrospectives/SKILL.md +34 -0
- package/skills/risk-assessment/SKILL.md +34 -0
- package/skills/roadmap-creation/SKILL.md +34 -0
- package/skills/running-claude-code-via-litellm-copilot/SKILL.md +263 -0
- package/skills/scaffold-exercises/SKILL.md +106 -0
- package/skills/search-implementation/SKILL.md +34 -0
- package/skills/secrets-management/SKILL.md +34 -0
- package/skills/secure-linux-web-hosting/SKILL.md +162 -0
- package/skills/security-audit/SKILL.md +34 -0
- package/skills/selective-memory/SKILL.md +34 -0
- package/skills/semantic-search/SKILL.md +34 -0
- package/skills/semantic-versioning/SKILL.md +34 -0
- package/skills/sentiment-analysis/SKILL.md +34 -0
- package/skills/seo-optimization/SKILL.md +34 -0
- package/skills/setup-pre-commit/SKILL.md +91 -0
- package/skills/shadcn/SKILL.md +267 -0
- package/skills/simple/SKILL.md +52 -0
- package/skills/skill-creator/SKILL.md +485 -0
- package/skills/skill-optimizer/SKILL.md +47 -0
- package/skills/skills-cli/SKILL.md +281 -0
- package/skills/slack-gif-creator/SKILL.md +254 -0
- package/skills/snipgrapher/SKILL.md +58 -0
- package/skills/snippet-manager/SKILL.md +34 -0
- package/skills/soft-skill/SKILL.md +98 -0
- package/skills/sprint-planning/SKILL.md +34 -0
- package/skills/sql-query-optimization/SKILL.md +34 -0
- package/skills/stakeholder-communication/SKILL.md +34 -0
- package/skills/state-management/SKILL.md +34 -0
- package/skills/statistical-analysis/SKILL.md +34 -0
- package/skills/stitch-skill/SKILL.md +184 -0
- package/skills/streaming-responses/SKILL.md +34 -0
- package/skills/structured-output/SKILL.md +34 -0
- package/skills/summarization-techniques/SKILL.md +34 -0
- package/skills/supabase/SKILL.md +135 -0
- package/skills/supabase-postgres-best-practices/SKILL.md +64 -0
- package/skills/system-diagnostics/SKILL.md +34 -0
- package/skills/systematic-debugging/SKILL.md +296 -0
- package/skills/talking-head-recut/SKILL.md +1191 -0
- package/skills/task-decomposition/SKILL.md +34 -0
- package/skills/task-prioritization/SKILL.md +34 -0
- package/skills/taste-skill/SKILL.md +1206 -0
- package/skills/taste-skill-v1/SKILL.md +226 -0
- package/skills/tdd/SKILL.md +108 -0
- package/skills/teach/SKILL.md +140 -0
- package/skills/template-library/SKILL.md +34 -0
- package/skills/test-driven-development/SKILL.md +371 -0
- package/skills/test-generation/SKILL.md +34 -0
- package/skills/testing-strategy/SKILL.md +34 -0
- package/skills/text-expansion/SKILL.md +34 -0
- package/skills/theme-factory/SKILL.md +59 -0
- package/skills/time-blocking/SKILL.md +34 -0
- package/skills/to-prd/SKILL.md +75 -0
- package/skills/token-budgeting/SKILL.md +34 -0
- package/skills/token-optimization/SKILL.md +34 -0
- package/skills/tool-calling-patterns/SKILL.md +34 -0
- package/skills/typescript-magician/SKILL.md +117 -0
- package/skills/tzst/SKILL.md +68 -0
- package/skills/ubiquitous-language/SKILL.md +93 -0
- package/skills/use-my-browser/SKILL.md +110 -0
- package/skills/using-superpowers/SKILL.md +121 -0
- package/skills/vector-database-setup/SKILL.md +34 -0
- package/skills/vercel-cli-with-tokens/SKILL.md +353 -0
- package/skills/vercel-optimize/SKILL.md +322 -0
- package/skills/video-editing/SKILL.md +34 -0
- package/skills/viral-instagram-reels/SKILL.md +180 -0
- package/skills/viral-short-form/SKILL.md +147 -0
- package/skills/viral-short-form-ideas/SKILL.md +184 -0
- package/skills/viral-tiktok-content/SKILL.md +180 -0
- package/skills/visualization-creation/SKILL.md +34 -0
- package/skills/web-artifacts-builder/SKILL.md +74 -0
- package/skills/web-design-guidelines/SKILL.md +39 -0
- package/skills/web-scraping/SKILL.md +34 -0
- package/skills/webapp-testing/SKILL.md +96 -0
- package/skills/webhook-handling/SKILL.md +34 -0
- package/skills/website-to-video/SKILL.md +145 -0
- package/skills/weekly-review/SKILL.md +34 -0
- package/skills/workflow-automation/SKILL.md +34 -0
- package/skills/writing-beats/SKILL.md +67 -0
- package/skills/writing-fragments/SKILL.md +79 -0
- package/skills/writing-great-skills/SKILL.md +82 -0
- package/skills/writing-guidelines/SKILL.md +39 -0
- package/skills/writing-plans/SKILL.md +174 -0
- package/skills/writing-shape/SKILL.md +79 -0
- package/skills/xdrop/SKILL.md +78 -0
- package/skills/xget/SKILL.md +87 -0
- package/skills/xlsx/SKILL.md +292 -0
- package/src/commands/code_v5.js +377 -73
- package/src/commands/repl.js +505 -86
- package/src/providers/model/anthropic.js +84 -0
- package/src/providers/model/gemini.js +49 -0
- package/src/providers/model/minimax.js +48 -0
- package/src/providers/model/ollama.js +42 -0
- package/src/providers/model/openai.js +49 -0
- package/src/providers/search/duckduckgo.js +45 -0
- package/src/providers/search/exa.js +52 -0
- package/src/providers/search/searxng.js +51 -0
- package/src/providers/search/tavily.js +47 -0
- package/src/tools/model_provider.js +71 -0
- package/src/tools/parallel_search.js +40 -49
- package/src/tools/search_provider.js +79 -0
- package/src/tools/skills_download.js +217 -0
- package/src/tools/web_search.js +42 -62
- package/src/tools/workflow.js +21 -9
- package/src/utils/cron.js +82 -126
- package/src/utils/effort-levels.js +42 -0
- package/src/utils/fallback-chain.js +72 -0
- package/src/utils/file-history.js +78 -0
- package/src/utils/model-provider.js +113 -0
- package/src/utils/permissions.js +147 -0
- package/src/utils/plan-mode.js +164 -0
- package/src/utils/provider-detect.js +7 -32
- package/src/utils/sandbox.js +60 -0
- package/src/utils/search-provider.js +62 -0
- package/src/utils/session-search.js +66 -0
- package/src/utils/structured-output.js +20 -0
- package/src/utils/system-prompt.js +28 -2
- package/src/utils/tasks.js +132 -0
- package/src/utils/tool-hooks.js +154 -0
- package/src/utils/tools.js +18 -2
- package/src/utils/ultra-review.js +59 -0
- 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 |
|