Metadata-Version: 2.5
Name: sifunapilot
Version: 0.1.0
Summary: Local-first AI computer operator - Your computer. Your commands. Your AI.
Author-email: aasz253 <aasz253@example.com>
License: MIT
License-File: LICENSE
Keywords: agent,ai,browser-automation,cli,computer-automation
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.11
Requires-Dist: asyncio>=3.4.3
Requires-Dist: httpx>=0.26.0
Requires-Dist: opencv-python>=4.9.0
Requires-Dist: pillow>=10.1.0
Requires-Dist: playwright>=1.40.0
Requires-Dist: pyautogui>=0.9.54
Requires-Dist: pydantic-settings>=2.1.0
Requires-Dist: pydantic>=2.5.0
Requires-Dist: pytesseract>=0.3.10
Requires-Dist: python-docx>=1.1.0
Requires-Dist: pyyaml>=6.0.1
Requires-Dist: reportlab>=4.0.8
Requires-Dist: rich>=13.7.0
Requires-Dist: sqlalchemy>=2.0.25
Requires-Dist: typer>=0.9.0
Provides-Extra: dev
Requires-Dist: bandit>=1.7.5; extra == 'dev'
Requires-Dist: mypy>=1.8.0; extra == 'dev'
Requires-Dist: pip-audit>=2.6.1; extra == 'dev'
Requires-Dist: pre-commit>=3.6.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.2; extra == 'dev'
Requires-Dist: pytest>=7.4.3; extra == 'dev'
Requires-Dist: ruff>=0.1.9; extra == 'dev'
Description-Content-Type: text/markdown

# SifunaPilot

**Your computer. Your commands. Your AI.**

SifunaPilot is a local-first AI computer operator that allows a user to control their computer using natural-language text and voice.

## What is SifunaPilot?

SifunaPilot interprets natural language requests, creates execution plans, selects appropriate tools, executes actions, observes results, and reports what happened - all while maintaining strong security boundaries.

## Features

- **Natural Language Control**: Control your computer through text commands
- **Modular Architecture**: Separates AI reasoning, tool execution, and computer control
- **Local-First**: Works with local AI models (Ollama) without requiring paid APIs
- **Lightweight Models**: Optimized for 8GB RAM laptops (default: llama3.2:3b)
- **Browser Automation**: Powered by Playwright for reliable browser control
- **Security-Focused**: Permission system, confirmations, and untrusted content handling
- **Extensible**: Plugin/tool architecture for custom capabilities
- **Cross-Platform**: Support for Linux, Windows, and macOS

## Installation

### Using pipx (recommended)

```bash
pipx install sifunapilot
```

### From source

```bash
git clone https://github.com/aasz253/sifunapilot.git
cd sifunapilot
pip install -e .
```

## AI Models (Ollama)

SifunaPilot is optimized for 8GB RAM systems. Recommended lightweight models:

| Model | Size | RAM Usage | Best For |
|---|------|-----------|----------|
| `llama3.2:3b` (default) | ~2.0GB | ~3-4GB | General tasks, fast |
| `llama3.2:1b` | ~0.8GB | ~1-2GB | Very fast, minimal resources |
| `qwen2.5:3b` | ~2.0GB | ~3-4GB | Excellent reasoning |
| `smollm2:3b` | ~1.8GB | ~2-3GB | Efficient |
| `phi3.5:3.8b` | ~2.2GB | ~3-4GB | Instruction following |

Install a model with Ollama:

```bash
ollama pull llama3.2:3b
```

## Quick Start

### Check system health

```bash
sifunapilot doctor
```

### Start interactive mode

```bash
sifunapilot start
```

Then type commands:

```text
You > Open Chrome
You > Go to Google
You > Search for SifunaCodex
You > Close the tab
```

### Execute a single task

```bash
sifunapilot ask "Open Chrome and search for Python jobs"
```

## CLI Commands

```bash
sifunapilot start              # Start interactive mode
sifunapilot start --voice      # Start with voice mode
sifunapilot ask <query>        # Execute single task
sifunapilot status             # Show status
sifunapilot doctor             # Run health checks
sifunapilot providers          # List AI providers
sifunapilot tools              # List available tools
sifunapilot permissions        # Show permissions
sifunapilot config             # Show configuration
sifunapilot stop               # Stop SifunaPilot
```

## Security

SifunaPilot implements multiple security layers:
- Permission-based tool execution
- Confirmation for sensitive actions
- Web content treated as untrusted input
- No credential exposure to AI models
- Audit logging
- Dangerous command blocking

See [SECURITY.md](SECURITY.md) for details.

## Configuration

Configuration is stored in `~/.config/sifunapilot/config.yaml`. See [configuration.md](docs/configuration.md) for details.

## Development

```bash
pip install -e ".[dev]"
pytest
ruff check .
mypy src/
```

## License

MIT License - see [LICENSE](LICENSE) for details.

## Status

Current version: v0.1.0 (Alpha) - Phase 1 Implementation
