crewai-flowviz
Configurable static and interactive diagrams for CrewAI Flows.
It extracts a CrewAI Flow into a stable graph model, then renders SVG/PNG/JSON/DOT from that model. It also includes a local studio for trying themes, orientation, spacing, and dimensions without changing code.
Installation
For now, use Python 3.10-3.13. CrewAI's dependency stack currently fails under Python 3.14 in local uv --with crewai runs.
For a CrewAI project, install it as a dev dependency:
uv add --dev crewai-flowviz
Then run it inside that project environment:
uv run crewai-flowviz studio package.module:MyFlow
uv run crewai-flowviz render package.module:MyFlow --out artifacts/flow.svg
uv run crewai-flowviz render package.module:MyFlow --out artifacts/flow.png --transparent
For a one-off run without adding it to the project:
uvx --from crewai-flowviz --with-editable . crewai-flowviz studio package.module:MyFlow
For an unpackaged src/ layout:
uvx --from crewai-flowviz --with crewai crewai-flowviz render \
package.module:MyFlow \
--pythonpath src \
--out artifacts/flow.svg
Local Development
Run the included example:
PYTHONPATH=src:examples uv run --with crewai python -m crewai_flowviz.cli studio \
branching_flow:BranchingSupportFlow
CLI
crewai-flowviz render package.module:MyFlow --out flow.svg
crewai-flowviz render package.module:MyFlow --out flow.png --width 1800 --theme slate
crewai-flowviz render package.module:MyFlow --out flow.png --transparent
crewai-flowviz render package.module:MyFlow --out flow.svg --direction horizontal --height 900
crewai-flowviz studio package.module:MyFlow
PNG export is available from both the CLI and the studio. Use --transparent
or turn off "Export background color" in the studio to leave the SVG/PNG
background transparent.
Configuration
JSON and TOML config files can contain [render] values and [theme] overrides. CLI flags override config file values.
[render]
theme = "mint"
direction = "vertical"
width = 1600
node_width = 300
rank_gap = 140
node_gap = 70
max_rank_nodes_per_row = 3
title = "Support Flow"
show_source_refs = true
export_background = false
[theme]
edge_back = "#e11d48"
Built-in themes: crew, slate, mono, mint.
Design Notes
- Uses CrewAI's
build_flow_structure()when available. - Falls back to private Flow metadata for older CrewAI versions.
- Treats retry router paths as back edges, so forward execution remains readable.
- Does not require Graphviz.
- Static SVG is the canonical vector renderer. PNG is rendered natively with Pillow.
Publishing
The package name is crewai-flowviz.
rm -rf dist
uv build
uv publish
PyPI versions are immutable, so bump version in pyproject.toml before each release.
Metadata
Release files for crewai-flowviz 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| crewai_flowviz-0.1.2.tar.gz | 216.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| crewai_flowviz-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 249.0 kB
Release files / crewai_flowviz-0.1.2.tar.gz
| Download URL | crewai_flowviz-0.1.2.tar.gz |
|---|---|
| Size | 216.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6a1b7d9fd79e570e1b17cbd4c31290924739b42ef8c2d7bbe5e3600131224568
|
|
BLAKE2b-256 checksum How to use checksums |
e2a9602b0895ea10b627a27aaa2278273bf711d5849e05373552a99c125ae969
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.4
|
Release files / crewai_flowviz-0.1.2-py3-none-any.whl
| Download URL | crewai_flowviz-0.1.2-py3-none-any.whl |
|---|---|
| Size | 32.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a1b33ed1a9241100ce521007dc22332fbf4f7f07764ad30e63f316120210a763
|
|
BLAKE2b-256 checksum How to use checksums |
dc2dfc74858f920766456520f471c1482217f86b4de5e67d6c92da52a4c673cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.4
|
Security for crewai-flowviz 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.