smithy-designer
Visual flow editor for the smithy RPA engine.
Drag nodes onto the canvas, connect them, configure tool selectors, and debug the flow step by step — in the browser, against the local smithy engine.
Features
- Visual canvas — nodes for control flow (start/end/if/loop), variables
(
setnode), and every registered smithy tool; free-form graph editing with minimap and zoom - Flowchart-standard shapes — diamonds for decisions/loops, stadium
terminators, card-shaped tool nodes, red
erroutput for error handling - Step debugger — run the flow against real Windows UI: pause on nodes or breakpoints (right-click a node), step, inspect and edit variables from a REPL terminal
- SheRPA-style selectors — selector fields rendered as one XML-like string
(
<Element name="OK" control_type="Button"/>), editable inline or through an attribute modal; copy/paste selectors between blocks - Typed variables —
setnode withauto / string / number / bool / jsonvalue types - Labels — double-click any block to annotate it; labels persist in the flow file
Install
pip install smithy-designer
Requires Python 3.11+. For Windows UI-automation tools install the engine with
its windows extra: pip install "smithy-engine[windows]".
Quick start
# build the UI once (Node 18+):
cd designer-web && npm install && npm run build && cd ..
# run the designer (opens the browser):
smithy-designer flow.json
# or:
python -m smithy_designer flow.json
The server binds to 127.0.0.1:8756 and serves the prebuilt bundle from
designer-web/dist (or src/smithy_designer/static in installed packages).
Flow file
The flow document format is versioned — see the flow format contract in the smithy repo. Current version: v2.
Development
# backend
pip install -e ".[dev,tui]"
# frontend (vite dev server proxies /api to :8756)
cd designer-web && npm install && npm run dev
# in another terminal
smithy-designer flow.json
License
MIT — see LICENSE.
Metadata
Release files for smithy-designer 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| smithy_designer-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / smithy_designer-0.1.0-py3-none-any.whl
| Download URL | smithy_designer-0.1.0-py3-none-any.whl |
|---|---|
| Size | 172.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2deefb3ac317c0daf6106387f0ebe61cfe66a0cc4a99da93c8dcf800dc1ed72b
|
|
BLAKE2b-256 checksum How to use checksums |
a19dad7c655df709373dbae6734167466eb5eb4542005bd18328c15d274f5aa0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.
Transparency log