aspire

Code-first orchestration for polyglot distributed apps. AppHost defines topology, aspire run orchestrates locally, azd deploy deploys to Azure.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "aspire" with this command: npx skills add rysweet/amplihack/rysweet-amplihack-aspire

Aspire Orchestration

Overview

Code-first orchestration for polyglot distributed apps. AppHost defines topology, aspire run orchestrates locally, azd deploy deploys to Azure.

Auto-activates on keywords: aspire, microservices, distributed app, service discovery, orchestration

Quick Start

Install .NET 8+ and Aspire workload

See: https://learn.microsoft.com/dotnet/aspire/fundamentals/setup-tooling

dotnet workload update dotnet workload install aspire

Create AppHost (orchestrates services in ANY language)

dotnet new aspire-apphost -n MyApp

Basic AppHost - orchestrate Python, Node.js, .NET services

var builder = DistributedApplication.CreateBuilder(args); var redis = builder.AddRedis("cache");

// Python service var pythonApi = builder.AddExecutable("python-api", "python", ".").WithArgs("app.py").WithReference(redis);

// Node.js service var nodeApi = builder.AddExecutable("node-api", "node", ".").WithArgs("server.js").WithReference(redis);

// .NET service var dotnetApi = builder.AddProject<Projects.Api>("api").WithReference(redis);

builder.Build().Run();

Run (orchestrates ALL languages)

aspire run # Dashboard opens at http://localhost:15888

Core Workflows

Project Setup

dotnet new aspire-apphost -n MyApp dotnet new webapi -n MyApp.Api dotnet add MyApp.AppHost reference MyApp.Api

AppHost: Resource topology in Program.cs

ServiceDefaults: Shared config (logging, telemetry, resilience) Services: Your apps (APIs, workers, web apps)

Dependency Configuration

// PostgreSQL var postgres = builder.AddPostgres("db").AddDatabase("mydb"); var api = builder.AddProject<Projects.Api>("api").WithReference(postgres);

// Redis var redis = builder.AddRedis("cache").WithRedisCommander(); var api = builder.AddProject<Projects.Api>("api").WithReference(redis);

// RabbitMQ var rabbitmq = builder.AddRabbitMQ("messaging"); var worker = builder.AddProject<Projects.Worker>("worker").WithReference(rabbitmq);

// Access in code (connection strings auto-injected) builder.Services.AddStackExchangeRedisCache(options => { options.Configuration = builder.Configuration.GetConnectionString("cache"); });

Local Development

aspire run # Starts all services

Dashboard (localhost:15888): Resources, logs, traces, metrics Hot Reload: Auto-rebuild on code changes Debugging: Attach to individual services via IDE

Cloud Deployment

See Azure deployment guide.

azd init # Initialize Azure Developer CLI azd up # Deploy (generates Bicep → Azure Container Apps) azd deploy -e production # Deploy to specific environment

Generates: Bicep → Container Apps + networking + managed identities

Navigation Guide

When setting up projects:

  • examples.md lines 8-31 → Minimal project

  • examples.md lines 518-608 → Add Python service

  • examples.md lines 610-669 → Add Node.js service

  • examples.md lines 671-768 → Add Go service

When adding infrastructure:

  • reference.md lines 47-148 → Database APIs (PostgreSQL, Redis, MongoDB)

  • examples.md lines 39-95 → Redis integration

  • examples.md lines 102-176 → PostgreSQL integration

When deploying:

  • commands.md lines 215-288 → Full azd workflow

  • examples.md lines 387-515 → Azure deployment walkthrough

  • patterns.md lines 5-42 → HA configuration

When debugging:

  • troubleshooting.md lines 5-112 → Orchestration failures

  • troubleshooting.md lines 291-397 → Connection issues

  • commands.md lines 131-179 → Debug commands

Quick Reference

Essential commands: See commands.md for complete reference

Polyglot patterns:

builder.AddProject<Projects.Api>("api"); // .NET builder.AddExecutable("python-api", "python", ".").WithArgs("app.py"); // Python builder.AddExecutable("node-api", "node", ".").WithArgs("server.js"); // Node.js builder.AddExecutable("go-svc", "go", ".").WithArgs("run", "main.go"); // Go

Service discovery: .WithReference(redis) in AppHost → GetConnectionString("cache") in service

Integration with Amplihack

Command: /ultrathink "Setup Aspire for microservices"

  • prompt-writer clarifies requirements → architect uses reference.md for API design

  • builder uses examples.md for implementation → reviewer checks patterns.md for best practices

  • tester uses troubleshooting.md for validation

Agent-Skill mapping:

  • architect → reference.md (API design)

  • builder → examples.md (implementation)

  • reviewer → patterns.md (best practices)

  • tester → troubleshooting.md (validation)

  • all agents → commands.md (CLI operations)

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Security

cybersecurity-analyst

No summary provided by upstream source.

Repository SourceNeeds Review
General

pptx

No summary provided by upstream source.

Repository SourceNeeds Review
General

lawyer-analyst

No summary provided by upstream source.

Repository SourceNeeds Review
General

economist-analyst

No summary provided by upstream source.

Repository SourceNeeds Review