Bandura is a local desktop workspace for AI workflow automation. Combine AI steps, APIs, scripts, and result checks into a repeatable process. A visual graph and a code editor are two views of the same readable YAML file.
Start with a process such as classifying a support request, extracting information, or preparing a draft. Define inputs, run the steps, inspect outputs, and share the workflow file. The AI workflow guide walks through local sample inputs and checking AI results. API testing remains a supported use case.
The one idea: the graph and the code are the same file
A flow lives in a single plain-text .aether file. The graph view and the code view are two
renderings of that one file. Edit either and the other follows, because there is nothing to
sync. No export step, no hidden database, no cloud copy.
Because flows are plain files:
- They live in your Git repository, next to the projects they support. Branch them, diff them, review them in pull requests. That arrangement has a page of its own: Git-native API testing.
- A teammate gets your workflow project with
git clone. There is nothing to import; the files are the format. - Editing and local processing work offline, with no account. External requests and
hosted models need connectivity. Keep secrets in local settings or
.envreferences; do not paste them into shared files. See the offline API client for what that rules out and what it costs.
What’s on screen
When you open Bandura with a workspace loaded, the window has five areas:
- Activity bar (far left, icon rail): the top icons switch the sidebar between the File Explorer, Source Control (Git), and Environments; below them, buttons open the Flow Map (a workspace-wide overview of every flow) and Settings in the center area, where there’s room for them.
- Sidebar holds whichever of the Explorer / Source Control / Environments views is active. Toggle it with ⌘B.
- Editor (center) gives one tab per open file.
.aetherfiles open in the flow editor with Graph, Code, and Split tabs; every other file (.env,.json,.md, …) opens in a regular text editor. - Inspector (right, in the flow editor) shows details for the selected node: its YAML, the variables it uses, request parameters, its last result, and an AI chat.
- Bottom panel carries Console, Variables, History, and Terminal tabs. Toggle it with ⌘J.
The status bar along the bottom shows the active environment on the left (click it to switch) and the active file plus the last run’s status on the right.
On Windows and Linux, read ⌘ as Ctrl throughout these docs.
Words you’ll see everywhere
| Term | Meaning |
|---|---|
| Flow | One API scenario, stored as one .aether file. |
| Node | One step in a flow: a request, a gRPC call, a WebSocket exchange, an assertion, a condition, a loop, a parallel fan-out, a script, an AI action, or a subflow. |
| Workspace | The folder you open in Bandura. All files live and stay there. |
| Capture | Saving a value from a response (like a token) into a variable for later nodes. |
| Environment | A named set of variables (staging, production, …) defined in bandura.json. |
Where to go next
Open a folder (Open a workspace), then build and run something real in about five minutes (Your first flow). Already have a Postman collection? Import it instead of retyping it. For the full list of steps a flow can contain, read the node reference.