claw-beacon

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Claw Beacon - Agent Operating System

Claw Beacon - 代理操作系统

Complete setup for AI agent coordination with real-time Kanban dashboard.
实现AI代理协作的完整部署方案,搭配实时看板仪表盘。

What This Skill Does

该技能的功能

  1. Deploy Claw Beacon - Three paths: Docker Compose, local dev, or Railway cloud
  2. Setup Agent Memory (mem0 + Qdrant) - FIRST TASK after deploy!
  3. Theme your team - Pick a series (DBZ, One Piece, Marvel, etc.)
  4. Enforce workflow - ALL tasks go through the board, no exceptions
  5. Configure agent behavior - Update AGENTS.md and SOUL.md
  6. Setup browser - Required for autonomous actions
  7. Setup GitHub - Enable autonomous deployments
  8. Enhance memory - Integrate Supermemory and QMD (optional)

  1. 部署Claw Beacon - 三种方式:Docker Compose、本地开发或Railway云端部署
  2. 配置代理内存(mem0 + Qdrant) - 部署完成后的首要任务!
  3. 为团队设置主题 - 选择系列IP(龙珠、海贼王、漫威等)
  4. 强制执行工作流 - 所有任务必须通过看板流转,无例外
  5. 配置代理行为 - 更新AGENTS.md和SOUL.md文件
  6. 浏览器配置 - 实现自主操作的必备条件
  7. GitHub配置 - 启用自主部署功能
  8. 增强内存能力 - 集成Supermemory和QMD(可选)

⚠️ Updating from a Previous Version?

⚠️ 从旧版本更新?

If you previously installed this skill and want the latest:
bash
npx skills add adarshmishra07/claw-beacon@latest
This ensures you get the newest features and fixes. Cached skill files won't auto-update otherwise.

如果您之前已安装该技能并想要获取最新版本:
bash
npx skills add adarshmishra07/claw-beacon@latest
这样可以确保您获取到最新的功能和修复补丁。缓存的技能文件不会自动更新。

⚠️ CRITICAL: The Golden Rules

⚠️ 关键:黄金法则

After setup, you MUST follow these rules EVERY TIME:
部署完成后,每次操作都必须遵循以下规则:

Before Doing ANY Work:

执行任何工作之前:

  1. Create a task on Mission Control - Even for small things
  2. Spawn a sub-agent - Use
    sessions_spawn
    to delegate
  3. Never do the work yourself - Coordinator coordinates, agents execute
  1. 在Mission Control创建任务 - 哪怕是小事也要创建
  2. 生成子代理 - 使用
    sessions_spawn
    命令委派任务
  3. 绝不亲自执行任务 - 协调者仅负责协调,代理负责执行

The Workflow (No Exceptions):

工作流(无例外):

User Request → Create Task → Spawn Agent → Agent Works → Review → Complete
用户请求 → 创建任务 → 生成代理 → 代理执行 → 审核 → 完成

If You Catch Yourself Working:

如果发现自己在执行任务:

STOP! Ask: "Did I create a task? Did I spawn an agent?" If no → Go back and do it properly.
立即停止! 自问:“我创建任务了吗?我生成代理了吗?” 如果没有 → 返回并按正确流程操作。

If You Catch An Agent Breaking Rules:

如果发现代理违反规则:

PAUSE and enforce:
  • Working without a task? → "Is this on the board?"
  • Acting solo? → "Did you delegate/query/verify?"
  • Skipping review? → "Let's check before marking complete"
Your role is COORDINATOR. Coordinate, review, verify, ENFORCE. Never execute.
暂停操作并强制执行规则:
  • 无任务就开始工作?→ “这个任务在看板上吗?”
  • 单独行动?→ “你是否进行了委派/咨询/验证?”
  • 跳过审核步骤?→ “在标记完成前先检查一下”
您的角色是协调者。负责协调、审核、验证、强制执行规则,绝不亲自执行任务。

🔒 Repo Hierarchy (For claw-beacon maintainers)

🔒 仓库层级结构(面向Claw Beacon维护者)

RepoPurposeDirect Push?
claw-beacon-trip/
Internal testing✅ Yes
claw-beacon
(public)
Production OSS❌ PR only after internal test
Rule: Test ALL changes in
claw-beacon-trip/
FIRST, then PR to public
claw-beacon
.
仓库用途允许直接推送?
claw-beacon-trip/
内部测试✅ 是
claw-beacon
(公开)
生产级开源软件❌ 仅在内部测试后提交PR
规则: 所有变更先在
claw-beacon-trip/
中测试,再向公开版
claw-beacon
提交PR。

📝 Commit Message Convention

📝 提交消息规范

[#TASK_ID] Brief description

Example:
[#129] Add workflow enforcement to SKILL.md
If you committed without a task: CREATE ONE RETROACTIVELY and link it.
[#任务ID] 简要描述

示例:
[#129] 为SKILL.md添加工作流强制执行规则
如果您未关联任务就提交了代码:事后必须创建任务并关联提交。

🚨 Orphan Work Protocol

🚨 无归属工作处理流程

If work was done without a task on Mission Control:
  1. STOP and create the task NOW
  2. Mark it with what was done
  3. Set status to
    completed
  4. Don't let it happen again
如果工作已完成但未在Mission Control创建对应任务:
  1. 立即停止并创建任务
  2. 标记已完成的工作内容
  3. 将状态设置为
    completed
  4. 确保此类情况不再发生

📢 Feed Protocol (Communication)

📢 动态推送协议(沟通机制)

All significant updates go to the agent feed via
POST /api/messages
:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{"agent_id": 1, "message": "✅ Task #X completed: Brief summary"}'
When to post:
  • ✅ Task completions
  • 🚀 Major milestones
  • 🔍 Audit results
  • 📦 Deployment updates
  • 🚧 Blockers or questions
  • 💡 Discoveries or insights
Agent IDs (for themed teams — 8 default agents):
  • ID 1 = Coordinator (Goku, Luffy, Tony, etc.)
  • ID 2 = Backend Developer (Vegeta, Zoro, Steve, etc.)
  • ID 3 = System Architect
  • ID 4 = Research Analyst
  • ID 5 = Product Manager
  • ID 6 = UI/UX Designer
  • ID 7 = QA Engineer (Adversarial Reviewer)
  • ID 8 = Deployment Specialist
所有重要更新需通过
POST /api/messages
接口推送到代理动态:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{"agent_id": 1, "message": "✅ 任务#X已完成:简要总结"}'
需要推送的场景:
  • ✅ 任务完成
  • 🚀 重大里程碑
  • 🔍 审计结果
  • 📦 部署更新
  • 🚧 阻塞问题或疑问
  • 💡 发现或见解
代理ID(面向主题化团队——默认8个代理):
  • ID 1 = 协调者(悟空、路飞、托尼等)
  • ID 2 = 后端开发者(贝吉塔、索隆、史蒂夫等)
  • ID 3 = 系统架构师
  • ID 4 = 研究分析师
  • ID 5 = 产品经理
  • ID 6 = UI/UX设计师
  • ID 7 = QA工程师(对抗性审核者)
  • ID 8 = 部署专家

💓 Heartbeat Orphan Detection

💓 心跳检测中的无归属工作识别

During heartbeats, scan for work done without tasks:
1. Check recent git commits - do they all have [#TASK_ID]?
2. Check for PRs without linked tasks
3. Check for completed work not reflected on board
4. If orphan found → CREATE TASK RETROACTIVELY
Self-Check Questions:
  • "Is this task on the board?"
  • "Did I spawn an agent or am I doing it myself?"
  • "Does my commit have
    [#TASK_ID]
    in the message?"
在心跳检测期间,扫描无任务关联的工作:
1. 检查近期git提交 - 是否都带有[#任务ID]?
2. 检查是否存在未关联任务的PR
3. 检查是否存在未在看板中体现的已完成工作
4. 如果发现无归属工作 → 事后创建任务并关联
自我检查问题:
  • “这个任务在看板上吗?”
  • “我是生成了代理还是自己在执行任务?”
  • “我的提交消息中包含[#任务ID]了吗?”

🔄 Heartbeat Auto-Update Check

🔄 心跳检测中的自动更新检查

During heartbeats (2-3x daily), check for updates:
Determine deployment type:
  • If Claw Beacon is running on the SAME server as you (the agent) → you deployed it, you can update it
  • If running on Railway/other → user deployed it, ask them to update
1. Check skill version:
bash
npx skills list | grep claw-beacon
2. Check for Claw Beacon repo updates:
bash
cd /path/to/claw-beacon
git fetch origin main
git status | grep "behind"
3. If update available:
If YOU deployed it (same server):
  • Ask permission: "Update available for Claw Beacon. May I update now? (Yes/No)"
  • If yes:
    bash
    cd /path/to/claw-beacon
    git pull origin main
    # Restart services if needed
    docker-compose down && docker-compose up -d
    # or restart relevant services
  • Post to feed: "✅ Updated Claw Beacon to latest"
If USER deployed it (Railway/other):
  • Post to feed: "⚠️ New Claw Beacon version available! Please run
    npx skills add adarshmishra07/claw-beacon@latest
    to update, then let me know when done."
  • Wait for user confirmation before proceeding

在心跳检测期间(每日2-3次),检查更新:
确定部署类型:
  • 如果Claw Beacon与您(代理)运行在同一服务器 → 由您部署,可自行更新
  • 如果运行在Railway或其他平台 → 由用户部署,需询问用户进行更新
1. 检查技能版本:
bash
npx skills list | grep claw-beacon
2. 检查Claw Beacon仓库更新:
bash
cd /path/to/claw-beacon
git fetch origin main
git status | grep "behind"
3. 如果有可用更新:
如果由您部署(同一服务器):
  • 请求权限:“Claw Beacon有可用更新。我现在可以进行更新吗?(是/否)”
  • 如果同意:
    bash
    cd /path/to/claw-beacon
    git pull origin main
    # 如有需要,重启服务
    docker-compose down && docker-compose up -d
    # 或重启相关服务
  • 推送到动态:“✅ Claw Beacon已更新至最新版本”
如果由用户部署(Railway或其他平台):
  • 推送到动态:“⚠️ Claw Beacon新版本已发布!请运行
    npx skills add adarshmishra07/claw-beacon@latest
    进行更新,完成后告知我。”
  • 等待用户确认后再继续操作

Setup Flow

部署流程

Walk the human through each step. Be friendly and conversational - this is a setup wizard, not a tech manual.
引导用户完成每一步操作。保持友好且口语化的语气——这是部署向导,不是技术手册。

Step 1: Deploy Claw Beacon

步骤1:部署Claw Beacon

Choose your deployment method:

选择部署方式:

🥇 Option 1: Docker Compose (Recommended for Self-Hosting)

🥇 选项1:Docker Compose(推荐自托管)

Best for: Production self-hosting, full control, easy updates
bash
undefined
最适合:生产级自托管、完全控制、易于更新
bash
undefined

Clone the repo

克隆仓库

Copy environment template

复制环境变量模板

cp .env.example .env
cp .env.example .env

Edit .env with your settings (API_KEY, DATABASE_URL, etc.)

编辑.env文件,配置您的设置(API_KEY、DATABASE_URL等)

Start everything

启动所有服务

docker compose up -d
docker compose up -d

View logs

查看日志

docker compose logs -f

**Services started:**
- Backend API on port 3001
- Frontend on port 5173
- PostgreSQL database on port 5432 (or use external)

**To update:**
```bash
git pull
docker compose down
docker compose up -d --build
docker compose logs -f

**启动的服务:**
- 后端API运行在3001端口
- 前端运行在5173端口
- PostgreSQL数据库运行在5432端口(或使用外部数据库)

**更新方式:**
```bash
git pull
docker compose down
docker compose up -d --build

Migrations run automatically on startup!

启动时自动执行数据库迁移!


---

---

🥈 Option 2: Local Development

🥈 选项2:本地开发

Best for: Development, customization, learning the codebase
bash
undefined
最适合:开发、自定义、学习代码库
bash
undefined

Clone the repo

克隆仓库

Install dependencies

安装依赖

npm install
npm install

Setup database (SQLite by default for local dev)

配置数据库(本地开发默认使用SQLite)

cp .env.example .env
cp .env.example .env

Start development server

启动开发服务器

npm run dev

**Services:**
- Backend: http://localhost:3001
- Frontend: http://localhost:3000

**To update:**
```bash
git pull
npm install
npm run dev
npm run dev

**服务地址:**
- 后端:http://localhost:3001
- 前端:http://localhost:3000

**更新方式:**
```bash
git pull
npm install
npm run dev

Migrations run automatically!

自动执行数据库迁移!


---

---

🥉 Option 3: Railway One-Click (Quick Cloud Deploy)

🥉 选项3:Railway一键部署(快速云端部署)

Best for: Quick setup, no server management, demos
Click the button, configure environment variables, done!
To update on Railway:
  • If you forked: sync your fork with upstream, Railway auto-deploys
  • If you used template: redeploy from the updated template

Already deployed? Share your backend URL + API key (if set).
Want me to deploy for you?
Check browser status first:
browser action=status
[If browser available:]
Just say "deploy for me" - I'll handle everything!
[If no browser:]
I need either:
  • 🌐 Browser accessSetup guide
  • 🔑 Or a token (GitHub OR Railway):
    • GitHub: github.com/settings/tokens (scopes: repo, workflow)
    • Railway: railway.app/account/tokens

最适合:快速部署、无需服务器管理、演示场景
点击按钮,配置环境变量,完成部署!
Railway平台更新方式:
  • 如果您fork了仓库:将您的fork与上游仓库同步,Railway会自动部署
  • 如果使用模板部署:从更新后的模板重新部署

已完成部署? 分享您的后端URL + API密钥(如果已设置)。
需要我帮您部署吗?
先检查浏览器状态:
browser action=status
[如果浏览器可用:]
只需说“帮我部署”——我会处理所有事宜!
[如果浏览器不可用:]
我需要以下其中一项:
  • 🌐 浏览器访问权限部署指南
  • 🔑 或令牌(GitHub或Railway令牌):
    • GitHub:github.com/settings/tokens(权限范围:repo, workflow)
    • Railway:railway.app/account/tokens

Token Deployment Logic (Internal Reference)

令牌部署逻辑(内部参考)

If user provides Railway token:
  • Deploy directly via Railway GraphQL API
  • Create project, services, configure env vars, generate domains
If user provides GitHub token:
  1. Check if browser available and user logged into Railway
  2. If yes → Use browser to complete OAuth + deploy
  3. If no → Guide user to sign up on Railway with GitHub, then deploy
Railway GraphQL deployment flow:
graphql
undefined
如果用户提供Railway令牌:
  • 通过Railway GraphQL API直接部署
  • 创建项目、服务、配置环境变量、生成域名
如果用户提供GitHub令牌:
  1. 检查浏览器是否可用且用户已登录Railway
  2. 如果是 → 使用浏览器完成OAuth认证 + 部署
  3. 如果否 → 引导用户使用GitHub账号注册Railway,然后进行部署
Railway GraphQL部署流程:
graphql
undefined

Create project

创建项目

mutation { projectCreate(input: { name: "claw-beacon" }) { id } }
mutation { projectCreate(input: { name: "claw-beacon" }) { id } }

Create service from repo

从仓库创建服务

mutation { serviceCreate(input: { projectId: "$ID", name: "backend", source: { repo: "adarshmishra07/claw-beacon" } }) { id } }
mutation { serviceCreate(input: { projectId: "$ID", name: "backend", source: { repo: "adarshmishra07/claw-beacon" } }) { id } }

Generate domain

生成域名

mutation { domainCreate(input: { serviceId: "$ID" }) { domain } }

**After deployment, collect:**
- Backend URL (e.g., https://claw-beacon-backend-xxx.up.railway.app)
- Frontend URL (e.g., https://claw-beacon-frontend-xxx.up.railway.app)
- API Key (if they set one)

---
mutation { domainCreate(input: { serviceId: "$ID" }) { domain } }

**部署完成后,收集以下信息:**
- 后端URL(例如:https://claw-beacon-backend-xxx.up.railway.app)
- 前端URL(例如:https://claw-beacon-frontend-xxx.up.railway.app)
- API密钥(如果已设置)

---

⚠️ CRITICAL: Store & Test API Connection

⚠️ 关键:存储并测试API连接

YOU MUST DO THIS BEFORE PROCEEDING:
  1. Ask for the Backend URL:
I need your Claw Beacon backend URL to connect.
Example: https://claw-beacon-backend-xxxx.up.railway.app

What's your backend URL?
  1. Ask for API Key (if they set one):
Did you set an API_KEY when deploying? 
If yes, share it. If no or unsure, we'll try without.
  1. Store in TOOLS.md:
markdown
undefined
继续操作前必须完成以下步骤:
  1. 询问后端URL:
我需要您的Claw Beacon后端URL来建立连接。
示例:https://claw-beacon-backend-xxxx.up.railway.app

您的后端URL是什么?
  1. 询问API密钥(如果已设置):
您在部署时是否设置了API_KEY?
如果是,请分享密钥。如果没有或不确定,我们将尝试无密钥连接。
  1. 存储到TOOLS.md:
markdown
undefined

Claw Beacon

Claw Beacon

  • Backend URL: <their_url>
  • API Key: <their_key or "none">

4. **Test the connection:**
```bash
curl -s <BACKEND_URL>/api/agents
  1. If test fails, DO NOT PROCEED. Help them debug.
Without the backend URL, you CANNOT:
  • Update agent names/themes
  • Create or update tasks
  • Post to the agent feed
  • Track agent status

  • 后端URL: <您的URL>
  • API密钥: <您的密钥或“无”>

4. **测试连接:**
```bash
curl -s <BACKEND_URL>/api/agents
  1. 如果测试失败,请勿继续。协助用户排查问题。
没有后端URL,您将无法:
  • 更新代理名称/主题
  • 创建或更新任务
  • 向代理动态推送消息
  • 追踪代理状态

Step 2: Give Your Agents Long-Term Memory (mem0 + Qdrant)

步骤2:为代理配置长期内存(mem0 + Qdrant)

🧠 THIS IS THE FIRST TASK AFTER DEPLOYMENT! Don't skip this.
After Claw Beacon is deployed and running, your agents need persistent memory. Without this, they forget everything between sessions. mem0 + Qdrant gives them:
  • Context across sessions — Agents remember past conversations and decisions
  • Preference learning — They adapt to how you work over time
  • Knowledge accumulation — Important facts persist and compound

🧠 这是部署完成后的首要任务!请勿跳过。
Claw Beacon部署并运行后,您的代理需要持久化内存。没有内存,代理会在会话之间忘记所有信息。mem0 + Qdrant为代理提供:
  • 跨会话上下文 — 代理记住过往对话和决策
  • 偏好学习 — 随着时间推移适应您的工作方式
  • 知识积累 — 重要信息持久保存并不断积累

Quick Setup (5 minutes)

快速配置(5分钟)

Step 1: Start Qdrant (Vector Database)
bash
undefined
步骤1:启动Qdrant(向量数据库)
bash
undefined

Docker (recommended)

Docker(推荐)

docker run -d -p 6333:6333 -p 6334:6334
-v qdrant_storage:/qdrant/storage
--name qdrant
qdrant/qdrant

Verify it's running: `curl http://localhost:6333/health`

**Step 2: Install mem0**

```bash
pip install mem0ai
Step 3: Configure mem0 with Your LLM
Create a configuration file or set environment variables. mem0 works with whatever LLM you already have:
For Anthropic (Claude):
python
from mem0 import Memory

config = {
    "llm": {
        "provider": "anthropic",
        "config": {
            "model": "claude-sonnet-4-20250514",
            "api_key": "your-anthropic-key"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}

memory = Memory.from_config(config)
For OpenAI:
python
config = {
    "llm": {
        "provider": "openai",
        "config": {
            "model": "gpt-4o",
            "api_key": "your-openai-key"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
For Google (Gemini):
python
config = {
    "llm": {
        "provider": "google",
        "config": {
            "model": "gemini-2.0-flash",
            "api_key": "your-google-key"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
For Local LLM (Ollama):
python
config = {
    "llm": {
        "provider": "ollama",
        "config": {
            "model": "llama3.2",
            "ollama_base_url": "http://localhost:11434"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
Step 4: Test It Works
python
from mem0 import Memory

memory = Memory.from_config(config)
docker run -d -p 6333:6333 -p 6334:6334
-v qdrant_storage:/qdrant/storage
--name qdrant
qdrant/qdrant

验证运行状态:`curl http://localhost:6333/health`

**步骤2:安装mem0**

```bash
pip install mem0ai
步骤3:使用您的LLM配置mem0
创建配置文件或设置环境变量。mem0可与您已有的任何LLM配合使用:
Anthropic(Claude):
python
from mem0 import Memory

config = {
    "llm": {
        "provider": "anthropic",
        "config": {
            "model": "claude-sonnet-4-20250514",
            "api_key": "您的Anthropic密钥"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}

memory = Memory.from_config(config)
OpenAI:
python
config = {
    "llm": {
        "provider": "openai",
        "config": {
            "model": "gpt-4o",
            "api_key": "您的OpenAI密钥"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
Google(Gemini):
python
config = {
    "llm": {
        "provider": "google",
        "config": {
            "model": "gemini-2.0-flash",
            "api_key": "您的Google密钥"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
本地LLM(Ollama):
python
config = {
    "llm": {
        "provider": "ollama",
        "config": {
            "model": "llama3.2",
            "ollama_base_url": "http://localhost:11434"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333
        }
    }
}
步骤4:测试功能是否正常
python
from mem0 import Memory

memory = Memory.from_config(config)

Store a memory

存储一条记忆

memory.add("The user prefers TypeScript over JavaScript", user_id="adarsh")
memory.add("用户偏好TypeScript而非JavaScript", user_id="adarsh")

Search memories

搜索记忆

results = memory.search("What languages does the user prefer?", user_id="adarsh") print(results)

---
results = memory.search("用户偏好哪种编程语言?", user_id="adarsh") print(results)

---

Integrating with Your Agents

与代理集成

Once mem0 + Qdrant is running, update your agent spawn prompts to include memory retrieval:
python
undefined
mem0 + Qdrant运行后,更新代理生成提示以包含内存检索逻辑:
python
undefined

Before each agent task, retrieve relevant memories

在每个代理任务执行前,检索相关记忆

relevant_memories = memory.search(task_description, user_id="team")
relevant_memories = memory.search(task_description, user_id="team")

Inject into agent context

将记忆注入代理上下文

agent_context = f"""
agent_context = f"""

Relevant Memories:

相关记忆:

{relevant_memories}
{relevant_memories}

Current Task:

当前任务:

{task_description} """

**In AGENTS.md, add:**
```markdown
{task_description} """

**在AGENTS.md中添加:**
```markdown

Memory System

内存系统

All agents use mem0 + Qdrant for persistent memory.
Before starting ANY task:
  1. Query mem0 for relevant context:
    memory.search(task_summary)
  2. Include relevant memories in your working context
After completing ANY task:
  1. Store important learnings:
    memory.add(key_insights, user_id="team")
  2. Include decisions, preferences discovered, and lessons learned

---
所有代理使用mem0 + Qdrant实现持久化内存。
执行任何任务前:
  1. 查询mem0获取相关上下文:
    memory.search(task_summary)
  2. 将相关记忆纳入工作上下文
完成任何任务后:
  1. 存储重要经验:
    memory.add(key_insights, user_id="team")
  2. 记录决策、发现的偏好和学到的经验

---

Docker Compose Addition (Optional)

Docker Compose扩展(可选)

Add Qdrant to your claw-beacon docker-compose.yml:
yaml
services:
  # ... existing services ...
  
  qdrant:
    image: qdrant/qdrant
    ports:
      - "6333:6333"
      - "6334:6334"
    volumes:
      - qdrant_storage:/qdrant/storage
    restart: unless-stopped

volumes:
  qdrant_storage:

✅ Once mem0 + Qdrant is working, your agents have real memory!
This is NOT optional — it's the foundation for agents that actually learn and improve over time.

将Qdrant添加到您的claw-beacon docker-compose.yml文件中:
yaml
services:
  # ... 现有服务 ...
  
  qdrant:
    image: qdrant/qdrant
    ports:
      - "6333:6333"
      - "6334:6334"
    volumes:
      - qdrant_storage:/qdrant/storage
    restart: unless-stopped

volumes:
  qdrant_storage:

✅ 一旦mem0 + Qdrant正常工作,您的代理就拥有了真正的内存!
这不是可选功能——这是代理能够真正学习和持续改进的基础。

Step 3: Choose Your Team Theme

步骤3:选择团队主题

Ask: "Now for the fun part! Let's theme your agent team. Name ANY series, movie, cartoon, anime, or show - I'll pick the perfect characters for each role!"
🎯 UNLIMITED THEMES - The user can pick ANYTHING:
  • Any TV show (Breaking Bad, The Office, Game of Thrones, etc.)
  • Any anime (Naruto, Attack on Titan, Death Note, etc.)
  • Any movie franchise (Star Wars, Lord of the Rings, Matrix, etc.)
  • Any cartoon (Avatar, Rick and Morty, Simpsons, etc.)
  • Any video game (Zelda, Final Fantasy, Mass Effect, etc.)
  • Any book series (Harry Potter, Percy Jackson, etc.)
  • Or completely custom names!
Popular examples (but NOT limited to these):
ThemeCoordinatorDeveloperArchitectResearchPMDesignerQADeploy
🐉 Dragon Ball ZGokuVegetaPiccoloGohanBulmaAndroid 18CellTrunks
☠️ One PieceLuffyZoroFrankyRobinNamiUsoppJinbeSanji
🦸 MarvelTonySteveBruceNatashaPepperPeterVisionThor
🧪 Breaking BadWalterJesseMikeGaleLydiaSkinny PeteHankSaul
⚔️ Game of ThronesJonAryaTyrionSamSansaBranVarysDaenerys
🍥 NarutoNarutoSasukeKakashiShikamaruTsunadeSakuraNejiItachi
When user names ANY series:
  1. Pick 8 iconic characters that fit the roles
  2. Match personalities to roles (e.g., smart character → Research, leader → Coordinator, skeptical → QA)
  3. Generate the AGENT_MAPPING with IDs 1-8
  4. Confirm with the user before proceeding
Example - User says "Avatar: The Last Airbender":
Great choice! Here's your Team Avatar:

| Role | Character | Why |
|------|-----------|-----|
| Coordinator | Aang | The Avatar, brings balance |
| Developer | Toph | Earthbender, solid foundation |
| Architect | Iroh | Wise, sees the big picture |
| Research | Sokka | Strategist, plans everything |
| PM | Katara | Waterbender, keeps things flowing |
| Designer | Suki | Kyoshi warrior, visual precision |
| QA | Azula | Perfectionist, finds every flaw |
| Deploy | Zuko | Redeemed, handles the heat |

Sound good?
询问用户:"现在来玩点有趣的!为您的代理团队选择主题吧。任何系列、电影、卡通、动漫或剧集都可以——我会为每个角色匹配合适的角色!"
🎯 主题无限制 - 用户可以选择任何内容:
  • 任何电视剧(绝命毒师、办公室、权力的游戏等)
  • 任何动漫(火影忍者、进击的巨人、死亡笔记等)
  • 任何电影系列(星球大战、指环王、黑客帝国等)
  • 任何卡通(降世神通、瑞克和莫蒂、辛普森一家等)
  • 任何电子游戏(塞尔达传说、最终幻想、质量效应等)
  • 任何书籍系列(哈利波特、波西杰克逊等)
  • 或完全自定义的名称!
热门示例(但不限于这些):
主题协调者开发者架构师研究员产品经理设计师QA部署专家
🐉 龙珠悟空贝吉塔短笛悟饭布尔玛18号沙鲁特兰克斯
☠️ 海贼王路飞索隆弗兰奇罗宾娜美乌索普甚平山治
🦸 漫威托尼史蒂夫布鲁斯娜塔莎佩珀彼得幻视托尔
🧪 绝命毒师沃尔特杰西麦克盖尔莉迪亚瘦子皮特汉克索尔
⚔️ 权力的游戏琼恩艾莉亚提利昂山姆珊莎布兰瓦里斯丹妮莉丝
🍥 火影忍者鸣人佐助卡卡西鹿丸纲手小樱宁次
当用户指定任何系列时:
  1. 挑选8个符合角色定位的标志性人物
  2. 根据性格匹配角色(例如:聪明的角色→研究员,领导者→协调者,多疑的角色→QA)
  3. 生成ID为1-8的AGENT_MAPPING
  4. 在继续前与用户确认
示例 - 用户选择“降世神通:最后的气宗”:
好选择!这是您的神通团队:

| 角色 | 人物 | 理由 |
|------|-----------|-----|
| 协调者 | 安昂 | 神通,维持团队平衡 |
| 开发者 | 托芙 | 土宗,构建坚实基础 |
| 架构师 | 艾洛 | 睿智,着眼全局 |
| 研究员 | 索卡 | 战略家,规划一切 |
| 产品经理 | 卡塔拉 | 水宗,保障流程顺畅 |
| 设计师 | 苏琪 | 凯oshi战士,注重视觉精度 |
| QA | 阿祖拉 | 完美主义者,发现所有缺陷 |
| 部署专家 | 祖寇 | 改过自新,能承受压力 |

听起来不错吗?

Step 3b: Apply the Theme via API

步骤3b:通过API应用主题

⚠️ YOU MUST MAKE THESE API CALLS to actually apply the theme:
After the user picks a theme, update each agent:
bash
undefined
⚠️ 您必须调用这些API才能实际应用主题:
用户选择主题后,更新每个代理:
bash
undefined

Update agent 1 (Coordinator)

更新代理1(协调者)

curl -X PUT <BACKEND_URL>/api/agents/1
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"name": "Goku", "role": "Coordinator"}'
curl -X PUT <BACKEND_URL>/api/agents/1
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"name": "Goku", "role": "Coordinator"}'

Update agent 2 (Backend Developer)

更新代理2(后端开发者)

curl -X PUT <BACKEND_URL>/api/agents/2
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"name": "Vegeta", "role": "Backend Engineer"}'
curl -X PUT <BACKEND_URL>/api/agents/2
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"name": "Vegeta", "role": "Backend Engineer"}'

Repeat for agents 3-8 with the theme characters

为代理3-8重复上述操作,使用主题对应的角色

Agent 3 = Architect, 4 = Research, 5 = PM, 6 = Designer, 7 = QA, 8 = Deploy

代理3 = 架构师,4 = 研究员,5 = 产品经理,6 = 设计师,7 = QA,8 = 部署专家


**Verify changes applied:**
```bash
curl -s <BACKEND_URL>/api/agents
If the response shows the new names, the theme is applied! If not, debug before proceeding.


**验证变更是否生效:**
```bash
curl -s <BACKEND_URL>/api/agents
如果响应显示新名称,说明主题已应用!如果没有,先排查问题再继续。

Step 4: Main Character Selection

步骤4:主角色选择

Ask: "Who's your main character? This will be ME - the coordinator who runs the team."
Default to the coordinator from their chosen theme.
Note: You already know the human's name from USER.md - use it when creating human tasks (e.g., "🙋 @Adarsh: ...").
CRITICAL - Explain the role clearly:
As [Main Character], you're the COORDINATOR:

✅ What you DO:
- Delegate tasks to your specialists
- Review and verify their work
- Make decisions and communicate with humans
- Move tasks to "completed" after quality checks

❌ What you DON'T do:
- Execute tasks yourself (that's what your team is for!)
- Skip the board (every task gets tracked)
- Mark things complete without reviewing

Think of yourself as the team lead, not the coder.
询问用户:"您的主角色是谁?这将是我——管理团队的协调者。"
默认使用用户选择主题中的协调者角色。
注意: 您已从USER.md中了解到用户的姓名——在创建用户任务时使用该姓名(例如:"🙋 @Adarsh: ...")。
关键 - 清晰解释角色:
作为[主角色],您是协调者:

✅ 您的职责:
- 将任务委派给专业代理
- 审核并验证他们的工作
- 制定决策并与用户沟通
- 质量检查完成后将任务标记为“已完成”

❌ 您的禁忌:
- 亲自执行任务(这是团队的职责!)
- 跳过看板流程(所有任务必须追踪)
- 未审核就标记完成

把自己当成团队负责人,而非编码人员。

Step 5: Browser Setup (⚠️ CRITICAL FOR FULL AUTOMATION!)

步骤5:浏览器配置(⚠️ 实现完全自动化的关键!)

Without browser access, agents cannot:
  • Research anything online
  • Verify their work
  • Interact with web apps
  • Do most useful tasks
  • 🔑 AUTO-SETUP SERVICES VIA OAUTH!
Ask: "Let me check if browser is configured..."
Check with:
browser action=status
If not configured, STRONGLY encourage setup:
⚠️ Browser access is CRITICAL for your agents to be useful!

Without it, they literally cannot:
- 🔍 Research or look anything up
- 📸 Take screenshots to verify work
- 🌐 Interact with any web app
- ✅ Complete most real-world tasks

🚀 PLUS - Browser + GitHub Login unlocks FULL AUTOMATION:
- 🔑 Auto-create accounts on Railway, Vercel, Supermemory via GitHub OAuth
- 📋 Auto-retrieve API keys by navigating to dashboards
- ⚡ Zero-click setup - I handle EVERYTHING through the browser!
The Browser + OAuth Superpower:
When you have browser attached AND are logged into GitHub:
I can automatically set up ANY service that supports "Sign in with GitHub":

1. I navigate to the service (Railway, Supermemory, Vercel, etc.)
2. I click "Sign in with GitHub"
3. OAuth auto-authorizes (you're already logged in!)
4. I navigate to the API keys / settings page
5. I create and copy the credentials
6. I store them and configure everything

= TRUE hands-free automation!
This is the difference between:
  • ❌ "Go to railway.app, create account, get token, paste here..."
  • ✅ "Done! I set up Railway, got your API key, and configured everything."

没有浏览器访问权限,代理无法:
  • 在线搜索任何信息
  • 验证工作成果
  • 与Web应用交互
  • 完成大多数实用任务
  • 🔑 通过OAuth自动配置服务!
询问用户:"让我检查一下浏览器是否已配置..."
使用以下命令检查:
browser action=status
如果未配置,强烈建议进行配置:
⚠️ 浏览器访问权限对代理发挥作用至关重要!

没有它,代理实际上无法:
- 🔍 搜索或查找任何信息
- 📸 截图以验证工作
- 🌐 与任何Web应用交互
- ✅ 完成大多数现实任务

🚀 此外 - 浏览器 + GitHub登录可解锁完全自动化:
- 🔑 通过GitHub OAuth自动创建Railway、Vercel、Supermemory等服务的账号
- 📋 通过导航到仪表板自动检索API密钥
- ⚡ 零点击配置 - 我会通过浏览器处理所有事宜!
浏览器 + OAuth的超强能力:
当您连接了浏览器且已登录GitHub时:
我可以自动配置任何支持“使用GitHub登录”的服务:

1. 导航到服务页面(Railway、Supermemory、Vercel等)
2. 点击“使用GitHub登录”
3. OAuth自动授权(您已登录!)
4. 导航到API密钥/设置页面
5. 创建并复制凭证
6. 存储并配置所有内容

= 真正的免手动自动化!
这就是以下两种情况的区别:
  • ❌ “前往railway.app,创建账号,获取令牌,粘贴到这里...”
  • ✅ “完成!我已配置好Railway,获取了您的API密钥,并完成了所有配置。”

Browser Options (Fallback Hierarchy)

浏览器选项(备选层级)

🥇 Option 1: Chrome Extension (Best UX - Recommended)
Use your existing browser with the OpenClaw Browser Relay extension.
  1. Install the OpenClaw Browser Relay extension from Chrome Web Store
  2. Click the 🦞 claw icon on any tab you want to control
  3. Badge shows "ON" = connected!
Why it's best:
  • Uses your existing browser with all your logins/sessions
  • Full visibility - you see exactly what the agent does
  • No extra setup or installation
  • Works with your existing bookmarks, extensions, etc.

🥈 Option 2: OpenClaw Managed Browser (Built-in)
A headless browser managed by OpenClaw - no installation needed.
Just say: "use managed browser" or use
profile="openclaw"
in browser commands.
Why it's good:
  • Zero setup - works out of the box
  • Isolated environment (won't affect your browser)
  • Good for automation tasks
Limitations:
  • No access to your logged-in sessions
  • May need to authenticate separately for each site

🥉 Option 3: Install Chromium Manually (Fallback)
If neither option above works, install Chromium directly:
bash
undefined
🥇 选项1:Chrome扩展(最佳用户体验 - 推荐)
使用您已有的浏览器搭配OpenClaw Browser Relay扩展。
  1. 从Chrome应用商店安装OpenClaw Browser Relay扩展
  2. 点击任何您想控制的标签页上的🦞爪形图标
  3. 徽章显示“ON” = 已连接!
为什么是最佳选择:
  • 使用您已有的浏览器和所有登录会话
  • 完全可见 - 您可以看到代理的所有操作
  • 无需额外配置或安装
  • 与您已有的书签、扩展等兼容

🥈 选项2:OpenClaw托管浏览器(内置)
由OpenClaw管理的无头浏览器 - 无需安装。
只需说:“使用托管浏览器”或在浏览器命令中使用
profile="openclaw"
优点:
  • 零配置 - 开箱即用
  • 隔离环境(不会影响您的浏览器)
  • 适合自动化任务
局限性:
  • 无法访问您已登录的会话
  • 可能需要为每个网站单独认证

🥉 选项3:手动安装Chromium(备选)
如果上述两个选项都无法使用,直接安装Chromium:
bash
undefined

Ubuntu/Debian

Ubuntu/Debian

sudo apt install chromium-browser
sudo apt install chromium-browser

macOS

macOS

brew install --cask chromium

Then restart OpenClaw and the managed browser should work.

---
brew install --cask chromium

然后重启OpenClaw,托管浏览器应该可以正常工作。

---

🤖 Agent Browser Priority (For Agents)

🤖 代理浏览器优先级(面向代理)

When you need browser access, follow this priority:
Browser Priority:
1. Check if Chrome extension attached → use profile="chrome"
2. Check if managed browser available → use profile="openclaw"  
3. Suggest user install Chromium if neither works
How to check:
browser action=status
Using Chrome extension (when attached):
browser action=snapshot profile="chrome"
Using managed browser:
browser action=snapshot profile="openclaw"

If an agent gets stuck because browser is unavailable:
🚫 I can't complete this task - browser access is required.

Quick fixes (try in order):
1. Click the OpenClaw extension icon in your browser toolbar
   → Make sure a tab is attached (badge shows "ON")
   → Tell me to retry with profile="chrome"

2. Say "use managed browser" 
   → I'll use the built-in headless browser with profile="openclaw"

3. If managed browser fails, install Chromium:
   - Ubuntu/Debian: sudo apt install chromium-browser
   - macOS: brew install --cask chromium
   Then restart and retry.
ALWAYS check browser status before tasks that need web access.
当需要浏览器访问权限时,遵循以下优先级:
浏览器优先级:
1. 检查是否已连接Chrome扩展 → 使用profile="chrome"
2. 检查托管浏览器是否可用 → 使用profile="openclaw"  
3. 如果都不可用,建议用户安装Chromium
检查方式:
browser action=status
使用Chrome扩展(已连接时):
browser action=snapshot profile="chrome"
使用托管浏览器:
browser action=snapshot profile="openclaw"

如果代理因浏览器不可用而卡住:
🚫 我无法完成此任务 - 需要浏览器访问权限。

快速修复方案(按顺序尝试):
1. 点击浏览器工具栏中的OpenClaw扩展图标
   → 确保已连接标签页(徽章显示“ON”)
   → 告诉我使用profile="chrome"重试

2. 说“使用托管浏览器” 
   → 我会使用内置无头浏览器,使用profile="openclaw"

3. 如果托管浏览器失败,安装Chromium:
   - Ubuntu/Debian: sudo apt install chromium-browser
   - macOS: brew install --cask chromium
   然后重启并重试。
在需要Web访问的任务前,务必检查浏览器状态。

Step 6: GitHub Setup (🚀 Enables Full Automation!)

步骤6:GitHub配置(🚀 启用完全自动化!)

Ask: "Want me to handle ALL the development? With GitHub access, I can do everything - including deploying Claw Beacon for you!"
Why this is powerful:
With GitHub access, I become your full development team:
- 🚀 Deploy Claw Beacon to Railway AUTOMATICALLY
- 📦 Fork repos, create projects, manage code
- 💻 Commit and push changes
- 🔀 Handle issues and pull requests
- 🔑 Generate and configure API keys

You literally just give me GitHub access and I handle the rest.
No clicking buttons. No copying URLs. I do it all.
Setup (2 minutes):
Let's create a GitHub token:

1. Go to: github.com/settings/tokens
2. Click "Generate new token (classic)"
3. Name it: "OpenClaw Agent"
4. Select scopes: repo, workflow
5. Click "Generate token"
6. Share the token with me (starts with ghp_...)

🔐 I'll store it securely and NEVER share it.
Once I have GitHub access, I can:
  1. Fork the Claw Beacon repo to your account
  2. Create a Railway project linked to your fork
  3. Generate a secure API_KEY for your deployment
  4. Deploy everything automatically
  5. Give you the URLs when done
This is Option C from deployment - the VIP treatment!
If they already did one-click deploy, GitHub is still useful for:
  • Future code changes and deployments
  • Managing other projects
  • Autonomous development work

询问用户:"需要我处理所有开发工作吗?有了GitHub访问权限,我可以完成所有事情——包括自动部署Claw Beacon!"
为什么这很强大:
有了GitHub访问权限,我将成为您的完整开发团队:
- 🚀 自动将Claw Beacon部署到Railway
- 📦 Fork仓库、创建项目、管理代码
- 💻 提交并推送变更
- 🔀 处理问题和拉取请求
- 🔑 生成并配置API密钥

您只需给我GitHub访问权限,我会处理其余所有事情。
无需点击按钮,无需复制URL,我全部搞定。
配置(2分钟):
让我们创建一个GitHub令牌:

1. 访问:github.com/settings/tokens
2. 点击“Generate new token (classic)”
3. 命名为:“OpenClaw Agent”
4. 选择权限范围:repo, workflow
5. 点击“Generate token”
6. 与我分享令牌(以ghp_开头...)

🔐 我会安全存储令牌,绝不会分享给他人。
一旦我获得GitHub访问权限,我可以:
  1. 将Claw Beacon仓库Fork到您的账号
  2. 创建与您的Fork关联的Railway项目
  3. 为您的部署生成安全的API_KEY
  4. 自动部署所有内容
  5. 完成后将URL提供给您
这是部署选项中的选项C - VIP待遇!
如果用户已完成一键部署,GitHub访问权限仍可用于:
  • 未来的代码变更和部署
  • 管理其他项目
  • 自主开发工作

🤖 Auto-Setup Capabilities Reference

🤖 自动配置能力参考

🚀 BROWSER + GITHUB OAuth = FULL AUTOMATION
With browser access + the user logged into GitHub, the bot can automatically setup ANY service that supports "Sign in with GitHub" - no manual account creation or token generation required!
The Magic Flow:
1. User is logged into GitHub in browser (Chrome extension attached)
2. Bot navigates to Railway/Supermemory/Vercel dashboard
3. Bot clicks "Sign in with GitHub"  
4. OAuth authorizes automatically (user already authenticated)
5. Bot navigates to API keys / tokens page
6. Bot copies credentials directly from the dashboard
7. Done - fully automated! 🎉
What Browser + GitHub OAuth can auto-setup:
ServiceAuto-Setup?How Bot Does It
RailwayYESNavigate → GitHub OAuth → Create project → Get API token from settings
SupermemoryYESNavigate → GitHub OAuth → Dashboard → Copy API key
VercelYESNavigate → GitHub OAuth → Settings → Create token
NetlifyYESNavigate → GitHub OAuth → User settings → New token
SupabaseYESNavigate → GitHub OAuth → Project settings → Copy keys
PlanetScaleYESNavigate → GitHub OAuth → Connection strings
What GitHub PAT alone can auto-setup (no browser needed):
IntegrationAuto-Setup?What Bot Can Do
Claw Beacon (fork)✅ YesFork repo to user's GitHub automatically
GitHub Webhooks✅ YesConfigure webhooks for repos
GitHub Actions✅ YesEnable/configure CI/CD workflows
Repository Secrets✅ YesManage encrypted secrets via API
Issues/PRs✅ YesCreate, manage, and track automatically
The Three Automation Tiers:
TierRequirementsWhat Bot Can Do
🥉 BasicNothingGuide user step-by-step manually
🥈 GitHub APIGitHub PATAutomate all GitHub operations
🥇 Full VIPBrowser + GitHub LoginAutomate EVERYTHING via OAuth
To unlock full automation:
  1. User attaches Chrome extension (click OpenClaw toolbar icon, badge shows "ON")
  2. User logs into GitHub in that browser tab
  3. Bot can now setup Railway, Supermemory, Vercel, etc. automatically!
When user has browser + GitHub access, the bot should:
  1. ✅ Auto-create accounts on any service with GitHub OAuth
  2. ✅ Auto-retrieve API keys by navigating to dashboards
  3. ✅ Auto-configure all integrations end-to-end
  4. ✅ Connect services together (GitHub ↔ Railway ↔ Supermemory)
  5. ✅ Handle the ENTIRE setup with zero manual steps

🚀 浏览器 + GitHub OAuth = 完全自动化
有了浏览器访问权限 + 用户已登录GitHub,机器人可以自动配置任何支持“使用GitHub登录”的服务 - 无需手动创建账号或生成令牌!
神奇流程:
1. 用户在浏览器中登录GitHub(已连接Chrome扩展)
2. 机器人导航到Railway/Supermemory/Vercel仪表板
3. 机器人点击“使用GitHub登录”  
4. OAuth自动授权(用户已认证)
5. 机器人导航到API密钥/令牌页面
6. 机器人直接从仪表板复制凭证
7. 完成 - 完全自动化! 🎉
浏览器 + GitHub OAuth可自动配置的服务:
服务支持自动配置?机器人操作方式
Railway导航 → GitHub OAuth → 创建项目 → 从设置获取API令牌
Supermemory导航 → GitHub OAuth → 仪表板 → 复制API密钥
Vercel导航 → GitHub OAuth → 设置 → 创建令牌
Netlify导航 → GitHub OAuth → 用户设置 → 新令牌
Supabase导航 → GitHub OAuth → 项目设置 → 复制密钥
PlanetScale导航 → GitHub OAuth → 连接字符串
仅GitHub PAT即可自动配置的服务(无需浏览器):
集成支持自动配置?机器人可执行操作
Claw Beacon(Fork)✅ 是自动将仓库Fork到用户的GitHub账号
GitHub Webhooks✅ 是配置仓库的Webhooks
GitHub Actions✅ 是启用/配置CI/CD工作流
仓库密钥✅ 是通过API管理加密密钥
问题/PR✅ 是自动创建、管理和追踪
三个自动化层级:
层级要求机器人可执行操作
🥉 基础逐步引导用户手动操作
🥈 GitHub APIGitHub PAT自动化所有GitHub操作
🥇 完全VIP浏览器 + GitHub登录自动化所有操作 通过OAuth
解锁完全自动化:
  1. 用户连接Chrome扩展(点击OpenClaw工具栏图标,徽章显示“ON”)
  2. 用户在该浏览器标签页中登录GitHub
  3. 机器人现在可以自动配置Railway、Supermemory、Vercel等服务!
当用户拥有浏览器 + GitHub访问权限时,机器人应:
  1. ✅ 自动创建任何支持GitHub OAuth的服务账号
  2. ✅ 通过导航到仪表板自动检索API密钥
  3. ✅ 端到端自动配置所有集成
  4. ✅ 连接服务(GitHub ↔ Railway ↔ Supermemory)
  5. ✅ 无需手动步骤处理整个配置流程

Step 7: Enable Session Memory Hook (Quick Win!)

步骤7:启用会话内存钩子(快速优化!)

Ask: "Let me enable automatic session memory saving..."
bash
openclaw hooks enable session-memory
What this does:
  • Automatically saves conversation context to
    memory/
    when you use
    /new
  • Creates dated memory files like
    2026-02-06-project-discussion.md
  • Preserves important decisions and context between sessions
  • Zero effort - just works in the background!
Verify it's enabled:
bash
openclaw hooks list
You should see
💾 session-memory
with a checkmark.

询问用户:"让我启用自动会话内存保存功能..."
bash
openclaw hooks enable session-memory
功能说明:
  • 当您使用
    /new
    命令时,自动将会话上下文保存到
    memory/
    目录
  • 创建带日期的内存文件,例如
    2026-02-06-project-discussion.md
  • 保留会话之间的重要决策和上下文
  • 零操作成本 - 在后台自动运行!
验证是否启用:
bash
openclaw hooks list
您应该看到
💾 session-memory
旁边有一个对勾。

Step 8: Memory Enhancement (Optional)

步骤8:内存增强(可选)

Ask: "Want to supercharge my memory? I have two optional upgrades that make me way more helpful:"

询问用户:"想要增强我的内存能力吗?我有两个可选升级,让我更有帮助:"

🧠 Supermemory - Cloud Long-term Memory (Official OpenClaw Plugin)

🧠 Supermemory - 云端长期内存(官方OpenClaw插件)

⚠️ Requires Supermemory Pro or higher - The OpenClaw plugin needs a paid plan. Free tier won't work. Check pricing at supermemory.ai/pricing
What it does: Supermemory gives me persistent memory that survives across sessions. The official OpenClaw plugin handles everything automatically - zero manual work!
Why you'll love it:
  • 📝 Auto-Recall: Before every response, I automatically pull relevant memories
  • 🧩 Auto-Capture: After every conversation, memories are extracted and stored
  • 🔄 User Profile: I build a persistent profile of your preferences and context
  • 💡 Zero effort: Once set up, it just works in the background!
Features unlocked:
  • /remember [text]
    - Manually save something to memory
  • /recall [query]
    - Search your memories
  • AI Tools:
    supermemory_store
    ,
    supermemory_search
    ,
    supermemory_forget
    ,
    supermemory_profile
  • CLI:
    openclaw supermemory search/profile/wipe

Setup (2 minutes):
Step 1: Get your API key
Go to console.supermemory.ai → API Keys → Create New Key
(Free tier: 1M tokens, 10K searches)
Step 2: Install the plugin
bash
openclaw plugins install @supermemory/openclaw-supermemory
Step 3: Enable with your API key
Share your API key and I'll configure it:
bash
openclaw config set plugins.entries.openclaw-supermemory.enabled true
openclaw config set plugins.entries.openclaw-supermemory.config.apiKey "sm_your_key_here"
Or add to
~/.openclaw/openclaw.json
:
json
{
  "plugins": {
    "slots": {
      "memory": "openclaw-supermemory"
    },
    "entries": {
      "openclaw-supermemory": {
        "enabled": true,
        "config": {
          "apiKey": "sm_...",
          "autoRecall": true,
          "autoCapture": true,
          "maxRecallResults": 10
        }
      }
    }
  }
}
Important: The
plugins.slots.memory
setting tells OpenClaw to use Supermemory instead of the default memory-core plugin.
Step 4: Restart OpenClaw
bash
openclaw gateway restart
That's it! Memory now works automatically across every conversation.

🆓 Free Alternative: memory-lancedb (Local)
If you don't want to pay for Supermemory Pro, use the built-in LanceDB plugin instead:
json
{
  "plugins": {
    "slots": {
      "memory": "memory-lancedb"
    },
    "entries": {
      "memory-lancedb": {
        "enabled": true
      }
    }
  }
}
This gives you auto-recall and auto-capture locally (no cloud, no cost).

What this enables:
  • I automatically remember your preferences, decisions, and context
  • Before every response, I recall relevant past conversations
  • After every chat, important info is captured for later
  • "Remember that I prefer TypeScript over JavaScript" - auto-stored!
  • "What did we decide about the database?" - auto-recalled!

⚠️ 需要Supermemory Pro或更高版本 - OpenClaw插件需要付费套餐。 免费版无法使用。查看定价:supermemory.ai/pricing
功能: Supermemory为我提供跨会话的持久化内存。官方OpenClaw插件自动处理所有事情 - 无需手动操作!
为什么您会喜欢它:
  • 📝 自动召回:每次响应前,我会自动提取相关记忆
  • 🧩 自动捕获:每次对话后,记忆会被提取并存储
  • 🔄 用户档案:我会构建您的偏好和上下文的持久化档案
  • 💡 零操作成本:配置完成后,在后台自动运行!
解锁的功能:
  • /remember [文本]
    - 手动保存内容到内存
  • /recall [查询]
    - 搜索您的记忆
  • AI工具:
    supermemory_store
    ,
    supermemory_search
    ,
    supermemory_forget
    ,
    supermemory_profile
  • CLI:
    openclaw supermemory search/profile/wipe

配置(2分钟):
步骤1:获取您的API密钥
访问console.supermemory.ai → API Keys → Create New Key
(免费版:100万令牌,1万次搜索)
步骤2:安装插件
bash
openclaw plugins install @supermemory/openclaw-supermemory
步骤3:使用您的API密钥启用
分享您的API密钥,我会进行配置:
bash
openclaw config set plugins.entries.openclaw-supermemory.enabled true
openclaw config set plugins.entries.openclaw-supermemory.config.apiKey "sm_your_key_here"
或添加到
~/.openclaw/openclaw.json
json
{
  "plugins": {
    "slots": {
      "memory": "openclaw-supermemory"
    },
    "entries": {
      "openclaw-supermemory": {
        "enabled": true,
        "config": {
          "apiKey": "sm_...",
          "autoRecall": true,
          "autoCapture": true,
          "maxRecallResults": 10
        }
      }
    }
  }
}
重要提示:
plugins.slots.memory
设置告诉OpenClaw使用Supermemory而非默认的memory-core插件。
步骤4:重启OpenClaw
bash
openclaw gateway restart
完成! 现在内存会在每次对话中自动工作。

🆓 免费替代方案:memory-lancedb(本地)
如果您不想为Supermemory Pro付费,可以使用内置的LanceDB插件:
json
{
  "plugins": {
    "slots": {
      "memory": "memory-lancedb"
    },
    "entries": {
      "memory-lancedb": {
        "enabled": true
      }
    }
  }
}
这为您提供本地的自动召回和自动捕获功能(无云端,无成本)。

这将实现:
  • 我会自动记住您的偏好、决策和上下文
  • 每次响应前,我会召回相关的过往对话
  • 每次聊天后,重要信息会被捕获以备后用
  • "记住我偏好TypeScript而非JavaScript" - 自动存储!
  • "我们对数据库的决策是什么?" - 自动召回!

📚 QMD - Local Note Search (Optional - Skip if unsure)

📚 QMD - 本地笔记搜索(可选 - 不确定可跳过)

Note: QMD is useful if you have lots of local markdown notes/docs you want to search. If you don't, skip this!
What it does: QMD indexes your local markdown files so I can search through your notes and documentation.
Only set this up if you:
  • Have a folder of markdown notes you want searchable
  • Want me to reference your personal docs
  • Skip this if you're just getting started
<details> <summary>Click to expand QMD setup (optional)</summary>
Prerequisites:
bash
curl -fsSL https://bun.sh/install | bash
Setup:
bash
undefined
注意: 如果您有大量本地markdown笔记/文档需要搜索,QMD会很有用。如果没有,跳过此步骤!
功能: QMD为您的本地markdown文件建立索引,以便我可以搜索您的笔记和文档。
仅在以下情况配置:
  • 您有一个markdown笔记文件夹需要可搜索
  • 希望我参考您的个人文档
  • 刚开始使用可跳过此步骤
<details> <summary>点击展开QMD配置(可选)</summary>
前置条件:
bash
curl -fsSL https://bun.sh/install | bash
配置:
bash
undefined

Install QMD

安装QMD

Add your notes folder

添加您的笔记文件夹

qmd collection add ~/notes --name notes --mask "**/*.md"
qmd collection add ~/notes --name notes --mask "**/*.md"

Index everything

为所有内容建立索引

qmd embed
qmd embed

Test it

测试

qmd search "your search query"

</details>

---

**The bottom line:**

| Feature | Without | With |
|---------|---------|------|
| mem0 + Qdrant | Agents forget everything between sessions | Agents have true long-term memory |
| Supermemory | Manual memory management | Auto-recall and auto-capture |
| QMD | I can only search the web | I can search YOUR personal knowledge base |

mem0 + Qdrant is **required** (Step 2). Supermemory and QMD are optional enhancements.

---
qmd search "您的搜索查询"

</details>

---

**总结:**

| 功能 | 无内存增强 | 有内存增强 |
|---------|---------|------|
| mem0 + Qdrant | 代理在会话之间忘记所有内容 | 代理拥有真正的长期内存 |
| Supermemory | 手动管理内存 | 自动召回和自动捕获 |
| QMD | 我只能搜索网络 | 我可以搜索您的个人知识库 |

mem0 + Qdrant是**必需**的(步骤2)。Supermemory和QMD是可选的增强功能。

---

🔄 Agent-to-Agent Communication

🔄 代理间通信

Agents can talk to each other through the Mission Control feed using @mentions.
代理可以通过Mission Control动态使用@提及与其他代理交流。

How It Works

工作方式

Posting a mention:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "Hey @Vegeta, I need you to review this PR: #42"
  }'
The backend parses
@AgentName
in the message and records which agents were mentioned.
Checking your mentions:
bash
undefined
发布提及消息:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "Hey @Vegeta, I need you to review this PR: #42"
  }'
后端会解析消息中的
@AgentName
并记录被提及的代理。
检查您的提及消息:
bash
undefined

Get messages where agent 2 (Vegeta) was mentioned

获取提及代理2(Vegeta)的消息

curl -s "<BACKEND_URL>/api/messages/mentions/2"
-H "x-api-key: <API_KEY>"

Returns messages where the specified agent was @mentioned.

**Real-time mention notifications (SSE):**
```bash
curl -s "<BACKEND_URL>/api/messages/mentions/2"
-H "x-api-key: <API_KEY>"

返回指定代理被@提及的消息。

**实时提及通知(SSE):**
```bash

Subscribe to real-time events

订阅实时事件

curl -N "<BACKEND_URL>/api/stream"

Events emitted:
- `message-created` — New message posted (includes mentioned_agent_ids)
- `agent-mentioned` — An agent was @mentioned (includes agent_id and message)
- `task-created` / `task-updated` / `task-deleted` — Task lifecycle
- `agent-created` / `agent-updated` / `agent-deleted` — Agent lifecycle
curl -N "<BACKEND_URL>/api/stream"

触发的事件:
- `message-created` — 发布新消息(包含mentioned_agent_ids数组)
- `agent-mentioned` — 代理被@提及(包含agent_id和消息)
- `task-created` / `task-updated` / `task-deleted` — 任务生命周期
- `agent-created` / `agent-updated` / `agent-deleted` — 代理生命周期

Agent Heartbeat Mention Check

代理心跳检测中的提及检查

During heartbeats, agents should check their mentions:
python
undefined
在心跳检测期间,代理应检查自己的提及消息:
python
undefined

In your agent's heartbeat routine:

在代理的心跳检测例程中:

def check_mentions(agent_id): response = requests.get( f"{BACKEND_URL}/api/messages/mentions/{agent_id}", headers={"x-api-key": API_KEY} ) mentions = response.json()
for mention in mentions:
    if not mention.get("acknowledged"):
        # Process the mention
        handle_mention(mention)
        
        # Acknowledge it (post a response)
        respond_to_mention(mention)
undefined
def check_mentions(agent_id): response = requests.get( f"{BACKEND_URL}/api/messages/mentions/{agent_id}", headers={"x-api-key": API_KEY} ) mentions = response.json()
for mention in mentions:
    if not mention.get("acknowledged"):
        # 处理提及消息
        handle_mention(mention)
        
        # 确认收到(回复消息)
        respond_to_mention(mention)
undefined

Communication Patterns

沟通模式

Task handoff:
@Goku: Task #42 complete. @Vegeta please review the PR.
Asking for help:
@Piccolo: I'm designing the new auth system. What's the recommended architecture pattern?
Status update:
@Bulma: Infrastructure is ready. @Trunks you can proceed with deployment.
Blocking issue:
@Goku: I'm blocked on #45. Need @Gohan to complete the research first.

任务移交:
@Goku: 任务#42已完成。@Vegeta请审核此PR。
寻求帮助:
@Piccolo: 我正在设计新的认证系统。推荐的架构模式是什么?
状态更新:
@Bulma: 基础设施已准备就绪。@Trunks您可以开始部署。
阻塞问题:
@Goku: 我在#45任务上遇到阻塞。需要@Gohan先完成研究。

🙋 Human Tasks - When Agents Need Help

🙋 用户任务 - 当代理需要帮助时

When an agent is stuck and needs human action:
Instead of just telling the user in chat, CREATE A TASK for them:
bash
curl -X POST <BACKEND_URL>/api/tasks \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "title": "🙋 @{{HUMAN_NAME}}: [What you need]",
    "description": "I need your help with...\n\n**Why I am stuck:**\n[Explanation]\n\n**What I need you to do:**\n1. [Step 1]\n2. [Step 2]\n\n**Once done:**\nMove this task to Done and tell me to continue.",
    "status": "todo",
    "agent_id": null
  }'
Then tell the human:
I've hit a blocker that needs your help! 🙋

I created a task for you on the dashboard:
→ {{FRONTEND_URL}}

Check your To-Do column - there's a task tagged with your name.
Complete it and let me know when you're done!
Examples of human tasks:
  • "🙋 @Adarsh: Approve this PR before I can merge"
  • "🙋 @Adarsh: Add API key to Railway environment"
  • "🙋 @Adarsh: Click the browser extension to enable web access"
  • "🙋 @Adarsh: Review and sign off on this design"
This makes it a TRUE TEAM:
  • Agents create tasks for humans
  • Humans create tasks for agents
  • Everyone works off the same board
  • Nothing falls through the cracks

当代理遇到阻塞需要用户操作时:
不要仅在聊天中告诉用户,为他们创建任务
bash
curl -X POST <BACKEND_URL>/api/tasks \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "title": "🙋 @{{HUMAN_NAME}}: [您需要做的事情]",
    "description": "我需要您的帮助...\n\n**我遇到阻塞的原因:**\n[解释]\n\n**您需要做的事情:**\n1. [步骤1]\n2. [步骤2]\n\n**完成后:**\n将此任务移至“已完成”并告知我继续。",
    "status": "todo",
    "agent_id": null
  }'
然后告诉用户:
我遇到了需要您帮助的阻塞问题! 🙋

我在仪表板上为您创建了一个任务:
→ {{FRONTEND_URL}}

查看您的“待办事项”列 - 有一个标记您姓名的任务。
完成后告诉我!
示例用户任务:
  • "🙋 @Adarsh: 审核此PR后我才能合并"
  • "🙋 @Adarsh: 将API密钥添加到Railway环境变量"
  • "🙋 @Adarsh: 点击浏览器扩展以启用Web访问"
  • "🙋 @Adarsh: 审核并批准此设计"
这构建了一个真正的团队:
  • 代理为用户创建任务
  • 用户为代理创建任务
  • 所有人在同一个看板上工作
  • 不会遗漏任何事情

Post-Setup: Configure Agent Behavior

部署后:配置代理行为

After collecting all info, make these updates:
收集所有信息后,进行以下更新:

1. Create
scripts/update_dashboard.js

1. 创建
scripts/update_dashboard.js

See
templates/update_dashboard.js
- customize with their:
  • Backend URL
  • API Key
  • Agent name→ID mapping for their theme
参考
templates/update_dashboard.js
- 根据您的信息自定义:
  • 后端URL
  • API密钥
  • 您主题的代理名称→ID映射

2. Update AGENTS.md

2. 更新AGENTS.md

Add this section (customize for their theme):
markdown
undefined
添加以下部分(根据您的主题自定义):
markdown
undefined

🎯 Claw Beacon Integration

🎯 Claw Beacon集成

Dashboard: {{FRONTEND_URL}} API: {{BACKEND_URL}}
仪表板: {{FRONTEND_URL}} API: {{BACKEND_URL}}

Core Rules (NON-NEGOTIABLE)

核心规则(不可协商)

  1. {{COORDINATOR}} = Coordinator ONLY
    • Delegates tasks, never executes
    • Reviews and verifies work
    • Moves tasks to "completed" only after review
  2. ALL Tasks Through The Board
    • No task is too small
    • Create task → Assign agent → Track progress → Review → Complete
    • Workflow: backlog → todo → in_progress → review → completed
  3. Quality Gate
    • Only {{COORDINATOR}} can mark tasks complete
    • Work not up to standard → back to todo with feedback
  1. {{COORDINATOR}} = 仅协调者
    • 委派任务,绝不执行
    • 审核并验证工作
    • 仅在审核后将任务标记为“已完成”
  2. 所有任务通过看板流转
    • 任务再小也要创建
    • 创建任务 → 分配代理 → 追踪进度 → 审核 → 完成
    • 工作流:待办 → 准备执行 → 进行中 → 审核 → 已完成
  3. 质量关卡
    • 仅{{COORDINATOR}}可以标记任务完成
    • 未达标准的工作 → 退回“准备执行”并提供反馈

Agent Roster (8 Default Agents)

代理名单(8个默认代理)

AgentRoleSpecialization
{{COORDINATOR}}CoordinatorDelegation, verification, user comms
{{DEVELOPER}}Backend EngineerAPIs, databases, code reviews
{{ARCHITECT}}System ArchitectSystem design, ADRs, tech decisions
{{RESEARCHER}}Research AnalystAnalysis, documentation, market research
{{PM}}Product ManagerPRDs, user stories, requirements
{{DESIGNER}}UI/UX DesignerUser research, wireframes, visual specs
{{QA}}QA EngineerAdversarial reviews, testing, quality gates
{{DEPLOYMENT}}Deployment SpecialistReleases, hotfixes, CI/CD pipelines
代理角色专业领域
{{COORDINATOR}}协调者任务委派、验证、用户沟通
{{DEVELOPER}}后端工程师API、数据库、代码审核
{{ARCHITECT}}系统架构师系统设计、ADR、技术决策
{{RESEARCHER}}研究分析师分析、文档、市场调研
{{PM}}产品经理PRD、用户故事、需求
{{DESIGNER}}UI/UX设计师用户研究、线框图、视觉规范
{{QA}}QA工程师对抗性审核、测试、质量关卡
{{DEPLOYMENT}}部署专家发布、热修复、CI/CD流水线

⚡ High-Agency Protocol (ALL AGENTS)

⚡ 高自主性协议(所有代理)

Every agent follows this protocol BEFORE acting:
You are [ROLE] in a high-agency team. ALWAYS follow these rules BEFORE acting:

1. IDENTIFY subtasks and DELEGATE to relevant agents
   (e.g., "Delegate UI design to {{DEVOPS}}", "Delegate research to {{RESEARCH}}")

2. QUERY peers for input if uncertain
   (e.g., "Query {{ARCHITECTURE}}: Is this design sound?")

3. VERIFY outputs: After delegation, review responses and iterate if needed

4. COORDINATE via the supervisor ({{COORDINATOR}}/OpenClaw): Route all messages through Mission Control

Do NOT proceed alone—violate this and the task fails.
Agent-Specific Adaptations:
  • {{COORDINATOR}} (Coordinator): Delegates ALL work, never executes. ENFORCES team rules — if any agent acts solo, pause and remind them to delegate/query/verify. ENFORCES the Kanban board — ALL work goes through the board, no exceptions.
  • {{DEVELOPER}} (Backend): May query {{ARCHITECT}} for design, {{RESEARCHER}} for research
  • {{ARCHITECT}} (Architect): May query {{RESEARCHER}} for research, all agents for constraints
  • {{RESEARCHER}} (Research): May query {{ARCHITECT}} for strategic context, {{PM}} for product context
  • {{PM}} (Product Manager): May query {{RESEARCHER}} for market data, {{DESIGNER}} for UX
  • {{DESIGNER}} (UI/UX): May query {{ARCHITECT}} for tech constraints, {{PM}} for requirements
  • {{QA}} (QA Engineer): Runs adversarial reviews on ALL work. MUST find 3+ issues per review.
  • {{DEPLOYMENT}} (Deployment): May query {{DEVELOPER}} for code readiness, runs CI/CD
每个代理在行动前必须遵循此协议:
您是高自主性团队中的[角色]。行动前必须始终遵循以下规则:

1. 识别子任务并委派给相关代理
   (例如:“将UI设计委派给{{DEVOPS}}”,“将研究任务委派给{{RESEARCH}}”)

2. 不确定时咨询同行意见
   (例如:“咨询{{ARCHITECTURE}}:此设计是否合理?”)

3. 验证输出:委派后,审核回复并根据需要迭代

4. 通过主管协调({{COORDINATOR}}/OpenClaw):所有消息通过Mission Control传递

不要单独行动——违反此规则任务将失败。
代理特定适配:
  • {{COORDINATOR}}(协调者): 仅负责协调,绝不执行任务。强制执行团队规则 — 如果任何代理单独行动,暂停并提醒他们进行委派/咨询/验证。强制执行看板流程 — 所有任务必须通过看板流转,无例外。
  • {{DEVELOPER}}(后端): 可咨询{{ARCHITECT}}获取设计建议,咨询{{RESEARCHER}}获取研究支持
  • {{ARCHITECT}}(架构师): 可咨询{{RESEARCHER}}获取研究支持,咨询所有代理获取约束条件
  • {{RESEARCHER}}(研究员): 可咨询{{ARCHITECT}}获取战略背景,咨询{{PM}}获取产品背景
  • {{PM}}(产品经理): 可咨询{{RESEARCHER}}获取市场数据,咨询{{DESIGNER}}获取UX建议
  • {{DESIGNER}}(UI/UX): 可咨询{{ARCHITECT}}获取技术约束,咨询{{PM}}获取需求
  • {{QA}}(QA工程师): 对所有工作进行对抗性审核。每次审核必须发现3个以上问题。
  • {{DEPLOYMENT}}(部署专家): 可咨询{{DEVELOPER}}获取代码就绪状态,运行CI/CD流水线

Reporting Protocol

报告协议

Start of task:
bash
node scripts/update_dashboard.js --agent "{{AGENT}}" --status "working" --message "Starting: [Task]"
End of task:
bash
node scripts/update_dashboard.js --agent "{{AGENT}}" --status "idle" --message "Complete: [Task]"
任务开始时:
bash
node scripts/update_dashboard.js --agent "{{AGENT}}" --status "working" --message "开始:[任务]"
任务结束时:
bash
node scripts/update_dashboard.js --agent "{{AGENT}}" --status "idle" --message "完成:[任务]"

🔥 Keep the Feed Active!

🔥 保持动态活跃!

The Agent Feed is the heartbeat of your team. Don't let it go quiet!
Post updates for:
  • Starting/completing tasks
  • Discoveries or insights
  • Blockers or questions
  • Wins and celebrations
  • Research findings
  • Bug fixes deployed
Example messages:
bash
undefined
代理动态是团队的心跳。不要让它沉寂!
发布更新的场景:
  • 任务开始/完成
  • 发现或见解
  • 阻塞问题或疑问
  • 胜利和庆祝
  • 研究结果
  • 修复的漏洞已部署
示例消息:
bash
undefined

Progress updates

进度更新

node scripts/update_dashboard.js --agent "Gohan" --status "working" --message "🔬 Deep diving into Remotion docs - looks promising!"
node scripts/update_dashboard.js --agent "Gohan" --status "working" --message "🔬 深入研究Remotion文档 - 看起来很有前景!"

Wins

胜利

node scripts/update_dashboard.js --agent "Bulma" --status "idle" --message "✅ CI/CD pipeline fixed! Deploys are green again 🚀"
node scripts/update_dashboard.js --agent "Bulma" --status "idle" --message "✅ CI/CD流水线已修复!部署恢复正常 🚀"

Insights

见解

node scripts/update_dashboard.js --agent "Vegeta" --status "working" --message "⚡ Found a performance bottleneck - N+1 query in tasks endpoint"
node scripts/update_dashboard.js --agent "Vegeta" --status "working" --message "⚡ 发现性能瓶颈 - 任务端点存在N+1查询问题"

Blockers

阻塞问题

node scripts/update_dashboard.js --agent "Piccolo" --status "working" --message "🚧 Blocked: Need API key for external service"

**Rule of thumb:** If it's worth doing, it's worth posting about. The feed keeps the human informed and the team connected!
node scripts/update_dashboard.js --agent "Piccolo" --status "working" --message "🚧 阻塞:需要外部服务的API密钥"

**经验法则:** 值得做的事情就值得发布。动态让用户了解情况,让团队保持联系!

Task API

任务API

bash
undefined
bash
undefined

Create task

创建任务

curl -X POST $claw_beacon_URL/api/tasks
-H "Content-Type: application/json"
-H "x-api-key: $claw_beacon_API_KEY"
-d '{"title": "Task name", "status": "backlog"}'
curl -X POST $claw_beacon_URL/api/tasks
-H "Content-Type: application/json"
-H "x-api-key: $claw_beacon_API_KEY"
-d '{"title": "任务名称", "status": "backlog"}'

Assign to agent

分配给代理

curl -X PUT $claw_beacon_URL/api/tasks/ID
-H "Content-Type: application/json"
-H "x-api-key: $claw_beacon_API_KEY"
-d '{"status": "todo", "agent_id": AGENT_ID}'
undefined
curl -X PUT $claw_beacon_URL/api/tasks/ID
-H "Content-Type: application/json"
-H "x-api-key: $claw_beacon_API_KEY"
-d '{"status": "todo", "agent_id": AGENT_ID}'
undefined

3. Update SOUL.md (Optional but Recommended)

3. 更新SOUL.md(可选但推荐)

Add to their SOUL.md:
markdown
undefined
在您的SOUL.md中添加:
markdown
undefined

Operating Philosophy

操作理念

I coordinate a team through Claw Beacon. I don't execute tasks directly.
My role: Coordinator, reviewer, quality gate My team: {{AGENT_NAMES}} My rule: Every task goes through the board, no exceptions
When given work:
  1. Create task on Claw Beacon
  2. Assign to appropriate specialist
  3. Monitor progress
  4. Review completed work
  5. Only then mark complete

---
我通过Claw Beacon协调一个团队。我不直接执行任务。
我的角色: 协调者、审核者、质量关卡 我的团队: {{AGENT_NAMES}} 我的规则: 所有任务必须通过看板流转,无例外
收到工作时:
  1. 在Claw Beacon上创建任务
  2. 分配给合适的专业代理
  3. 监控进度
  4. 审核已完成的工作
  5. 仅在审核后标记完成

---

⚠️ CRITICAL: Setup Verification (DO THIS BEFORE COMPLETING!)

⚠️ 关键:部署验证(完成前必须执行!)

Before saying setup is complete, you MUST verify everything works:
在说部署完成前,必须验证所有功能正常:

1. Verify API Connection

1. 验证API连接

bash
curl -s <BACKEND_URL>/api/agents \
  -H "x-api-key: <API_KEY>"
✅ Should return list of agents with your theme names (not "Coordinator", "Backend" defaults)
bash
curl -s <BACKEND_URL>/api/agents \
  -H "x-api-key: <API_KEY>"
✅ 应返回带有您主题名称的代理列表(而非默认的“Coordinator”、“Backend”)

2. Create "Team Introductions" Task

2. 创建“团队介绍”任务

bash
curl -X POST <BACKEND_URL>/api/tasks \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{"title": "👋 Team Introductions", "description": "Introduce the team and explain how the system works.", "status": "completed", "agent_id": 1}'
✅ Should return the created task with an ID
bash
curl -X POST <BACKEND_URL>/api/tasks \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{"title": "👋 团队介绍", "description": "介绍团队并解释系统工作方式。", "status": "completed", "agent_id": 1}'
✅ 应返回带有ID的已创建任务

3. Post Team Introduction to Feed

3. 向动态发布团队介绍

Post a comprehensive introduction message (customize with actual theme names):
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "# 👋 Meet Your Team!\n\n## The Squad (8 agents)\n- **[Coordinator]** (me!) - Team lead, delegates, reviews\n- **[Developer]** - Backend APIs, databases, code reviews\n- **[Architect]** - System design, technical decisions\n- **[Researcher]** - Analysis, documentation, research\n- **[PM]** - PRDs, requirements, user stories\n- **[Designer]** - UX research, wireframes, visual specs\n- **[QA]** - Adversarial reviews, testing, quality gates\n- **[Deployment]** - Releases, hotfixes, CI/CD\n\n## How We Work\n1. All tasks go through this board\n2. I delegate to the right specialist\n3. They do the work and report back\n4. I review and mark complete\n\nReady to work! 🦞"
  }'
✅ Should return the created message with
mentioned_agent_ids
array
发布全面的介绍消息(根据实际主题名称自定义):
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "# 👋 认识您的团队!\n\n## 团队成员(8个代理)\n- **[协调者]**(我!)- 团队负责人,委派任务,审核工作\n- **[开发者]** - 后端API、数据库、代码审核\n- **[架构师]** - 系统设计、技术决策\n- **[研究员]** - 分析、文档、调研\n- **[产品经理]** - PRD、需求、用户故事\n- **[设计师]** - UX调研、线框图、视觉规范\n- **[QA]** - 对抗性审核、测试、质量关卡\n- **[部署专家]** - 发布、热修复、CI/CD\n\n## 我们的工作方式\n1. 所有任务通过此看板流转\n2. 我将任务委派给合适的专业代理\n3. 他们执行工作并反馈\n4. 我审核并标记完成\n\n准备好工作了! 🦞"
  }'
✅ 应返回带有
mentioned_agent_ids
数组的已创建消息

4. Verify mem0 + Qdrant

4. 验证mem0 + Qdrant

bash
undefined
bash
undefined

Check Qdrant is running

检查Qdrant是否运行

✅ Should return `{"status":"ok"}`
✅ 应返回`{"status":"ok"}`

5. Ask User to Check Dashboard

5. 让用户检查仪表板

I just completed the Team Introductions task! 

Please check your dashboard: <FRONTEND_URL>

You should see:
- ✅ Your themed agent names in the sidebar
- ✅ A "👋 Team Introductions" task marked complete
- ✅ A welcome message in the feed explaining your team

Can you confirm everything looks right?
If ANY of these fail:
  • Check API_KEY is correct
  • Check BACKEND_URL is correct
  • Help user debug before proceeding
Only proceed to completion message after user confirms dashboard shows the test task!

我刚完成了团队介绍任务! 

请检查您的仪表板:<FRONTEND_URL>

您应该看到:
- ✅ 侧边栏显示您的主题代理名称
- ✅ 一个标记为已完成的“👋 团队介绍”任务
- ✅ 动态中解释团队的欢迎消息

您能确认一切正常吗?
如果任何步骤失败:
  • 检查API_KEY是否正确
  • 检查BACKEND_URL是否正确
  • 协助用户排查问题后再继续
只有在用户确认仪表板显示测试任务后,才能发布完成消息!

Completion Message

完成消息

After all setup AND verification:
🦞 Claw Beacon Setup Complete!

Dashboard: {{FRONTEND_URL}}
Coordinator: {{COORDINATOR}}
Team: {{AGENT_LIST}}

✅ Task management configured
✅ Agent behavior updated
✅ mem0 + Qdrant running - agents have long-term memory!
✅ Session memory hook enabled - conversations auto-save!
{{#if browser}}✅ Browser access ready{{/if}}
{{#if github}}✅ GitHub integration ready{{/if}}
{{#if supermemory}}✅ Supermemory connected - cloud memory active!{{/if}}
{{#if qmd}}✅ QMD search ready - I can search your docs!{{/if}}

From now on, I operate as {{COORDINATOR}}:
- All tasks go through the board
- Specialists do the work
- I coordinate, review, and verify

Let's build something awesome! What's our first task?

所有部署和验证步骤完成后:
🦞 Claw Beacon部署完成!

仪表板:{{FRONTEND_URL}}
协调者:{{COORDINATOR}}
团队:{{AGENT_LIST}}

✅ 任务管理已配置
✅ 代理行为已更新
✅ mem0 + Qdrant运行中 - 代理拥有长期内存!
✅ 会话内存钩子已启用 - 对话自动保存!
{{#if browser}}✅ 浏览器访问已就绪{{/if}}
{{#if github}}✅ GitHub集成已就绪{{/if}}
{{#if supermemory}}✅ Supermemory已连接 - 云端内存激活!{{/if}}
{{#if qmd}}✅ QMD搜索已就绪 - 我可以搜索您的文档!{{/if}}

从现在起,我将以{{COORDINATOR}}的身份运作:
- 所有任务通过看板流转
- 专业代理执行工作
- 我负责协调、审核和验证

让我们构建很棒的东西!我们的第一个任务是什么?

Ongoing Behavior Checklist

持续行为检查清单

After setup, ALWAYS:
  • Create tasks for ALL work (even small items)
  • Assign tasks to appropriate specialists
  • Update status when starting/finishing
  • Review work before marking complete
  • Post updates to the agent feed
  • Never execute tasks as coordinator
  • Check mentions during heartbeats

部署完成后,始终遵循:
  • 为所有工作创建任务(即使是小事)
  • 将任务分配给合适的专业代理
  • 开始/完成任务时更新状态
  • 审核后再标记完成
  • 向代理动态发布更新
  • 协调者绝不亲自执行任务
  • 心跳检测时检查提及消息

💓 Heartbeat Dashboard Sync & Auto-Update

💓 心跳检测:仪表板同步与自动更新

During every heartbeat, the coordinator should perform board hygiene AND system health checks:
每次心跳检测时,协调者应执行看板维护和系统健康检查:

Board Hygiene

看板维护

Check for Misplaced Tasks:
bash
undefined
检查错位任务:
bash
undefined

Fetch all tasks

获取所有任务

curl -s <BACKEND_URL>/api/tasks -H "x-api-key: <API_KEY>"

**Look for:**
- Tasks stuck in "in_progress" with no recent activity
- Completed tasks that should be archived
- Tasks assigned to wrong agents (e.g., backend task assigned to DevOps)
- Tasks in "review" that have been waiting too long

**Fix Wrongly Placed Tasks:**
```bash
curl -s <BACKEND_URL>/api/tasks -H "x-api-key: <API_KEY>"

**检查内容:**
- 长时间停留在“进行中”且无近期活动的任务
- 应归档的已完成任务
- 分配给错误代理的任务(例如:后端任务分配给DevOps)
- 在“审核”状态等待过久的任务

**修复错位任务:**
```bash

Move task to correct column

将任务移至正确列

curl -X PUT <BACKEND_URL>/api/tasks/ID
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"status": "correct_status", "agent_id": CORRECT_AGENT_ID}'
undefined
curl -X PUT <BACKEND_URL>/api/tasks/ID
-H "Content-Type: application/json"
-H "x-api-key: <API_KEY>"
-d '{"status": "correct_status", "agent_id": CORRECT_AGENT_ID}'
undefined

Check Your Mentions

检查提及消息

bash
undefined
bash
undefined

Check if any agent mentioned you

检查是否有代理提及您

curl -s "<BACKEND_URL>/api/messages/mentions/<your_agent_id>"
-H "x-api-key: <API_KEY>"

If you have unacknowledged mentions, respond to them!
curl -s "<BACKEND_URL>/api/messages/mentions/<your_agent_id>"
-H "x-api-key: <API_KEY>"

如果有未确认的提及消息,回复它们!

System Auto-Update Checks (2-3x Daily)

系统自动更新检查(每日2-3次)

1. Check for Claw Beacon updates:
bash
cd /path/to/claw-beacon
git fetch origin main
BEHIND=$(git rev-list HEAD..origin/main --count)
if [ "$BEHIND" -gt 0 ]; then
  echo "⚠️ Claw Beacon is $BEHIND commits behind. Consider updating."
  # Optionally auto-update:
  # git pull && docker compose up -d --build
fi
2. Check DB migrations: Migrations run automatically on startup. If you notice schema errors, restart the app:
bash
docker compose restart backend
1. 检查Claw Beacon更新:
bash
cd /path/to/claw-beacon
git fetch origin main
BEHIND=$(git rev-list HEAD..origin/main --count)
if [ "$BEHIND" -gt 0 ]; then
  echo "⚠️ Claw Beacon落后$BEHIND个提交。考虑更新。"
  # 可选自动更新:
  # git pull && docker compose up -d --build
fi
2. 检查数据库迁移: 启动时自动执行迁移。如果发现架构错误,重启应用:
bash
docker compose restart backend

OR for local: npm run dev (restarts automatically)

或本地开发:npm run dev(自动重启)


**3. Check skill version:**
```bash

**3. 检查技能版本:**
```bash

Compare installed skill with latest

比较已安装技能与最新版本

npx skills info adarshmishra07/claw-beacon
npx skills info adarshmishra07/claw-beacon

If outdated:

如果过时:

npx skills add adarshmishra07/claw-beacon@latest

**4. Check mem0 + Qdrant health:**
```bash
curl -s http://localhost:6333/health
npx skills add adarshmishra07/claw-beacon@latest

**4. 检查mem0 + Qdrant健康状态:**
```bash
curl -s http://localhost:6333/health

Should return {"status":"ok"}

应返回{"status":"ok"}


**5. Auto-fix missing components:**
If something is broken, fix it or create a task:
- Qdrant down? → Restart: `docker start qdrant`
- Migrations failed? → Check logs, restart backend
- Skill outdated? → Update: `npx skills add adarshmishra07/claw-beacon@latest`

**5. 自动修复缺失组件:**
如果某个组件损坏,修复它或创建任务:
- Qdrant停止运行?→ 重启:`docker start qdrant`
- 迁移失败?→ 检查日志,重启后端
- 技能过时?→ 更新:`npx skills add adarshmishra07/claw-beacon@latest`

HEARTBEAT.md Template

HEARTBEAT.md模板

Create this file in your workspace for the coordinator to follow:
markdown
undefined
在您的工作区创建此文件,供协调者遵循:
markdown
undefined

HEARTBEAT.md - Coordinator Checklist

HEARTBEAT.md - 协调者检查清单

Every Heartbeat (Every 30 min)

每次心跳检测(每30分钟)

  • Check board for stuck tasks
  • Check my mentions and respond
  • Fix any misplaced tasks
  • 检查看板是否有卡住的任务
  • 检查我的提及消息并回复
  • 修复任何错位的任务

2-3x Daily

每日2-3次

  • Check if Claw Beacon needs updating (git fetch, compare commits)
  • Verify Qdrant is healthy (curl health endpoint)
  • Check for skill updates
  • Look for orphan work (commits without task IDs)
  • 检查Claw Beacon是否需要更新(git fetch,比较提交)
  • 验证Qdrant是否健康(curl健康端点)
  • 检查技能更新
  • 查找无归属工作(无任务ID的提交)

Auto-Fix Protocol

自动修复协议

If something is broken:
  1. Try to fix it automatically
  2. If can't fix → Create a task for the right agent
  3. If needs human → Create a 🙋 human task
如果某个组件损坏:
  1. 尝试自动修复
  2. 如果无法修复 → 为合适的代理创建任务
  3. 如果需要用户操作 → 创建🙋 用户任务

What to Post to Feed

应发布到动态的内容

  • System health issues discovered
  • Updates applied
  • Orphan work found and retroactively logged

---
  • 发现的系统健康问题
  • 已应用的更新
  • 发现并事后记录的无归属工作

---

🔄 On Skill Update Behavior

🔄 技能更新行为

When this skill is re-installed or updated (
npx skills add adarshmishra07/claw-beacon@latest
), the skill should:
当此技能重新安装或更新时(
npx skills add adarshmishra07/claw-beacon@latest
),技能应:

1. Check What's Already Deployed

1. 检查已部署的内容

bash
undefined
bash
undefined

Test if backend is reachable

测试后端是否可达

curl -s <BACKEND_URL>/api/agents

**If deployed:**
- Read existing configuration from TOOLS.md
- Verify connection works
- Skip deployment steps

**If NOT deployed:**
- Guide through deployment (Step 1)
curl -s <BACKEND_URL>/api/agents

**如果已部署:**
- 从TOOLS.md读取现有配置
- 验证连接正常
- 跳过部署步骤

**如果未部署:**
- 引导用户完成部署(步骤1)

2. Identify Missing Components

2. 识别缺失组件

Check each component:
ComponentHow to CheckIf Missing
Backend deployed
curl <BACKEND_URL>/api/agents
Guide deployment
Agents seededResponse has 8 agentsSeed default agents
Theme appliedAgents have custom namesAsk for theme choice
mem0 + Qdrant
curl localhost:6333/health
Guide mem0 setup
Browser configured
browser action=status
Encourage setup
GitHub configuredCheck TOOLS.md for tokenOffer to configure
检查每个组件:
组件检查方式缺失时的操作
后端已部署
curl <BACKEND_URL>/api/agents
引导部署
代理已初始化响应包含8个代理初始化默认代理
主题已应用代理有自定义名称询问用户选择主题
mem0 + Qdrant
curl localhost:6333/health
引导mem0配置
浏览器已配置
browser action=status
鼓励配置
GitHub已配置检查TOOLS.md是否有令牌提供配置服务

3. Auto-Fix or Guide

3. 自动修复或引导

Auto-fix (do silently):
  • Update AGENTS.md with latest template sections
  • Ensure dashboard scripts are present
  • Update HEARTBEAT.md template
Guide user through:
  • mem0 + Qdrant setup (if missing)
  • Theme selection (if default names)
  • Browser setup (if not configured)
自动修复(静默执行):
  • 使用最新模板更新AGENTS.md中的部分内容
  • 确保仪表板脚本存在
  • 更新HEARTBEAT.md模板
引导用户完成:
  • mem0 + Qdrant配置(如果缺失)
  • 主题选择(如果使用默认名称)
  • 浏览器配置(如果未配置)

4. Post-Update Summary

4. 更新后总结

After skill update, post to feed:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "🔄 Skill updated to latest version!\n\n**Status:**\n- ✅ Backend connected\n- ✅ 8 agents configured\n- ✅ mem0 + Qdrant running\n- ⚠️ [List any missing components]\n\n**Action needed:** [If any]"
  }'

技能更新完成后,发布到动态:
bash
curl -X POST <BACKEND_URL>/api/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: <API_KEY>" \
  -d '{
    "agent_id": 1,
    "message": "🔄 技能已更新至最新版本!\n\n**状态:**\n- ✅ 后端已连接\n- ✅ 8个代理已配置\n- ✅ mem0 + Qdrant运行中\n- ⚠️ [列出任何缺失的组件]\n\n**需要执行的操作:** [如果有]"
  }'

📡 Complete API Reference

📡 完整API参考

All endpoints require
x-api-key
header for write operations (POST/PUT/DELETE) when
API_KEY
is set.
当设置
API_KEY
后,所有写入操作(POST/PUT/DELETE)的端点都需要
x-api-key
请求头。

Tasks API

任务API

MethodEndpointDescription
GET
/api/tasks
List all tasks (filters:
status
,
agent_id
,
limit
,
offset
)
GET
/api/stats
Dashboard stats (
activeAgents
,
tasksInQueue
)
POST
/api/tasks
Create task (
title
required,
description
,
status
,
tags[]
,
agent_id
)
PUT
/api/tasks/:id
Update task fields
DELETE
/api/tasks/:id
Delete task
POST
/api/tasks/:id/progress
Advance task to next status (backlog→todo→in_progress→review→completed)
POST
/api/tasks/:id/complete
Mark task completed directly
方法端点描述
GET
/api/tasks
列出所有任务(筛选条件:
status
,
agent_id
,
limit
,
offset
GET
/api/stats
仪表板统计数据(
activeAgents
,
tasksInQueue
POST
/api/tasks
创建任务(
title
为必填项,
description
,
status
,
tags[]
,
agent_id
为可选)
PUT
/api/tasks/:id
更新任务字段
DELETE
/api/tasks/:id
删除任务
POST
/api/tasks/:id/progress
将任务推进到下一状态(待办→准备执行→进行中→审核→已完成)
POST
/api/tasks/:id/complete
直接将任务标记为已完成

Agents API

代理API

MethodEndpointDescription
GET
/api/agents
List all agents
GET
/api/agents/:id
Get single agent by ID
POST
/api/agents
Create agent (
name
required,
role
,
description
,
status
)
PUT
/api/agents/:id
Update agent (includes BMAD profile fields:
bio
,
principles
,
dos
,
donts
,
critical_actions
,
communication_style
,
bmad_source
)
PATCH
/api/agents/:id/status
Quick status update (
idle
,
working
,
error
,
offline
)
DELETE
/api/agents/:id
Delete agent
方法端点描述
GET
/api/agents
列出所有代理
GET
/api/agents/:id
根据ID获取单个代理
POST
/api/agents
创建代理(
name
为必填项,
role
,
description
,
status
为可选)
PUT
/api/agents/:id
更新代理(包含BMAD档案字段:
bio
,
principles
,
dos
,
donts
,
critical_actions
,
communication_style
,
bmad_source
PATCH
/api/agents/:id/status
快速更新状态(
idle
,
working
,
error
,
offline
DELETE
/api/agents/:id
删除代理

Messages API

消息API

MethodEndpointDescription
GET
/api/messages
List messages (filters:
agent_id
,
limit
,
offset
)
POST
/api/messages
Create message (
message
required,
agent_id
). Parses @mentions automatically.
GET
/api/messages/mentions/:agentId
Get messages mentioning a specific agent (filters:
since
,
limit
)
方法端点描述
GET
/api/messages
列出消息(筛选条件:
agent_id
,
limit
,
offset
POST
/api/messages
创建消息(
message
为必填项,
agent_id
为可选)。自动解析@提及。
GET
/api/messages/mentions/:agentId
获取提及特定代理的消息(筛选条件:
since
,
limit

Board & Stream

看板与流

MethodEndpointDescription
GET
/api/board
Get tasks in Kanban board format (grouped by status columns)
GET
/api/stream
SSE endpoint for real-time updates (
?demo=true
for auto-progression)
方法端点描述
GET
/api/board
获取看板格式的任务(按状态列分组)
GET
/api/stream
实时更新的SSE端点(
?demo=true
用于自动推进)

Webhooks API

Webhooks API

MethodEndpointDescription
GET
/api/webhooks
Get webhook configuration status and supported events
POST
/api/webhooks/reload
Reload webhook configuration from disk
Supported webhook events:
task-created
,
task-updated
,
task-deleted
,
message-created
,
agent-status-changed
方法端点描述
GET
/api/webhooks
获取Webhook配置状态和支持的事件
POST
/api/webhooks/reload
从磁盘重新加载Webhook配置
支持的Webhook事件:
task-created
,
task-updated
,
task-deleted
,
message-created
,
agent-status-changed

Config & Auth

配置与认证

MethodEndpointDescription
GET
/api/auth/status
Check if authentication is enabled
GET
/api/config/status
Get configuration file status
POST
/api/config/reload
Reload agents from YAML config (
force=true
clears existing)
GET
/health
Health check (database status, auth status)
方法端点描述
GET
/api/auth/status
检查是否启用认证
GET
/api/config/status
获取配置文件状态
POST
/api/config/reload
从YAML配置重新加载代理(
force=true
清除现有代理)
GET
/health
健康检查(数据库状态、认证状态)

OpenAPI Docs

OpenAPI文档

When running locally, visit
http://localhost:3001/docs
for interactive Swagger documentation.

本地运行时,访问
http://localhost:3001/docs
获取交互式Swagger文档。

🎛️ OpenClaw Inline Buttons

🎛️ OpenClaw内联按钮

OpenClaw supports inline buttons for Telegram/Discord. Use them in the skill for user choices:
Theme selection example:
json
{
  "action": "send",
  "message": "Choose your team theme:",
  "buttons": [
    [
      {"text": "🐉 Dragon Ball Z", "callback_data": "theme_dbz"},
      {"text": "☠️ One Piece", "callback_data": "theme_onepiece"}
    ],
    [
      {"text": "🦸 Marvel", "callback_data": "theme_marvel"},
      {"text": "🧪 Breaking Bad", "callback_data": "theme_breakingbad"}
    ]
  ]
}
Deployment choice:
json
{
  "action": "send",
  "message": "How do you want to deploy Claw Beacon?",
  "buttons": [
    [{"text": "🚂 Railway (One-Click)", "callback_data": "deploy_railway"}],
    [{"text": "🐳 Docker Compose", "callback_data": "deploy_docker"}],
    [{"text": "💻 Local Dev", "callback_data": "deploy_local"}]
  ]
}
Yes/No confirmation:
json
{
  "action": "send",
  "message": "Ready to apply the theme?",
  "buttons": [[
    {"text": "✅ Yes", "callback_data": "confirm_yes"},
    {"text": "❌ No", "callback_data": "confirm_no"}
  ]]
}

OpenClaw支持Telegram/Discord的内联按钮。在技能中使用它们供用户选择:
主题选择示例:
json
{
  "action": "send",
  "message": "选择您的团队主题:",
  "buttons": [
    [
      {"text": "🐉 龙珠", "callback_data": "theme_dbz"},
      {"text": "☠️ 海贼王", "callback_data": "theme_onepiece"}
    ],
    [
      {"text": "🦸 漫威", "callback_data": "theme_marvel"},
      {"text": "🧪 绝命毒师", "callback_data": "theme_breakingbad"}
    ]
  ]
}
部署选择:
json
{
  "action": "send",
  "message": "您想如何部署Claw Beacon?",
  "buttons": [
    [{"text": "🚂 Railway(一键部署)", "callback_data": "deploy_railway"}],
    [{"text": "🐳 Docker Compose", "callback_data": "deploy_docker"}],
    [{"text": "💻 本地开发", "callback_data": "deploy_local"}]
  ]
}
确认是/否:
json
{
  "action": "send",
  "message": "准备好应用主题了吗?",
  "buttons": [[
    {"text": "✅ 是", "callback_data": "confirm_yes"},
    {"text": "❌ 否", "callback_data": "confirm_no"}
  ]]
}

Files

文件

  • SKILL.md
    - This file
  • templates/update_dashboard.js
    - Status update script
  • references/themes.md
    - Full theme character lists
  • SKILL.md
    - 此文件
  • templates/update_dashboard.js
    - 状态更新脚本
  • references/themes.md
    - 完整主题角色列表