aspire-init

Scaffolds Aspire AppHost skeletons in repositories using aspire init or aspire new templates.

25|4|Updated Dec 21, 2025
One-click install
npx skills add https://github.com/thangchung/agent-engineering-experiment --skill aspire-init-thangchung
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: aspire-init
Source: https://github.com/thangchung/agent-engineering-experiment/tree/main/agentgateway-entraid-obo/.claude/skills/aspire-init
Command: npx skills add https://github.com/thangchung/agent-engineering-experiment --skill aspire-init-thangchung

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Adding Aspire orchestration to a repository requires choosing between aspire new (greenfield templates) and aspire init (existing repos), detecting whether an AppHost already exists, and knowing that the skeleton alone does not wire resources. This Skill automates that first-run decision flow and hands off wiring to the aspireify skill. ## Core Features & Use Cases - AppHost Detection: Checks for existing C# (apphost.cs, .csproj with Aspire.AppHost.Sdk), TypeScript (apphost.ts), and aspire.config.json signals before running init to avoid duplicate skeletons. - Template Selection: Chooses among aspire-starter, aspire-ts-starter, aspire-py-starter, aspire-empty, and aspire-ts-empty based on project type, with non-interactive flags for agent execution. - Handoff Orchestration: Routes to aspireify for resource wiring, aspire-orchestration for aspire start, aspire-deployment for publishing, and aspire-monitoring for logs and traces. - Use Case: A developer has an existing Express API and wants Aspire orchestration. The Skill confirms no AppHost exists, runs aspire init --language typescript --non-interactive, verifies the apphost.ts and .aspire/modules/ skeleton, then hands off to aspireify to wire the services. ## Quick Start Add Aspire to my existing repository by scaffolding an AppHost skeleton and then wiring my services with aspireify.

Frequently Asked Questions about aspire-init

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add Aspire to an existing repository?▼

Run `aspire init --language csharp` or `--language typescript` with `--non-interactive` after confirming no AppHost already exists. This drops an AppHost skeleton and `aspire.config.json`, then the aspireify skill wires your services into it.

What is the difference between aspire init and aspire new?▼

Use `aspire new <template>` for brand-new projects in empty directories, which generates a fully wired starter solution. Use `aspire init` for existing repos, which drops only a minimal AppHost skeleton next to your current code.

Does aspire init wire my services into the AppHost?▼

No, aspire init only scaffolds the AppHost skeleton and aspire.config.json without modifying existing projects. Resource wiring, references, and endpoints are handled afterward by the aspireify skill.

Can I use the Python starter template with dotnet new?▼

No, `dotnet new aspire-py-starter` was removed in version 13.3. Use `aspire new aspire-py-starter` instead, which creates a TypeScript AppHost that orchestrates the FastAPI service and React frontend.

Why does aspire init fail in non-interactive mode?▼

It fails when multiple language paths are available and `--language` is not specified, since prompts are disabled. Re-run with `--language csharp` or `--language typescript` explicitly.

When should I not run aspire init?▼

Do not run it when any AppHost signal already exists, such as apphost.cs, apphost.ts, a csproj with Aspire.AppHost.Sdk, or aspire.config.json. Instead route to aspireify for re-wiring or aspire-orchestration for lifecycle operations.