Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
Get Azure VM and VM Scale Set recommendations based on workload, performance, and budget needs.
Files
Skill
Size
Entrypoint
Format
Open file
Syntax-highlighted preview of this file as included in the skill package.
workflows/vm-creator/references/depth-probe/index.md
1# Depth Probe — Meet the User Where They Are23The VM Creator adapts its questioning to the user's expertise and intent. A beginner asking for a "dev VM" should not get peppered with networking and egress questions. An advanced networking engineer specifying "VMSS behind App Gateway with private endpoints" should not be asked whether they want a public IP.45## Philosophy671. **Never ask a question whose answer can be inferred or safely defaulted.**82. **Batch silent inferences into a Plan Card.** Defaulted decisions should be visible and editable.93. **Defaults ladder.** When you must ask, prefer `[recommended default] / [show alternatives] / [I have specifics]`.104. **Branching is signal-driven, not flag-driven.** Reclassify any time the user volunteers a deep signal.1112## Classification — read the initial request1314Score each signal that appears in the user's first 1-2 messages. The highest-scoring branch wins; a user can be in multiple branches.1516| Signal phrase / keyword | Branch |17|---|---|18| "VNet", "subnet", "NSG", "egress", "private endpoint", "App Gateway", "accelerated networking", "service tag", "UDR", "IPv6", "DNS", "Bastion" | [networking-deep](networking-deep.md) |19| "vCPUs", "GPU", "memory", "family", "D-series", "N-series", "ephemeral OS disk", "proximity placement", "AMD", "Intel", "generation", "SR-IOV", "trusted launch" | [spec-deep](spec-deep.md) |20| "spot", "reserved", "savings plan", "hybrid benefit", "autoscale floor/ceiling", "$", "budget", "cheapest", "cost-optimize" | [cost-deep](cost-deep.md) |21| "managed identity", "Entra", "RBAC", "Key Vault", "JIT", "encryption at host", "CMK", "confidential", "compliance", "FedRAMP", "HIPAA" | [security-deep](security-deep.md) |22| "dev", "sandbox", "quick", "test out", "play with", "just need", "simple", or nothing specific | [beginner](beginner.md) |2324> **Tiebreak:** prefer the branch that affects the most expensive defaults: Networking > Security > Spec > Cost > Beginner. Networking mistakes are the hardest to undo post-deployment.2526## Cross-branch follow-ups (ask once, after primary branch)2728| Question | When to ask |29|---|---|30| "Tags? (env, owner, cost-center)" | Always — but accept "none" without follow-up |31| "Resource group: existing or new?" | Always — propose `<vm-name>-rg` if new |32| "Number of instances?" | Only for VMSS |33| "Orchestration mode (Flexible/Uniform)?" | Only for VMSS — default Flexible |3435## Reclassification mid-flow3637If the user volunteers a deep signal at any step ("oh wait, I also need a NAT Gateway"), jump into that branch's questions for that topic. Never restart the whole flow — append the new questions and update the Plan Card.3839## Anti-patterns4041- ❌ Asking "what OS?" when the user said "Ubuntu sandbox"42- ❌ Asking about spot pricing for a Windows production VM43- ❌ Asking 8 networking questions before showing a Plan Card44- ❌ Defaulting to public IP open to `*` without flagging it in the Plan Card45- ❌ Burying the cost estimate at the bottom — put it on the Plan Card top row46