大多数 Agent 框架止步于对话和工具调用,CraftBot 走得更远。它会自己构建、演进并运行 SaaS 工具,然后通过这套工具层与你沟通,并替你完成自动化工作。
除此之外,CraftBot 拥有通用 Agent 框架的全部核心能力。它像一位远程员工一样执行任务、记住你的偏好与目标,并主动帮助你规划和推进对你重要的事情。
English | 日本語 | 繁體中文 | 한국어 | Español | Português | Français | Deutsch
除了能够创建并运行自有 SaaS 工具,CraftBot 还具备 Agent 框架的全部核心能力,可以作为一个通用 AI Agent 陪你处理任务、工具、记忆与日常工作流。
- Living UI. 在 CraftBot 内部构建、导入或演进自定义应用。Agent 始终感知 UI 状态,并能直接读取、写入和操作其中的数据。
- 多任务与会话路由. 还在手动敲
/new吗?CraftBot 能自行判断何时开启新会话、何时继续旧任务,让对话与上下文保持统一。 - 自托管与 BYOK. 灵活的 LLM 提供商体系,支持 OpenAI、Google Gemini、Anthropic Claude、OpenRouter 等。也可以用 Ollama 自行托管模型,实现零 Token 消耗。
- 记忆系统. 通过 RAG + Agent 文件系统 + 蒸馏,从你与 CraftBot 的交互中构建本地知识库。CraftBot 会在午夜「做梦」,整合一整天发生的事件。
- 主动型 Agent. 学习你的偏好、习惯和人生目标,然后主动进行规划并发起任务(当然要经过你的同意),帮你在生活中变得更好。
- 外部工具集成. 内置凭据与 OAuth 支持,可连接 Google Workspace、Slack、Notion、Zoom、LinkedIn、Discord 和 Telegram(还有更多正在路上)。
- Skills 与 MCP. 已就绪 150+ MCP 与 170+ Skills,支持快速安装新的 Skills 与 MCP,也可以从已完成的任务中一键创建或改进 Skills。
- 跨平台支持. 完整支持 Windows、macOS 和 Linux,提供平台特定的代码分支以及 Docker 容器化方案。
- 浏览器界面与 CLI 支持. 用最适合你的方式使用 CraftBot:日常使用走简洁的浏览器 UI,脚本和无界面环境则可以走 CLI。
- 自带密钥 (BYOK) — 灵活的 LLM 提供商系统,支持 OpenAI、Google Gemini、Anthropic Claude、BytePlus 和本地 Ollama 模型。可轻松切换提供商。
- 记忆系统 — 在午夜整理并汇总一天中发生的事件。
- 主动式代理 — 学习你的偏好、习惯和人生目标,然后进行规划并启动任务(当然需要你的批准)来帮助你改善生活。
- Living UI — 在 CraftBot 中构建、导入或演进自定义应用。代理始终感知 UI 的状态,并可直接读取、写入和操作其数据。
- 外部工具集成 — 连接 Google Workspace、Slack、Notion、Zoom、LinkedIn、Discord 和 Telegram(更多即将推出!),支持嵌入式凭据和 OAuth。
- MCP — 模型上下文协议(Model Context Protocol)集成,通过外部工具和服务扩展代理能力。
- 技能系统 — 可扩展的技能框架,内置任务规划、研究、代码审查、Git 操作等技能。
- 跨平台 — 完整支持 Windows、macOS 和 Linux,具有平台特定代码变体和 Docker 容器化。
Important
GUI 模式已弃用。 CraftBot 不再支持 GUI(桌面自动化)模式。请改用 Browser 或 CLI 模式。
- Python 3.10+
git(克隆仓库所需)- 你所选 LLM 提供商的 API Key(OpenAI、Gemini 或 Anthropic)
Node.js18+(可选 - 仅浏览器界面需要)conda(可选 - 如未找到,安装器会提供自动安装 Miniconda 的选项)
不确定?选方案一。 它会帮你搞定所有事。
| 方案一 — 服务安装 | 方案二 — Conda 安装 | 方案三 — 手动安装 | |
|---|---|---|---|
| 适合谁 | 大多数用户、新手、测试 | 想要独立环境的 Conda 用户 | 进阶用户、自定义 Python、完全控制 |
| 自动管理 Python 环境? | ✅ 自动 | ✅ 自动 | ❌ 你自己管理 |
| 后台运行? | ✅ 是,作为服务 | ❌ 否 | ❌ 否 |
| 启动方式 | python craftbot.py install |
python install.py --conda |
python install.py |
适合你,如果: 你希望 CraftBot 开箱即用——后台服务、开机自启、桌面快捷方式,无需手动操作。
craftbot.py 全程自动处理:Python 环境、依赖安装、后台进程管理和自启注册。
# 1. 克隆仓库
git clone https://github.com/CraftOS-dev/CraftBot.git
cd CraftBot
# 2. 安装、注册自启动并运行 CraftBot
python craftbot.py install就这么简单。终端会自动关闭,CraftBot 在后台运行,浏览器自动打开。同时还会创建一个桌面快捷方式,方便你随时重新打开浏览器。
安装完成后管理服务:
python craftbot.py start # 在后台启动 CraftBot
python craftbot.py stop # 停止 CraftBot
python craftbot.py restart # 重启 CraftBot
python craftbot.py status # 查看运行状态以及是否已启用自启动
python craftbot.py logs # 查看近期日志输出
python craftbot.py uninstall # 停止运行、移除自启动并卸载所有依赖包Tip
执行 install 或 start 之后会自动创建 CraftBot 桌面快捷方式。如果关闭了浏览器,双击该快捷方式即可重新打开。
Living UI 是会随你的需求一同演进的系统/应用/仪表盘。
- 想要一个内置 AI 协作伙伴的看板?
- 一套完全贴合你工作流的定制 CRM?
- 一个 CraftBot 能替你读取并操作的公司仪表盘?
# 1. 克隆仓库
git clone https://github.com/CraftOS-dev/CraftBot.git
cd CraftBot
# 2. 安装到 conda 环境
python install.py --conda
# 3. 运行 CraftBot
conda run -n craftbot python run.py
# 如果 conda 不在 PATH 中(仅 Windows):
&"$env:USERPROFILE\miniconda3\Scripts\conda.exe" run -n craftbot python run.pyNote
每次运行 CraftBot 时,请使用 conda run -n craftbot python run.py。此方式没有后台服务——由你手动启停。
适合你,如果: 你希望完全掌控 Python 环境,不需要任何自动服务或后台进程,自己管理 CraftBot。
install.py(不带参数)会对当前激活的 Python 环境执行标准 pip 安装。通过 run.py 手动启停 CraftBot。
# 1. 克隆仓库
git clone https://github.com/CraftOS-dev/CraftBot.git
cd CraftBot
# 2. 在当前 Python 环境中安装依赖
python install.py
# 3. 运行 CraftBot
python run.py首次运行会引导你完成 API Key 设置和偏好配置。
Note
如果未安装 Node.js,安装器会提供详细指引。你也可以完全跳过浏览器模式,直接使用 CLI 模式——无需 Node.js:python run.py --cli
- 用自然语言与代理交流
- 让它执行复杂的多步骤任务
- 输入
/help查看可用命令 - 连接 Google、Slack、Notion 等服务
CraftBot 支持多种 UI 模式。根据你的偏好选择:
| 模式 | 命令 | 要求 | 最适合 |
|---|---|---|---|
| 浏览器 | python run.py |
Node.js 18+ | 现代 Web 界面,最易使用 |
| CLI | python run.py --cli |
无 | 命令行,轻量级 |
浏览器模式是默认的推荐模式。如果你没有 Node.js,安装器会提供安装指引,或者你可以使用 CLI 模式。
Living UI 是随你需求而进化的系统/应用/仪表盘。
需要一个内置 AI 副驾的看板?量身定制符合你工作流程的 CRM? 一个 CraftBot 能读取并驱动的公司仪表盘? 将它作为 Living UI 启动——它与 CraftBot 并行运行,并随着你的需求变化而成长。
- 从零构建. 用自然语言描述你想要的东西,CraftBot 会搭好数据模型、后端 API 和 React 前端,并通过一套结构化的设计流程与你不断迭代。
- 从市场安装. 在 living-ui-marketplace 中浏览社区构建的 Living UI。
- 导入现有项目. 把 Go、Node.js、Python、Rust 或者静态源码、GitHub 仓库交给 CraftBot,它会自动识别运行时、配置健康检查,并把它封装成一个 Living UI。
Living UI 永远没有「完成」这一说。需求一变,就让 Agent 给它加功能、改版页面或接入新数据源。
CraftBot 嵌入在每个 Living UI 之中,并且对其状态保持感知:它可以读取当前 DOM 和表单值、通过 REST API 查询应用数据,并代替你触发操作。
构建、定制并不断演进属于自己的 Living UI,减少对那些从未真正为你量身定制的订阅工具的依赖。
我们正在积极寻找愿意展示自己 Living UI 的开发者,并支持将它们导出到 Living UI 市场。欢迎提交 PR!
- 📋 看板 — 把所有任务、跟进事项和待办集中到一个地方,CraftBot 可以接手运营,替你完成 PM 工作。
- 📊 习惯追踪器 — 培养并追踪自己的习惯,用类 GitHub 风格的活动日历像写代码一样维护你的习惯。
- 🐦 Luolinglo — 不是多邻国,但你可以学习新语言、做单词卡片,并和 CraftBot 一起练习。
| 组件 | 说明 |
|---|---|
| 代理基础层 (Agent Base) | 核心编排层,管理任务生命周期、协调各组件并处理主要的代理循环。 |
| LLM 接口 | 统一接口,支持多个 LLM 提供商(OpenAI、Gemini、Anthropic、BytePlus、Ollama)。 |
| 上下文引擎 | 生成优化的提示词,支持 KV-cache。 |
| 动作管理器 | 从动作库中检索和执行动作。自定义动作易于扩展。 |
| 动作路由器 | 根据任务需求智能选择最佳匹配的动作,需要时通过 LLM 解析输入参数。 |
| 事件流 | 实时事件发布系统,用于任务进度跟踪、UI 更新和执行监控。 |
| 记忆管理器 | 基于 RAG 的语义记忆,使用 ChromaDB。处理记忆分块、向量化、检索和增量更新。 |
| 状态管理器 | 全局状态管理,跟踪代理执行上下文、对话历史和运行时配置。 |
| 任务管理器 | 管理任务定义,支持简单和复杂任务模式,创建待办事项,多步骤工作流跟踪。 |
| 技能管理器 | 加载并将可插拔技能注入代理上下文。 |
| MCP 适配器 | 模型上下文协议集成,将 MCP 工具转换为原生动作。 |
| v0 / Lovable / Bolt | OpenClaw | Claude Code | CraftBot | |
|---|---|---|---|---|
| 构建自定义应用 | ✅ 一次性生成 | 🚫 | ✅ (手动) | ✅ 对话式持续构建 |
| Agent 能操作应用 | 🚫 | 🚫 | ✅ 内置于每个 Living UI | |
| 持久化的 Agent 记忆 | 🚫 | ✅ | ✅ | ✅ RAG + Agent 文件系统 + 蒸馏 |
| 自托管 | ✅ | 🚫 SaaS | ✅ MIT 协议,运行在你自己的机器上 | |
| 模型无关 | ✅ | ✅ | ✅ 主流厂商 + OpenRouter |
| 参数 | 说明 |
|---|---|
--conda |
使用 conda 环境(可选) |
| 参数 | 说明 |
|---|---|
| (无) | 以浏览器模式运行(推荐,需要 Node.js) |
--cli |
以 CLI 模式运行(轻量级) |
安装示例:
# 简单 pip 安装(不使用 conda)
python install.py
# 使用 conda 环境(推荐 conda 用户使用)
python install.py --conda运行 CraftBot:
# 浏览器模式(默认,需要 Node.js)
python run.py
# CLI 模式(轻量级)
python run.py --cli
# 使用 conda 环境
conda run -n craftbot python run.py
# 如果 conda 不在 PATH 中,使用完整路径
&"$env:USERPROFILE\miniconda3\Scripts\conda.exe" run -n craftbot python run.pyLinux/macOS (Bash):
# 浏览器模式(默认,需要 Node.js)
python run.py
# CLI 模式(轻量级)
python run.py --cli
# 使用 conda 环境
conda run -n craftbot python run.py将 CraftBot 作为后台服务运行,关闭终端后仍可继续运行。系统会自动创建桌面快捷方式,随时可重新打开浏览器。
# 安装依赖、注册开机自启、启动 CraftBot
python craftbot.py install就这样。终端会自动关闭,CraftBot 在后台运行,浏览器自动打开。
# 其他服务命令:
python craftbot.py start # 在后台启动 CraftBot
python craftbot.py status # 检查是否正在运行
python craftbot.py stop # 停止 CraftBot
python craftbot.py restart # 重启 CraftBot
python craftbot.py logs # 查看最近日志输出| 命令 | 说明 |
|---|---|
python craftbot.py install |
安装依赖、注册开机自启、启动 CraftBot、打开浏览器,并自动关闭终端 |
python craftbot.py start |
在后台启动 CraftBot(若已运行则自动重启,终端自动关闭) |
python craftbot.py stop |
停止 CraftBot |
python craftbot.py restart |
停止并重启 CraftBot |
python craftbot.py status |
检查 CraftBot 是否在运行,以及自动启动是否已启用 |
python craftbot.py logs |
显示最近日志(使用 -n 100 查看更多行) |
python craftbot.py uninstall |
停止 CraftBot、注销自启、卸载 pip 包并清理 pip 缓存 |
Tip
执行 craftbot.py start 或 craftbot.py install 后,系统会自动创建 CraftBot 桌面快捷方式。如果不小心关闭了浏览器,双击快捷方式即可重新打开。
Note
安装: 安装器会在缺少依赖时提供清晰的指引。如果未找到 Node.js,会提示你安装或切换到 CLI 模式。安装会自动检测 GPU 可用性,必要时回退到仅 CPU 模式。
Tip
首次设置: CraftBot 会引导你完成引导流程,配置 API Key、代理名称、MCP 和技能。
Note
Playwright Chromium: WhatsApp Web 集成可选。如果安装失败,代理在其他任务上仍能正常工作。可稍后手动安装:playwright install chromium
运行 python run.py 时看到 "npm not found in PATH":
- 从 nodejs.org 下载(选择 LTS 版本)
- 安装并重启终端
- 再次运行
python run.py
替代方案: 使用 CLI 模式(不需要 Node.js):
python run.py --cli安装器现在会提供更详细的错误信息和解决方案。如果安装失败:
- 检查 Python 版本: 确认已安装 Python 3.10+ (
python --version) - 检查网络连接: 安装过程中需要下载依赖
- 清理 pip 缓存: 运行
pip install --upgrade pip后再次尝试
Playwright Chromium 的安装是可选项。即使失败:
- Agent 在执行其他任务时仍可正常工作
- 可以先跳过,稍后再用
playwright install chromium安装 - 仅在使用 WhatsApp Web 集成时才需要
更详细的排查请参阅 INSTALLATION_FIX.md。
仓库根目录包含一份 Docker 配置,内含 Python 3.10、关键系统包(包括用于 OCR 的 Tesseract)以及 environment.yml/requirements.txt 中定义的所有 Python 依赖,确保 Agent 在隔离环境中也能稳定运行。
下面是用容器运行 Agent 的步骤。
在仓库根目录执行:
docker build -t craftbot .镜像默认以 python -m app.main 启动 Agent。如需交互式运行:
docker run --rm -it craftbot需要传入环境变量时,可以挂载一个 env 文件(例如基于 .env.example):
docker run --rm -it --env-file .env craftbot通过 -v 挂载需要持久化到容器外的目录(例如数据或缓存目录),并根据你的部署需求调整端口或其他参数。镜像内置了 OCR(tesseract)所需的系统依赖和常见的 HTTP 客户端,让 Agent 可以直接在容器内处理文件和网络 API。
镜像默认使用 Python 3.10,并已打包好 environment.yml/requirements.txt 中的依赖,因此 python -m app.main 开箱即用。
欢迎提交 PR!工作流(fork → 从 dev 创建分支 → 提 PR)详见 CONTRIBUTING.md。所有 PR 都会自动跑 lint + 冒烟测试 CI。
Important
CraftBot 仍在积极开发中,每周都有改进。如果有问题或希望更快交流,欢迎加入 Discord,或发邮件至 thamyikfoong(at)craftos.net。
本项目基于 MIT License 开源。你可以自由地使用、托管以及商业化运营本项目(如果用于分发或商业化,需要保留对本项目的署名)。
由 CraftOS 及贡献者共同开发与维护。 如果你觉得 CraftBot 有帮助,欢迎给仓库点 ⭐ 并分享给身边的人!









