Flow2Skill v0.1.0
Browser agents improvise. Flow2Skill preserves what already worked.
Flow2Skill compiles successful Playwright Python recordings into reviewable, portable browser procedures without executing the captured code during compilation.
What ships
- Strict AST compiler for a deliberately limited Playwright subset
- Normalized
flow.jsonandflow.yamlmanifests - Agent-readable
SKILL.md - Standalone Playwright/pytest regression proof
- Local Studio with a deterministic packaged demo
- Windows launcher and production-readiness doctor
- Narrated 50-second public demo and reproducible capture script
Safety contract
- Typed values and echoed sensitive text become compiler-owned
F2S_*runtime variables. - URL credentials, fragments, and credential-bearing query parameters are protected.
- Unsupported, dynamic, ambiguous, nested, or malformed operations fail closed.
- Browser mutations require review; stronger side effects require explicit approval.
- Manifest fingerprints and risk classifications are verified during loading.
- Recorded source and recorder logs are removed after completion, cancellation, failure, and stale-session recovery.
- Studio binds locally and validates Host, Origin, request token, payload type, size, and workspace containment.
Verification
- 46 local regression tests
- Independent adversarial release audit: GO
- Cross-platform CI on Ubuntu, Windows, and macOS with Python 3.10 and 3.13
- Fresh-wheel installation and
flow2skill doctor - Real Playwright-managed Chromium generated-test proof
- Wheel, source archive, tracked-file, and public-CI-log privacy scans
Install
python -m pip install flow2skill
python -m playwright install chromium
flow2skill doctor
flow2skill studioArtifact hashes
flow2skill-0.1.0-py3-none-any.whl:9ebc3aee1171cdd00be8dae0ba1fc23976cb9309ff7d24fe583b517023e3a96aflow2skill-0.1.0.tar.gz:a1fc83368ce613b9fd99034c44870d0f3aa1d787162f1d5c798b333e2306a602
Known boundary
Flow2Skill is intentionally not a general Python interpreter. It supports a strict synchronous Playwright subset and rejects anything it cannot preserve safely and faithfully.
Full documentation and demo: https://github.com/godhiraj-code/flow2skill