# Webber - Multi-Agent AI Development System A Claude Code-inspired development assistant powered by local LLMs via Ollama. ## Features - **3 Agents** - Explore (read-only), Plan (architecture), Task (orchestrator) - **8 Tools** - File read/write/edit, glob, grep, bash, web search - **Conversations** - Multi-turn memory with context summarization - **Streaming** - Real-time response display - **Self-hosted** - Runs on your own hardware with Ollama ## Structure This is a monorepo containing three subprojects: | Directory | Description | |-----------|-------------| | `webber-api/` | FastAPI backend server with agent orchestration | | `webber-cli/` | Command-line client for interacting with the API | | `webber-sandbox/` | Test project for functional testing | ### Additional Directories | Directory | Description | |-----------|-------------| | `sandbox-templates/` | Reusable project templates for the sandbox | | `.gitea/workflows/` | CI/CD workflows for releases | ## Quick Start ### 1. Start the API Server ```bash cd webber-api python3.12 -m venv .venv source .venv/bin/activate pip install -r requirements.txt -r requirements-dev.txt ./wakeup.sh ``` ### 2. Set Up the CLI ```bash cd webber-cli python3.12 -m venv .venv source .venv/bin/activate pip install -r requirements.txt pip install -e . # Test connection webber-cli status ``` ### 3. Explore with Webber ```bash # One-shot exploration webber-cli explore "find all bugs in the code" -d /path/to/project # Interactive chat webber-cli chat -d /path/to/project ``` ## Available Tools | Tool | Description | |------|-------------| | `read_file` | Read file contents with line numbers | | `glob_files` | Find files by pattern | | `grep_content` | Search file contents with regex | | `bash_readonly` | Safe bash commands (ls, git status, etc.) | | `edit_file` | Find-and-replace editing | | `write_file` | Create/overwrite files | | `bash` | Full bash with safety controls | | `web_search` | Search web via SearXNG | ## Agents | Agent | Purpose | Tools | |-------|---------|-------| | **Explore** | Fast codebase navigation, search | Read-only (glob, grep, read, bash_readonly) | | **Plan** | Design implementation strategies | Read-only (same as Explore) | | **Task** | Autonomous multi-step execution | All tools + spawn_agent | ## API Endpoints ```bash # Stateless agent execution POST /agents/run # Execute agent, get response POST /agents/stream # Execute with SSE streaming GET /agents/ # List available agents # Stateful conversations (multi-turn memory) POST /conversations/ # Create conversation GET /conversations/ # List conversations POST /conversations/{id}/messages # Add message, get agent response ``` ## Versioning This project uses prefixed tags for independent release cycles: - `api/v0.4.0` - Triggers API Docker build and deployment - `cli/v0.1.0` - Triggers CLI installer build (future) ## Requirements - Python 3.12+ - Ollama running with `mistral-nemo:latest` model - Docker (for production deployment) - SearXNG (optional, for web search) ## Documentation - `webber-api/AGENTS.md` - API development guidelines - `webber-api/docs/COVERAGE.md` - Feature coverage and roadmap - `webber-api/docs/architecture.md` - System architecture - `webber-cli/README.md` - CLI usage guide ## License MIT