Skip to content

Protocol Reference

nautilus_adapter_sdk.protocols

Protocol definitions for Nautilus adapters and embedders.

Adapter

Bases: Protocol

Protocol that all data-source adapters must satisfy.

Source code in packages/nautilus-adapter-sdk/src/nautilus_adapter_sdk/protocols.py
@runtime_checkable
class Adapter(Protocol):
    """Protocol that all data-source adapters must satisfy."""

    source_type: ClassVar[str]

    async def connect(self, config: SourceConfig) -> None: ...

    async def execute(
        self,
        intent: IntentAnalysis,
        scope: list[ScopeConstraint],
        context: dict,
    ) -> AdapterResult: ...

    async def close(self) -> None: ...

Embedder

Bases: Protocol

Protocol for text embedding providers.

Source code in packages/nautilus-adapter-sdk/src/nautilus_adapter_sdk/protocols.py
@runtime_checkable
class Embedder(Protocol):
    """Protocol for text embedding providers."""

    async def embed(self, text: str) -> list[float]: ...