Workflows where the AI drafts and you decide.
FlowPortal is a local portal where every workflow is a card. Click Run: Python does the arithmetic, an AI agent reads and writes, and the workflow stops for your approval before anything goes out.
- Free and open source (MIT)
- Runs on your machine
- Windows and Linux
- Works with any OpenAI-compatible model
Prepare the steering committee
A simplified version of the bundled example. Press Run, then decide.
- ·Compute the indicatorsSchedule, budget and workload figures, calculated exactly.Python
- ·Pull risks and actions from the notesThe agent reads the free-text meeting notes and drafts the report.AI agent
- ·Project lead approves the reportNothing is published until a person says yes.Human
- ·Save the reportWritten to a file, only after approval.File
Your decision is expected
Publish the steering committee report?
Ready. Four steps, one of them is yours.
This is an illustration running in your browser. No AI call is made here.
Python calculates. The AI drafts. A person decides.
Chat assistants are good at writing and unreliable at arithmetic, and they will happily act without asking. A FlowPortal workflow gives each job to the right worker and puts a person at the points that matter.
Python
Figures, files, HTTP calls and shell commands. Deterministic, the same result every run. Scripts run without Python installed when you use the compiled app.
- python
- shell
- transform
- file_read
- file_write
- http_get
- http_post
The AI agent
Reading messy text, summarising, drafting, fixing code. The step is handed to CSAgent, which can use files, git, the web and any MCP server.
- agent
- mcp_call
- mcp_tools
You
Approve or reject before something is published. Type a value, or dictate it by voice, and correct the transcript before the workflow continues.
- human_approval
- user_input
Every workflow is a card you can read.
The rail on each card shows its steps in order, coloured by who does the work. A workflow is a plain YAML file, so it can be reviewed, versioned and shared like code.
The interface and the documentation are in French for now.
What you get
Describe a workflow, get the YAML
Type or dictate what you want. The assistant works on a copy, the portal checks the result, and you review a diff before anything is applied.
Safe to edit
Every change is validated before it is written. The previous version is kept as a backup, and deleted workflows go to a recycle folder.
Run history and a Stop button
Each run is recorded, with secrets masked. Stop interrupts a script, a command or an agent step right away.
27 example workflows
Steering committee report, Linux health check, security watch, open data on data.gouv.fr, CV screening, meeting digest and more.
MCP in both directions
A workflow can call any MCP server. And FlowPortal is itself an MCP server, so an assistant can list, check and launch your workflows.
Built for the keyboard
Full keyboard navigation, WCAG AA contrast, visible focus, and state shown by a label as well as a colour.
Ask your chat to run it.
With FlowPortal --mcp, an assistant such as CSAgent can list your workflows, check one and launch it, then report each step back to you.
Guardrails: only the workflows folder, one run at a time, and a workflow with a human approval or a typed input is never launched by the assistant. You open it in the portal and decide yourself.
Run it in five minutes.
You need Python 3.10 or newer, and an API key for any OpenAI-compatible model, local models included. Steps that call no AI run without a key.
# 1. get it git clone https://github.com/artydev/FlowPortal cd FlowPortal pip install -r requirements.txt # 2. start CSAgent and FlowPortal together (Linux shown) export ALBERT_API_KEY=your-key ./start_agent.sh # or only the portal, without AI steps python3 app.py
On Windows use set instead of export and start_agent.bat. A compiled FlowPortal.exe needs no Python at all. The portal opens in your browser.
What to know before you try it.
- The model's output varies. Python and file steps give the same result every run. Agent steps do not, so keep a human step before anything that matters and read the diff the assistant proposes.
- Workflows run code on your machine. Shell and Python steps are not filtered. Only run workflows you trust, and be careful with the MCP mode.
- One run at a time. The portal runs a single workflow, and the assistant cannot run at the same moment.
- French first. The interface and the documentation are in French. The step names and the YAML keywords are English.