Skip to main content
Extra — Get extra from your AI

Extra

The Open-Source Astra 6 for your Mac & PC

Your AI can see, click, type, navigate, and get real work done on macOS & Windows.

License: MIT Platform: macOS 12.3+ & Windows 10/11 Protocol: Model Context Protocol (MCP) Ecosystem: yantraOS Status: Open Source

Website • Quickstart • macOS Guide • Architecture • License



Extra in action — Live Windows desktop automation

✨ Why Extra?

Today's AI assistants can write brilliant essays and code, but they are trapped inside a chat window. When you need them to click a button, open an app, organize your files, or input data into a spreadsheet, they can only give you text instructions.

Extra gives your AI hands and eyes on Windows.

It connects Claude, Google Antigravity, Cursor, AGY, or any autonomous agent directly to your Windows desktop with high-speed screen vision, pixel-perfect clicking, and instant typing.

  • No clunky browser extensions.
  • No expensive cloud servers watching your screen.
  • 100% open source, local, and private.

💡 What You Can Ask Your AI To Do

Once Extra is running, you can talk to your AI like a real human assistant sitting at your desk:

  • 📊 Spreadsheets & Data: "Open Excel, calculate total revenue from the invoice CSVs in my Downloads folder, and create a summary chart."
  • 🗂️ Desktop & File Cleanup: "Clean up my messy desktop by moving screenshots into Pictures, PDFs into Documents, and deleting empty folders."
  • 🌐 Web Research & Data Entry: "Open Chrome, find the top 5 flights to Tokyo under $800, and copy their flight numbers and dates into Notepad."
  • ⚙️ Windows System Tasks: "Open Settings, check if any Windows updates are pending, and let me know if a restart is needed."
  • 🎵 App Control: "Launch Spotify, search for low-fi focus beats, and start playing."

⚡ Quickstart (1 Minute)

You can set up Extra in seconds on macOS or Windows:

Option A: Ask Your AI To Set It Up (Primary Funnel — Easiest)

Copy and paste the single directive for your OS into Claude Desktop, Google Antigravity, Cursor, Windsurf, or any MCP agent:

  • 🍏 For macOS (Apple Silicon M1-M4 & Intel):

    Setup Extra on my Mac: In Terminal run 'curl -sSL https://extra.yantraos.com/install.sh | bash', then read and configure ~/.extra/app/STARTER_PROMPT_MACOS.md so we are ready to use Extra.
    
  • 🪟 For Windows (11 / 10):

    Setup Extra on my PC: In PowerShell run 'iwr -useb https://extra.yantraos.com/install.ps1 -OutFile "$env:TEMP\install_extra.ps1"; & "$env:TEMP\install_extra.ps1"', then read and configure ~/.extra/app/STARTER_PROMPT.md so we are ready to use Extra.
    

Your AI will run the installer, configure MCP and local rules, and reply:

"We are ready! Please restart <your AI application, e.g. Claude Desktop, Antigravity, Cursor, Windsurf> to make it work."


Option B: Run the One-Liner Yourself

  • 🍏 macOS Terminal:

    curl -sSL https://extra.yantraos.com/install.sh | bash
    
  • 🪟 Windows PowerShell (Staged, Defender-Clean):

    iwr -useb https://extra.yantraos.com/install.ps1 -OutFile "$env:TEMP\install_extra.ps1"; & "$env:TEMP\install_extra.ps1"
    

The automated installer will:

  • Verify OS architecture (macOS 12.3+ or Windows 10/11 64-bit).
  • Provision isolated Python 3.10+ runtime (~/.extra/venv).
  • Auto-configure Claude Desktop, Cursor, Windsurf, and Antigravity (agy).
  • Run the health diagnostic doctor and present the 1-step starter prompt.

Option C: Developer Git Clone

# macOS:
git clone https://github.com/AIYantra/extra.git ~/.extra/app
cd ~/.extra/app && ./install.sh

# Windows:
git clone https://github.com/AIYantra/extra.git "$HOME\.extra\app"
cd "$HOME\.extra\app" ; .\install.ps1

Connecting to Any MCP-Compatible AI

Extra works out of the box with any agent supporting the Model Context Protocol (MCP). If you use Cursor, Windsurf, or custom agents, add this snippet to your MCP config:

{
  "mcpServers": {
    "extra": {
      "command": "python",
      "args": ["-m", "extra.mcp.server"]
    }
  }
}

🎯 How It Works Under The Hood

Extra is engineered from the ground up for speed, reliability, and token efficiency:

  1. 👁️ Ultra-Fast Screen Capture (< 3ms): Uses native DirectX Desktop Duplication (DXGI) to take crystal-clear desktop frames in under 3 milliseconds—without lagging your PC or blurring text.
  2. 🎯 Pixel-Perfect Clicking: Rather than guessing coordinates from fuzzy screenshots, Extra queries the native Windows accessibility tree (UI Automation) to click the exact button, menu, or text field with 100% mathematical accuracy.
  3. ⚡ Instant Typing: Types 500 characters in under 5 milliseconds via native Win32 Unicode injection—with zero dropped letters and full support for emojis and international languages.
  4. 🛑 Infinite Loop Stall Protection: If an app freezes or a click produces no visual result, Extra immediately catches it and stops safely instead of burning your tokens in an endless loop.
  5. 🔒 100% Local & Private: Extra runs completely on your machine. Zero screenshots, keystrokes, or telemetry are ever sent to any cloud server.

📊 Performance Comparison

Metric / Capability Legacy Scripts (PyAutoGUI) Cloud Vision Models Extra Engine
Screen Grab Speed 150 – 300 ms 80 – 150 ms 1.8 – 3.2 ms (DirectX DXGI)
Typing Speed (100 chars) 2.5 – 5.0 seconds 1.0 – 2.0 seconds < 0.005 seconds (Instant Win32)
Click Accuracy ~60% (fails on display scaling) ~82% (vision guess) 99.4% (Native Windows UIA)
Multi-Monitor DPI Support Broken on 125%/150% scales Requires manual adjustment Automatic (PerMonitorV2)
AI Token Cost High (full screenshot every step) High (full vision payload) 70% Lower (Smart element tree)
Stall Prevention None (gets stuck forever) Basic timeout Smart visual delta detection

🛠️ Included Tools (MCP Suite)

When connected to Extra, your AI assistant receives these native tools:

Tool Name What It Does
extra_launch Opens any Windows app, utility, or URL directly (calc, notepad, settings, chrome)
extra_inspect_ui Scans all visible buttons, inputs, tabs, and menus on your screen
extra_click_element Deterministically clicks any element by its ID, name, or bounding box
extra_screenshot Captures high-res desktop frames with optional Set-of-Mark visual badges
extra_click Moves mouse, left/right clicks, and double clicks with sub-pixel DPI accuracy
extra_type Injects text instantly with zero lag, full emoji support, and atomic paste
extra_hotkey Sends keyboard shortcuts (Ctrl+C, Win+E, Alt+Tab, Enter)
extra_scroll Smoothly scrolls wheels up, down, left, or right
extra_drag Drags and drops files, windows, or sliders between coordinates
extra_browser Directly extracts web page DOM content in Edge/Chrome without taking screenshots
extra_focus_window Brings any application window immediately to the front
extra_task_start Signals autonomous task execution; activates ambient screen edge pulse & cursor halo
extra_task_complete Signals task completion; flashes emerald green border, plays audio chime, and dissolves indicators
extra_indicate_status Direct programmatic control over active, complete, and idle desktop indicators

🏛️ Repository Structure

extra/
├── assets/                 # Brand logos and banners
├── core/                   # Core Windows Automation Engine
│   ├── capture.py          # Sub-3ms screen capture (DXGI & MSS)
│   ├── geometry.py         # PerMonitorV2 DPI scaling & display normalization
│   ├── indicators.py       # Ambient screen edge pulse, cursor halo, and harmonic audio chime
│   ├── input_engine.py     # Win32 SendInput Unicode & atomic clipboard injection
│   ├── focus.py            # AttachThreadInput window focus forcing
│   ├── uia_plane.py        # Windows UI Automation v3 COM client
│   └── stall_breaker.py    # Closed-loop perceptual diffing & safety killswitch
├── fastpath/               # High-speed deterministic execution
│   ├── shell.py            # Win32 ShellExecuteEx direct app launcher
│   └── browser.py          # Playwright / Edge CDP DOM bridge
├── mcp/                    # Anthropic Model Context Protocol
│   └── server.py           # Standard JSON-RPC stdio/SSE server
├── cli.py                  # CLI runner (extra doctor, test, indicators, run, inspect, snap)
├── install.ps1             # 1-line PowerShell installer
├── pyproject.toml          # Package metadata and build configuration
├── requirements.txt        # Enterprise-audited dependency manifest
├── STARTER_PROMPT.md       # Master AI system prompt & setup directive
├── ARCHITECTURE.md         # Full System Architecture Specification
└── test_core_engine.py     # End-to-end integration test suite

🛡️ Enterprise Trust & Safety

  • Zero Unverified Binary Blobs: No mysterious compiled .dll or .pyd files from solo maintainers.
  • Microsoft & Anthropic Standards: Built exclusively on Microsoft system calls (ctypes), Anthropic's official mcp SDK, and PSF packages.
  • Fail-Safe Protection: Includes a screen-corner emergency escape at (0, 0) and a global panic hotkey (Ctrl+Alt+Shift+Q).

🌌 Part of the yantraOS Sovereign Ecosystem

Extra is the Windows bridge for yantraOS, the sovereign Arch Linux operating system engineered for autonomous computing.

If you want bare-metal AI autonomy with zero operating system telemetry, sub-microsecond OS kernel scheduling, and native Wayland hardware control, explore yantraos.com.


🤝 Contributing

We welcome contributions from kernel hackers, automation researchers, and AI developers!
Please check out our Contributing Guide and Code of Conduct.

For vulnerability reporting, review our Security Policy.


📜 License

Distributed under the MIT License. See LICENSE for details.
Copyright (c) 2026 Euryale Ferox Private Limited.

Release files for extra-desktop 0.2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for extra-desktop 0.2.5
File Size Uploaded
extra_desktop-0.2.5.tar.gz 175.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for extra-desktop 0.2.5
File Interpreter ABI Platform
extra_desktop-0.2.5-py3-none-any.whl Python 3 none any Details

Total release size: 382.7 kB

Release files / extra_desktop-0.2.5.tar.gz

Download URL extra_desktop-0.2.5.tar.gz
Size 175.8 kB
Tags Source
SHA-256 checksum
How to use checksums
07f9b9013dc9f572424d85bae6e93e54c970c5184ac2d1156abfde3ca9e12d97
BLAKE2b-256 checksum
How to use checksums
766bb81918b92ebdf78b3a667d3c44db542f70afc6a0baab0d7863b3038d2e79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / extra_desktop-0.2.5-py3-none-any.whl

Download URL extra_desktop-0.2.5-py3-none-any.whl
Size 206.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d5b50eacb0070622de11f3d8bec2eb008573ceaf9a5f37cb8ff52576c467a47c
BLAKE2b-256 checksum
How to use checksums
dcb6dfde2100e84435b8e617ac08a25e795d55feede67a8e6db15cfad33f4b20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

0.3.0

2 release files

This release

0.2.5 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page