Most agent harnesses stop at chat and tool calls. CraftBot goes further than that. It builds, evolves, and operates its own SaaS tools, then uses that tool layer to communicate and automate with you.
Beyond that, CraftBot has all the core capabilities of a general-purpose agent harness. It executes tasks the way a remote employee would, remembers your preferences and goals, and proactively helps you plan and act on what matters to you.
日本語 | 简体中文 | 繁體中文 | 한국어 | Español | Português | Français | Deutsch
✨ Highlighted Features
Aside from being an AI agent that can create and operate its own SaaS tools, CraftBot includes all the core features of an agent harness, enabling it to work as a general AI agent alongside you across your tasks, tools, memory, and daily workflows.
- Living UI. Build, import, or evolve custom apps that live inside CraftBot. The agent stays aware of the UI's state and can read, write, and act on its data directly.
- Multi-tasking and session routing. Still using
/newcommand? CraftBot knows when to start a new session and when to resume a task, keeping conversation and context unified. - Self-hosted and BYOK. Flexible LLM provider system supporting OpenAI, Google Gemini, Anthropic Claude, OpenRoute, and more. Or host your own model with 0 tokens spent using Ollama.
- Memory System. Local knowledge base built from your interaction with CraftBot via RAG + Agent File System + distillation. CraftBot dreams and consolidates events that happened throughout the day at midnight.
- Proactive Agent. Learn your preferences, habits, and life goals. Then, perform planning and initiate tasks (with approval, of course) to help you improve in life.
- External Tools Integration. Connect to Google Workspace, Slack, Notion, Zoom, LinkedIn, Discord, and Telegram (more to come!) with embedded credentials and OAuth support.
- Skills and MCP. 150+ MCP and 170+ Skills ready. Quick installation of new Skills and MCPs. Create/improve Skills from completed tasks with one click.
- Cross-Platform Full support for Windows, macOS, and Linux with platform-specific code variants and Docker containerization.
- Browser interface and CLI support. Use CraftBot the way it fits: through a simple browser UI for everyday interaction, or via the CLI for scripting and headless environments.
🧰 Getting Started
Requirements: Python 3.10+ · Node.js 18+ for browser mode
# 1. Clone the repository git clone https://github.com/CraftOS-dev/CraftBot.git cd CraftBot # 2. Install, register auto-start, and launch CraftBot python craftbot.py install
That's it. The terminal closes itself, CraftBot runs in the background, and the browser opens automatically. A desktop shortcut is created so you can reopen the browser anytime.
Managing the service after install:
python craftbot.py start # Start CraftBot in the background python craftbot.py stop # Stop CraftBot python craftbot.py restart # Restart CraftBot python craftbot.py status # Check if it's running and if auto-start is enabled python craftbot.py logs # See recent log output python craftbot.py uninstall # Stop, remove auto-start, and uninstall packages
Tip
After install or start, a CraftBot desktop shortcut is created automatically. If you close the browser, just double-click the shortcut to reopen it.
🌱 Living UI
Living UI is a system/app/dashboard that evolves with your needs.
- Need a kanban board with an AI co-pilot built in?
- A custom CRM shaped exactly like your workflow?
- A company dashboard that CraftBot can read and drive on your behalf?
Spin it up as a Living UI that runs alongside CraftBot and grows as your needs change.
Three ways to create a Living UI
- Build from scratch. Describe what you want in plain language. CraftBot scaffolds the data model, backend API, and React UI, then iterates with you through a structured design process.
- Install from the marketplace. Browse community-built Living UIs from living-ui-marketplace.
- Import an existing project. Point CraftBot at a Go, Node.js, Python, Rust, or static source code or github repo. It detects the runtime, configures health checks, and wraps it as a Living UI.
Keeps evolving with CraftBot inside the loop
A Living UI is never "finished." Ask the agent to add features, redesign a view, or hook it into new data as your needs grow.
CraftBot is embedded in every Living UI and context-aware of its state: it can read the current DOM and form values, query app data through the REST API, and trigger actions on your behalf.
Keeps Saas Tools Open and Alive
Build, customize, and evolve your own Living UI, and rely less on subscription tools that were never built to fit your needs perfectly.
We are actively looking for developers to show off their Living UIs, and export them to the Living UI marketplace. PRs are welcome!
Three Living UIs to try in 5 minutes
- 📋 Kanban Board — Every task, follow-up, and CTA in one place. CraftBot can operate it to perform PM work for you.
- 📊 Habit Tracker — Develop and track your habits. Github-style activity calendar to track your habits like a developer.
- 🐦 Luolinglo — Not Duolingo, but you can learn new languages, create flashcards, and practice with CraftBot.
Browse and contribute to the Living UI marketplace →
CraftBot vs. the alternatives
| v0 / Lovable / Bolt | OpenClaw | Claude Code | CraftBot | |
|---|---|---|---|---|
| Builds custom apps | ✅ One-shot | 🚫 | ✅ (manual) | ✅ Conversational |
| Agent operates the app | 🚫 | 🚫 | ✅ Embedded in every Living UI | |
| Persistent agent memory | 🚫 | ✅ | ✅ | ✅ RAG + Agent file system + Distillation |
| Self-hosted | ✅ | 🚫 SaaS | ✅ MIT, your machine | |
| Model agnostic | ✅ | ✅ | ✅ Major providers + OpenRouter |
🔧 Troubleshooting & Common Issues
Missing Node.js (for Browser Mode)
If you see "npm not found in PATH" when running python run.py:
- Download from nodejs.org (choose LTS version)
- Install and restart your terminal
- Run
python run.pyagain
Alternative: Use CLI mode instead (no Node.js needed):
Installation Fails with Dependencies
The installer now provides detailed error messages with solutions. If installation fails:
- Check Python version: Make sure you have Python 3.10+ (
python --version) - Check internet: Dependencies are downloaded during installation
- Clear pip cache:
pip install --upgrade pipand try again
Playwright Installation Issues
Playwright chromium installation is optional. If it fails:
- The agent will still work fine for other tasks
- You can skip it or install later:
playwright install chromium - Only needed for WhatsApp Web integration
For detailed troubleshooting, see INSTALLATION_FIX.md.
🐳 Run with Container
The repository root included a Docker configuration with Python 3.10, key system packages (including Tesseract for OCR), and all Python dependencies defined in environment.yml/requirements.txt so the agent can run consistently in isolated environments.
Below are the setup instruction of running our agent with container.
Build the image
From the repository root:
docker build -t craftbot .Run the container
The image is configured to launch the agent with python -m app.main by default. To run it interactively:
docker run --rm -it craftbot
If you need to supply environment variables, pass an env file (for example, based on .env.example):
docker run --rm -it --env-file .env craftbot
Mount any directories that should persist outside the container (such as data or cache folders) using -v, and adjust ports or additional flags as needed for your deployment. The container ships with system dependencies for OCR (tesseract) and common HTTP clients so the agent can work with files and network APIs inside the container.
By default the image uses Python 3.10 and bundles the Python dependencies from environment.yml/requirements.txt, so python -m app.main works out of the box.
🤝 How to Contribute
PRs are welcome! See CONTRIBUTING.md for the workflow (fork → branch from dev → PR). All pull requests run through lint + smoke-test CI automatically.
Important
CraftBot is under active development with weekly improvements. For questions or a faster conversation, join us on Discord or email thamyikfoong(at)craftos.net.
🧾 License
This project is licensed under the MIT License. You are free to use, host, and monetize this project (you must credit this project in case of distribution and monetization).
⭐ Acknowledgements
Developed and maintained by CraftOS and contributors.
If you find CraftBot useful, please ⭐ the repository and share it with others!






