Files
jpmschweitzerandClaude 8eec3b68d6 docs: replace both AGENTS.md files with one CLAUDE.md
One agent doc per repo, and it is CLAUDE.md. This repo carried two --
one at the root and one under webber-api/ -- which is the drift problem
in its purest form: two documents, one subject, and no way to know which
the last reader trusted. Written fresh rather than reformatted.

README.md linked to webber-api/AGENTS.md, so that pointer moves with the
file rather than dangling.

The architecture section states the method used to establish what is
live -- import the app inside the container and read sys.modules -- and
then the case where that method fails here. src/domains/tools is absent
from a cold snapshot and is entirely live: each agent's _register_tools
imports its tool package from inside the method body, on every
/agents/run. Absence from a snapshot taken before any request is served
is a timing artifact, not evidence of death, and deleting on that basis
would have removed the tool layer.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-09 03:14:50 +02:00

124 lines
3.3 KiB
Markdown

# 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 `gemma4:e2b` model
- Docker (for production deployment)
- SearXNG (optional, for web search)
## Documentation
- `CLAUDE.md` - Agent development guidelines (repo-wide)
- `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