Skip to main content

Deterministic tests for AI agents: record a run once, replay it with zero LLM calls. Assert which tools an agent called, with which arguments, in which order.

Project description

flowproof

Run your AI agent once, keep the recording, and assert against it from then on. flowproof captures the run at the model boundary - every request and every tool-call decision - and serves it back on later runs, so replay makes zero LLM calls. You assert which tools were called, with which arguments, in which order, and which were not. The same engine drives web, desktop and Citrix.

Agents author, a deterministic engine executes. A flow is described in YAML with natural-language steps, recorded once against the live app, and replayed deterministically in CI with zero LLM calls. Built agent-native: every operation returns structured results a program can reason over, and agents can drive record/run/get_trace/heal over MCP (pip install flowproof[mcp], run flowproof-mcp).

# calc.flow.yaml
name: Add two numbers
app: calc
steps:
  - Type 5
  - Press plus
  - Type 3
  - Press equals
  - assert: display shows 8
from flowproof import Flow

flow = Flow("calc.flow.yaml")
flow.record()            # performs the flow live, writes the trace
result = flow.run()      # deterministic replay -> RunResult
assert result.passed

Or from the shell: flowproof record calc.flow.yaml, then flowproof run calc.flow.yaml (add --json for the structured report).

The wheel bundles the Rust engine; no separate install. Targets: web (headless Chromium, any OS), Windows desktop via UI Automation, sap (SAP GUI Scripting), vision (pixels-only for Citrix/RDP), and api (no UI — HTTP/SQL assertion flows, any OS).

Status: early, in active development (v0.2). Record→replay, model-grounded authoring, healing with reviewable diffs, suites, run recordings, and the MCP server all work and are tested in CI.

Docs and source: github.com/automators-com/flowproof

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flowproof-0.8.0.tar.gz (560.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

flowproof-0.8.0-cp39-abi3-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.9+Windows x86-64

flowproof-0.8.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.0 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

flowproof-0.8.0-cp39-abi3-macosx_11_0_arm64.whl (7.3 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

File details

Details for the file flowproof-0.8.0.tar.gz.

File metadata

  • Download URL: flowproof-0.8.0.tar.gz
  • Upload date:
  • Size: 560.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for flowproof-0.8.0.tar.gz
Algorithm Hash digest
SHA256 8fce27b38d4c82b26b24e6621e790ca17d142db6dc42ea85f651457045c88bfc
MD5 002b2ca187874819c02f397d695dae5d
BLAKE2b-256 ee2550f384718a56361af56e00630c4f97e4342b716081827abfece5bff2487c

See more details on using hashes here.

Provenance

The following attestation bundles were made for flowproof-0.8.0.tar.gz:

Publisher: publish.yml on automators-com/flowproof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file flowproof-0.8.0-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: flowproof-0.8.0-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 9.3 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for flowproof-0.8.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ef415e4319881915a3151e27b567d345928fbec92dadbcaaa35cb5ca8c14ebe6
MD5 3683339d86e14229b207b47e394bcf43
BLAKE2b-256 732b48dd415425c5b7a322f5b55aa97d160f64c2fa0d8a515d84711040059eb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for flowproof-0.8.0-cp39-abi3-win_amd64.whl:

Publisher: publish.yml on automators-com/flowproof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file flowproof-0.8.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for flowproof-0.8.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d4fa08231788a3cb995c353264876c1b528b57df4297f352f057b9ffb5121af
MD5 e2d4879e9b48d6c8901fad701ae1fc4e
BLAKE2b-256 a41bb17a21a2a850f16240c32bcc06aebdf3d95e0c22c451ceceec059eee7fde

See more details on using hashes here.

Provenance

The following attestation bundles were made for flowproof-0.8.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on automators-com/flowproof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file flowproof-0.8.0-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for flowproof-0.8.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 17a0de13be93ff381c0d90e68f23ac3368ffb6c5a86819b5a1d4f65558fb6bcf
MD5 f05fa71be3e81ad7e72b0115d6eaeba1
BLAKE2b-256 fdf492cdaead35ff15c2505c3d6f9525825d8bd71f0c2506c002bd596f171950

See more details on using hashes here.

Provenance

The following attestation bundles were made for flowproof-0.8.0-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: publish.yml on automators-com/flowproof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page