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-pluginCLI 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.
- BowireHiddenProtocolsStore
What each identity has chosen not to look at (#638).
- BowireLintRailContribution
Rail contribution for the design-time Lint surface (#189). Adds a "Lint" icon to the rail strip in the
qualitygroup; the main pane (registered JS-side aslintMain) runs the discovered services through the shared BowireSchemaLinter viaPOST /api/lintand lists the findings — the browser twin ofbowire lint. No sidebar (the findings live in the main pane), and it works without an active workspace, so it stays reachable at all times.
- BowireModuleRegistry
Registry of discovered IBowireModuleContribution descriptors. Same discovery / override semantics as BowireRailRegistry, but scoped to cross-cutting modules (AI, Assistant, var-resolver, …).
- BowirePluginRoot
The one answer to "which directories hold the installed plugins" (#549, then #28 Phase D).
- BowirePluginSettingsScope
Which workspace the current call is being served for (#640).
- BowirePluginSettingsStore
Reads and writes the values behind Settings (#640).
- 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.Bowirefor rail contributions, instantiates each (default ctor required), and exposes the sorted catalogue toBowireHtmlGeneratorfor transport to the JS bundle'sBOWIRE_CONFIG.railsseed.
- BowireReportRailContribution
#587 — the Rollup rail: one row per service across whatever Bowire reports the operator points it at. Sits in the quality group beside Lint and Contracts, because it is the same question asked one level up: those two answer "is this service healthy?", this one answers it for a portfolio.
- PluginUpdateCheckHostedService
Periodically runs CheckAsync(bool, CancellationToken) when the operator has opted in via the
Bowire:PluginUpdateCheckconfiguration 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-updatesendpoint.
- 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.
- IBowirePluginSettings
What a plugin's declared settings are actually set to (#640).
- 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).
Enums
- BowirePluginTier
Which tier a plugin directory belongs to (#28 Phase D).