Metadata-Version: 2.4
Name: cachibot
Version: 0.2.19
Summary: The Armored AI Agent. Cross-platform, secure, yours.
Project-URL: Homepage, https://cachibot.com
Project-URL: Documentation, https://cachibot.com/docs
Project-URL: Repository, https://github.com/jhd3197/cachibot
Project-URL: Issues, https://github.com/jhd3197/cachibot/issues
Author-email: Juan Denis <juan@vene.co>
License-Expression: MIT
License-File: LICENSE
Keywords: agent,ai,automation,llm,python,sandbox,security
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: aiofiles>=24.1.0
Requires-Dist: aiogram>=3.0.0
Requires-Dist: aiosqlite>=0.20.0
Requires-Dist: bcrypt>=4.0.0
Requires-Dist: discord-py>=2.0.0
Requires-Dist: fastapi>=0.115.0
Requires-Dist: fastembed>=0.4.0
Requires-Dist: prompture>=1.0.19
Requires-Dist: pydantic[email]>=2.9.0
Requires-Dist: pyjwt>=2.8.0
Requires-Dist: pymupdf>=1.26.0
Requires-Dist: python-multipart>=0.0.9
Requires-Dist: rich>=13.0.0
Requires-Dist: sqlite-vec>=0.1.3
Requires-Dist: tukuy>=0.0.22
Requires-Dist: typer>=0.12.0
Requires-Dist: uvicorn[standard]>=0.32.0
Requires-Dist: websockets>=14.0
Provides-Extra: dev
Requires-Dist: mypy>=1.10.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.5.0; extra == 'dev'
Description-Content-Type: text/markdown

  CachiBot

CachiBot

The Armored AI Agent
  
Visual. Transparent. Secure.

    Español ·
    中文版 ·
    Português

    Windows
    macOS
    Linux

    A visual AI agent platform with full transparency. Named after the Venezuelan cachicamo (armadillo) — built to be armored, auditable, and yours to control.

    Quick Start ·
    Features ·
    Architecture ·
    Security ·
    Contributing ·
    Discord (https://discord.gg/V9bKwYVJ)

---

## Why Visual?

Most AI agents run in terminals where you can't see what's happening. That's a security nightmare.

CLI-based agents operate in a black box — no visibility into running tasks, no way to monitor multiple bots, no real-time insight into what the agent is doing.

**CachiBot gives you full visibility.** Watch your bots work through a dashboard, see every task and job in a clean interface, approve or reject actions before they execute, and maintain a full audit trail of everything your bots do.

  Dashboard

  Chat Interface

## Features

- **Visual Dashboard** — See all your bots, their status, and activity at a glance
- **Real-time Monitoring** — Watch tasks and jobs execute with live WebSocket updates
- **Multi-Bot Management** — Create and manage multiple specialized bots
- **Platform Connections** — Connect bots to Telegram, Discord, and more
- **Knowledge Base** — Upload documents to give bots specialized knowledge
- **Secure Sandbox** — Code runs in isolation with AST-based risk analysis
- **Approval Flow** — Visual approval for risky operations before they execute
- **Multi-Provider** — Kimi K2.5, Claude, OpenAI, Ollama, Groq, and more

## Quick Start

### 1. Install

```bash
pip install cachibot
```

### 2. Set your API key

```bash
# Moonshot/Kimi (default)
export MOONSHOT_API_KEY="your-key"

# Or Claude
export ANTHROPIC_API_KEY="your-key"

# Or OpenAI
export OPENAI_API_KEY="your-key"
```

### 3. Launch

```bash
cachibot server
```

Open **http://localhost:6392** — the frontend is bundled and served automatically.

### CLI Usage

```bash
cachibot server                              # Start the dashboard
cachibot "list all Python files"             # Run a single task
cachibot                                     # Interactive mode
cachibot --model anthropic/claude-sonnet-4-20250514 "explain this"  # Specific model
cachi server                                 # Short alias
```

## Architecture

```mermaid
graph TB
    subgraph Frontend["React Dashboard"]
        Bots[Bots]
        Chats[Chats]
        Jobs[Jobs & Tasks]
        KB[Knowledge Base]
        Conn[Connections]
    end

    subgraph Backend["FastAPI Backend"]
        Agent["Prompture Agent"]
        Tools["Tool Registry"]
        Sandbox["Sandbox Executor"]
    end

    subgraph Providers["LLM Providers"]
        Moonshot[Moonshot/Kimi]
        Claude[Claude]
        OpenAI[OpenAI]
        Ollama[Ollama]
        Groq[Groq]
    end

    subgraph Platforms["Platform Connections"]
        Telegram[Telegram]
        Discord[Discord]
    end

    Frontend -- "WebSocket / REST" --> Backend
    Backend --> Providers
    Backend --> Platforms
```

## Supported Models

| Provider | Model | Environment Variable |
|----------|-------|---------------------|
| Moonshot | `moonshot/kimi-k2.5` | `MOONSHOT_API_KEY` |
| Claude | `anthropic/claude-sonnet-4-20250514` | `ANTHROPIC_API_KEY` |
| OpenAI | `openai/gpt-4o` | `OPENAI_API_KEY` |
| Ollama | `ollama/llama3.1:8b` | (local, no key needed) |
| Groq | `groq/llama-3.1-70b` | `GROQ_API_KEY` |

## Security

CachiBot is built with security as a core principle. **Visibility is security** — the biggest risk with AI agents is not knowing what they're doing.

### Sandboxed Execution

Python code runs in a restricted environment:

- **Import Restrictions** — Only safe modules allowed (json, math, datetime, etc.)
- **Path Restrictions** — File access limited to the workspace
- **Execution Timeout** — Code killed after timeout (default: 30s)
- **Risk Analysis** — AST-based detection of dangerous operations

### Always Blocked

These are never allowed regardless of configuration: `subprocess`, `os.system`, `ctypes`, `socket`, `ssl`, `importlib`, `eval`, `exec`, `pickle`, `marshal`.

## Roadmap

- [x] Visual dashboard with real-time monitoring
- [x] Multi-bot management
- [x] Sandboxed Python execution
- [x] Multi-provider LLM support
- [x] Knowledge base with document upload
- [x] Telegram integration
- [x] Discord integration
- [x] Plugin marketplace
- [ ] Voice interface
- [ ] Mobile companion app

## Contributing

Contributions are welcome!

```bash
git clone https://github.com/jhd3197/CachiBot.git
cd CachiBot

# Backend
pip install -e ".[dev]"
cachibot server --reload

# Frontend (in another terminal)
cd frontend && npm install && npm run dev

# Tests & linting
pytest
ruff check src/
cd frontend && npm run lint
```

## Community

## License

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

## Credits

- Built with [Prompture](https://github.com/jhd3197/Prompture) for structured LLM interaction
- Named after the Venezuelan *cachicamo* (armadillo)

---

  Made with care by Juan Denis (https://juandenis.com)

