0453c1b8ce5ea3b01488671d97e277b048efa0d9
Boss
Boss 是一个面向多设备开发协作的 agent control plane。
它的目标是让用户通过对话入口或独立控制台,持续管理多台 Windows、Mac 上的编码代理,支持任务拆分、实时进度、需求变更、审批和审计。
当前状态
当前仓库已经包含产品设计文档与一版可直接跑起来的本地控制台:
当前原型能力:
- Fastify API
- 文件持久化状态存储
- SSE 实时事件流
- Web 控制台
- Android 主控 APP(Jetpack Compose)
boss-worker模拟执行器boss-worker外部命令执行模式,可接本地 Codex / Claude / 自定义脚本- AI Glasses 云服务器一键部署脚本
- 命令行对话入口脚本
npm run smoke自动跑端到端验证Dockerfile+compose.yaml支持容器启动
当前推荐方向
- 主控面:Web 为主,聊天入口为辅
- Manager:Codex
- 设备侧 worker:Codex CLI + Claude Code
- 工具层:MCP
- 调度:持久队列或工作流引擎
本地运行
npm install
npm run demo
浏览器打开:
http://127.0.0.1:43210
如果你只想单独启动服务端:
npm run dev
如果你想把数据写到独立文件,避免和默认 demo 数据混用:
BOSS_DATA_FILE=.boss-data/local-dev.json npm run dev
云端主控部署
如果你要按最初的产品策略来跑:
- 云服务器只跑 Boss control plane
- 你的 Windows / Mac 本机各自跑 worker
- 你通过浏览器或命令行和云端主控对话
仓库已经内置 AI Glasses 云服务器部署脚本:
./scripts/deploy_ai_glasses_server.sh
这条脚本会优先尝试 Docker 部署;如果云机拉不到 Docker Hub 镜像,会自动回落到 Node 常驻进程模式。
部署完成后,先用这个脚本确认云端状态:
./scripts/boss_cloud_status.sh
查看云端日志:
./scripts/boss_cloud_logs.sh
默认云端入口:
http://111.231.132.51/boss/
这就是你当前最短的“主账号对话入口”。
如果你要手工启动 worker:
npm run worker -- --name win-a --os windows --capability terminal --capability browser
npm run worker -- --name win-b --os windows --capability terminal --capability test
npm run worker -- --name mac-a --os macos --capability terminal --capability test --capability browser
如果你要接真实本地执行器,而不是模拟执行:
npm run worker -- \
--name mac-codex \
--os macos \
--capability terminal \
--capability test \
--mode command \
--workspace /path/to/project \
--executor ./scripts/codex_executor.sh
也可以接 Claude Code 或任意你自己的脚本,只要命令能从环境变量里读取任务上下文:
BOSS_TASK_TITLEBOSS_TASK_DESCRIPTIONBOSS_TASK_KINDBOSS_TASK_JSONBOSS_WORKSPACEBOSS_WORKER_NAME
仓库里已经自带两个可直接改造的适配脚本:
./scripts/codex_executor.sh./scripts/claude_executor.sh./scripts/codex_executor.ps1./scripts/claude_executor.ps1
例如:
npm run worker -- \
--name win-claude \
--os windows \
--capability terminal \
--capability browser \
--mode command \
--workspace /path/to/project \
--executor ./scripts/claude_executor.sh
怎么和系统对话
当前推荐两种方式:
- 浏览器入口
打开云端控制台:
http://111.231.132.51/boss/
这是最符合产品策略的入口,也是主控面。
- 命令行聊天入口
仓库里自带一个简单 CLI,可以直接发消息给 Boss:
BOSS_SERVER_URL=http://111.231.132.51/boss ./scripts/boss_chat.sh create "Boss 主控对话"
BOSS_SERVER_URL=http://111.231.132.51/boss ./scripts/boss_chat.sh send "先调研这个问题,不要急着改代码。"
BOSS_SERVER_URL=http://111.231.132.51/boss ./scripts/boss_chat.sh status
这条 CLI 入口后面也很容易改造成 Telegram / Slack / 企业微信 webhook。
- Android 主控 APP
仓库现在已经带了一个原生安卓端,适合把“对话、切换设备、绑定设备、审批、看任务”统一放到手机里完成。
首次构建前,先在 android-app 目录满足其中一个条件:
- 设置
ANDROID_HOME或ANDROID_SDK_ROOT - 或手工创建
android-app/local.properties,内容类似:
sdk.dir=/Users/yourname/Library/Android/sdk
然后构建 debug 包:
cd android-app
./gradlew assembleDebug
输出 APK:
android-app/app/build/outputs/apk/debug/app-debug.apk
安卓端当前包含:
- 会话创建、切换、持续对话
- 任务分组查看、暂停、恢复、取消、重排
- 审批查看与批准/拒绝
- 设备列表、设备聚焦切换、设备下线
- 绑定新设备并生成启动命令
- 云端 Boss 地址切换与重排入口
一键本地 demo:
npm install
npm run demo
这会拉起:
- Web/API 服务
- 2 台 Windows 模拟 worker
- 1 台 Mac 模拟 worker
自动 smoke test:
npm run smoke
容器启动:
docker compose up --build
当前 v1 能力
- 创建项目会话并持续对话
- 自动生成任务树并调度到不同 worker
- worker 心跳、掉线回收、任务重排
- worker 真实外部命令执行,支持本地命令适配
- 审批、暂停、恢复、取消、重排
- SSE 实时事件流和 Web 控制台
- 会话归档与恢复
- 云端主控部署脚本与状态脚本
- 命令行对话入口
- 一键 demo 启动
Description
Languages
Kotlin
39.6%
TypeScript
36.3%
JavaScript
10.9%
Shell
8.4%
CSS
2.1%
Other
2.7%