Nextended.Aspire.Hosting.AspireUI — API-Referenz
Die vollständige öffentliche Oberfläche von Nextended.Aspire.Hosting.AspireUI, erzeugt aus der gebauten Assembly.
Generiert
Diese Seite wird von tools/ApiRef aus der kompilierten Assembly erzeugt — sie zeigt auch Member ohne XML-Kommentar und kann daher nicht vom Code abweichen. Nicht von Hand bearbeiten.
Nextended.Aspire.Hosting.AspireUI
AspireUIAssistantExtensions
static class
Gives AspireUI's assistant a backend: an OpenAI-compatible endpoint, a model server running in this stack, or an agent CLI installed on the AspireUI host. Same shape as the studio's WithAssistant in Nextended.Aspire.Hosting.WebDataStudio, so the two packages are learned once. Once a backend is configured the assistant is more than a text box: it appears on every page of AspireUI and can operate the instance through the same tools the MCP server exposes, with the permissions of whoever is typing. That needs an HTTP endpoint — an agent CLI takes a prompt and returns text, and there is nowhere in that to put a tool call.
Felder
CliTools : string[]
The agent CLIs AspireUI knows how to drive.DefaultApiPath : string
The path an OpenAI-compatible server serves the chat API under. AspireUI adds/chat/completionsitself, so this is the version segment and not the whole path.DefaultOllamaModel : string
The model Ollama pulls by default in most examples.
AspireUIBuilderExtensions
static class
Fluent API for running AspireUI inside your Aspire stack. Start with AddAspireUI, then optionally WithAdminUser and WithSeedStack to have it come up pre-configured.
AspireUIPermissions
static class
The permission ids AspireUI knows, plus the presets the users page offers. Pass one of these (or a comma-separated list of ids) wherever a permissions argument is asked for. An admin has all of them regardless.
Felder
All : string
Everything.AppUser : string
Install, configure and browse files. No builder.Builder : string
Create, change and delete stacks; import code; run them locally.Configure : string
Change a hosted app's environment, ports and domain.Default : string
What a new account gets when nothing is said: builder, install, configure.Deploy : string
Install, start, stop, update, undeploy, move and back up hosted apps.Docker : string
See and prune the docker host's images, containers and volumes.Files : string
Browse, view and download files in an app's volumes.FilesWrite : string
Delete files in an app's volumes.None : string
Look only.Operator : string
Builder, install, configure, files (incl. delete) and terminal — no global settings.Settings : string
Global settings: proxy, notifications, backups, dashboard, import.Store : string
Manage store sources and which apps are hidden.Targets : string
Add, change and remove deploy targets.Terminal : string
Run commands inside an app's containers.Users : string
Create users and grant permissions (never the admin flag).Viewer : string
Look at the apps and their files. Change nothing.
AspireUIResource
class
AspireUI — the visual .NET Aspire AppHost builder — running as a container resource. Exposes an HTTP endpoint for the web UI, and can be pre-seeded (admin user + a starter stack) so it comes up ready without the manual first-run wizard.
Konstruktoren
AspireUIResource(string name)
AspireUI — the visual .NET Aspire AppHost builder — running as a container resource. Exposes an HTTP endpoint for the web UI, and can be pre-seeded (admin user + a starter stack) so it comes up ready without the manual first-run wizard.
Eigenschaften
AdminUsername : string { get; }
Admin username seeded on first run, if configured viaWithAdminUser.AssistantModel : string { get; }
The model the assistant was pointed at, if one of theWithAssistantmethods did.Seed : AspireUISeed { get; }
Accounts, deploy targets, api tokens, store sources, apps and stacks this instance should come up with. Filled in by theWith…methods; handed over as one environment variable when the application starts.SeedProjects : IList<string> { get; }
Project paths seeded into the starter stack (oneAddProjectnode each).SeedStackName : string { get; }
Name of the starter stack seeded on first run, if configured viaWithSeedStack.
Felder
DefaultImage : string
Container image (without registry-less shorthand): the published AspireUI image.DefaultTag : string
Default image tag.DefaultTargetPort : int
Internal port the AspireUI server listens on inside the container.HttpEndpointName : string
Name of the primary HTTP endpoint (the web UI).
AspireUISeed
class
Everything the AspireUI container should find in its database on first start. Filled in by the With… methods and handed over as one JSON environment variable when the app starts.
Konstruktoren
AspireUISeed()
Eigenschaften
AppIds : IEnumerable<string> { get; }
Catalog ids of the store apps this seed installs.Deploy : bool { get; }
True when the seeded stacks and apps should also be deployed once hosting is up.TargetNames : IEnumerable<string> { get; }
Names of the deploy targets this seed creates.Usernames : IEnumerable<string> { get; }
Names of the accounts this seed creates, in the order they were added.
AspireUISeedExtensions
static class
Everything an AspireUI instance can be handed on first start: accounts with permissions, deploy targets, api tokens for automation, store sources, apps from the catalog and stacks from a folder or a repository — plus the settings that used to need a trip through the UI. All of it is idempotent by name on the AspireUI side: restarting with the same AppHost changes nothing, adding one entry adds exactly that one, and anything changed in the UI stays changed.
AspireUISettings
class
Everything under AspireUI's own settings, as properties instead of key strings. Anything left null is not sent, and a value that is sent only fills in what the instance has not got yet — unless ForceOnEveryStart says otherwise, which also overwrites what somebody changed in the UI. This is the wide, typed way; WithSetting(key, value) stays for anything not listed here, and single-subject methods (WithSingleSignOn, WithS3Backups, …) stay for the settings that come as a set.
Konstruktoren
AspireUISettings()
Eigenschaften
AiApiKey : string { get; set; }AiBaseUrl : string { get; set; }AiCliTool : string { get; set; }
The installed CLI to use whenAiKindiscli: claude, gemini, ollama, llm, codex.AiKind : string { get; set; }httpfor an OpenAI-compatible endpoint,clifor a local agent CLI.AiModel : string { get; set; }AiProviderLabel : string { get; set; }
What the UI calls the provider, e.g. "Ollama".AuditRetainDays : int? { get; set; }
How long an entry is kept. Zero keeps everything.BackupIntervalHours : int? { get; set; }
Back up every running app's volumes this often. Zero turns the schedule off.BackupRetain : int? { get; set; }
How many snapshots to keep per app.DashboardToken : string { get; set; }
A fixed browser token, so AspireUI can hand out a one-click login link to it.ForceOnEveryStart : bool { get; set; }
Apply these on every start instead of only filling in what is empty. Off by default, because it also overwrites what somebody changed in the UI.HostDashboards : bool? { get; set; }
Host an Aspire dashboard next to every deployed app.MaxImportFileMb : int? { get; set; }
Files larger than this are skipped when a folder or archive is imported.NotifyTelegramChat : string { get; set; }NotifyTelegramToken : string { get; set; }NotifyWebhookUrl : string { get; set; }
Slack, Discord, Teams, ntfy — anything that takes a json post.ProxyBaseUrl : string { get; set; }ProxyEmail : string { get; set; }ProxyEnabled : bool? { get; set; }ProxyForwardHost : string { get; set; }
Where the proxy forwards to. Blank usesPublicHost.ProxyPassword : string { get; set; }PublicHost : string { get; set; }
The host name every app url is built from. Blank uses the host the browser asked for.RespectGitignore : bool? { get; set; }
Skip what an imported folder's own .gitignore ignores.
AspireUIUser
class
An account to create on first start. See AspireUIPermissions for the third argument.
Konstruktoren
AspireUIUser(string Username, string Password, string Permissions = null, bool Admin = false, string[] ViewModes = null, bool MustChangePassword = false)
An account to create on first start. SeeAspireUIPermissionsfor the third argument.
Eigenschaften
Admin : bool { get; set; }
True makes an admin, and the permission list stops mattering.MustChangePassword : bool { get; set; }
True asks for a new password at the first login.Password : string { get; set; }
Password (stored hashed; at least 8 characters).Permissions : string { get; set; }
A preset name or a comma-separated list of permission ids. Null = the default set.Username : string { get; set; }
Login name.ViewModes : string[] { get; set; }
Which UIs this account may use:full,simple, or both.
Projects
Nextended_Aspire_Hosting_AspireUI
class
Metadata for the Aspire AppHost project.
Eigenschaften
ProjectPath : string { get; }
The path to the Aspire Host project.