# MasterBot Flow Builder Visual node editor for command and event flows. Index: https://masterbot.gg/llms.txt ## Entry points - From Commands: /dashboard/commands → Edit on a command → /dashboard/flows - From Events: /dashboard/events (or /custom, /timed) → Edit on an event flow → /dashboard/flows - Requires a selected bot in the platform sidebar ## Flow types (root nodes) Each flow has exactly one root entry node: | Root kind | Used for | |-----------|----------| | slashCommand | Slash commands (/command). Toggle **User Install** on root for DM support | | contextCommand | Context menu - set **User Context** or **Message Context** on root | | eventNode | Discord gateway events, custom events, webhooks, timed events | Details: command types, DM user install, variable scopes, math - see https://masterbot.gg/llms-capabilities.txt Event types for eventNode: see https://masterbot.gg/llms-events.txt ## Layout overview ``` +------------------------------------------------------------------+ | Top toolbar: Save, undo/redo, search, settings, back to platform | +----------+-------------------------------------------+-----------+ | Left | Canvas (node graph) | Right | | sidebar | - Drag nodes, connect edges | sidebar | | | - Groups and notes | | | Actions | | Selected | | Conditions| | node | | Options | | parameters| +----------+-------------------------------------------+-----------+ | Bottom panels (optional): Debug | Error logs | Database preview | +------------------------------------------------------------------+ ``` ## Left sidebar (node palette) Three tabs when applicable: 1. **Actions** - Action nodes (send message, variables, roles, API, voice, etc.) 2. **Conditions** - Branching checks (condition, permission, role, chance, channel, time, forum tag) 3. **Options** - Slash command options (User, Channel, Role, etc.) - only when the flow root is a slash command Drag a node from the palette onto the canvas. Search filters nodes by name. Full node list with descriptions: https://masterbot.gg/llms-nodes.txt ## Canvas - Connect nodes with edges (main flow path vs condition branches) - **Send Message** nodes can spawn child **Button** and **Select Menu** nodes - **Condition** nodes spawn **Individual Condition** branches and an **Else** branch - **Run Loop** creates **Loop Body** and **After Loop** sub-nodes - **Group** nodes visually contain other nodes - **Note** nodes are annotations only (not executed) ## Right sidebar Shows parameters for the selected node. Changes apply to that node only. Some nodes open a expanded panel (+) for complex editors (e.g. Send Message content, API Request). ## Bottom panels - **Debug** - Live execution trace, variable inspection (enable before testing) - **Error logs** - Recent flow errors for this bot - **Database** - Preview database variable state during debug ## Save and publish workflow 1. Edit nodes on the canvas and configure parameters in the right sidebar 2. Unsaved changes show an indicator in the toolbar - click Save 3. Start the bot from Bots → Bot Settings if not already online 4. Test on Discord (run slash command, trigger event, click button, etc.) 5. Use Debug panel to inspect execution Flows do not run on Discord until the bot is online and the flow is saved and active. ## Variables in flows - **Temp variables** - Set Temp Variable, Calculate, Transform Text (exist only during one execution) - **Database variables** - Set Variable, Reset Variable (persist; managed at /dashboard/database) - **Event variables** - Populated automatically on event flows (depend on event type) - **Interaction variables** - From slash options, buttons, menus, modals Tutorial: https://masterbot.gg/tutorials/variables Capabilities (math, scopes, syntax summary): https://masterbot.gg/llms-capabilities.txt ## Cross-flow actions - **Run Custom Event** node - Triggers another flow with event type custom.event - Timed and webhook flows are triggered by the platform scheduler or HTTP, not by this node alone ## Collaborator restrictions Collaborators may be limited by nodes.use.* permissions. If a node is missing from the palette, the user lacks permission for that node type. ## Related files - Platform navigation: https://masterbot.gg/llms-platform.txt - Node catalog: https://masterbot.gg/llms-nodes.txt - Event catalog: https://masterbot.gg/llms-events.txt