Namespace Kuestenlogik.Bowire.Plugins

Classes

BowireDisabledPluginsStore

Process-wide, disk-persisted store of plugin ids that have been "unloaded" via the Settings → Plugins UI. Acts as the in-process extension of DisabledPlugins: the latter carries the host-startup baseline (appsettings.json / --disable-plugin CLI flag) which Bowire never rewrites because it has no general-purpose appsettings.json writer; this store carries the runtime layer that operators flip from the workbench UI.

BowireModuleRegistry

Registry of discovered IBowireModuleContribution descriptors. Same discovery / override semantics as BowireRailRegistry, but scoped to cross-cutting modules (AI, Assistant, var-resolver, …).

BowirePluginUpdateCheckOptions

Configuration for the periodic plugin update check. Off by default — outbound network calls are opt-in.

BowireRailRegistry

Registry of discovered IBowireRailContribution descriptors. Mirrors BowireProtocolRegistry's shape — scans loaded assemblies whose name starts with Kuestenlogik.Bowire for rail contributions, instantiates each (default ctor required), and exposes the sorted catalogue to BowireHtmlGenerator for transport to the JS bundle's BOWIRE_CONFIG.rails seed.

PluginUpdateCheckHostedService

Periodically runs CheckAsync(bool, CancellationToken) when the operator has opted in via the Bowire:PluginUpdateCheck configuration section (bound to BowirePluginUpdateCheckOptions).

PluginUpdateCheckResult

One row in the update-check snapshot.

PluginUpdateCheckService

Reusable "check installed plugin versions against nuget.org" pipeline shared between the daily background check (PluginUpdateCheckHostedService) and the manual GET /api/plugins/check-updates endpoint.

PluginUpdateCheckSnapshot

Persisted shape of an update-check run.

Interfaces

IBowireEndpointContribution

Contract a Bowire-sibling package implements to splice extra ASP.NET endpoints into the workbench's auth-gated route group at MapBowire() time (#325, v2.1).

IBowireModuleContribution

Descriptor contributed by a package that wants to add a cross-cutting module (AI assistant, MCP bridge, variable resolver, guided tour, …) to the Bowire workbench.

IBowireRailContribution

Descriptor contributed by a package that wants to add a rail (a left-strip activity-bar icon + its associated sidebar / main-pane view) to the Bowire workbench.

IBowireServiceContribution

Contract a Bowire-sibling package implements to register its services into the host's IServiceCollection at AddBowire() time (#325, v2.1).