iauto-desktop is a desktop application for iauto
Project description
iauto
iauto
is a Python library for intelligent automation.
Key Features
- Workflow Orchestration: Defining workflow using YAML, for collaboration and version control
- Playwright Integration: Automate web workflows with Playwright
- Appium Integration: Automate web, iOS, Android, Windows, and macOS workflows with Appium
- LLMs Integration: Integrate AI into automated workflows, support OpenAI API and self-hosting LLMs
Roadmap
- pyautogui Integration: Cross-platform keyboard and mouse control
- OCR: Support ORC-based screen element recognition
- OpenAI Assistants API: Support Orchestrating OpenAI Assistants API
Quick Start
Installation
Python version requirement: >=3.8
iauto
can be installed from PyPI using pip
. It is recommended to create a new virtual environment before installation to avoid conflicts.
pip install -U iauto
To enable cuBLAS acceleration on NVIDIA GPU:
CMAKE_ARGS="-DGGML_CUBLAS=ON" pip install -U iauto
To enable Metal on Apple silicon devices:
CMAKE_ARGS="-DGGML_METAL=ON" pip install -U iauto
Playbook
Automate your workflow by writing a playbook.
Example: Web automation
browser.yaml
playbook:
description: Open browser and goto https://bing.com
actions:
- browser.open:
args:
exec: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
result: $browser
- browser.goto:
args:
browser: $browser
url: https://bing.com
result: $page
- repeat:
actions:
- browser.eval:
args:
page: $page
javascript: new Date()
result: $now
- log: $now
- time.wait: 2
Run the playbook:
python -m iauto ./browser.yaml
Example: Chatbot
chatbot.yaml
:
playbook:
description: Chat to OpenAI
actions:
- llm.session:
result: $session
- repeat:
actions:
- shell.prompt:
args: "Human: "
result: $prompt
- llm.chat:
args:
session: $session
prompt: $prompt
result: $message
- shell.print: "AI: {$message}"
Set your OpenAI API key:
export OPENAI_API_KEY=sk-<YOUR_API_KEY>
Run the playbook:
python -m iauto ./chatbot.yaml
- Control Flow
- Appium Webdriver
- Playwright Browser
- OpenAI REPL Chatbot
- ChatGLM REPL Chatbot
- QWen REPL Chatbot
Contribution
We are extremely open to contributions, whether it be in the form of a new feature, improved infrastructure, or better documentation.
Development setup
- Code Style: PEP-8
- Docstring Style: Google Style
# Create python venv
python -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt
pip install -r requirements-dev.txt
# Apply autopep8, isort and flake8 as pre commit hooks
pre-commit install
Build
./build.sh
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for iauto_desktop-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 03624266cf71c4c1c6c62cc8b9a225f493ab0fbc15aed171825d9ce5548c2140 |
|
MD5 | 801047dc840b1a015c462f055127b3dc |
|
BLAKE2b-256 | 13266801083009806f53a295012328078dc648084c05c96a9e9dbb223b117502 |