Skip to main content

Crate systemprompt_loader

Crate systemprompt_loader 

Source
Expand description

File and module discovery infrastructure for systemprompt.io.

Reads the active services-config (with include resolution and deduplication), loads profile YAML, writes agent files, and discovers extension manifests under extensions/. Sits one level above systemprompt_config in the dependency graph so that domain crates never need to know how the on-disk layout is structured.

§Modules

  • config_loader — loads and merges services.yaml and its includes.
  • config_writer — creates, edits, and deletes agent files.
  • extension_loader / extension_registry — discover extension manifests and resolve binary paths.
  • module_loaderinventory-driven extension discovery for the compiled-in extension trait registry.
  • profile_loader — reads, validates, and writes profile YAML.
  • bundle — signed services bundles: fetch, verify, compose, and the boot path that installs the active services root.
  • vertex_discovery — boot-time catalog discovery: each provider’s credential decides which CatalogSource may list it, and every priced, serverless model it returns is folded into the provider registry.
  • services_root — the process-wide cell naming the services root the instance actually runs, with its provenance.
  • services_bootstrap — the process-wide cell holding the loaded services config (provider catalog and gateway included), initialised right after the profile at boot.
  • error — public error types (ConfigLoadError, ConfigWriteError, ExtensionLoadError).

Copyright (c) systemprompt.io — Business Source License 1.1. See https://systemprompt.io for licensing details.

Re-exports§

pub use bundle::BundleError;
pub use bundle::BundleResult;
pub use bundle::ServicesSourceBootstrap;
pub use config_loader::ConfigLoader;
pub use config_writer::ConfigWriter;
pub use error::ConfigLoadError;
pub use error::ConfigLoadResult;
pub use error::ConfigWriteError;
pub use error::ConfigWriteResult;
pub use error::ExtensionLoadError;
pub use error::ExtensionLoadResult;
pub use error::ProfileLoadError;
pub use error::ProfileLoadResult;
pub use extension_loader::ExtensionLoader;
pub use extension_loader::ExtensionValidationResult;
pub use extension_registry::ExtensionRegistry;
pub use module_loader::ModuleLoader;
pub use profile_loader::ProfileLoader;
pub use services_bootstrap::ServicesBootstrap;
pub use services_root::ActiveServicesRoot;
pub use services_root::ServicesProvenance;
pub use services_root::ServicesRootBootstrap;

Modules§

bundle
Signed services bundles: packing, fetching, verifying and composing.
config_loader
Reads, parses, and merges the active services configuration.
config_writer
Writes individual agent files and patches the top-level config to drop their includes: entries.
error
Error types raised by the loader infrastructure.
extension_loader
Discovers extensions/<name>/manifest.yaml files and resolves the binaries those manifests reference.
extension_registry
In-memory index of discovered extensions used to resolve binary paths at runtime, with a separate code path for cloud deployments where every binary lives in a single configured directory.
module_loader
Thin wrapper around the inventory-driven extension registry.
profile_loader
Reads, validates, and writes profile YAML files.
services_bootstrap
Process-wide services-config bootstrap.
services_root
Process-wide cell holding the services root the instance actually runs.
subprocess
Spawning and reaping the detached agent and MCP children the supervisor owns.
vertex_discovery
Boot-time discovery of the models a deployment can actually serve.