pub mod admin;
pub mod admin_ui;
pub mod compat_v1;
pub mod config_schema;
pub mod dashboard;
pub mod discover;
pub mod error;
pub mod http;
pub mod id_regex;
pub mod manifest;
pub mod metrics;
pub mod pairing;
pub mod poller;
pub mod public_tunnel;
pub mod sandbox;
pub mod validate;
pub mod visible_when;
pub use discover::{discover_in_root, PLUGIN_MANIFEST_FILENAMES};
pub use admin_ui::{
Action, AdminUiMode, Contribution, Field, FieldType, I18nLabel, OnSuccess, OptionsSource,
PluginAdminUiSection, RefreshSpec, Screen, SelectOption, ADMIN_RPC_PREFIX, CORE_SLOTS,
CURRENT_ADMIN_UI_SCHEMA_VERSION, LUCIDE_SUBSET, VISIBLE_WHEN_MAX_LEN,
};
pub use config_schema::{
is_validation_bypassed, validate_config, ConfigSchemaError, SKIP_SCHEMA_ENV,
};
pub use error::ManifestError;
pub use manifest::{
AdminCapabilities, AdvisorsSection, AgentsSection, BrokerCapability, Capabilities, Capability,
CapabilityGateDecl, CapabilityGatesSection, ChannelDecl, ChannelsSection, ConfigSchemaSection,
ConfigSection, ConfigShape, ContractsSection, CredentialsSchemaSection, EntrypointSection,
ExtendsSection, GateKind, GateRisk, HttpServerCapability, MetaSection, PluginManifest,
PluginSection, RequiresSection, SkillsSection, SupervisorSection, ToolsSection, UiHint,
UiSection, CURRENT_MANIFEST_VERSION, EXTENDS_SECTIONS, PLUGIN_MANIFEST_FILENAME,
SUPERVISOR_STDERR_TAIL_MAX,
};
pub use pairing::{PairingFieldDescriptor, PairingKind, PairingSection};
pub use poller::{PluginPollerSection, PollerLifecycle};
pub use public_tunnel::PluginPublicTunnelSection;
pub use sandbox::{
contains_state_dir_token, path_under_or_equals_denylist, SandboxNetwork, SandboxPathKind,
SandboxSection, SANDBOX_DENYLIST_HOME_SUBPATHS, SANDBOX_DENYLIST_HOST_PATHS,
SANDBOX_STATE_DIR_TOKEN,
};
pub use visible_when::{
eval as eval_visible_when, parse as parse_visible_when, CmpOp, Expr as VisibleWhenExpr,
Literal as VisibleWhenLiteral, VisibleWhenError,
};