agentleFS
Azure-SamplesAzure-Samples/interview-coach-agent-framework/.github/skills/aspire/SKILL.md

aspire

Skill179 starsChanged 50 days agoMITView on GitHub

Orchestrates Aspire distributed applications using the Aspire CLI for running, debugging, and managing distributed apps. USE FOR: aspire start, aspire stop, start aspire app, aspire describe, list aspire integrations, debug aspire issues, view aspire logs, add aspire resource, aspire dashboard, update aspire apphost. DO NOT USE FOR: non-Aspire .NET apps (use dotnet CLI), container-only deployments (use docker/podman), Azure deployment after local testing (use azure-deploy skill). INVOKES: Aspire CLI commands (aspire start, aspire describe, aspire otel logs, aspire docs search, aspire add), bash. FOR SINGLE OPERATIONS: Use Aspire CLI commands directly for quick resource status or doc lookups.

17 other projects use a version of this, 5 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use aspire-deployment, aspire-monitoring and 6 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • MicrosoftSkill

    aspire-deployment

    **WORKFLOW SKILL** — Deploy Aspire apps from AppHost models to Docker Compose, Kubernetes, Azure, AWS, or preview Radius. WHEN: \"deploy Aspire app\", \"publish Aspire artifacts\", \"deploy to Azure Container Apps\", \"generate Kubernetes artifacts\", \"deploy to Radius\", \"tear down Aspire deployment\". INVOKES: aspire CLI, Aspire docs, target cloud/container CLIs. FOR SINGLE OPERATIONS: use generic Azure, Kubernetes, Docker, AWS, or Radius tools only when no Aspire AppHost exists.

    Also in 4 projects that use this

  • MicrosoftSkill

    aspire-monitoring

    **ANALYSIS SKILL** - Observe Aspire apps: logs, traces, metrics, resource state, telemetry export, browser telemetry, and the standalone dashboard. Routes between local Aspire CLI, AKS workload diagnostics, and deployed Azure resource health. USE FOR: aspire logs, aspire otel logs, aspire otel traces, aspire otel spans, aspire describe, aspire ps, aspire export, aspire dashboard run, describe --include-hidden, browser logs in dashboard, DevTunnel URLs, WithBrowserLogs, App Insights query, AKS pod logs, container app logs. DO NOT USE FOR: start/stop/wait (use aspire-orchestration), deploy/publish/destroy (use aspire-deployment), AppHost code edits like WithBrowserLogs() (use aspireify), Azure provisioning (use azure-prepare), terminal authoring/input/tapes (use aspire-terminals). INVOKES: aspire CLI, azure-diagnostics (deployed Azure), kubectl + Container Insights. FOR SINGLE OPERATIONS: Run the aspire CLI command directly for quick log or describe lookups.

    Also in 4 projects that use this

  • Sorcha-PlatformSkill

    scalar

    Generates and configures Scalar OpenAPI UI for API documentation. Use when: Adding API documentation to services, configuring OpenAPI endpoints, customizing documentation themes

    Also in 3 projects that use this

  • wrsmith108Skill

    docker

    Container-based development for isolated, reproducible environments. Use when running npm commands, installing packages, executing code, or managing project dependencies. Trigger phrases include "npm install", "run the build", "start the server", "install package", or any code execution request.

    Also in 3 projects that use this

  • +4 more from microsoft

The file

We split this skill into the rules it gives an agent

8 rules. 0 are common, 1 is distinctive, and 7 are very specific to this project.

  • 0

    Common

    Most of the 11 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use aspire start to run the AppHost in the background.

    line 43
  2. Very specific:

    Use aspire wait <resource> to block until a resource is healthy before interacting with it:

    line 49
  3. Distinctive:

    Before making code changes, inspect the app state:

    line 70
  4. Very specific:

    Use aspire docs search to find integration documentation, then aspire docs get to read the full guide.

    line 79
  5. Very specific:

    After adding an integration, restart the app with aspire start for the new resource to take effect.

    line 81
  6. Very specific:

    Use --isolated when working in a worktree.

    line 98
  7. Very specific:

    Prefer aspire.dev and learn.microsoft.com/microsoft/aspire for official documentation.

    line 102
  8. Very specific:

    If configured, use Playwright CLI for functional testing of resources.

    line 106

“Common” is measured: kept by at least 6 in 10 of the 11 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Aspire Skill

This repository uses Aspire to orchestrate its distributed application. Resources are defined in the AppHost project (apphost.cs or apphost.ts).

CLI command reference

TaskCommand
Start the appaspire start
Start isolated (worktrees)aspire start --isolated
Restart the appaspire start (stops previous automatically)
Wait for resource healthyaspire wait <resource>
Stop the appaspire stop
List resourcesaspire describe or aspire resources
Run resource commandaspire resource <resource> <command>
Start/stop/restart resource`aspire resource <resource> startstoprestart`
Rebuild a .NET project resourceaspire resource <resource> rebuild
View console logsaspire logs [resource]
View structured logsaspire otel logs [resource]
View tracesaspire otel traces [resource]
Logs for a traceaspire otel logs --trace-id <id>
Add an integrationaspire add
List running AppHostsaspire ps
Update AppHost packagesaspire update
Search docsaspire docs search <query>
Get doc pageaspire docs get <slug>
List doc pagesaspire docs list
Environment diagnosticsaspire doctor
List resource MCP toolsaspire mcp tools
Call resource MCP toolaspire mcp call <resource> <tool> --input <json>

Most commands support --format Json for machine-readable output. Use --apphost <path> to target a specific AppHost.

Key workflows

Running in agent environments

Use aspire start to run the AppHost in the background. When working in a git worktree, use --isolated to avoid port conflicts and to prevent sharing user secrets or other local state with other running instances:

aspire start --isolated

Use aspire wait <resource> to block until a resource is healthy before interacting with it:

aspire start --isolated
aspire wait myapi

Applying code changes

Choose the right action based on what changed:

What changedActionWhy
AppHost project (apphost.cs/apphost.ts)aspire startResource graph changed; full restart required
Compiled .NET project resourceaspire resource <name> rebuildRebuilds and restarts only that resource
Interpreted resource (JavaScript, Python)Typically nothing — most run with file watchersRestart the resource if no watch mode is configured

Never restart the entire AppHost just because a single resource changed. Use aspire resource <name> rebuild for .NET project resources — it coordinates stop, build, and restart for just that resource. Use aspire describe --format Json to check which commands a resource supports.

Debugging issues

Before making code changes, inspect the app state:

  1. aspire describe — check resource status
  2. aspire otel logs <resource> — view structured logs
  3. aspire logs <resource> — view console output
  4. aspire otel traces <resource> — view distributed traces

Adding integrations

Use aspire docs search to find integration documentation, then aspire docs get to read the full guide. Use aspire add to add the integration package to the AppHost.

After adding an integration, restart the app with aspire start for the new resource to take effect.

Using resource MCP tools

Some resources expose MCP tools (e.g. WithPostgresMcp() adds SQL query tools). Discover and call them via CLI:

aspire mcp tools                                              # list available tools
aspire mcp tools --format Json                                # includes input schemas
aspire mcp call <resource> <tool> --input '{"key":"value"}'   # invoke a tool

Important rules

  • Always start the app first (aspire start) before making changes to verify the starting state.
  • To restart, just run aspire start again — it automatically stops the previous instance. NEVER use aspire stop then aspire run. NEVER use aspire run at all.
  • Only restart the AppHost when AppHost code changes. For .NET project resources, use aspire resource <name> rebuild instead.
  • Use --isolated when working in a worktree.
  • Avoid persistent containers early in development to prevent state management issues.
  • Never install the Aspire workload — it is obsolete.
  • For Aspire API reference and documentation, prefer aspire docs search <query> and aspire docs get <slug> over searching NuGet package caches or XML doc files. The CLI provides up-to-date content from aspire.dev.
  • Prefer aspire.dev and learn.microsoft.com/microsoft/aspire for official documentation.

Playwright CLI

If configured, use Playwright CLI for functional testing of resources. Get endpoints via aspire describe. Run playwright-cli --help for available commands.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.