Manus AI AgentLogo

Manus AI Agent

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!

  • 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

AI Manus Architecture

Conversation Processing Flow

When a user initiates interaction with AI Manus:

  1. 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
  2. Within the sandbox (Ubuntu Docker container), Chrome browser and API services for File/Shell tools are initialized
  3. User messages are routed through the session to the PlanAct Agent for intelligent processing
  4. The Agent dynamically invokes specialized tools to complete requested tasks
  5. 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 layer
  • backend: Core processing and agent orchestration
  • sandbox: Isolated execution environment for tools

Setting Up Your Development Environment

  1. Clone the repository:
git clone https://github.com/simpleyyt/ai-manus.git
cd ai-manus
  1. Create your configuration:
cp .env.example .env
  1. 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

  1. 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.

  1. 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