Full Stack Developer
theneoai/awesome-skills
Elite Full-Stack Developer skill with mastery of modern frontend frameworks (React, Vue, TypeScript), backend systems (Node.js, Python, Go), databases (PostgreSQL, MongoDB, Redis), and DevOps…
WORKFLOW SKILL - Wire Aspire AppHosts or repair TypeScript AppHost toolchains.
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install CommunityToolkit/Aspire aspireify --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/aspireify .claude/skills/aspireify && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .claude/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireifyType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install CommunityToolkit/Aspire aspireify --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/aspireify .agents/skills/aspireify && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .agents/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install CommunityToolkit/Aspire aspireify --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/aspireify .cursor/skills/aspireify && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .cursor/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/CommunityToolkit/Aspire.git --path .agents/skills/aspireify--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install CommunityToolkit/Aspire aspireify --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/aspireify .gemini/skills/aspireify && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .gemini/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install CommunityToolkit/Aspire aspireifyInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/aspireify .github/skills/aspireify && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .github/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CommunityToolkit/Aspire --skill aspireify -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install CommunityToolkit/Aspire aspireify --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/CommunityToolkit/Aspire.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/aspireify .opencode/skills/aspireify && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "aspireify" agent skill from https://github.com/CommunityToolkit/Aspire/tree/main/.agents/skills/aspireify into .opencode/skills/aspireify/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "aspireify", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
aspireifyWORKFLOW SKILL - Wire Aspire AppHosts or repair TypeScript AppHost toolchains.
Aspireify is an agent skill from CommunityToolkit/Aspire. WORKFLOW SKILL - Wire Aspire AppHosts or repair TypeScript AppHost toolchains. Scans the repo, proposes a resource graph, edits C, file-based C, or TypeScript AppHosts, wires ServiceDefaults + OTel, validates with aspire start, then stops. USE FOR: wire/scaffold AppHost, add Postgres/Redis/Rabbit/Mongo, connect frontend to API, after aspire init, AddNextJsApp, AddViteApp, WithBrowserLogs, WithTerminal, Interaction Service, command arguments, apphost.cs, apphost.mts, unified withEnvironment, .aspire/modules…
Its SKILL.md is about 5.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 11 other files, including reference files (for example `references/apphost-wiring.md`, `references/csharp-authoring.md` and `references/docker-compose.md`).
It sits in Databases, covering Deployment. It works with TypeScript, Redis, PostgreSQL and C#. The repository describes itself as: A community project with additional components and extensions for Aspire. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 69a155d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmdotnetpnpmbunyarnFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comdotnet.microsoft.comnodejs.orgFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Aspireify loads about 5.3k tokens when it runs, and up to ~29k if it reads all its reference files. Until then it costs about 244 tokens; SKILL.md has 1,994 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
Scan `.env`, `.env.local`, `.env.development`, `secrets.json.example`,delete `.env` files or remove existing `UserSecretsId` entries without explicit userion strings | grep `appsettings*.json`, `.env*`, `config/*` for `Postgres`, `Redis`, `Mongo`, `RabbitMQ`, `Cosmos`, `SerAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from CommunityToolkit/Aspire at commit 69a155d, republished under its MIT licence (© CommunityToolkit). 1,994 words, ~5,316 tokens.
.claude/skills/aspireify/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.One-time wiring skill.
aspire initdrops a skeleton;aspireifyturns that skeleton into a working AppHost by scanning the repo, proposing a resource graph, editing the AppHost, wiringAspire.ServiceDefaults, and validating end to end. Self-deactivates after a cleanaspire start.
.aspire/modules/⛔ REFUSE any request to edit, modify, change, open-for-edit, or "tweak" files inside
.aspire/modules/of a TypeScript AppHost. This directory is generated from the installed Aspire integration package graph. It is regenerated byaspire add,aspire restore, and startup when package changes require it.If a user asks to edit something in
.aspire/modules/(e.g.,.aspire/modules/postgres.module.ts), the correct response is:
- Refuse the edit with a clear "I won't edit
.aspire/modules/" statement.- Explain that
.aspire/modules/is generated and any changes are clobbered.- Redirect the requested change to the configured AppHost entry point: current
apphost.mts, or legacyapphost.ts.- If the user wants a new integration, suggest
aspire add <package>; if they want to change configuration, show the equivalent edit in the AppHost entry point.
| ❌ Wrong | ✅ Right |
|---|---|
Open .aspire/modules/postgres.module.ts and tweak the connection options | Edit apphost.mts and change addPostgres('pg', { ... }) options there |
Modify a generated .aspire/modules/* file directly | Re-run aspire add <package> after updating apphost.mts |
Comment out a line in .aspire/modules/ to disable a resource | Remove or guard the resource declaration in apphost.mts |
This rule applies even if the user insists, even for "one-line" changes, even for
"just to test something." The TS AppHost regenerates .aspire/modules/ deterministically;
edits are unrecoverable noise.
Adapt the AppHost to fit the app, not the other way around. Prefer WithEnvironment()
to match existing environment variable names, Aspire-managed ports over fixed ports,
and 1:1 Docker Compose mapping before optimizing. Do not restructure directories,
rename files, or change build scripts unless the user explicitly chooses that tradeoff.
When a small code change unlocks better Aspire integration, present both options:
the zero-code-change mapping and the small-change version that enables WithReference,
health checks, service discovery, dynamic ports, or dashboard telemetry. Ask which
approach the user wants, then implement that choice without complaint.
Use aspire docs search <topic> and aspire docs get <slug> for workflow guidance.
Use aspire docs api search <query> --language csharp|typescript and
aspire docs api get <id> for API shape. Use aspire integration list/search to
find integrations before aspire add. Do not invent packages, methods, overloads,
or command shapes; C# and TypeScript AppHost APIs differ.
Scan .env, .env.local, .env.development, secrets.json.example,
<UserSecretsId>, and setup scripts. Propose migrating values into AppHost parameters:
connection strings become Aspire resources, API keys/tokens become secret parameters,
and non-secret config becomes plain parameters or WithEnvironment() values. Never
delete .env files or remove existing UserSecretsId entries without explicit user
approval because non-Aspire workflows may still depend on them.
This skill optimizes local development, not production deployment. Prefer persistent container lifetimes and data volumes for databases/caches, use HTTPS endpoints by default, pass endpoint references instead of hardcoded URLs, and model external SaaS URLs/API keys as parameters so they are visible in the dashboard.
Aspire can automatically provision TLS certificates for container resources. If Redis
health checks fail with SSL/TLS handshake errors, do not fall back to AddContainer().
Use WithoutHttpsCertificate() on the Redis resource when the consuming app expects
plain Redis.
If .agents/skills/aspireify/SKILL.md exists (installed by aspire init or
aspire agent init --skills aspireify), warn the user that a project-local
copy is present and defer to it. The plugin version is the fallback.
⚠️ Project-local .agents/skills/aspireify/SKILL.md detected — deferring to it.| Requirement | Install |
|---|---|
| .NET 10.0 SDK (C# AppHost) | https://dotnet.microsoft.com/download |
Node.js ^20.19.0, ^22.13.0, or >=24 (TS AppHost) | https://nodejs.org |
| Aspire CLI | npm install -g @microsoft/aspire-cli, install script, or dotnet tool install -g Aspire.Cli |
| Skeleton already dropped | aspire init produced aspire.config.json + AppHost stub |
Activate when ANY signal is present AND the AppHost is unwired (no resources declared beyond the stub):
| Signal | How to Detect | Confidence |
|---|---|---|
| Skeleton just dropped | aspire init just ran in this session | ✅ Definitive |
| Empty AppHost stub | apphost.cs / Program.cs / current apphost.mts (or legacy apphost.ts) only contains Build().Run() | ✅ Definitive |
aspire.config.json without resources | Config present, AppHost has no AddProject/addProject | High |
| User asks to "wire" / "scaffold resource graph" | Verb match: wire, scaffold, integrate, hook up, add Postgres/Redis/etc. | High |
| User asks "what next after aspire init" | Direct handoff request | ✅ Definitive |
| Existing repo with services + new AppHost | Repo has .csproj/package.json projects but AppHost references none | High |
If the AppHost already has wired resources and the user wants to start/stop
the app → aspire-orchestration. If the user wants to deploy → aspire-deployment.
| AppHost Style | Detection | Edit Target |
|---|---|---|
| C# SDK-style | .csproj containing <Sdk Name="Aspire.AppHost.Sdk" /> | Program.cs (top-level statements) |
| File-based C# | apphost.cs with #:sdk Aspire.AppHost.Sdk and #:package directives | apphost.cs itself |
| TypeScript | Current apphost.mts or legacy apphost.ts with generated .aspire/modules/ | Configured AppHost entry point only — never edit .aspire/modules/ |
See references/csharp-authoring.md and references/typescript-authoring.md.
aspire-orchestration owns the CLI-driven migration from legacy apphost.ts. After it
updates packages and migration artifacts, return to aspireify only when the user still
needs AppHost source wiring or authoring.
Dependency and toolchain failures belong to this skill. Before recommending a command, inspect the AppHost directory and then its immediate eligible parent. Within each directory, the first recognized marker wins in this order:
packageManager in package.json (npm, pnpm, yarn, or bun, optionally versioned)bun.lockbun.lockbpnpm-lock.yamlyarn.lock.yarnrc.ymlpackage-lock.jsonAn AppHost-local marker takes precedence over every parent marker. If neither directory has a recognized marker, Aspire defaults to npm. Report the selected manager and marker.
Use the selected manager only to repair dependencies or diagnose the toolchain. The resolver
commands are npm install, bun install, and yarn install; a generated brownfield pnpm
AppHost uses pnpm install --ignore-workspace, while other pnpm dependency installs use
pnpm install. Yarn Classic (yarn@1... or a v1 lockfile) is unsupported: stop and ask the
user to upgrade to Yarn 4+ or explicitly migrate to npm, pnpm, or Bun.
Do not change packageManager or create, replace, or regenerate a lockfile merely to
influence detection or switch managers. Preserve existing files until the user explicitly
chooses an upgrade or migration. Start the AppHost with aspire start --non-interactive,
not a raw package-manager launcher. See
references/typescript-authoring.md for the full
command matrix and resolver details.
1. SCAN → discover projects, services, dependencies, integration candidates
2. PROPOSE → resource graph + integration list, confirm with user
3. EDIT → wire AppHost, add ServiceDefaults + OTel + health checks
4. VALIDATE → aspire start --non-interactive → aspire wait <each resource>
5. DEACTIVATE → confirm clean start, hand off to aspire-orchestrationFor the detailed, upstream-parity workflow, load these references before editing:
depends_on.Walk the repo and inventory:
| What | How |
|---|---|
| .NET projects | find . -name '*.csproj' -not -path '*/bin/*' -not -path '*/obj/*' |
| Node services | find . -name 'package.json' -not -path '*/node_modules/*' |
| Python services | find . -name 'pyproject.toml' -o -name 'requirements.txt' |
| Container deps in compose | docker-compose.yml, compose.yaml (Postgres? Redis? Rabbit?) |
| Connection strings | grep appsettings*.json, .env*, config/* for Postgres, Redis, Mongo, RabbitMQ, Cosmos, ServiceBus |
| Integration packages | dotnet list package per project; package.json dependencies |
| Existing endpoints | hardcoded ports in launchSettings.json, next.config.js, vite.config.ts |
Full heuristics in references/scan-and-propose.md.
Present a resource graph before editing. Ask clarifying questions:
docker-compose.yml — should I model it as AddPostgres('db') or use Azure Database for PostgreSQL?"http://localhost:5000 — replace with Aspire service discovery (endpoint.url)?"/admin endpoint — exclude it from WithReference() so consumers don't see it?"Apply the proposed graph. Use the right authoring style for the AppHost language.
aspire start --non-interactive --format Json
aspire wait <resource> # repeat for each declared resource
aspire describe --format Json # sanity check graphFull validation flow + recovery in references/validation.md.
After a clean aspire start, announce:
✅ AppHost wired and validated. Handing off to aspire-orchestration for
day-to-day start/stop/wait. Aspireify is done.Map detected services → Aspire integrations. See references/scan-and-propose.md for the full catalog.
| Detected | C# | TS |
|---|---|---|
Postgres in compose / Npgsql package | AddPostgres("pg").AddDatabase("db") | addPostgres('pg').addDatabase('db') |
Redis in compose / StackExchange.Redis | AddRedis("cache") | addRedis('cache') |
| RabbitMQ | AddRabbitMQ("mq") (v7 client w/ pub-sub tracing) | addRabbitMQ('mq') |
| MongoDB | AddMongoDB("mongo") | addMongoDB('mongo') |
| Cosmos DB | AddAzureCosmosDB("cosmos") | addAzureCosmosDB('cosmos') |
| Azure Service Bus | AddAzureServiceBus("sb") | addAzureServiceBus('sb') |
| Azure Cache for Redis (Entra) | AddAzureRedis("cache") (now GA) | addAzureRedis('cache') |
| Next.js frontend | AddNextJsApp("web", "./web") | addNextJsApp('web', '../web') |
| Vite SPA | AddViteApp("web", "./web") | addViteApp('web', '../web') |
| Plain Node app | AddNodeApp("api", "server.js") | addNodeApp('api', 'server.js') |
| Rule | Why |
|---|---|
Use unified withEnvironment(name, value) in TS — never the deprecated per-kind helpers (withEnvironmentEndpoint, withEnvironmentParameter, etc.) | Single API handles all value kinds; per-kind helpers are deprecated |
Use AddNextJsApp / AddViteApp over hand-rolled Dockerfiles for JS frontends | First-class lifecycle + PublishAs* integration |
Use PublishAsStaticWebsite / PublishAsNodeServer / PublishAsPackageScript for JS publish | Replaces hand-rolled Dockerfiles; SPA → static, SSR Node → NodeServer, package-script SSR → PackageScript |
Add WithBrowserLogs() to frontend resources for browser console + screenshots in dashboard | Aspire.Hosting.Browsers surfaces browser telemetry in the dashboard |
Bind every resource to a compute environment with WithComputeEnvironment(env) when multiple environments exist | Multi-environment deploys require explicit binding |
Never edit .aspire/modules/ in TS AppHosts | Generated; edits get clobbered. Edit the configured apphost.mts (or legacy apphost.ts) only |
Use WithEndpoint("name", e => ...) to update endpoints | Endpoint callbacks update existing endpoints rather than throwing on duplicates |
Mark admin endpoints with ExcludeReferenceEndpoint = true | Prevents consumers from receiving admin URLs via WithReference() |
Look up unfamiliar API: aspire docs api search <query> --language csharp|typescript | Don't guess overloads or builder chains |
Use context .Services / await ctx.services().getInteractionService() | .ServiceProvider is obsolete, and ctx.services() alone returns a services accessor |
Use AddConnectionString for external connection strings | PublishAsConnectionString is obsolete |
Check IInteractionService.IsAvailable before prompting | CLI-invoked commands may be noninteractive; prefer command arguments for dashboard + CLI input |
Treat WithTerminal() as experimental | Suppress ASPIRETERMINAL001; do not generate removed TerminalOptions.Shell or TypeScript dimension options |
Keep all Aspire SDK and Aspire.Hosting.* packages on the same release family | Mixed release families can fail at startup |
| Migrate GitHub Models integrations to Azure AI Foundry | Aspire.Hosting.GitHub.Models is deprecated and absent from integration discovery |
Use WithModule(RedisModules.*) for Redis 8 modules | Prefer typed JSON, Search, Bloom Filter, and TimeSeries constants over raw module paths |
Use Foundry AsHostedAgent(...) for hosted executable/container agents | Current Azure AI Foundry path replaces deprecated GitHub Models |
| Concept | C# | TypeScript |
|---|---|---|
| Builder | var builder = DistributedApplication.CreateBuilder(args); | const builder = await createBuilder(); |
| Add project | builder.AddProject<Projects.Api>("api") (SDK) or AddProject("api", "../Api/Api.csproj") | await builder.addProject('api', '../Api/Api.csproj') |
| Wire env var (any value type) | .WithEnvironment("KEY", value) | .withEnvironment('KEY', value) ← unified API |
| Wait for dependency | .WaitFor(db) | .waitFor(db) |
| Pass connection | .WithReference(db) | .withReference(db) |
| External HTTP | .WithExternalHttpEndpoints() | .withExternalHttpEndpoints() |
| Endpoint expression | api.GetEndpoint("http") | api.getEndpoint('http').url / .host / .port |
| Build + run | builder.Build().Run(); | await builder.build().run(); |
Each project should call builder.AddServiceDefaults(); to opt into OpenTelemetry,
health checks, and service discovery. Add the Aspire.ServiceDefaults project
reference (or NuGet for non-monorepo). See
references/service-defaults.md.
// Public-facing API. Mark "admin" endpoint as not-for-consumers.
var api = builder.AddProject<Projects.Api>("api")
.WithExternalHttpEndpoints()
.WithEndpoint("admin", e => e.ExcludeReferenceEndpoint = true);
// Frontend wires the API via service discovery.
builder.AddNextJsApp("web", "./web")
.WithReference(api) // injects services__api__http and __https
.WaitFor(api)
.WithBrowserLogs(); // browser console + screenshots| Symptom | Action |
|---|---|
aspire start fails with build error | Fix code, re-run aspire start |
| File-lock errors during edit | Hand off to aspire-orchestration → aspire stop → retry |
Resource missing from aspire describe | Re-run aspire describe --include-hidden; aspire ps is AppHost-level |
| TS AppHost change ignored | Confirm you edited the configured apphost.mts (or legacy apphost.ts), not .aspire/modules/ |
Mixed JSON output from aspire start | Strip non-JSON lines before parsing (#15843) |
Full flow in references/validation.md.
| Scenario | Route To |
|---|---|
| AppHost skeleton not yet dropped | → aspire-init skill |
| Day-to-day start/stop/wait/restart | → aspire-orchestration skill |
| Publish, deploy, destroy, pipeline steps | → aspire-deployment skill |
| Logs, traces, metrics, dashboard, browser log inspection | → aspire-monitoring skill |
| Deployed (Azure/AKS) app diagnostics | → azure-diagnostics skill (azure-skills) |
aspire doctor to diagnose environment issues.WithEnvironment / withEnvironment — pass endpoint references such as api.GetEndpoint("http") or api.getEndpoint('http') instead of string literals.WithUrlForEndpoint / withUrlForEndpoint to set dev.localhost URLs — that API is only for dashboard display labels; dev.localhost belongs in AppHost launch/profile configuration.© CommunityToolkit, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 10 other files (references) in .agents/skills/aspireify of CommunityToolkit/Aspire.
Open the folder on GitHubat commit 69a155d
Aspireify next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Aspireify this skillCommunityToolkit/Aspire | 629 | — | ~5.3k | Automated safety check: Notes | MIT | |
| Full Stack Developertheneoai/awesome-skills | 183 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Docker Deploymentfossasia/eventyay | 1.7k | — | ~574 | Automated safety check: Notes | Apache-2.0 | |
| Devinggo Project Inithuagelong/devinggo | 122 | — | ~1.1k | Automated safety check: Notes | Apache-2.0 | |
| Aspiremanagedcode/dotnet-skills | 486 | — | ~3.6k | Automated safety check: Pass | MIT | |
| Migrate Postgres Tables To Hypertablestimescale/pg-aiguide | 1.9k | 1 repos | ~3.8k | Automated safety check: Warn | Apache-2.0 |
theneoai/awesome-skills
Elite Full-Stack Developer skill with mastery of modern frontend frameworks (React, Vue, TypeScript), backend systems (Node.js, Python, Go), databases (PostgreSQL, MongoDB, Redis), and DevOps…
fossasia/eventyay
Docker Compose, container services, deployment. An agent skill from fossasia/eventyay.
huagelong/devinggo
DevingGo 项目初始化与本地开发环境配置流程。用于用户询问项目初始化、开发环境搭建、依赖检查、配置文件生成、数据库迁移、本地启动后端/前端/Worker 服务、或希望 AI 大模型一步步把 DevingGo 跑起来时。适用于基于本项目 CLI、Makefile、manifest/config、hack/config、admin-ui 前端工作区的初始化排障与启动验证。
managedcode/dotnet-skills
Build, upgrade, and operate Aspire 13.5.x C or TypeScript application hosts with the current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, MCP, and deployment patterns for…
timescale/pg-aiguide
A skill your agent uses to migrate identified PostgreSQL tables to Timescale/TimescaleDB hypertables with optimal configuration and validation.
hypequery/hypequery
Cut a stable hypequery release via Changesets, or explain/check the canary flow.
CommunityToolkit/Aspire
Query .NET APIs across NuGet packages, platform libraries, and local files.
CommunityToolkit/Aspire
ANALYSIS SKILL - Observe Aspire apps: logs, traces, metrics, resource state, telemetry export, browser telemetry, and the standalone dashboard.
CommunityToolkit/Aspire
WORKFLOW SKILL — Deploy Aspire apps from AppHost models to Docker Compose, Kubernetes, Azure, AWS, or preview Radius.
CommunityToolkit/Aspire
WORKFLOW SKILL - Safely migrates eligible Aspire 13.6+ AppHosts from legacy ProjectResource APIs to experimental DotnetProjectResource APIs after a per-resource assessment and explicit approval of…
CommunityToolkit/Aspire
Generate a TypeScript AppHost from an existing C example AppHost, then add a TypeScriptAppHostTest-based integration test.
CommunityToolkit/Aspire
Update the Aspire version in the repository to the latest nightly build.
Categories
WORKFLOW SKILL - Wire Aspire AppHosts or repair TypeScript AppHost toolchains. Aspireify is an agent skill from CommunityToolkit/Aspire. WORKFLOW SKILL - Wire Aspire AppHosts or repair TypeScript AppHost toolchains.
Aspireify fits situations like: : wire/scaffold AppHost; add Postgres/Redis/Rabbit/Mongo; connect frontend to API; after aspire init.
Run `npx skills add CommunityToolkit/Aspire --skill aspireify -a claude-code`. Or copy the skill folder (.agents/skills/aspireify in CommunityToolkit/Aspire) into .claude/skills/aspireify in your project. Claude Code loads it when a task matches its description.
Run `npx skills add CommunityToolkit/Aspire --skill aspireify -a codex`. Or copy the skill folder (.agents/skills/aspireify in CommunityToolkit/Aspire) into .agents/skills/aspireify in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add CommunityToolkit/Aspire --skill aspireify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/aspireify, .gemini/skills/aspireify, .github/skills/aspireify and .opencode/skills/aspireify in your project.
Going by SKILL.md and its folder, Aspireify needs the command-line tools its instructions call (npm, dotnet, pnpm, bun and yarn). Our summary lists: Python 3; Node.js; Docker.
SKILL.md names 3 domains. As links in the text: github.com, dotnet.microsoft.com and nodejs.org. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Aspireify is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.3k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 23k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Aspireify: Full Stack Developer (theneoai/awesome-skills, 183 stars), Docker Deployment (fossasia/eventyay, 1.7k stars), Devinggo Project Init (huagelong/devinggo, 122 stars) and Aspire (managedcode/dotnet-skills, 486 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
CommunityToolkit (a GitHub organization) maintains it in CommunityToolkit/Aspire, which has 629 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 6, 2026.
Source: CommunityToolkit/Aspire on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.