
Skill
kickstart-discover
collect application details for AKS discovery
Description
Discovery phase playbook — collect application details.
SKILL.md
Discover Phase
Collect enough information to propose a deployment architecture.
Auto-detect first, then ask
Use search and codebase to scan the workspace before asking anything. Look for package.json, requirements.txt, go.mod, *.csproj, Dockerfile, .github/workflows/, azure-pipelines.yml.
Map the structure (before anything else)
Never assume a flat repo. Apps often live in nested or monorepo layouts (src/<service>/, services/<name>/, apps/<name>/, packages/<name>/). For every deployable service, record a structure entry — later phases build and deploy from it:
| Field | How to find it | Used by |
|---|---|---|
| Service name | directory / manifest | naming, image tag |
| Build context | the dir holding the service's manifest + source (NOT always repo root) | Generate, Deploy build context |
| Entry point | the real run target — main.py, app.js, cmd/<svc>/main.go, *.csproj — confirm the file exists | Dockerfile CMD/ENTRYPOINT |
| Existing Dockerfile | search the build context; record its path or "none — generate" | Generate (reuse vs. create) |
| Port | code (app.listen(3000), EXPOSE, framework default) | Service, probes |
Use codebase/search to confirm each path actually exists — do not infer it from the language alone. Surface this map to the user and let them correct it before proceeding.
What to collect
- App name
- Language / framework (detect from manifest files, confirm via
vscode_askQuestions) - Per-service structure map (build context, entry point, existing Dockerfile path) — see above
- Dependencies (databases, caches, queues — offer common options as multi-select)
- Port (detect from code like
app.listen(3000), confirm) - Environment variables (detect from
.env.exampleor code) - Existing CI/CD (search workspace)
Rules
- Use
vscode_askQuestionsfor every question with concrete options. Mark detected/recommended values withrecommended: true. - One question at a time unless tightly related.
- When the answer is open-ended (app name), use
allowFreeformInput: true.
Exit Criteria
You know the app name, language, framework, port, key deps, env vars, CI status, and a confirmed per-service structure map (build context + entry point + existing Dockerfile path) for every deployable service. Announce: "Discovery complete — moving to Configure Infrastructure."
More skills from the vscode-aks-tools repository
View all 19 skillskickstart-acr-integration
integrate Azure Container Registry with AKS
Jul 12AzureContainersDeploymentkickstart-bicep-authoring
author idiomatic Azure Bicep templates
Jul 12AzureBicepDeploymentInfrastructure as Codekickstart-cluster-status
monitor AKS cluster provisioning status
Jul 12AzureDeploymentKubernetesMonitoringkickstart-collaborator-voice
define agent voice and interaction patterns
Jul 12AgentsBrandingCommunicationskickstart-configure-infra
configure Azure infrastructure for AKS clusters
Jul 12AzureDeploymentInfrastructureKuberneteskickstart-deploy
deploy applications with Azure CLI and kubectl
Jul 12AzureCLIDeploymentKubernetes
More from Azure (Microsoft)
View publisherazure-arg-external-evaluation-policy-author
author and test Azure Resource Graph policies
azure-policy
Jul 12AzureComplianceGovernancePolicyazure-blueprints-migration
migrate Azure Blueprints to Template Specs
azure-blueprints
Jul 12AzureDeploymentInfrastructure as CodeMigrationapiview-feedback-resolution
resolve APIView feedback on Azure SDKs
azure-sdk-tools
Jul 12API DevelopmentAzureCode ReviewDocumentationazsdk-common-live-and-recorded-tests
deploy resources and run Azure SDK tests
azure-sdk-tools
Jul 12AzureDeploymentSDKTestingazsdk-common-prepare-release-plan
manage Azure SDK release plan work items
azure-sdk-tools
Jul 12AzureGitHubProject ManagementSDKazsdk-common-sdk-release
release Azure SDK packages
azure-sdk-tools
Jul 12AzureCI/CDDeploymentSDK