Skip to content

0xSG/DesktopAutoPilotX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

24 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

DesktopAutoPilotX

๐Ÿค– Open-source AI automation for everyone, powered by local LLMs Ask DeepWiki GitHub stars License: MIT Python 3.11+ Poetry PRs Welcome Code style: black Ruff Discord Twitter Follow

Installation โ€ข Documentation โ€ข Examples โ€ข Contributing โ€ข Community

๐Ÿ“ธ Screenshots

Settings Screen AI Model Configuration and Theme Settings

Task History Task History Overview

New Automation Task New Automation Task Creation Interface

๐ŸŒŸ What is DesktopAutoPilotX?

DesktopAutoPilotX is your computer's new co-pilot โ€“ a free, open-source AI automation system that sees, understands, and interacts with your desktop just like you do. No cloud services, no API keys, just pure local AI power.

โœจ Key Features

  • ๐Ÿง  True AI Vision: Powered by LLaVA and Llama 2 for intelligent screen understanding
  • ๐ŸŽฏ Context-Aware: Finds and interacts with UI elements naturally, no pixel coordinates needed
  • ๐Ÿ“Š Transparent: Real-time visualization and detailed logging of all actions
  • ๐Ÿ›ก๏ธ Secure: Runs 100% locally - your data never leaves your machine
  • ๐Ÿ”„ Self-Learning: Gets smarter with each task it handles

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.11+
  • PostgreSQL
  • Ollama with LLaVA and Llama 2 models
  • Git
  • Poetry (Python package manager)

Installation

# Clone the repo
git clone https://github.com/0xSG/DesktopAutoPilotX.git
cd DesktopAutoPilotX

# Install dependencies using Poetry
poetry install

# Activate the virtual environment
poetry shell

# Set up environment variables
cp .env.example .env
# Edit .env with your settings

# Initialize database
flask db upgrade

# Launch
python main.py

Development Setup

# Install development dependencies
poetry install --with dev,test,docs

# Install pre-commit hooks
poetry run pre-commit install

# Run tests
poetry run pytest

# Run type checking
poetry run mypy .

# Format code
poetry run black .
poetry run ruff .

Using Docker

# Build and run using Docker Compose
docker compose up -d

๐Ÿ“ฆ Project Structure

DesktopAutoPilotX/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ desktop_autopilot/
โ”‚       โ”œโ”€โ”€ core/           # Core automation engine
โ”‚       โ”œโ”€โ”€ models/         # AI model integrations
โ”‚       โ”œโ”€โ”€ vision/         # Screen analysis components
โ”‚       โ””โ”€โ”€ utils/          # Utility functions
โ”œโ”€โ”€ tests/                  # Test suite
โ”œโ”€โ”€ docs/                   # Documentation
โ”œโ”€โ”€ examples/               # Example scripts
โ”œโ”€โ”€ docker/                 # Docker configurations
โ”œโ”€โ”€ pyproject.toml         # Project dependencies and config
โ””โ”€โ”€ README.md              # You are here

๐ŸŽฎ Usage Examples

from desktop_autopilot import AutoPilot

pilot = AutoPilot()

# Example 1: Web Automation
@pilot.task
async def search_github():
    """Search for a repository on GitHub."""
    await pilot.browser.open("https://github.com")
    await pilot.keyboard.type("DesktopAutoPilotX")
    await pilot.keyboard.press("Enter")
    
# Example 2: Desktop App Automation
@pilot.task
async def process_images():
    """Batch process images in a folder."""
    await pilot.app.launch("PhotoEditor")
    await pilot.folder.select("~/Pictures/batch")
    await pilot.vision.wait_for("Process All")
    await pilot.mouse.click()

More examples in our cookbook ๐Ÿ“š

๐Ÿ› ๏ธ Configuration

AI Provider Setup

Configure your AI providers in config/providers.toml:

[ollama]
base_url = "http://localhost:11434"
models = ["llava", "llama2"]
timeout = 30

[local]
model_path = "/path/to/models"
device = "cuda"

[api]
base_url = "https://api.example.com/v1"
timeout = 10

Environment Variables

# Required
DATABASE_URL=postgresql://user:pass@localhost:5432/dbname
FLASK_SECRET_KEY=your-secret-key

# Optional
LOG_LEVEL=INFO
OLLAMA_BASE_URL=http://localhost:11434

๐Ÿ‘ฅ Community & Support

Discord Twitter Follow

๐Ÿค Contributing

We believe great software is built together! Check out our Contributing Guidelines to get started.

Development Workflow

  1. Fork the repository
  2. Create a new branch: git checkout -b feature-name
  3. Make your changes
  4. Run tests: poetry run pytest
  5. Format code: poetry run black . && poetry run ruff .
  6. Commit: git commit -m "feat: add new feature"
  7. Push: git push origin feature-name
  8. Open a Pull Request

๐Ÿ“ˆ Star History

Star History Chart

๐Ÿ“œ License

DesktopAutoPilotX is MIT licensed, as found in the LICENSE file.


Made with โค๏ธ by the DesktopAutoPilotX Community

โฌ† back to top

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published