Gate registry
GateDefinition.required_env checks for a non-empty value.
required_commands uses the system command lookup. These checks establish that
a dependency is configured; they do not make a network request or prove that a
credential is valid.
Failure policies
resolve_gates accepts three policies:
Unknown gate names and unknown policy names are always configuration errors;
they are never skipped.
Building agent configuration
get_mcp_config resolves capabilities first and returns servers and allowed
tools only for enabled gates:
python
executable on PATH. If all internal gates are omitted, no empty bundled server
is created. External gates retain their own MCP server and tool-name prefix.
Generic search
The generic strategy defaults towarn, because its knowledge integrations are
optional enrichment:
error for a reproducible campaign where every configured knowledge source
is mandatory. Use skip when optional capabilities are expected to vary across
machines and warnings would be noisy.
Adding a gate
Dependencies belong beside the tool definition, not in a search strategy:ToolGate class in GATE_CLASSES. For an
external gate, set both command and server_name. Add hermetic resolution
tests for missing and available dependencies; live credential tests should
remain opt-in.