Robotic Process Automation Studio
Herunterladen · Schnellstart · Dokumentation · Bibliotheken · Roadmap · Beitragen
RPAForge ist ein modernes, quelloffenes Robotic Process Automation-Studio. Entwerfen Sie Automatisierungs-Workflows visuell, debuggen Sie sie Schritt für Schritt und führen Sie sie mit einer produktionsreifen Python-Engine aus — ohne Vendor-Lock-in, ohne Lizenzgebühren.
from rpaforge import StudioEngine
from rpaforge_libraries.DesktopUI import DesktopUI
engine = StudioEngine()
engine.executor.register_library("DesktopUI", DesktopUI())
builder = engine.create_process("Notepad Automation")
builder.add_task("Open and Type", [
("DesktopUI.Open Application", {"executable": "notepad.exe"}),
("DesktopUI.Wait For Window", {"title": "Notepad", "timeout": "10s"}),
("DesktopUI.Input Text", {"text": "Hello from RPAForge!"}),
("DesktopUI.Close Window", {}),
])
result = engine.run(builder.build())
print(f"Status: {result.status}")Möchten Sie RPAForge einfach nur nutzen? Laden Sie den neuesten Windows-Installer von der Releases-Seite herunter. Der Installer enthält die gebündelte Python-Engine, sodass keine separate Python-Installation erforderlich ist — installieren, starten und mit dem Erstellen von Automatisierungen beginnen.
Um aus dem Quellcode zu bauen, siehe Schnellstart unten.
| Visueller Designer | Drag-and-Drop-Workflow-Builder mit React Flow — Knoten, Kanten, Unterdiagramme, Zoom/Pan und Mini-Map |
| KI-Diagrammgenerierung | Prozess in natürlicher Sprache beschreiben und einen Diagrammentwurf erhalten — OpenAI-kompatible oder Anthropic-Modelle, validiert und als Übernehmen/Verwerfen-Vorschau angezeigt, bevor er die Canvas berührt |
| Integrierter Debugger | Haltepunkte, Einzelschritte (Überspringen/Betreten/Verlassen), Variableninspektor, Call Stacks, bedingte Stopps |
| 14 RPA-Bibliotheken | 120+ vorgefertigte Aktivitäten für Desktop, Web, Excel, DataFrames, Datenbank, OCR, HTTP, Anmeldedaten und mehr |
| Python-Bridge | Asyncio JSON-RPC-Server — Electron kommuniziert mit Python über IPC mit vollständiger Typsicherheit |
| Code-Generierung | Diagramm → Python, mit Topologie-Validierung vor jedem Lauf |
| Security First | SQL-Injection, Path Traversal, unsicherer getattr und IPC-Payload-Validierung eingebaut (v0.3.1) |
| Persistenter Speicher | IndexedDB-Autospeichern für Prozesse, Variablen und Ausführungsverlauf |
| Mehrsprachigkeit | UI und Bibliotheks-Logging auf Englisch (en), Russisch (ru), Deutsch (de), Spanisch (es), Chinesisch (zh) — helfen Sie beim Übersetzen |
| Plattformübergreifend | Windows, macOS, Linux — eine Codebasis |
┌──────────────────────────────────────────────────────────────────┐
│ RPAForge Studio (Electron 42 + React 19 + TailwindCSS 4) │
│ │
│ Designer │ Debugger │ Console │ Recorder │
│ React Flow · Monaco Editor · Zustand · Vite 8 │
└────────────────────────────┬─────────────────────────────────────┘
│ JSON-RPC over IPC / Stdio
┌────────────────────────────┴─────────────────────────────────────┐
│ Python Bridge Server (asyncio JSON-RPC) │
│ │
│ StudioEngine · ProcessRunner · Debugger · Recorder │
│ CodeGenerator · Topology Validator │
└────────────────────────────┬─────────────────────────────────────┘
│
┌────────────────────────────┴─────────────────────────────────────┐
│ RPA Libraries (14 modules · 120+ activities) │
│ │
│ DesktopUI WebUI Excel Database OCR Credentials │
│ File HTTP DateTime String Flow Variables Spy … │
└──────────────────────────────────────────────────────────────────┘
rpaforge/
├── packages/
│ ├── core/ # Python-Engine — runner, debugger, bridge, codegen
│ ├── libraries/ # RPA-Bibliotheksmodule
│ ├── studio/ # Electron + React Desktop-Anwendung
│ └── orchestrator/ # Control Tower (geplant)
├── docs/ # MKDocs-Dokumentation
├── .github/ # CI/CD-Workflows (ci, release, codeql, docs)
└── tools/ # Release-Skripte
| Werkzeug | Version |
|---|---|
| Python | 3.10 – 3.13 |
| Node.js | 20+ |
| pnpm | 9+ (oder npm 9+) |
| Git | beliebig |
| VS Build Tools | Nur Windows, für native Module |
# 1. Klonen
git clone https://github.com/chelslava/rpaforge.git
cd rpaforge
# 2. Python-Pakete (Entwicklungsmodus)
pip install -r requirements-dev.txt
pre-commit install
pip install -e packages/core
pip install -e packages/libraries
# 3. Studio UI
cd packages/studio
pnpm install # oder: npm ci --include=optional
# 4. Überprüfung
cd ../..
pytest packages/core/tests -v
cd packages/studio && pnpm test && cd ../..cd packages/studio
pnpm dev # Vite dev server + Electron hot-reloadLinux (Ubuntu/Debian)
sudo apt-get install -y libnss3 libnspr4 libatk-bridge2.0-0 libdrm2 libxkbcommon0 libgbm1macOS
xcode-select --installOCR-Unterstützung (alle Plattformen)
pip install -e "packages/libraries[ocr]"
# Windows: https://github.com/UB-Mannheim/tesseract/wiki
# Linux: sudo apt-get install tesseract-ocr
# macOS: brew install tesseractWeb-Automatisierung (Playwright)
pip install -e "packages/libraries[web]"
playwright install # Laden Sie Browser-Binärdateien herunter| Bibliothek | Aktivitäten | Beschreibung | Zusätzliche Abhängigkeiten |
|---|---|---|---|
| DesktopUI | 20+ | Windows-UI-Automatisierung — Win32, WPF und Java | pywinauto, pillow |
| WebUI | 15+ | Browser-Automatisierung (Chrome, Firefox und Safari) | playwright |
| Excel | 8+ | XLSX-Tabellenkalkulationen lesen/schreiben | openpyxl |
| DataFrames | 28+ | Tabellendatenoperationen — filtern, sortieren, verbinden, aggregieren | polars |
| Database | 6+ | SQL-Abfragen über SQLAlchemy ORM | sqlalchemy |
| OCR | 5+ | Texterkennung — Tesseract + EasyOCR | pytesseract, easyocr |
| Credentials | 4+ | Verschlüsselter OS-Anmeldedatenspeicher | cryptography, keyring |
| File | 8+ | Datei- und Ordneroperationen | — |
| HTTP | 5+ | REST API-Anfragen | requests |
| DateTime | 6+ | Datums-/Zeitprogramme | — |
| String | 7+ | Stringbearbeitung | — |
| Variables | 4+ | Variablenverwaltung und Scoping | — |
| Flow | 4+ | Kontrollfluss — if, while, for | — |
| Spy | 3+ | Live-UI-Element-Inspektions-Overlay | uiautomation, pynput |
Installieren Sie nur das, was Sie benötigen:
pip install -e "packages/libraries[desktop]" # DesktopUI
pip install -e "packages/libraries[web]" # WebUI
pip install -e "packages/libraries[dataframes]" # DataFrames (polars)
pip install -e "packages/libraries[all]" # Allesmake test # Alle Python-Tests ausführen
make lint # ruff + mypy
make format # ruff format
make docs # MKDocs bauen
make docs-serve # Docs lokal bereitstellen
make studio-dev # Studio hot-reload
cd packages/studio
pnpm test # Vitest
pnpm build # Produktions-BuildBackend (Python)
asyncioJSON-RPC-BridgeRuffzum Linting und Formatierenpytest+pytest-asynciozum Testenmypyzur Typprüfung
Frontend (TypeScript)
- React 19 + Vite 8
- React Flow 11 — visueller Diagramm-Editor
- Zustand 5 — Zustandsverwaltung
- Monaco Editor — eingebetteter Code-Editor
- TailwindCSS 4 — Utility-Styling
- Electron 42 — Desktop-Verpackung
| Paket | Beschreibung | Version | Status |
|---|---|---|---|
rpaforge-core |
Engine, Debugger, JSON-RPC-Bridge | v0.3.5 | ✅ Stabil |
rpaforge-libraries |
14 RPA-Bibliotheksmodule | v0.3.5 | ✅ Stabil |
rpaforge-studio |
Electron + React Desktop-UI | v0.3.5 | 🔄 Alpha |
rpaforge-orchestrator |
Control Tower | — | 🔜 Geplant |
- ✅ SQL-Injection, Path Traversal, unsicherer
getattrMitigationen - ✅ IPC-Payload-Validierung mit strenger Schema-Erzwingung
- ✅ IndexedDB-Infrastruktur — Autospeichern, Variablen, Verlauf
- ✅ Ruff-basierte Python-Inline-Validierung mit Fehlerhervorhebung
- ✅ Persistentes Logging mit Dateirotation
- ✅ Freeze-Modus für Spy-Overlay
- ✅ Serialisierte Lifecycle-Sperre für
_handle_run_diagram— eliminiert Race Conditions unter gleichzeitiger Ausführung - ✅ Sichere
ruff-Ausführungsauflösung übershutil.which() - ✅ Abhängigkeitssicherheitsaudit — 14 Dependabot-Warnungen über npm overrides behoben
- ✅ DataFrames-Bibliothek — 28 Tabellendatenaktivitäten mit Polars
- ✅ DataFrame-Variablentyp — First-Class
DataFrameTyp im visuellen Designer - ✅ Visuelle Tabellenvorschau im Debugger — Inspizieren Sie DataFrame-Inhalte inline bei Haltepunkt
- ✅ i18n-Fixes — alle UI-Strings auf Englisch und Russisch übersetzt
- ✅ Onboarding-Tour — geführte Willkommenstour mit Ladebildschirm und Fortschrittsanzeige
- ✅ App-Symbol und Ladebildschirm — ausgefeilter Startvorgang mit Initialisierungsablauf
- ✅ Error Boundary — verbesserte Fehlerbehandlung für Komponentenfehler
- ✅ i18n: Onboarding-Tour vollständig in alle unterstützten Sprachen übersetzt (en, ru, de, es, zh)
- ✅ Chinesisch (zh) — vollständige UI-Übersetzung hinzugefügt
- ✅ Gebündelte Lokalisierungen für Offline- und
file://-Protokoll-Unterstützung
- ✅ Eigenständiger Windows-Installer — die Python-Engine wird mit PyInstaller eingefroren und gebündelt, sodass Endbenutzer keine separate Python-Installation benötigen
- ✅ Gebündeltes Playwright Chromium und Tesseract OCR für Web-Automatisierung und OCR ab Werk
- ✅ Behebt „Aktivitäten konnten nicht geladen werden" in installierten Builds — die Bridge startet die gebündelte Engine mit großzügigem Kaltstart-Fenster
- ✅ Smart Activity Recorder — Erfassen und Wiedergeben von Benutzeraktionen (UI implementiert)
- ✅ Selector-Extraktion und selbstheilende Locators (SelectorBuilder-Panel implementiert)
- ✅ Variable Explorer Panel-Verbesserungen (Scope-Gruppierung und Typ-Badges implementiert)
- ✅ Ausführungsverlauf-Browser (Panel und Zustand-Store implementiert)
- ✅ Sub-Diagramm Parameter Mapping UI (ParameterMappingDialog implementiert)
- ✅ Plugin-System und Library Development SDK (Entry-Point-Discovery, Decorator-API, Beispielpaket + Leitfaden implementiert; Scaffolding-CLI und Marketplace-Vertrieb noch geplant)
- ✅ Version Control Integration (Git-aware projects) (Source-Control-Panel — Status/Staging/Commit/Push/Pull/Diff/Verlauf, Remote-URL-Konfiguration — implementiert)
- Projektvorlagen-Marktplatz
- Orchestrator — Control Tower für Multi-Machine Execution
- Scheduler und Trigger Engine
- Advanced Monitoring und Alerting
- Enterprise Authentication (LDAP/SSO)
| Ressource | Beschreibung |
|---|---|
| Erste Schritte | Installation und Systemsetup |
| Schnellstart | Erstellen Sie Ihre erste Automatisierung |
| Entwicklerhandbuch | Architektur, Muster, Code-Konventionen |
| Beitragen | Wie man Code oder Docs beiträgt |
| Übersetzungsanleitung | Fügen Sie Übersetzungen in neue Sprachen hinzu |
| Änderungsprotokoll | Versionshinweise |
| Roadmap | Detaillierte Feature-Roadmap |
Beiträge sind willkommen — Fehlerberichte, Feature-Anfragen, Dokumentation und Code.
# Fork → clone → branch
git checkout -b feat/my-feature
# Machen Sie Änderungen, dann
make test && make lint
# Commit (Conventional Commits)
git commit -m "feat(libraries): add PDF extraction keyword"
# Öffnen Sie einen PR gegen mainSiehe CONTRIBUTING.md für den vollständigen Workflow, Codierungsstandards und PR-Checkliste.
- Visueller Designer mit React Flow und Electron
- Desktop-Automatisierung via pywinauto
- Web-Automatisierung via Playwright
- Inspiriert von UiPath, Blue Prism und Automation Anywhere
GitHub Discussions · Issue Tracker
Apache License 2.0 — Gemacht mit Sorgfalt von der RPAForge-Gemeinschaft
