Skip to main content

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)

Source distribution for crewai-flowviz 0.1.2
File Size Uploaded Provenance
crewai_flowviz-0.1.2.tar.gz 216.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for crewai-flowviz 0.1.2
File Interpreter ABI Platform
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page