Skip to main content

Module orchestration

Module orchestration 

Source
Expand description

The orchestration piece of the ontology (docs/ONTOLOGY.md §2.7, docs/ORCHESTRATOR-IR.md §2): a harness’s operational home as ONE typed value. These are the records the orchestrator loads, steps and saves; a Hermes or OpenClaw home compiles into them and decompiles back (the codecs are ONT-3’s). The wire form is the orchestrator IR’s canonical JSON: the runtime half is never persisted and is not here.

Re-exports§

pub use access::Access;
pub use access::AccessPolicy;
pub use agent::AgentDecl;
pub use agent::Budget;
pub use agent::BudgetLimit;
pub use agent::BudgetPeriod;
pub use agent::Conversation;
pub use agent::ConversationKind;
pub use agent::Cost;
pub use agent::HandoffState;
pub use agent::HistoryRef;
pub use agent::Participant;
pub use agent::ParticipantRole;
pub use agent::SessionUsage;
pub use agent::SpeakerPolicy;
pub use agent::Transfer;
pub use agent::TransferHistory;
pub use agent::TransferState;
pub use agent::Usage;
pub use channel::ChannelConfig;
pub use fire::Fire;
pub use fire::FireStatus;
pub use job::Job;
pub use job::JobOrigin;
pub use job::Repeat;
pub use job::Schedule;
pub use job::Target;
pub use obligation::Attachment;
pub use obligation::Obligation;
pub use obligation::ObligationSource;
pub use obligation::ObligationState;
pub use obligation::OutboundContent;
pub use obligation::Posted;
pub use profile::Orchestration;
pub use profile::PersonaRef;
pub use profile::Profile;
pub use profile::ProfileResidue;
pub use route::resolve_route;
pub use route::route_specificity;
pub use route::Route;
pub use route::RouteMatch;
pub use subscription::WebhookSubscription;
pub use worker::EnvValue;
pub use worker::PermissionDefault;
pub use worker::PermissionPolicy;
pub use worker::PermissionUnattended;
pub use worker::WorkerHome;
pub use worker::WorkerSpec;
pub use worker::WorkerSurface;
pub use workflow::hermes_instance;
pub use workflow::Workflow;

Modules§

access
Allowlists, admins and policy, read from Hermes’s own stores (docs/plans/hermes-compat.md row 8): the home’s .env allowlists and allow-all flags, the approved pairings under platforms/pairing/, and each platform’s allow_admin_from. Pairing codes are Hermes’s: its pairing store issues and approves them.
agent
The agent layer (mirrored ontology C8, docs/architecture/orchestrator.md §2.10): declared agents, conversations separate from sessions (G5, as amended by M3), transfers and handoffs (G2), usage and budgets (G3). Bindings name their conversation and agent (G1); routes name an agent. Agent identity itself (ids, sponsor, lineage) lives with Teams and the orchestrator’s agent store; these records are the home’s intent and its conversations’ record.
channel
A channel: one platform block of config.yaml (§2.4). Credential values never enter the model; they are references.
codec
The orchestration codecs (docs/ONTOLOGY.md §2.5, §3): a home folder ⇄ [Orchestration].
fire
Fires: one execution of a job (§2.6; Hermes cron/executions.db).
job
Scheduled jobs (§2.6; Hermes cron/jobs.json).
obligation
Delivery obligations (§2.6; Hermes delivery_obligations).
profile
The home and its profiles (§2.1): the root folder IS the default profile; profiles/<name>/ are the named ones.
route
Routes: which profile answers a surface (§2.3, Hermes gateway.profile_routes).
subscription
Webhook subscriptions (§2.6; Hermes webhook_subscriptions.json).
worker
The worker: which harness runs a profile’s conversations, and how (§2.2).
workflow
How a board is worked (docs/architecture/orchestrator.md §2.9): the whole dispatch behaviour as data, a statechart in the manner of Amazon States Language and XState. A card is always in one of the workflow’s statuses; a status may run an actor for as long as the card is in it (XState’s invoke, ASL’s Task); events move cards between statuses through transitions that say who may send them, what must hold, and what happens (Jira’s conditions, validators and post functions); the dispatcher’s scheduling is data too.

Constants§

RECORDS
Every name schema_for answers.

Functions§

schema
The JSON Schema of the whole orchestration value, with every record it contains as a definition — what supercode ontology schema prints and what the TypeScript types are generated from (ONT-6).
schema_for
The schema of one record by name, for readers who want a single type.