Octov0.4.2
Getting Started

Editor Quickstart

Run the visual editor from Docker and execute a flow from the UI.

The standalone editor is a published Docker image that bundles the visual flow editor and the octo runtime. You get a browser-based canvas for designing flows and a Run button that executes them in the container — no build, no database, no account.

Start the container

docker run -p 3000:3000 -v "$PWD:/work" juancavallotti/octo

The volume mount is the important part: the editor reads and writes flow YAML as plain *.yaml files under /work, so -v "$PWD:/work" makes your current directory the flow store. Your flows live on your disk, in your directory — stop the container and the files are still there, ready for octo run or a git commit. Mount an empty directory to start fresh, or the cloned repo to browse its samples/.

Open the editor

Go to http://localhost:3000. The file menu in the header lists every YAML file in the mounted directory. Open one, or create a new flow — the canvas shows the flow's sources and blocks, the palette on the left holds the available blocks, and selecting a block edits its settings.

The hello-world sample open in the visual editor

Save and run

Save writes the flow back as a .yaml file in the mounted directory. Hit Run and the bundled octo binary starts the flow inside the container with hot reload — edit, save, and the running flow picks up the change. Logs from the run stream into the editor so you can watch messages move through the flow.

If your flow serves HTTP, the editor proxies it for you: a test URL appears in the console, so you don't need to publish extra ports. (Publishing a port, for example -p 8080:8080, is only needed when you run octo run yourself inside the container.)

If a flow declares environment variables, the editor's Dev .env panel edits their values. They are stored in a shared .env.dev file next to your flows, and runs read them from there.

The image sets OCTO_FS_DIR=/work, which is why the mount target matters; you only need other environment variables when you go beyond the defaults. It also exposes an MCP server at http://localhost:3000/mcp so an AI assistant can draft, validate, and run flows against the same files — see MCP authoring.

For the full tour of the editor — how it works, running flows, and configuration — see the Standalone Editor section.

On this page