The visual agent builder, ready for production.
Bring your flows over.
Drag-and-drop agents with real governance and lean context. Open source, Apache-2.0.
Import Flowise JSON opens a chatflow or agentflow on the canvas, node for node. You pick your credentials again, and everything that doesn't carry over is listed below.
- Governance. Every edit waits in a draft while Live keeps serving. Before you publish, replay recent real questions on Live and the draft, side by side. Gate Publish on a test set and roll Live back in one step. Roles, an audit log, and API keys that only run the teams you tick.
- Lean context. Each specialist gets a self-contained task, not the whole chat, and the analyst sees only the tables you tick. Fewer tokens in our internal benchmarks, and every run shows what it used.
- Build agent teams. Describe a team and Build with AI puts a first version on the canvas, with every part and connection checked. Call it from your app with a scoped API key, or put it on a schedule.
npx cuttlely startor
git clone https://github.com/cuttlely/cuttlely && cd cuttlely && docker compose up -dThen open http://localhost:43117, go to Chatflows, and select Import → Import Flowise JSON. Pick a credential on each card and select Save.
Two ways in
Pick your path
- One flow at a timeOn Chatflows, select Import Flowise JSON. The wizard checks one chatflow or agentflow export and opens it on the canvas that fits it.
- Just the APIA chatflow still answers on
POST /api/v1/prediction/:idwith the same request body. Point the call at Cuttlely and use the id it assigns.
Same body, new host
curl -s http://localhost:3000/api/v1/prediction/cf_bakery_helper_7a2c -H "Content-Type: application/json" -d '{"question":"How much are two croissants?"}'curl -s http://localhost:43117/api/v1/prediction/cf_bakery_helper_7a2c -H "Content-Type: application/json" -d '{"question":"How much are two croissants?"}'cf_bakery_helper_7a2c is a made-up id. After import, use the id Cuttlely shows on the chatflow. The JSON body does not change.
What carries over
- About 300 nodes, with their settings.
- Connections between the nodes that open.
- Chatflows and agentflows, each on their own canvas.
- A chatflow's prediction API body.
- Custom tools, via Tools → Load.
FLOWISE_*setting names.CUTTLELY_*aliases win when both are set.
On purpose
API keys, passwords and saved credential ids are removed from the file. Pick a credential on each card, then Save.
Dropped, with a note
The file still opens. The wizard drops Arize, LangFuse, LangSmith, LangWatch, Lunary, Opik, Phoenix, and AssemblyAI configuration cards. Set up tracing in Analytics (Chatflow Configuration → Analytics) and transcription in Speech to Text.
Not yet
- Old embed scripts. Copy the new snippet from the chatflow's Embed tab.
- Whole-workspace exports. Import one flow at a time.
- LlamaIndex nodes.
- Credential matching in the wizard. Select credentials on the canvas after it opens.
- Saved canvas zoom.
Before you move
- Back up the data folder and the encryption key. Keep a copy you can restore if the first import is not what you expected.
- Export the flows you care about as JSON, one chatflow or agentflow per file.
- List the credentials those flows use, so you can recreate them under Credentials.
- Note any website embeds, because the old snippet does not carry over.
- Try one flow on a laptop first, then move the rest.
What you get after
Nothing is saved until you select Save. The first Save publishes the flow; the next canvas save is a draft. After that, your flow gets governance and lean context, and you can build agent teams around it:
Security advisories we checked
We read the code at v1.3.0 against the six advisories on Flowise 3.1.4 that list no patched release:
- Five don't apply. The chat-message (GHSA-ppmg-4cx6-95hh), upsert-history (GHSA-jvx3-mjpw-r4gh) and credential (GHSA-27w2-26m5-x82c) routes check permissions and team. The BullMQ dashboard isn't mounted (GHSA-rpcc-gw54-mfgx). There's no multi-provider SSO (GHSA-cffm-583c-vffr).
- The sixth, invites activated by an email match (GHSA-vf3j-89vf-r697), is fixed in 1.3.0. A pending invite needs its one-time link. One caveat: someone added with Add User before 1.3.0 was stored as active and can still join by email match, so remove and re-invite them to require the link.
We also checked an older file-write advisory, GHSA-8vvx-qvq9-5948, for Flowise 2.2.7 and earlier. The storage helpers it names sanitize the file name in every storage provider.
This is a code read, not a pen test. If you find something, please report it privately through Security.
Send me a flow that breaks.
Open a new issue and attach a made-up export. Remove API keys, passwords and saved credential ids first.
Not affiliated with FlowiseAI. Flowise names and trademarks remain with their owners.