Struct Capability Registry

View as Markdown

Generated from cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-ffi.

1pub struct CapabilityRegistry { /* private fields */ }

Registry holding capabilities for all known backends.

Provides feature discovery so the policy engine and validation framework know which intents can be expressed on which targets.

Implementations

impl CapabilityRegistry

impl CapabilityRegistry

new

pub fn new() -> Self

Create a new empty capability registry.

with_defaults

pub fn with_defaults() -> Self

Create a registry pre-populated with known Anthropic and OpenAI capabilities.

register_backend

pub fn register_backend(&mut self, caps: BackendCapabilities)

Register a backend’s capabilities in the registry.

get_backend

pub fn get_backend(&self, backend_id: &str) -> Option<&BackendCapabilities>

Retrieve a backend’s capabilities by ID.

supports_feature

pub fn supports_feature(
    &self,
    backend_id: &str,
    feature: ProviderFeature,
) -> bool

Check if a backend supports a feature at the backend level.

model_supports_feature

pub fn model_supports_feature(
    &self,
    backend_id: &str,
    model_family: &str,
    feature: ProviderFeature,
) -> bool

Check if a specific model family on a backend supports a feature.

Falls back to backend-level if the model family is not registered.

list_backend_ids

pub fn list_backend_ids(&self) -> Vec<String>

Return a sorted list of all registered backend IDs.

Trait Implementations

impl Clone for CapabilityRegistry

impl Clone for CapabilityRegistry

clone

fn clone(&self) -> CapabilityRegistry

clone_from

fn clone_from(&mut self, source: &Self)

impl Debug for CapabilityRegistry

impl Debug for CapabilityRegistry

fmt

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl Default for CapabilityRegistry

impl Default for CapabilityRegistry

default

fn default() -> CapabilityRegistry

impl<'de> Deserialize<'de> for CapabilityRegistry

impl<'de> Deserialize<'de> for CapabilityRegistry

deserialize

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,

impl Serialize for CapabilityRegistry

impl Serialize for CapabilityRegistry

serialize

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
    __S: Serializer,