Atlas / Skills / foxminchan / Aspire Init

Aspire InitSAFE

skills/foxminchan/aspire-init

An Aspire reference architecture for cloud-native microservices and agentic AI with MCP, A2A & AG-UI

Verdict
SAFE
Grade
B
Trust score
89 /100
Version
0.0.3
Hosts
—
License
MIT
Stars
506
01

Overview

An Aspire reference architecture for cloud-native microservices and agentic AI with MCP, A2A & AG-UI

Read from source at commit 07c2bf555f06OBSERVED · 2026-10-14
02

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: aspire-init
description: >-
  **WORKFLOW SKILL** - First-run flow for adding Aspire to a repo. Picks `aspire new`
  (greenfield) or `aspire init` (existing repo), drops the AppHost skeleton, then hands
  off to `aspireify` for resource wiring.
  USE FOR: aspire init, aspire new, aspire-starter, aspire-ts-starter, aspire-py-starter,
  add Aspire to existing repo, scaffold Aspire app, bootstrap Aspire, no AppHost detected,
  install aspireify, apphost.mts, generated .aspire/modules.
  DO NOT USE FOR: AppHost wiring on an existing AppHost (use aspireify), start/stop/wait
  (use aspire-orchestration), deploy/publish (use aspire-deployment), logs/traces (use
  aspire-monitoring), repo that already has an AppHost.
  INVOKES: aspire CLI (init, new, doctor), aspireify (handoff after skeleton drop).
  FOR SINGLE OPERATIONS: Run `aspire init` or `aspire new TEMPLATE` directly.
license: MIT
metadata:
  author: Microsoft
  version: "0.0.3"
---

# Aspire Init

> **First-run only.** This skill owns the skeleton drop and template choice for repositories
> that do not yet have an Aspire AppHost. Once the skeleton is in place, hand off to
> [`aspireify`](https://github.com/microsoft/aspire-skills/blob/main/skills/aspireify/SKILL.md) for the actual resource wiring.

## Prerequisites

| Requirement                                                    | Install                                                |
| -------------------------------------------------------------- | ------------------------------------------------------ |
| .NET 10.0 SDK                                                  | https://dotnet.microsoft.com/download                  |
| Node.js `^20.19.0`, `^22.13.0`, or `>=24` (TypeScript AppHost) | https://nodejs.org                                     |
| Aspire CLI (curl installer)                                    | `curl -sSL https://aspire.dev/install.sh \| bash`      |
| Aspire CLI (npm)                                               | `npm install -g @microsoft/aspire-cli`                 |
| Aspire CLI (NativeAOT global tool)                             | `dotnet tool install -g Aspire.Cli` (.NET 10 required) |
| Diagnose missing prerequisites                                 | `aspire doctor`                                        |

> Aspire also supports Nix, Homebrew, WinGet, mise, and the curl/PowerShell installers.
> Use the installation method already owned by the user's environment.

## Detection

Activate **only** when adding Aspire to a workspace that does not yet have one. Confirm ALL
of the following before running `aspire init`:

| Signal                | How to Detect                                               | Meaning    |
| --------------------- | ----------------------------------------------------------- | ---------- |
| No C# AppHost         | No `.csproj` containing `Aspire.AppHost.Sdk`                | OK to init |
| No file-based AppHost | No `apphost.cs` with `#:sdk Aspire.AppHost.Sdk`             | OK to init |
| No TypeScript AppHost | No current `apphost.mts` or legacy `apphost.ts` in the repo | OK to init |
| No Aspire config      | No `aspire.config.json` in repo root                        | OK to init |
| User intent           | Explicit "add Aspire", "scaffold Aspire", "aspire init"     | OK to init |

If **any** AppHost signal is already present, **do not run `aspire init`**. Route to
[`aspireify`](https://github.com/microsoft/aspire-skills/blob/main/skills/aspireify/SKILL.md) (re-wire) or
[`aspire-orchestration`](https://github.com/microsoft/aspire-skills/blob/main/skills/aspire-orchestration/SKILL.md) (lifecycle).

## Decision: `aspire new` vs `aspire init`

| Situation                                 | Command                                                             | Why                                                                 |
| ----------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
| Empty directory or brand-new project      | `aspire new <template>`                                             | Generates a full starter solution                                   |
| Existing repo with services to model      | `aspire init`                                                       | Drops minimal skeleton + `aspire.config.json` next to existing code |
| User wants a sample to learn from         | `aspire new aspire-starter`                                         | Includes ApiService + Web + ServiceDefaults                         |
| User wants the smallest possible scaffold | `aspire new aspire-empty` (C#) or `aspire new aspire-ts-empty` (TS) | No resources pre-wired                                              |
| User wants Python services                | `aspire new aspire-py-starter` (TypeScript AppHost drives Python)   | **Not** `dotnet new` — that template was removed in 13.3            |

See [references/templates.md](references/templates.md) for the complete template list and
options.

## Workflow A — `aspire new <template>` (new project)

For brand-new projects in an empty or non-existent directory:

1. Confirm prerequisites with `aspire doctor` if the CLI install is uncertain.
2. Pick a template from [references/templates.md](references/templates.md).
3. Run the template, append `--non-interactive` for agent flows:
   ```bash
   aspire new aspire-starter --name MyApp --output ./MyApp --non-interactive
   ```
4. The new directory is fully wired by the template — **no aspireify handoff needed**.
5. Route to [`aspire-orchestration`](https://github.com/microsoft/aspire-skills/blob/main/skills/aspire-orchestration/SKILL.md) for first run
   (`aspire start`).

## Workflow B — `aspire init` (existing repo)

For repositories that already contain services (Express API, .NET API, Python service, etc.)
and need an AppHost added alongside them:

1. Verify the [Detection](#detection) table — confir
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeNA
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (2)

INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
SKILL.md:33
| Aspire CLI (curl installer)                                    | `curl -sSL https://aspire.dev/install.sh \| bash`      |
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
SKILL.md:144
| `aspire` command not found                                       | CLI not installed                      | `dotnet tool install -g Aspire.Cli` (.NET 10) or `curl -sSL https://aspire.dev/install.sh

Gates applied: no_behavioural_pass.

Audited 2026-10-14 · audit v0.4.1 · source sha 07c2bf555f06full audit observations/trust-audit/skill/foxminchan__aspire-init.json · Report an issue / request a re-scan
04

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-1407c2bf555f06SAFEB89first audit
05

Questions

What does the Aspire Init skill do?

An Aspire reference architecture for cloud-native microservices and agentic AI with MCP, A2A & AG-UI

Is Aspire Init safe to install?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.

What can Aspire Init access on my machine?

The audit observed no filesystem, network or shell use at all in its source.

How current is this page?

The grade is for one exact copy of the source (07c2bf555f06), read on 2026-10-14. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement