pub struct SlackConfig {
pub max_concurrent: usize,
pub approval_timeout_secs: u64,
pub default_mode: String,
pub max_turns: u32,
pub max_cost_usd: Option<f64>,
pub stream_flush_chars: usize,
pub stream_flush_ms: u64,
pub max_upload_mb: u64,
pub tools: Vec<String>,
}Expand description
[slack] — tunables for the Slack remote control. Nothing here grants
anything. Who may drive the agent lives in ~/.mecha/slack/binding.json,
a store rather than config, for the reason [messages] is global-only and
then some: a project file arrives with a cloned repository, and a repo that
could name a Slack owner would have been handed the remote control.
Fields§
§max_concurrent: usizeThreads that may have a run in flight at once. At the cap the connector refuses and says so, rather than queueing: a run that starts twenty minutes later against a workspace that has moved is worse than an honest refusal.
approval_timeout_secs: u64How long an approval card waits before the call is refused as
unanswered. Never a denial by the user — see Decision::Blocked.
default_mode: Stringask (the default), allow, or read-only, for a thread nobody has
set a mode on.
max_turns: u32§max_cost_usd: Option<f64>§stream_flush_chars: usizeFlush a streamed chunk once this much text has accumulated, or this long has passed — whichever comes first. Size first is Slack’s own guidance; the timer is so a slow model still shows progress.
stream_flush_ms: u64§max_upload_mb: u64Largest attachment fetched into a run’s workspace. Slack allows 1 GB; a remote control does not need to.
tools: Vec<String>Narrow the tool surface for Slack-driven runs.
Empty means “everything configured”, which is the default and is usually too much: measured on the first live run, the schemas of every wired MCP server cost ~7–8k input tokens per turn before any work happened — against a 32k window whose compaction threshold is 21,845, a run starts a third of the way there. A phone rarely needs the mail and the calendar and the factory at once, and naming what it does need is the cheapest context this system has to give.
Trait Implementations§
Source§impl Clone for SlackConfig
impl Clone for SlackConfig
Source§fn clone(&self) -> SlackConfig
fn clone(&self) -> SlackConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more