Unique identifier for this agent. Used as the NATS routing key.
Capabilities advertised by this agent. Used for registration and peer discovery.
OptionalgraphOptional Oxigraph HTTP endpoint.
When provided, connect() registers capabilities in the RDF graph.
Capability discovery falls back to graph queries when NATS is unavailable.
OptionalmcpWhen set, auto-starts a Streamable HTTP MCP server alongside the NATS connection, exposing this agent's capabilities over the Model Context Protocol via JSON-RPC 2.0.
true — start on the default port (3001), bound to 0.0.0.0.{ port, host } — start on a custom port / host.false / absent — no MCP server is started (default).OptionalmeshInject a custom MeshNode instance. Useful for testing or advanced use-cases where you need fine-grained control over transport or reliability settings.
When provided, natsUrl is ignored (transport is owned by the injected node).
OptionalmodelModel capability profiles available to this agent.
When provided along with a graphUrl, these are registered as
mesh:ModelCapability RDF triples at bootstrap, enabling SPARQL-driven
model selection and budget-aware downgrades.
OptionalnatsNATS server URL.
Defaults to 'nats://localhost:4222'.
OptionalobservabilityFine-grained observability configuration.
All fields are optional and have sensible defaults.
Requires observe: true to have any effect.
OptionalheartbeatMs?: numberHeartbeat interval in milliseconds. Default 30000.
OptionallangfuseBaseUrl?: stringLangfuse base URL. Default 'https://cloud.langfuse.com'.
OptionallangfusePublicKey?: stringLangfuse public key for LLM call tracing integration.
OptionallangfuseSecretKey?: stringLangfuse secret key.
OptionalsampleRate?: numberFraction of events to emit, 0.0–1.0. Default 1.0.
Optionalsubject?: stringNATS subject for telemetry events. Default 'mesh.telemetry.events'.
OptionalunsafePlaintext?: booleanSkip Ed25519 signing (development only). Default false.
OptionalobserveEnable automatic observability emission.
When true, the node will emit signed telemetry events to NATS on
connect, disconnect, publish, subscribe handler invocation, trust changes,
and errors. No-op until @one137th/mesh-observability-core is wired up
in Phase 1.
OptionaltrustATF trust level for this agent. Defaults to ATF_LEVELS.SENIOR — a reasonable default for operational agents.
Configuration for a SwarmNode.
Only
agentIdandcapabilitiesare required. All other fields have sensible defaults.