Skip to content

你要建立的內容

每個智能體都需要一組檔案才能正常運作。OpenClaw 會在每次會話開始時自動讀取核心檔案。其他工作區檔案則為每個智能體提供背景資訊、常駐任務和工具規則。

智能體設定 — 由 OpenClaw 自動生成,不需要你在這裡建立:

檔案位置用途
config.jsonagents/[id]/config.jsonOpenClaw 智能體定義、system prompt
models.jsonagents/[id]/models.jsonAI 模型設定

你不需要在第 4 節建立這兩個檔案。第 5 節執行 openclaw agents add [id] --workspace ... 註冊每個智能體時會自動生成它們 —— 在這裡你只需要知道它們的存在即可。

工作區檔案 — 每次會話由 OpenClaw 自動載入:

檔案用途
SOUL.md個性、語氣、硬性限制、使命 —— 請保持在 400 字以內
AGENTS.md運作規則、回報程序 —— 請保持在 400 字以內
IDENTITY.md姓名、角色、回報對象 —— 僅記錄事實,保持簡短
HEARTBEAT.md常駐任務、定期工作、異常應對
TOOLS.md允許使用的工具、技能規則、禁止事項
USER.md指揮官的偏好、溝通風格、時區

角色詳細檔案 — 透過 AGENTS.md 指令於每次會話讀取一次:

檔案用途
SPEC_[名稱].md詳細角色說明、職責、關鍵路徑

僅限 CEO — 身份資料夾:

檔案用途
identity/COMPANY_PROFILE.md公司背景、業務詳情
identity/PERSONAL_PROFILE.md業主背景、技能、經驗
identity/VALUES.md思維方式、價值觀、決策原則

完整工作區結構 — 所有智能體:

INFO

$env:USERPROFILE/.opengoat/ ├── agents/ │ └── [agentid]/ │ ├── config.json ← 第 5 節自動生成 │ └── models.json ← 第 5 節自動生成 └── workspaces/ └── [agentid]/ ├── SOUL.md ← 自動載入 ├── AGENTS.md ← 自動載入 ├── IDENTITY.md ← 自動載入 ├── HEARTBEAT.md ← 自動載入 ├── TOOLS.md ← 自動載入 ├── USER.md ← 自動載入 └── SPEC_[NAME].md ← 透過 AGENTS.md 指令讀取

CEO 工作區 — 額外的身份資料夾:

INFO

workspaces/ceo/ └── identity/ ├── COMPANY_PROFILE.md ├── PERSONAL_PROFILE.md └── VALUES.md


第 4 節的工作方式

在本節中,你將與你的 AI 管家一起為每個智能體設計人設。 對每個智能體,你都需要決定:

  • 名稱和角色
  • 個性與溝通風格
  • 可以使用哪些工具

與 AI 管家一起確認設計後, 你的安全守護程式會自動寫入設定檔。 你不需要手動編輯任何檔案。

本節操作方式 — 分兩部分

本節分為兩個部分,請按順序完成:

第 1 部分 — Discord 設定(下方的提示詞) 建立你的 Discord 伺服器、頻道,並為每個智能體取得 Webhook URL。 大約需要 10 分鐘。

第 2 部分 — 智能體檔案(下一個提示詞) 使用你的團隊設計文件生成實際的智能體檔案。 AI 會生成終端機指令 —— 貼到 VS Code 中即可自動建立檔案。

現在開始第 1 部分。


Discord Webhook URL — 請先取得這些

每個智能體都透過 Webhook URL 向自己的 Discord 頻道回報。在撰寫 AGENTS.md 檔案之前,你需要先準備好這些 URL。

▶ 將此貼到你的 AI 中以開始

傳送前請附上你的團隊設計文件。

你正在幫助我為 BALIA OS 多智能體團隊
設定 Discord 頻道和 Webhook URL。

請逐步引導我,每次只問一個問題。
如果我卡住了,讓我截圖並描述看到的內容。

我已附上團隊設計文件。

步驟 1 — 檢查 Discord
問我:"你已經安裝 Discord 並設定好帳號了嗎?"
如果沒有:引導我前往 discord.com 下載並建立帳號。
如果有:進入步驟 2。

步驟 2 — 建立 Discord 伺服器
引導我建立一個新伺服器:
- 點擊左側欄的 + 按鈕
- 選擇「自行建立」-> 「供我和我的朋友使用」
- 命名為 "BALIA OS Team"
確認我能看到它後再繼續。

步驟 3 — 為每個智能體建立頻道
從我的團隊設計文件中讀取頻道名稱。
為每個智能體建立一個文字頻道:
- 右鍵點擊「文字頻道」-> 新增頻道 -> 文字
- 使用團隊設計文件中的頻道名稱
對全部 6 個智能體重複此操作。確認所有頻道都已建立後再繼續。

步驟 4 — 為每個頻道取得 Webhook URL
逐個頻道操作:
1. 右鍵點擊頻道 -> 編輯頻道
2. 整合 -> Webhook -> 新增 Webhook
3. 以智能體名稱命名(例如「Marcus」)
4. 複製 Webhook URL
5. 讓我把它貼到安全的地方保存
對全部 6 個重複此操作。確認全部 6 個 URL 都已保存後再繼續。

步驟 5 — 新增到 .env 檔案
引導我在 VS Code 中開啟 .env 檔案。
檔案路徑為:
- Windows: $env:USERPROFILE\.opengoat\.env
- Mac: ~/.opengoat/.env
新增每一個 webhook:
DISCORD_WEBHOOK_[智能體名稱]=https://discord.com/api/webhooks/xxxxx/xxxxx
(智能體名稱使用大寫)
告訴我:"永遠不要分享這個檔案,也永遠不要把它提交到 GitHub。"

全部 webhook 保存完成後:"Discord 設定完成。"

現在開始。請先問我第一個問題。

使用 AI 提示詞

將下方提示詞貼到你的 Chat AI 中,並附上:

  1. 第 2 節生成的團隊設計文件

AI 會逐個為每個智能體生成終端機指令。把指令貼到 VS Code 終端機中,即可自動建立檔案。


▶ 將此貼到你的 AI 中以開始

你正在幫助我為 BALIA OS 建立智能體檔案,
這是一個基於 OpenClaw 構建的多智能體 AI 作業系統。

已附上:
1. 我的團隊設計文件(來自第 2 節)

請先閱讀它,再開始生成任何內容。
從文件中提取全部智能體名稱、ID 和 Discord 頻道名稱。

架構說明:

1. 我是指揮官。我直接指揮每一個智能體,沒有中間協調者。

2. 每個智能體都有兩個位置:
   - agents/[id]/ — OpenClaw 設定(config.json + models.json)
   - workspaces/[id]/ — 工作區檔案(SOUL、AGENTS、IDENTITY、HEARTBEAT、TOOLS、USER、SPEC)
   所有路徑都在 $env:USERPROFILE/.opengoat/ 之下

3. OpenClaw 會在每次會話開始時自動注入 SOUL.md、AGENTS.md、IDENTITY.md、
   HEARTBEAT.md、TOOLS.md、USER.md。不要在這些檔案裡寫「讀取自己」這類指令。

4. SPEC_[名稱].md 不會自動注入。需要在 AGENTS.md 的「會話開始」部分加上:
   「讀取 SPEC_[智能體名].md 以取得完整角色詳情」

5. 僅 CEO 在 workspaces/ceo/ 內有一個 identity/ 資料夾:
   identity/COMPANY_PROFILE.md
   identity/PERSONAL_PROFILE.md
   identity/VALUES.md
   只為 CEO 智能體生成這些檔案。

6. SOUL.md 和 AGENTS.md:各自控制在 400 字以內(每次會話都會被注入)。
   SPEC:可以寫得詳細一些(每次會話只讀取一次)。

生成之前 —— 先問我:
"你的 Windows 使用者名稱是什麼?(C:\Users\[使用者名稱] 中的名稱)"
等我回答後,在所有檔案路徑中使用這個使用者名稱。

為每個智能體生成以下內容:

====================================
檔案 1:SOUL.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/SOUL.md
每次會話自動注入。不超過 400 字。
====================================

# SOUL.md — [智能體名稱]

## 你是誰
[2-3 句:身份、個性、工作方式]

## 語氣
- [規則 1]
- [規則 2]
- [規則 3]
- [禁止的風格]

## 硬性限制
- 絕不在設定角色之外行動
- 未驗證結果前絕不報告完成
- 未經指揮官批准絕不採取破壞性行動
- [1-2 條特定角色限制]

## 當前任務
[1-2 句當前重點]

====================================
檔案 2:AGENTS.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/AGENTS.md
每次會話自動注入。不超過 400 字。
====================================

# AGENTS.md — [智能體名稱] 操作規程

## 會話開始(每次會話 —— 按此順序)
1. 從 SOUL.md 確認身份
2. 讀取 SPEC_[智能體名].md 以取得角色詳情
3. 讀取 HEARTBEAT.md —— 記錄常駐任務
4. 讀取 TOOLS.md —— 記錄允許使用的工具和限制
5. 讀取 USER.md —— 記錄指揮官的偏好
6. 向 Discord 回報:"🔷 [名稱] 已就緒。[當前任務或狀態]"

(僅 CEO —— 第 2 步之後,還需讀取:
  identity/COMPANY_PROFILE.md
  identity/PERSONAL_PROFILE.md
  identity/VALUES.md)

## 會話結束(每次會話)
1. 向 Discord 回報:"✅ [名稱] 會話完成。[摘要]"
2. 記錄下次會話待完成的任務

## 回報
- 頻道:#[discord頻道]
- 指令:python $env:USERPROFILE/.opengoat/scripts/discord_send.py
  DISCORD_WEBHOOK_[名稱] "訊息內容"
  (discord_send.py 會在下方「部署安全守護程式」部分自動部署)
- HTTP 204 = 成功。否則 = 立即回報失敗。
- 格式:結論 -> 詳情 -> 下一步建議行動
- 回報時機:會話開始 / 任務完成 / 出錯 / 會話結束

## 錯誤處理
1. 檢查 SPEC_[名稱].md 中是否有已知的錯誤模式
2. 未能解決 -> 向指揮官回報完整詳情
3. 未經指揮官批准,不進行破壞性重試

## 硬性規則
- 回報完成前先驗證
- 不做設定角色之外的行動
- 未經指揮官批准不進行破壞性操作

====================================
檔案 3:IDENTITY.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/IDENTITY.md
自動注入。僅記錄事實,保持簡短。
====================================

# IDENTITY.md

Name: [智能體名稱]
Agent ID: [agentid-小寫]
Role: [角色頭銜]
Department: BALIA OS Team
Reports To: Commander (directly)
Discord: #[頻道名稱]

====================================
檔案 4:HEARTBEAT.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/HEARTBEAT.md
自動注入。常駐任務與異常應對。
====================================

# HEARTBEAT.md — [智能體名稱]

## 常駐監控
[這個智能體持續監控或維護的內容]

## 定期任務
[週期性職責 —— 每日、每週,或由觸發條件啟動]

## 會話開始時
- 讀取 SOUL.md 和 AGENTS.md
- 回報:"🔷 [名稱] 已就緒"

## 出錯或異常時
- 立即透過 Discord 向指揮官回報
- 未經指揮官批准,絕不自行處理

====================================
檔案 5:TOOLS.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/TOOLS.md
自動注入。工具規則與限制。
====================================

# TOOLS.md — [智能體名稱] 工具規則

## 核心原則
- 每次任務開始前查看 SPEC_[名稱].md 確認允許使用的工具
- 只載入任務實際需要的工具

## 允許使用的工具
[列出與該智能體角色相關的工具]

## Discord 回報
一律直接使用 discord_send.py:
python $env:USERPROFILE/.opengoat/scripts/discord_send.py DISCORD_WEBHOOK_[名稱] "訊息內容"
傳送後確認回傳 HTTP 204。

## 禁止事項
- 硬編碼 API 金鑰或 Webhook(必須一律從 .env 讀取)
- 設定角色之外的行動
- 不必要的對外溝通

====================================
檔案 6:USER.md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/USER.md
自動注入。指揮官偏好。
====================================

# USER.md — 指揮官檔案

## 姓名
[指揮官希望被稱呼的名字]

## 時區
[時區 —— 如果團隊設計文件中沒有,問我]

## 溝通風格
- [偏好 1]
- [偏好 2]

## 當前階段
[我們目前正專注於建構的內容]

====================================
檔案 7:SPEC_[智能體名].md
路徑:$env:USERPROFILE/.opengoat/workspaces/[agentid]/SPEC_[智能體名].md
不會自動注入。透過 AGENTS.md 每次會話讀取一次。
====================================

# SPEC_[智能體名] v1.0 — [智能體名稱]([角色])
最後更新:[今天]

## 1. 角色
[2-3 句]

## 2. 職責
[來自團隊設計文件的條列清單]

## 3. 此智能體不做的事
[明確邊界]

## 4. 當前階段任務
[當前重點]

## 5. 關鍵路徑
- 工作區:$env:USERPROFILE/.opengoat/workspaces/[agentid]/
- Discord webhook:DISCORD_WEBHOOK_[名稱](從 .env 讀取)

## 6. 變更日誌
| 版本 | 日期 | 變更 |
|---------|------|---------|
| v1.0 | [今天] | 初始建立 |

====================================
僅 CEO —— 檔案 8、9、10:identity/ 資料夾
生成前先逐一提問以下 3 個問題。
====================================

Q1:「說說你的業務 —— 它是做什麼的、經營了多久、服務哪些市場。」

Q2:「說說你自己 —— 與這項業務相關的背景、技能、經驗。」

Q3:「你是如何做決策的?什麼價值觀在引導你?
    你希望自己能多擁有哪些思維方式或視角?」

獲得全部 3 個答案後,生成:

COMPANY_PROFILE.md —— Q1 內容,結構化整理
PERSONAL_PROFILE.md —— Q2 內容,結構化整理
VALUES.md —— Q3 內容,結構化整理

路徑:$env:USERPROFILE/.opengoat/workspaces/ceo/identity/

這裡提供的細節越多,CEO 的思考和決策方式就越貼近業主本人。

====================================

如何交付檔案:

為每個檔案生成內容後,輸出建立該檔案的確切 python 指令。格式如下:

--- 貼到終端機(Windows)---
python -c "
content = '''[完整檔案內容]'''
import os
path = r'$env:USERPROFILE/.opengoat/workspaces/[agentid]/SOUL.md'
os.makedirs(os.path.dirname(path), exist_ok=True)
open(path, 'w', encoding='utf-8').write(content)
print('Created:', path)
"

--- 貼到終端機(Mac)---
python3 -c "
content = '''[完整檔案內容]'''
import os
path = os.path.expanduser('~/.opengoat/workspaces/[agentid]/SOUL.md')
os.makedirs(os.path.dirname(path), exist_ok=True)
open(path, 'w', encoding='utf-8').write(content)
print('Created:', path)
"

等我貼上指令並確認執行成功後,再進行下一個檔案。
問我:"你看到 'Created: [路徑]' 了嗎?"

操作順序:
- 從智能體 #1 開始(不是 CEO)
- 一次生成一個檔案,一次處理一個智能體
- 每個檔案都要等終端機確認後再繼續下一個
- 到 CEO 時:先問完 3 個身份問題,
  再生成 7 個核心檔案 + 3 個身份檔案
- 最後用一張彙總表列出所有已建立的檔案

AI 管家確認設計後,請讓安全守護程式寫入檔案:

Windows:

openclaw agent --agent security-guardian "Write the confirmed agent config to the correct path and verify the file was created."

守護程式會在檔案正確寫入後進行確認。


第 2 步 — 確認檔案已建立

AI 引導你完成所有檔案後,確認每個智能體的工作區:

Windows:

dir $env:USERPROFILE\.opengoat\workspaces\[agentid]

Mac:

ls ~/.opengoat/workspaces/[agentid]

你應該會看到:

SOUL.md
AGENTS.md
IDENTITY.md
HEARTBEAT.md
TOOLS.md
USER.md
SPEC_[NAME].md

CEO 還會額外擁有:

identity/
├── COMPANY_PROFILE.md
├── PERSONAL_PROFILE.md
└── VALUES.md

第 3 步 — 進入下一個智能體前先檢查

打開 AGENTS.md。「會話開始」部分是否列出了全部步驟,包括 HEARTBEAT.md、TOOLS.md 和 USER.md?

是 -> 繼續。否 -> 先讓 AI 修正。


本節完成後的狀態

每個智能體的工作區:

INFO

workspaces/[agentid]/ ├── SOUL.md ✅ ├── AGENTS.md ✅ ├── IDENTITY.md ✅ ├── HEARTBEAT.md ✅ ├── TOOLS.md ✅ ├── USER.md ✅ └── SPEC_[NAME].md ✅

CEO 還會額外擁有:

INFO

workspaces/ceo/ └── identity/ ├── COMPANY_PROFILE.md ✅ ├── PERSONAL_PROFILE.md ✅ └── VALUES.md ✅


注意: 安全守護程式已在第 3 節部署。如果你跳過了第 3 節,請先返回完成,再繼續進行第 5 節。


驗證你的設定

完成所有智能體檔案後,執行:

Windows:

node $env:USERPROFILE\.opengoat\workspaces\security-guardian\scripts\verify_setup.js --section 4

Mac:

node ~/.opengoat/workspaces/security-guardian/scripts/verify_setup.js --section 4

這會確認所有智能體檔案都已就緒,接著你就可以在第 5 節啟動你的團隊了。