AbstractFlow is a web editor. It needs a reachable AbstractGateway because Gateway owns workflow storage, execution, auth, providers, artifacts, and user/runtime routing.
export ABSTRACTGATEWAY_USER_AUTH=1
export ABSTRACTGATEWAY_DATA_DIR="$PWD/runtime/gateway"
abstractgateway serve --host 127.0.0.1 --port 8080Gateway creates the default admin account on first start. Read the browser-login token:
cat "$ABSTRACTGATEWAY_DATA_DIR/auth/bootstrap-admin-token"npx @abstractframework/flow --gateway-url http://127.0.0.1:8080Open http://127.0.0.1:3003/.
Sign in with:
- Gateway URL:
http://127.0.0.1:8080 - User:
admin - Token: the
agw_...token from Gateway
Use the canvas to create VisualFlow graphs. The editor sends VisualFlow JSON to Gateway, publishes workflows through Gateway, starts Gateway runs, and renders Gateway ledger/artifact streams.
Provider and model selectors come from Gateway discovery. Configure providers, endpoint profiles, API keys, and default models in the Gateway console.
Agent and LLM Call nodes expose MTP depth in Properties: inherit, Off, or a depth
advertised by that provider/model's execution capability. It is set per node; the Run
dialog asks only for the flow's own inputs. A connected speculation pin wins over the node
setting, then the execution host's Core default. Inheritance sends no override; Off sends
false. Explicit depths require native MTP and fail honestly if the host cannot honor them.
Discovery is read-only: these controls do not download heads or load models. Unknown support, head readiness, reload requirements, and saved unavailable choices are shown explicitly. For graphs with multiple model routes, choose a depth on individual nodes; the run picker does not invent a shared supported-depth list. Fresh Core configurations default to depth 2 for compatible models only; Flow itself does not impose that default.
A local checkout needs Node.js 20+ and a sibling AbstractUIC checkout: the editor builds the monitor widgets from ../abstractuic. @abstractframework/ui-kit installs from npm with npm install.
git clone https://github.com/lpalbou/AbstractUIC.git abstractuic
git clone https://github.com/lpalbou/AbstractFlow.git abstractflow
cd abstractflow
npm install
npm run devThe Vite dev server uses the same server-side Gateway session as the built server (@abstractframework/app-server). Its Gateway is ABSTRACTFLOW_GATEWAY_URL / ABSTRACTGATEWAY_URL when set, else the Gateway installed on this computer, else http://127.0.0.1:8080.
npm run build
npm start -- --gateway-url http://127.0.0.1:8080The server in bin/cli.js serves dist/ on 127.0.0.1:3003 and forwards API and SSE calls to the Gateway with the browser's session. When AbstractGateway manages the editor, open it from the Gateway console at /apps/flow/ instead. See CLI.
- Web editor: the editor's features, including flow interfaces, automation defaults, and the About dialog.
- VisualFlow JSON: the workflow document format.
- Architecture: how the editor, the Flow server, and Gateway fit together.
- Troubleshooting: sign-in, proxy, and build problems.
- README: project overview.