# Wren A professional, self-hosted AI engineering platform — a unified workspace for agentic coding, review, and execution.

Wren Run AI coding agents locally or in your infrastructure. Own your data. Control your models.

--- ## Quick start 1. Clone ```bash git clone https://github.com/Daniel-debug-boop/Wren.git cd Wren ``` 2. Build ```bash make build ``` 3. Run (local) ```bash export INSTALL_DOCKER=0 RUNTIME=local make run FRONTEND_PORT=12000 FRONTEND_HOST=0.0.0.0 BACKEND_HOST=0.0.0.0 ``` Open http://localhost:12000 (adjust port as needed). --- ## Core ideas - Agentic workflows: human-in-the-loop or autonomous agents for coding, testing, and debugging. - Built-in IDE: Monaco-based editor, file tree, terminal emulator and review tooling. - Multi-LLM support: configurable providers and models. - Secure execution: Docker/VM sandboxing and optional orchestration. - Minimal ops: simple env-based configuration and Docker images for production. --- ## Minimal configuration Set these environment variables for a typical local run: - LLM_API_KEY — API key for your LLM provider - LLM_MODEL — Default model (e.g. gpt-4o) - WORKSPACE_DIR — Path for agent projects (default: ./workspace) - FRONTEND_PORT — Frontend port (default: 3001) - BACKEND_HOST, BACKEND_PORT — Backend host/port Example: ```bash export LLM_API_KEY="XXX" export LLM_MODEL="gpt-4o" export WORKSPACE_DIR="$HOME/projects/wren-workspace" ``` --- ## Running in Docker Quick demo (development): ```bash docker run --rm -it \ -p 8000:8000 \ -v "$HOME/.wren:/home/wren/.wren" \ -v "$HOME/projects:/projects" \ ghcr.io/wren/agent-canvas:latest ``` --- ## Animations & demos To include subtle motion or interactive previews in this README: - Use a small GIF (recommended < 1MB) placed under `assets/`: ```md ![Quick demo](./assets/demo.gif) ``` - Or add a hosted Lottie animation (linked) — note Lottie requires an external player and may not display in all viewers. This repository's frontend uses Framer Motion for micro-interactions; keep README animations small, focused, and respectful of users' prefers-reduced-motion setting. --- ## Features (short) - Real-time chat & streaming - Workspace with live editing and terminal - Agent orchestration and working memory - Pluggable model providers - Docker/VM execution backends --- ## Development (short) - Build all: `make build` - Run all: `make run` - Frontend dev: `cd frontend && npm run dev` - Backend dev: `make start-backend` - Tests: frontend: `npm run test`; backend: `poetry run pytest tests/unit/` Before committing: ```bash make install-pre-commit-hooks # Frontend cd frontend && npm run lint:fix && npm run build # Backend pre-commit run --config ./dev_config/python/.pre-commit-config.yaml ``` --- ## Contributing 1. Fork, create a feature branch. 2. Run pre-commit hooks and tests locally. 3. Keep changes focused and commit with clear messages. 4. Open a PR describing the change and the rationale. See CONTRIBUTING.md for detailed guidelines. --- ## License & contact MIT License — see LICENSE. Maintained by Daniel and contributors — open issues and PRs are welcome: https://github.com/Daniel-debug-boop/Wren/issues ---