Moltbot on Windows
Run your personal AI assistant on Windows using WSL2 (Windows Subsystem for Linux). Full Linux compatibility with seamless Windows integration.
How Moltbot Works on Windows
Moltbot runs on Windows through WSL2 (Windows Subsystem for Linux), giving you a full Linux environment with native Windows integration.
WSL2 + npm (Recommended)
Run Moltbot in a full Linux distribution inside Windows. Best performance and compatibility. No Docker overhead.
Docker Desktop
Use Docker Desktop with WSL2 backend for containerized deployment. Easy setup but slightly more resource usage.
System Requirements
Moltbot requires WSL2, which is available on Windows 10 version 2004+ and Windows 11.
| Windows Version | Windows 10 version 2004+ or Windows 11 |
| WSL Version | WSL2 (required) |
| Architecture | x64 or ARM64 |
| RAM | 8 GB minimum, 16 GB recommended |
| Storage | 10 GB for WSL + 500 MB for Moltbot |
| Virtualization | Hardware virtualization enabled in BIOS |
⚠️ Important: WSL1 is not supported. You must use WSL2 for Moltbot to work correctly. Check your version with wsl --version in PowerShell.
Step 1: Install WSL2
WSL2 provides a full Linux kernel and filesystem for running Moltbot with native performance.
Install WSL2 with Ubuntu
Open PowerShell as Administrator and run:
# Install WSL2 with Ubuntu (one command does it all)
wsl --install
# Restart your computer when prompted
# After restart, Ubuntu will finish setup automaticallyComplete Ubuntu Setup
After reboot, Ubuntu will launch and prompt you to:
- Create a UNIX username (can be different from Windows)
- Create a password
- Wait for initial setup to complete
Verify WSL2 Installation
In PowerShell, confirm WSL2 is being used:
# Check WSL version
wsl --version
# List installed distributions
wsl -l -v
# Output should show "Ubuntu" with VERSION = 2Step 2: Install Node.js in WSL
Install Node.js 22 inside your WSL2 Ubuntu environment.
Install Node.js via NVM (Recommended)
Open Ubuntu (from Start menu or type wsl in PowerShell):
# Install nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Restart terminal or run:
source ~/.bashrc
# Install Node.js 22
nvm install 22
# Verify installation
node --version # Should show v22.x.x
npm --versionAlternative: NodeSource Repository
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejsStep 3: Install Moltbot
Install Moltbot globally and run the onboarding wizard inside WSL.
# Install Moltbot globally
npm install -g moltbot@latest
# Run the onboarding wizard
moltbot onboard --install-daemon
# The wizard will:
# - Create your workspace at ~/.moltbot/
# - Configure your AI provider
# - Set up the daemon service
# - Guide you through channel connectionsStart Using Moltbot
# Chat via command line
moltbot chat "Hello, what can you do?"
# Open the web interface
moltbot ui
# Access the UI in Windows browser at:
# http://localhost:18789Alternative: Docker Desktop
Docker Desktop provides another way to run Moltbot on Windows, using the WSL2 backend.
Install Docker Desktop
- 1.Download Docker Desktop for Windows
- 2.Run the installer and follow the prompts
- 3.Enable "Use WSL 2 based engine" in Docker Desktop Settings
- 4.Restart Docker Desktop
Run Moltbot in Docker
Open PowerShell or Command Prompt:
# Pull the latest image
docker pull moltbot/moltbot:latest
# Run with a persistent volume
docker run -d ^
--name moltbot ^
-p 18789:18789 ^
-v moltbot-data:/root/.moltbot ^
-e ANTHROPIC_API_KEY="your-api-key" ^
moltbot/moltbot:latest
# Access the web UI at http://localhost:18789Configure AI Provider
Set up your AI provider in the WSL environment or via Docker environment variables.
🟣 Anthropic Claude (Recommended)
# In WSL ~/.bashrc
export ANTHROPIC_API_KEY="sk-ant-..."🟢 OpenAI GPT
# In WSL ~/.bashrc
export OPENAI_API_KEY="sk-..."🔵 Google Gemini
# In WSL ~/.bashrc
export GOOGLE_AI_API_KEY="..."🏠 Local Models (Ollama)
# In WSL
curl -fsSL https://ollama.com/install.sh | shConnect Chat Channels
Connect Moltbot to your chat apps from within WSL. All channels work except iMessage (macOS-only).
# In WSL Ubuntu:
# Connect WhatsApp (scan QR code)
moltbot channel add whatsapp
# Connect Telegram (enter bot token)
moltbot channel add telegram
# Connect Slack (OAuth flow)
moltbot channel add slack
# Connect Discord (enter bot token)
moltbot channel add discord
# List connected channels
moltbot channel list💡 Tip: The Moltbot web UI at http://localhost:18789 is accessible from your Windows browser. Use it for channel setup and monitoring.
Managing the Daemon on WSL
The Moltbot daemon runs inside WSL. Keep WSL running or configure it to start automatically.
# Start the daemon
moltbot daemon start
# Check status
moltbot daemon status
# View logs
moltbot daemon logs
# Stop the daemon
moltbot daemon stopAuto-start on Windows Boot
To keep Moltbot running, you can add a Windows Task Scheduler task or use a startup script:
# Create a .vbs script (save as moltbot-start.vbs)
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "wsl -d Ubuntu -u YOUR_USERNAME -- bash -c 'moltbot daemon start'", 0
# Add to Windows Startup folder:
# Win+R -> shell:startup -> paste the .vbs file⚠️ WSL Shutdown: By default, WSL shuts down after 8 seconds of inactivity. Keep a WSL terminal open or configure WSL to stay running. Add to %USERPROFILE%\.wslconfig: [wsl2]\nidleTimeout=0
Troubleshooting
Common issues and solutions for Windows/WSL2 installation.
"WSL 2 requires an update"
Download and install the WSL2 kernel update:
# Download from Microsoft:
# https://aka.ms/wsl2kernel
# Run the installer and restart"Virtualization not enabled"
Enable virtualization in BIOS:
- Restart and enter BIOS (usually F2, F12, or Del)
- Find Virtualization Technology (VT-x for Intel, SVM for AMD)
- Enable it and save/exit
"command not found: moltbot" in WSL
Add npm binaries to PATH in ~/.bashrc:
echo 'export PATH="$PATH:$(npm config get prefix)/bin"' >> ~/.bashrc
source ~/.bashrcWSL closes when terminal closes
Configure WSL to stay running. Create/edit %USERPROFILE%\.wslconfig:
[wsl2]
idleTimeout=0Cannot access localhost:18789 from Windows
WSL2 should forward ports automatically. If not, check Windows Firewall or try:
# Find WSL IP
wsl hostname -I
# Use that IP in browser instead of localhost