compile
bob compile [agent] Compiles Obsidian-flavored markdown prompts into the XML format Flowise expects. Writes to compiled/ alongside each source.
When Every time you edit a prompt. Always run before push.
Bob has eighteen commands across two surfaces — a CLI for scripts and power users, and an interactive menu for the four most-used operations. Below: how each surface works, then every command organized by how often you'll reach for it.
The CLI is the canonical surface — every command is here. The interactive menu is a wizard around the four most common operations: push, promote, branch, and tests. Use whichever fits the moment.
Scriptable · all commands · CI-friendly
Run any command directly: bob push my-agent --env dev. Tab-complete with bob <tab> in zsh.
Best for repeatable work, scripts, and CI gates.
Four wizards · arrow keys · safe defaults
Run bob with no arguments. The menu walks you through push/promote/branch/tests with prompts —
no flags to memorize. Best for first-time use and the "is dev ok?" daily ritual.
Edit → compile → push → test → promote. If you only learn four commands, learn these.
bob compile [agent] Compiles Obsidian-flavored markdown prompts into the XML format Flowise expects. Writes to compiled/ alongside each source.
When Every time you edit a prompt. Always run before push.
bob push <agent> [--env <env>] Compiles, pulls remote flow.json, injects compiled prompts and JS code into nodes, uploads back. Push-protected envs are refused.
When After every prompt or JS change you want to try in Flowise.
bob test --scenario <path> | --suite <name> | <pattern> Runs YAML behavioral contracts against the same Flowise prediction endpoint your push targets. Reports per-turn timings and judge verdicts.
When Before you ship. Constantly during agent development.
bob promote <fromEnv> <toEnv> [agent] Copies a flow between environments — runs ID remapping, swaps credentials, injects target env state. Prod can only be promoted from stage.
When Releases. Move dev → stage when green; stage → prod after sign-off.
Not every day, but every week. The commands a teammate learns in their second week.
bob predict <agent> [-m "msg"] [--session-id <id>] [--env <env>] Interactive chat against a deployed agent. Shows the execution path, classifier scores, and tool calls. Resume an existing session with --session-id.
When Debugging an agent's reply by hand. Faster than writing a scenario.
bob pull <agent> [--env <env>] Downloads flow.json from Flowise into flowise/agents/<agent>/. Use pull-code to also extract custom JS nodes into code/.
When After someone edits structure in the Flowise UI. Pulls them back into git.
bob validate [--env <env>] Cross-checks every local prompt has a matching node in Flowise — catches typos, renames, or missing nodes before you push.
When Pre-flight before a big push. CI gate.
bob branch create <name> [--from dev] · delete · list Manages branch environments — short-lived envs derived from dev (or another env) for feature work. Stored in config.yaml.
When Starting a feature that needs its own Flowise sandbox.
Useful, less often. Env setup, project workflow, the occasional remap.
bob update-ids <agent> [--env <env>] Remaps resource UUIDs (credentials, flow IDs, document store IDs) inside a flow when moving between envs that share workspaces but differ in resource bindings.
When After cross-workspace promotions, or when a flow was hand-copied between envs.
bob credentials <agent> [--env <env>] Updates LLM/Agent node credential references in a flow to match what config.yaml says for a given env.
When Initial env setup. After rotating an LLM API key.
bob discover <agent> [--env <env>] Lists every LLM/Agent node in a Flowise flow and reports which prompts are mapped vs missing. Read-only.
When Onboarding to an unfamiliar agent. Auditing prompt coverage.
bob pull-tools [name...] [--env <env>] Mirrors Flowise Custom Tools into flowise/tools/ as JS files with JSDoc YAML frontmatter. Local frontmatter wins on re-pull.
When When a teammate added or edited a shared tool in the Flowise UI.
bob push-tools [name...] [--env <env>] Pushes tool function bodies + descriptions + schemas (built from frontmatter inputs) up to Flowise.
When After editing a tool locally. Local frontmatter is the source of truth.
bob issue <KEY> [--force] [--no-attachments] [--open] Scaffolds issues/<KEY>/ with the Jira ticket prefilled, screenshots/ folder, and downloaded attachments. Mac-friendly.
When Starting work on a Jira ticket. Project workflow nicety, not core to Bob.
One-off, janitorial, or bootstrap. You will go weeks without typing these.
bob cleanup-export Inventories all Sandbox agentflows into a CSV for team review. Backs up each flow as JSON. Pre-marks flows tracked in config.yaml as keep.
When Quarterly Sandbox cleanup. Before a fresh round of experiments.
bob cleanup-delete <csv> [--execute] Reads the reviewed CSV from cleanup-export and deletes flows marked DELETE. Dry-run by default. Refuses to delete tracked flows. Logs every action.
When After your team has reviewed the export CSV. Run dry-run first.
bob pull-node-config One-time bootstrap: extracts structuredOutput + updateState configurations from existing Flowise nodes into local prompt and JS frontmatter.
When Once, when adopting Bob on a pre-existing Flowise project.