pub struct OutboxConfig {
pub tools: Vec<String>,
pub dir: Option<PathBuf>,
pub publish_tools: Vec<String>,
}Expand description
Which tools are outbox-routed, and where staged items live.
Fields§
§tools: Vec<String>Registry names (email__send, web__fetch). A call to one of these
is staged as a draft the user reviews with mecha outbox; the tool
itself never runs until they release it. Empty means the outbox is
off, which is the default — routing a tool is a policy decision.
dir: Option<PathBuf>Where items are staged. Defaults to ~/.mecha/outbox
(or $MECHA_OUTBOX_DIR).
publish_tools: Vec<String>Which of the routed names are publications rather than messages
(factory__bundle_publish, factory__bundle_alias). They stage
identically; they are reviewed differently — the reviewable object
is the rendered page, edit is refused, and the writing-reflection
miner skips them so a changed directory path never becomes a voice
rule. See crate::outbox::OutboxKind.
Config’s to declare, not the tool’s: the loop must not learn what a publish is, and a third-party MCP server cannot be trusted to say.
Trait Implementations§
Source§impl Clone for OutboxConfig
impl Clone for OutboxConfig
Source§fn clone(&self) -> OutboxConfig
fn clone(&self) -> OutboxConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more