Skip to main content

SETTINGS_TEMPLATE

Constant SETTINGS_TEMPLATE 

Source
pub const SETTINGS_TEMPLATE: &str = "// AgentMux Settings\n// Save this file to apply changes immediately.\n// Uncomment a line to override its default value.\n//\n// Docs: https://docs.agentmux.ai/settings\n{\n    // -- Terminal --\n    // \"term:fontsize\":            15,\n    // \"term:fontfamily\":          \"Hack\",\n    // \"term:theme\":               \"default-dark\",\n    // \"term:scrollback\":          2000,\n    // \"term:copyonselect\":        false,\n    // \"term:transparency\":        0.5,\n    // \"term:scrollsensitivity\":   1,\n    // \"term:localshellpath\":      \"/bin/bash\",  // example; unset uses your shell\n    // \"term:localshellopts\":      [],\n    // \"term:disablewebgl\":        false,\n    // \"term:allowbracketedpaste\": true,\n    // \"term:shiftenternewline\":   false,\n\n    // -- Drag and drop (file drop onto Terminal / Agent panes) --\n    // \"dnd:enabled\":              true,\n    // \"dnd:concurrency\":          4,            // example; unset means no limit\n    // \"dnd:agentinserttoken\":     true,\n\n    // -- Window --\n    // \"window:transparent\":       false,\n    // \"window:blur\":              false,\n    // \"window:opacity\":           0.8,\n    // \"window:bgcolor\":           \"\",\n    // \"window:zoom\":              1.0,\n    // \"window:tilegapsize\":       3,\n    // \"window:showmenubar\":       false,\n    // \"window:nativetitlebar\":    false,\n    // \"window:confirmclose\":      false,\n    // \"tab:confirmclose\":         false,\n    // \"window:savelastwindow\":    true,\n    // \"window:keepinactivetabslaidout\": true,\n    // \"window:dimensions\":        \"\",\n    // \"window:reducedmotion\":     false,\n    // \"window:magnifiedblockopacity\": 1.0,\n    // \"window:magnifiedblocksize\":    0.9,\n    // \"window:maxtabcachesize\":   10,\n    // \"window:disablehardwareacceleration\": false,\n\n    // -- Pane colors --\n    // Color per widget type, keyed by view (\"term\", \"agent\", ...): a hue 0-360,\n    // or null for none. Remove a key to return to the built-in color.\n    // \"pane:colors\":              {},\n\n    // -- Startup --\n    // Suppress the splash screen. Applies at the NEXT launch: the launcher\n    // reads this before the app itself is running.\n    // \"splash:disabled\":          false,\n\n    // -- App --\n    // Keep running with a system-tray icon when all windows are closed\n    // (background-service mode). Off by default (opt-in): closing the last\n    // window quits. Applies at the NEXT launch: the launcher reads this\n    // before the app itself is running.\n    // \"app:runinbackground\":      false,\n    // Show an icon in the system tray / menu bar while AgentMux is running.\n    // On by default. Always shown while app:runinbackground is on. Applies at\n    // the NEXT launch.\n    // \"app:showtray\":             true,\n    // Start at login (off by default). Same switch as the tray menu\'s\n    // \"Start at login\".\n    // \"app:startatlogin\":         false,\n    // \"app:defaultnewblock\":      \"\",\n    // \"app:showoverlayblocknums\": true,\n\n    // -- Shell Environment --\n    // \"cmd:env\":                  {},\n\n    // -- Telemetry --\n    // \"telemetry:enabled\":        true,\n    // \"telemetry:interval\":       1.0,\n    // \"telemetry:numpoints\":      120,\n\n    // -- Connections --\n    // \"conn:wshenabled\":          true,\n    // \"conn:askbeforewshinstall\": true,\n\n    // -- Notification sounds --\n    // \"notify:sounds:enabled\":                  true,\n    // \"notify:sounds:volume\":                   0.6,\n    // \"notify:sounds:suppresswhenfocused\":      true,\n    // \"notify:sound:agent.turn.complete\":       true,\n    // \"notify:sound:agent.turn.error\":          true,\n    // \"notify:sound:agent.turn.interrupted\":    true,\n    // \"notify:sound:agent.message.accepted\":    true,\n    // \"notify:sound:agent.message.rejected\":    true,\n    // Play a soft looping tone while an agent is waiting for your reply.\n    // \"notify:sound:agent.waiting.for.input\":   true,\n    // \"notify:sounds:waiting:volume\":           0.25,  // 0\u{2013}1, scaled by notify:sounds:volume\n\n    // -- Desktop notifications (OS toasts) --\n    // \"notify:os:enabled\":                      true,\n    // \"notify:os:when\":                         \"unfocused\",  // \"unfocused\" | \"always\" | \"never\"\n    // \"notify:os:inputwaiting\":                 true,\n    // \"notify:os:turncompleted\":                true,\n    // \"notify:os:turncompleted:external\":       false,  // turns you didn\'t start\n    // \"notify:os:turnerrored\":                  true,\n    // \"notify:os:agentcrashed\":                 true,\n    // \"notify:os:messageneedsreview\":           true,\n    // \"notify:os:cloudsignedout\":               true,\n    // \"notify:pause:until\":                     0,            // epoch ms; set from the tray\n    // \"notify:pause:allowattention\":            false,\n    // \"notify:taskbar:attention\":               true,         // badge + flash the taskbar button\n    // \"notify:quiethours\":                      \"\",           // e.g. \"22:00-08:00\" (local time)\n    // \"notify:os:preview\":                      \"redacted\",   // \"redacted\" | \"full\" | \"none\"\n    // \"notify:os:summary\":                      true,         // the agent\'s session summary under the body\n\n    // -- Tool-call tones (subliminal per-tool \"voice\") --\n    // \"notify:tooltones:enabled\":               true,\n    // \"notify:tooltones:volume\":                0.25,\n    // \"notify:tooltones:scope\":                 \"all\",  // \"all\" or \"focused\"\n    // \"notify:tooltones:flash\":                 true,   // flash the source tab with each sound (tones + event sounds)\n\n    // -- Voice input (speech-to-text) --\n    // \"voice:enabled\":          true,       // show the per-pane mic button (default true)\n    // \"voice:engine\":           \"groq\",     // \"groq\" (hosted Whisper, default),\n    //                                       // \"whisper-local\" (offline whisper.cpp), or\n    //                                       // \"webspeech\" (browser API \u{2014} does NOT work in\n    //                                       // packaged CEF builds; dev/Chromium only)\n    // -- groq engine: hosted, sends webm. Key read server-side only (never sent to UI).\n    // \"voice:groqApiKey\":       \"gsk_...\",  // example; or set AGENTMUX_GROQ_API_KEY\n    // -- whisper-local engine: offline, sends 16kHz WAV to a local whisper.cpp CLI.\n    //    Provide the whisper-cli binary path; the GGML model auto-downloads on\n    //    first use (default \"base.en\", ~142MB) to <config>/whisper-models/.\n    //    Env override for the binary: AGENTMUX_WHISPER_CLI.\n    // \"voice:whisperCliPath\":   \"C:/tools/whisper-cli.exe\",  // example\n    // \"voice:whisperModel\":     \"base.en\",   // tiny.en | base.en | small.en | \u{2026}\n    // \"voice:whisperModelPath\": \"C:/models/ggml-base.en.bin\",  // example; explicit override; skips auto-download\n\n    // -- Browser panes --\n    // The address bar also asks the default search engine for suggestions\n    // while you type, sending it each edit before you press Enter, as Chrome\n    // does. Off: suggestions come only from this computer (history, typed\n    // addresses). Incognito tabs never ask, as in Chrome.\n    // \"browser:searchsuggestions\": true,\n\n    // -- Network --\n    // Discover other AgentMux instances on your local network (mDNS/Bonjour)\n    // so agents on different machines can message each other directly,\n    // without going through the cloud.\n    //\n    // Default FALSE, deliberately: turning this on makes the app advertise\n    // and browse on the local network, which triggers the OS local-network\n    // permission prompt (macOS) / firewall prompt (Windows). Not worth\n    // bothering someone who only ever runs agents on one machine \u{2014} turn it\n    // on when you actually want cross-machine agent messaging.\n    //\n    // Must be enabled on BOTH machines: discovery is mutual, so a peer with\n    // this off is invisible even if you have it on.\n    // \"network:lan_discovery\":     false,\n\n    // -- Cloud --\n    // Publish this computer to my devices: while signed in to MuxBus Cloud,\n    // your signed-in devices can list this computer from anywhere. Turning\n    // it off also tells them it went offline. Dev builds, headless installs\n    // and isolated homes never publish.\n    // \"cloud:publishpresence\":     true,\n\n    // -- Agents --\n    // Tell an agent, in a short [AgentMux] note, when it edits a file another\n    // agent on this computer is also changing, so it can message them first.\n    // \"agent:overlapnotes\":        true,\n\n    // When an agent\'s AgentMux tools (its MCP server) don\'t connect, reconnect\n    // them, then restart the agent once without the shell prefix.\n    // \"agent:mcpselfheal\":         true,\n\n    // -- Other --\n    // \"widget:icononly\":           false,\n    // \"blockheader:showblockids\": false,\n    // \"preview:showhiddenfiles\":  false,\n    // \"tab:preset\":               \"\"\n}\n";