Agent
SystemOne
Bases: BaseSystemOne
Ask typed questions about a state and get calibrated answers back.
Source code in system_one/agent.py
backend
instance-attribute
backend: Backend = (
using
if using is not None
else create_backend(self.settings, config)
)
ask
ask(
state: State,
questions: QuestionInput,
*,
model: str | None = None,
) -> SystemOneOutput
AsyncSystemOne
Bases: BaseSystemOne
The async counterpart of SystemOne: the same ask, awaited.
Source code in system_one/agent.py
backend
instance-attribute
backend: AsyncBackend = (
using
if using is not None
else create_async_backend(self.settings, config)
)
ask
async
ask(
state: State,
questions: QuestionInput,
*,
model: str | None = None,
) -> SystemOneOutput
BaseSystemOne
Settings resolution and input building, shared by the sync and async agents.
config is the backend's own configuration — TypesafeConfig(),
OpenRouterConfig(), HTTPConfig(base_url=..., model=...) or ONNXConfig() —
and picks the backend to build; omitted, SYSTEM_ONE_BACKEND decides and the
config is read from the environment. using hands over an already-built backend
instead, which is how tests and custom providers plug in.