AI Manus: Advanced AI Agent Framework for Automated Browsing & Development
AI Manus is a powerful, general-purpose AI Agent system that enables seamless execution of various tools and operations within a secure sandbox environment. Designed for developers and AI enthusiasts, it provides an accessible framework to create intelligent automations for browsing, coding, and more.
Transform your workflow with your personal AI agent today!
๐ Featured Capabilities & Demos
Intelligent Web Navigation & Research
- Use Case: Automatically research and analyze the latest LLM academic papers
https://github.com/user-attachments/assets/4e35bc4d-024a-4617-8def-a537a94bd285
Advanced Code Generation & Programming Assistant
- Use Case: Generate complex Python implementations autonomously
https://github.com/user-attachments/assets/765ea387-bb1c-4dc2-b03e-716698feef77
๐ System Architecture & Workflow
Conversation Processing Flow
When a user initiates interaction with AI Manus:
- The web interface sends an Agent creation request to the server, which instantiates a sandbox environment through
/var/run/docker.sock
and returns a unique session ID - Within the sandbox (Ubuntu Docker container), Chrome browser and API services for File/Shell tools are initialized
- User messages are routed through the session to the PlanAct Agent for intelligent processing
- The Agent dynamically invokes specialized tools to complete requested tasks
- All processing events and results are streamed back to the web interface via Server-Sent Events (SSE)
Tool Integration & Visualization
Browser Interaction:
- The sandbox runs a headless Chrome browser with VNC service (via xvfb and x11vnc)
- Websockify converts VNC signals to websocket protocol
- Web client's NoVNC component connects through the server's websocket forwarding for seamless visual interaction
Additional Tools: All other integrated tools follow similar architectural principles for consistent interaction
๐ System Requirements
Technical Prerequisites
This project relies on containerization for consistent deployment across environments:
- Docker 20.10+
- Docker Compose
LLM Compatibility Requirements
For full functionality, your language model must support:
- OpenAI-compatible API interface
- Function calling capabilities
- Structured JSON output format
Recommended Models: Deepseek models or OpenAI GPT models (particularly GPT-4o) deliver optimal performance.
๐ Deployment Instructions
Quick Setup with Docker Compose
Copy the configuration below into a docker-compose.yml
file:
services:
frontend:
image: simpleyyt/manus-frontend
ports:
- "5173:80"
depends_on:
- backend
restart: unless-stopped
networks:
- manus-network
environment:
- BACKEND_URL=http://backend:8000
backend:
image: simpleyyt/manus-backend
depends_on:
- sandbox
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- manus-network
environment:
# OpenAI API configuration
- API_BASE=https://api.openai.com/v1
- API_KEY=sk-xxxx # Replace with your actual API key
- MODEL_NAME=gpt-4o
- TEMPERATURE=0.7
- MAX_TOKENS=2000
# Optional search enhancement
#- GOOGLE_SEARCH_API_KEY=
#- GOOGLE_SEARCH_ENGINE_ID=
# Sandbox configuration
- LOG_LEVEL=INFO
- SANDBOX_IMAGE=simpleyyt/manus-sandbox
- SANDBOX_NAME_PREFIX=sandbox
- SANDBOX_TTL_MINUTES=30
- SANDBOX_NETWORK=manus-network
sandbox:
image: simpleyyt/manus-sandbox
command: /bin/sh -c "exit 0" # Ensures image is pulled without starting container
restart: "no"
networks:
- manus-network
networks:
manus-network:
name: manus-network
driver: bridge
Then launch the system with:
docker compose up -d
Note: The message
sandbox-1 exited with code 0
is expected behavior, confirming the sandbox image was successfully pulled.
Access AI Manus by navigating to http://localhost:5173 in your browser.
๐จโ๐ป Development Guide
Project Components
AI Manus consists of three modular components:
frontend
: User interface and interaction layerbackend
: Core processing and agent orchestrationsandbox
: Isolated execution environment for tools
Setting Up Your Development Environment
- Clone the repository:
git clone https://github.com/simpleyyt/ai-manus.git
cd ai-manus
- Create your configuration:
cp .env.example .env
- Configure essential parameters:
# Model configuration
API_KEY= # Your API key here
API_BASE=https://api.openai.com/v1
MODEL_NAME=gpt-4o
TEMPERATURE=0.7
MAX_TOKENS=2000
# Optional search integration
#GOOGLE_SEARCH_API_KEY=
#GOOGLE_SEARCH_ENGINE_ID=
# Sandbox settings
SANDBOX_IMAGE=simpleyyt/manus-sandbox
SANDBOX_NAME_PREFIX=sandbox
SANDBOX_TTL_MINUTES=30
SANDBOX_NETWORK=manus-network
# Logging
LOG_LEVEL=INFO
Development Workflow
- Launch development environment:
./dev.sh up
All services run with hot-reloading enabled. Access components through these ports:
- 5173: Web frontend
- 8000: API server
- 8080: Sandbox API
- 5900: VNC service
- 9222: Chrome CDP debugging
Development Note: Debug mode initializes only one global sandbox instance.
- When dependencies change:
# Clean environment
./dev.sh down -v
# Rebuild containers
./dev.sh build
# Restart development environment
./dev.sh up
Building & Publishing Images
# Configure your registry
export IMAGE_REGISTRY=your-registry-url
export IMAGE_TAG=latest
# Build container images
./run build
# Push to registry
./run push