pub struct RegistryManager {
registries: Vec<LoadedRegistry>,
}Expand description
Manages multiple extension registries with precedence-based resolution.
Registries are loaded in config order. A .ctx/ directory in the
current working directory (or ancestors) is appended with the highest
precedence. Later registries override earlier ones for the same name.
Fields§
§registries: Vec<LoadedRegistry>Registries in precedence order (lowest first).
Implementations§
Source§impl RegistryManager
impl RegistryManager
Sourcepub fn from_config(config: &Config) -> Self
pub fn from_config(config: &Config) -> Self
Build a RegistryManager from the config, loading all manifests.
Registries that don’t exist on disk or lack a valid manifest are
skipped with a warning. The .ctx/ project-local directory is
appended if found.
Sourcepub fn list_all(&self) -> Vec<ResolvedExtension>
pub fn list_all(&self) -> Vec<ResolvedExtension>
List all extensions across all registries, resolved by precedence.
Later registries override earlier ones for the same kind/name.
Sourcepub fn resolve(&self, extension_id: &str) -> Option<ResolvedExtension>
pub fn resolve(&self, extension_id: &str) -> Option<ResolvedExtension>
Resolve a specific extension by "type/name" (e.g. "connectors/jira").
Sourcepub fn list_connectors(&self) -> Vec<ResolvedExtension>
pub fn list_connectors(&self) -> Vec<ResolvedExtension>
List all resolved connectors.
Sourcepub fn list_tools(&self) -> Vec<ResolvedExtension>
pub fn list_tools(&self) -> Vec<ResolvedExtension>
List all resolved tools.
Sourcepub fn list_agents(&self) -> Vec<ResolvedExtension>
pub fn list_agents(&self) -> Vec<ResolvedExtension>
List all resolved agents.
Sourcepub fn writable_path(&self) -> Option<&Path>
pub fn writable_path(&self) -> Option<&Path>
Find the first writable registry path (iterates from highest precedence).
Sourcepub fn registries(&self) -> Vec<RegistryInfo>
pub fn registries(&self) -> Vec<RegistryInfo>
Get the loaded registries (for listing/status).
Auto Trait Implementations§
impl Freeze for RegistryManager
impl RefUnwindSafe for RegistryManager
impl Send for RegistryManager
impl Sync for RegistryManager
impl Unpin for RegistryManager
impl UnsafeUnpin for RegistryManager
impl UnwindSafe for RegistryManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more