Skip to main content

meerkat_mobkit/
lib.rs

1//! MobKit core — orchestration engine for the Meerkat multi-agent runtime.
2
3pub mod identity_first;
4
5pub mod auth;
6pub mod baseline;
7pub mod blob_store;
8pub mod config_convention;
9pub mod console_aggregator;
10pub mod console_config;
11pub mod console_contracts;
12pub mod contact_directory;
13pub mod decisions;
14pub mod governance;
15pub mod http_auth;
16pub mod http_console;
17pub mod http_sse;
18pub mod mob_handle_runtime;
19pub mod mocks;
20pub mod process;
21pub mod protocol;
22pub mod rpc;
23pub mod runtime;
24pub mod types;
25pub mod unified_runtime;
26
27pub use auth::{
28    GATEWAY_PEER_KEY_FILE, GatewayPeerKeyError, GatewayPeerKeys, Jwk, JwksCache, JwksCacheConfig,
29    JwksCacheError, JwksDocument, JwtHeaderView, JwtValidationConfig, JwtValidationError,
30    OidcContractError, OidcDiscoveryDocument, PubkeyDecodeError, ValidatedJwt, decode_pubkey_b64,
31    extract_hs256_shared_secret, inspect_jwt_header, parse_jwks_json, parse_oidc_discovery_json,
32    select_jwk_for_token, validate_jwt_locally,
33};
34pub use baseline::{
35    BaselineVerificationError, BaselineVerificationReport, DEFAULT_MEERKAT_REPO,
36    REQUIRED_MEERKAT_SYMBOLS, verify_meerkat_baseline_symbols,
37};
38pub use blob_store::{
39    Base64BlobStoreAdapter, BinaryBlobPayload, BinaryBlobStore, BinaryBlobStoreAdapter,
40    ObjectStoreBlobStore,
41};
42pub use config_convention::ConventionalPaths;
43pub use console_aggregator::{
44    AllowAllConsoleVisibilityPolicy, AppendDisposition, AppendOutcome, ConsoleAggregatorOptions,
45    ConsoleCursor, ConsoleFrame, ConsoleFrameSource, ConsoleFrameSourceKind, ConsoleFrameStatus,
46    ConsoleIdentityInspection, ConsoleIdentityRecord,
47    ConsoleInteractionAccepted as ConsoleTimelineInteractionAccepted, ConsoleLogError,
48    ConsoleLogResult, ConsoleLogStore, ConsoleReplayUnavailable, ConsoleRuntimeRegistration,
49    ConsoleSendRequest, ConsoleTimelineEvent, ConsoleTimelinePage, ConsoleTimelineQuery,
50    ConsoleVisibility, ConsoleVisibilityPolicy, HideImplicitDelegateMembersConsoleVisibilityPolicy,
51    InMemoryConsoleLogStore, MobKitConsoleAggregator, NewConsoleFrame, ReplaySubscriptionEffect,
52    ReplaySubscriptionState, ReplaySubscriptionTransition, SendEffect, SendState, SendTransition,
53    SourceIngestionEffect, SourceIngestionState, SourceIngestionTransition, SqliteConsoleLogStore,
54};
55pub use console_config::{
56    ConsoleActionsUiConfig, ConsoleAgentBadgeConfig, ConsoleAgentListConfig,
57    ConsoleAgentSectionConfig, ConsoleAppearanceConfig, ConsoleBrandingConfig, ConsoleConfigError,
58    ConsoleEnvironmentConfig, ConsoleLayoutConfig, ConsoleRailFilterPresetConfig,
59    ConsoleRailUiConfig, ConsoleSidebarButtonConfig, ConsoleSidebarUiConfig, ConsoleUiConfig,
60    load_console_ui_config_from_path_for_realm, load_console_ui_config_from_toml,
61    load_console_ui_config_from_toml_for_realm,
62};
63pub use console_contracts::{
64    ConsoleIdentityEventEnvelope, ConsoleInteractionRejectedError, ReplayUnavailableError,
65};
66pub use decisions::{
67    AuthPolicy, AuthProvider, BigQueryNaming, ConsoleAccessRequest, ConsolePolicy,
68    DecisionPolicyError, MetricsPolicy, REQUIRED_RELEASE_TARGETS, ReleaseMetadata,
69    RuntimeOpsPolicy, enforce_console_route_access, load_trusted_mobkit_modules_from_toml,
70    parse_release_metadata_json, validate_bigquery_naming, validate_release_metadata,
71    validate_runtime_ops_policy,
72};
73#[allow(deprecated)]
74pub use governance::validate_phase0_governance_contracts;
75pub use governance::{
76    GovernanceValidationError, STRICT_TRACEABILITY_STATUSES, validate_governance_contracts,
77    validate_governance_state, validate_traceability_statuses,
78};
79pub use http_auth::{auth_middleware, with_auth_layer};
80pub use http_console::{
81    ConsoleJsonState, console_frontend_app_js_handler, console_frontend_index_handler,
82    console_frontend_router, console_json_handler, console_json_router,
83    console_json_router_with_aggregator, console_json_router_with_runtime,
84};
85pub use http_sse::{
86    AgentEventSubscribeFn, MobEventSubscribeFn, agent_event_sse, agent_events_sse_router,
87    mob_events_sse_router, mob_structural_events_sse_router,
88};
89pub use mob_handle_runtime::{
90    AfterCreateHook, CapabilityFlags, MobBootstrapOptions, MobBootstrapSpec, MobRuntime,
91    MobRuntimeError, RealMobRuntime, SessionCreatedContext, SessionHook, member_entry_to_json,
92    send_message_on_mob,
93};
94pub use mocks::{MockModuleProcess, MockProcessError};
95pub use process::{ProcessBoundaryError, run_process_json_line};
96pub use protocol::{ProtocolParseError, parse_module_event_line, parse_unified_event_line};
97pub use rpc::{
98    IdentityFirstContext, JsonRpcError, JsonRpcRequest, JsonRpcResponse,
99    MEMORY_BACKEND_UNAVAILABLE_CODE, MOB_EVENTS_STALE_CURSOR_CODE, MOBKIT_CONTRACT_VERSION,
100    handle_console_ingress_json, handle_mobkit_rpc_json, handle_unified_rpc_json,
101};
102pub use rpc::{RpcCapabilities, RpcCapabilitiesError, parse_rpc_capabilities};
103pub use runtime::{
104    BaselineRuntimeError, BigQueryGcConfig, BigQuerySessionStoreAdapter, BigQuerySessionStoreError,
105    ConfigResolutionError, ConsoleAgentLiveSnapshot, ConsoleLiveSnapshot, ConsoleModelCapabilities,
106    ConsoleRestJsonRequest, ConsoleRestJsonResponse, DecisionRuntimeError,
107    ElephantMemoryBackendConfig, ElephantMemoryStoreError, GatingAuditEntry, GatingDecideError,
108    GatingDecideRequest, GatingDecision, GatingDecisionResult, GatingEvaluateRequest,
109    GatingEvaluateResult, GatingOutcome, GatingPendingEntry, GatingRiskTier, InMemoryMetadataStore,
110    JsonFileSessionStore, JsonFileSessionStoreError, JsonStoreLockRecord, LifecycleEvent,
111    LifecycleStage, McpBoundaryError, MemoryAssertion, MemoryBackendConfig, MemoryConflictSignal,
112    MemoryIndexError, MemoryIndexRequest, MemoryIndexResult, MemoryQueryRequest, MemoryQueryResult,
113    MemoryStoreInfo, MetadataScope, MetadataStoreError, MobkitRuntimeError, MobkitRuntimeHandle,
114    ModuleHealthState, ModuleHealthTransition, ModuleRouteError, ModuleRouteRequest,
115    ModuleRouteResponse, NormalizationError, PersistentMetadataStore, RpcRouteError,
116    RpcRuntimeError, RuntimeBoundaryError, RuntimeDecisionInputs, RuntimeDecisionState,
117    RuntimeFromConfigError, RuntimeMetadataTable, RuntimeMutationError, RuntimeOptions,
118    RuntimeRoute, RuntimeRouteMutationError, RuntimeShutdownReport, ScheduleDefinition,
119    ScheduleDispatch, ScheduleDispatchReport, ScheduleEvaluation, ScheduleRuntimeInjection,
120    ScheduleTrigger, SchedulingSupervisorSignal, SessionPersistenceRow, SessionStoreContract,
121    SessionStoreKind, SqliteMetadataStore, SubscribeRequest, SubscribeResponse, SubscribeScope,
122    SupervisorReport, TrustedOidcRuntimeConfig, WILDCARD_ROUTE, build_runtime_decision_state,
123    evaluate_schedules_at_tick, handle_console_rest_json_route,
124    handle_console_rest_json_route_with_snapshot, materialize_latest_session_rows,
125    materialize_live_session_rows, normalize_event_line, route_module_call,
126    route_module_call_rpc_json, route_module_call_rpc_subprocess, run_discovered_module_once,
127    run_meerkat_baseline_verification_once, run_module_boundary_once,
128    run_rpc_capabilities_boundary_once, session_store_contracts, start_mobkit_runtime,
129    start_mobkit_runtime_with_options,
130};
131pub use types::{
132    AgentDiscoverySpec, DiscoverySpec, EventEnvelope, MobKitConfig, MobStructuralEventEnvelope,
133    ModuleConfig, ModuleEvent, PreSpawnData, RestartPolicy, UnifiedEvent,
134};
135pub use unified_runtime::{
136    DEFAULT_REFERENCE_APP_MAX_CONCURRENT_REQUESTS, DesiredPeerEdge, DesiredPeerEdgeError,
137    Discovery, EdgeDiscovery, EdgeReconcileFailure, ErrorEvent, ErrorHook, EventLogConfig,
138    EventLogStore, EventQuery, PersistedEvent, PostReconcileHook, PostSpawnHook, PreSpawnContext,
139    PreSpawnHook, RediscoverReport, ShutdownDrainReport, UnifiedRuntime,
140    UnifiedRuntimeBootstrapError, UnifiedRuntimeBuilder, UnifiedRuntimeBuilderError,
141    UnifiedRuntimeBuilderField, UnifiedRuntimeError, UnifiedRuntimeReconcileEdgesReport,
142    UnifiedRuntimeReconcileError, UnifiedRuntimeReconcileReport,
143    UnifiedRuntimeReconcileRoutingReport, UnifiedRuntimeRunReport, UnifiedRuntimeShutdownReport,
144    discovery_spec_to_spawn_spec,
145};