Skip to content
Docs Try Aspire
Docs Try

aspire restore command

aspire restore - Restore dependencies and generate SDK code for an apphost.

Aspire CLI
aspire restore [options]

The aspire restore command restores the AppHost and generates the SDK code that Aspire uses for resources, integrations, and tooling. Use it when you want to make restore an explicit step in automation or validate that the AppHost can restore cleanly without starting it.

For TypeScript AppHosts, restore reads the packages section in aspire.config.json, restores those hosting integration packages, and regenerates the .aspire/modules/ TypeScript SDK imported by apphost.mts. This is useful after running aspire add, switching branches, updating pinned package versions, or restoring dependencies in CI before aspire run, aspire publish, or deployment workflows.

The Aspire CLI uses the following logic, in order, to determine which AppHost project to process:

  • The --apphost option.

    This option specifies the path to the Aspire AppHost project file to process.

  • The rooted aspire.config.json file.

    If the rooted config exists in the current directory, it’s used. If not, the CLI walks up the directory structure looking for it. If Aspire finds the rooted config, it uses the recorded AppHost information to determine which project to process. Legacy .aspire/settings.json files are still read during migration.

  • Searches the current directory and subdirectories.

    Starting in the current directory, the CLI gathers all AppHost projects from that directory and below. If a single project is discovered, it’s automatically selected. If multiple projects are discovered, they’re printed to the terminal for the user to manually select one of the projects.

    Once a project is selected, either automatically or manually, Aspire records that selection in the rooted configuration so later commands can reuse it.

This command is useful in CI/CD pipelines, after adding or updating integrations, or before running build, publish, and deployment workflows.

The following options are available:

  • --apphost <apphost>

    The path to the Aspire AppHost file or project file, such as apphost.mts, apphost.cs, or an AppHost .csproj.

  • -?, -h, --help

    Prints help and usage documentation for the available commands and options.

  • -l, --log-level <Critical|Debug|Error|Information|None|Trace|Warning>

    Set the minimum log level for console output. Use this option to increase diagnostics while troubleshooting or reduce output in scripted runs.

  • --non-interactive

    Run the command in non-interactive mode, disabling all interactive prompts and spinners.

  • --nologo

    Suppress the startup banner and telemetry notice.

  • --banner

    Display the animated Aspire CLI welcome banner.

  • --wait-for-debugger

    Wait for a debugger to attach before running a command.

  • Restore the AppHost discovered from the current directory:

    Aspire CLI
    aspire restore
  • Restore a specific AppHost project:

    Aspire CLI
    aspire restore --apphost './src/MyApp.AppHost/MyApp.AppHost.csproj'
  • Restore a specific TypeScript AppHost and regenerate .aspire/modules/:

    Aspire CLI
    aspire restore --apphost './apphost.mts'