
前言
在使用人工智慧助理 OpenClaw 的時候最大的問題之一,就是 Token (算力) 的使用量以及使用效率。因為, AI Agent 會使得 Token 的使用量,比起單純使用 AI Model 大上千倍;而且大家都知道 Token 很貴,所以如何有效率地使用 Token 就變成各家廠商及學者們熱門的話題。從管理的角度來講,與其在跟 AI Agent 溝通的訊息發出之後再再整理濃縮,不如在溝通的訊息發出之前,就先整理好,更為有效率。將 OpenClaw 要處理的事情先分類好,在不同的溝通主題(Topic)上來進行,這時候與 AI Model 溝通的上下文更為精簡;而且,在主題對一個段落之後,可以很容易地清除不必要的對話訊息;不僅更好管理 Token 的使用量;對我這種潔癖的人來說,每個主題都很清楚。對於經常在管理專案的人來說,這幾乎是天生就具備的能力;不管是作事情的當下,或是討論之後的整理,都可以井井有條;非常舒服,又可以省錢。
多角色配置
- Telegram 群組功能
AI Agent 因為每次在跟 AI Model 進行溝通的時候,都要合併前後文一起詢問,所以 Token 量會爆增;透過 Telegram 的 Group/Topic 功能。例如,可以建立一個討論區,例如以下的群組,包含了程式開發、文章信件、研究開發以及美術繪編,各個功能角色各有一個獨立的題目 (Topic)

- 獨立通訊管道
由於每個 Topic 的 Agent 都是獨立運作的 session;所以,不旦 Agent與 AI model 的溝通只有同一個 topic 的上下文,可以大量減少不必要上下文。相對於同時建立多個 AI 助理。多角色配置對算力的使用更為有效,簡單來說,多角色是一個助理在不同空間扮演多個功能;它可以有不同的模型來搭配,但是他的心跳 (Heart Beat) 跟其他的助理是相同的,但專業不同。可以想像是同一個人在不同時間不同空間扮演不同角色;一天還是一樣吃三餐,但是可以是工作上回信整理時程的秘書、可以是學習上的老師,也可以是增廣見聞的朋友。但是多個 AI 助理的作法是完全不同的,助理之間是完全獨立不相干,消耗的成本也是疊加的。
- 個别指定 AI 模型
這一點是我最喜歡的特點;可以透過 dashboard 可以去更改每個 topic 所使用的 model,充份發揮 Ollama 或是 OpenRouter 多模型使用的好處,例如老板和寫信,就交給比較會唬爛的模型,像 GxP;寫程式就找個實在一點,不會廢話的模型;如果是專業學術的,當然就找專業氣息濃厚的模型;例如我的 AI 畫手,當然就是找跟 Google Nano Banana 溝通最有效率的 Gemini 3 flash 模型來擔任,順利畫出這麼多可愛的插圖。
然後,原來的小蝦就會變成大總管,負責監看各個 topic 的 token 使用量,決定要不要刪除 topic 或減少 topic 留下來的訊息數目;這隻變成大尾龍蝦的小蝦,也就可以再指定一個心思細密的模型來使用。
安裝
首先,我們要在 Telegram 建立一個話題群組 (Topic Group)
- 在 telegram 建立機器人
先向 '@RobFather 要一個機器人,例如先跟他要一個"topicBuilder"。這一步有點怪,但是在現行版本的 openclaw 上的連結就會比較不會出問題;

- 在 telegram 建立機器人可以使用的群組
啟動 'topicBuilder' 在右上方按下"Create Group",然後更改 Group 名稱、把小蝦加進來,最後按下"Create"


- 進入群組設定畫面
按下"Create"之後會出現另一個畫面,按右上角 "..." 的地方,再按"Info" ( 很重要,不是"Edit");就會有一個編輯畫面,這時候要按右上角的"Edit",這就是設定的主畫面。



- 設定 Adimistror
設定畫面往下拉,點"Administrators",把小蝦加進 Admin,按 save;再接 "< BACK"回設定畫面。



- 打開 Topic 開關
在設定畫面按下"Topics",出現啟動畫面,打開 Topic "Enable"功能;;再接 "< Back"回設定畫面;最後按 "Done" 結束,回到群組畫面,再按"<Back" 回到聊天畫面。



- 啟動 Topic
在聊天畫面可以看到多了群組 TopicRoom 以及一個 default topic "# General",點一下就會跑出Topic 畫面,這時候你跟他講什麼話都不會有任何反應。


再來要很注意,點擊 General一次,進入一個設定的畫面, 再點擊 General 的圖像,就會出現 topic 的資訊,在 share link 的那一行,會有 "https://xxx/c/[channel ID]/[topic ID]",要把 channel ID 以及 topic ID 記下來,接下來跟 openClaw 的連結就會用到。channel ID 是這個 Topic Group 都一樣的,但是 topic ID 是每一個 topic 都不同;之後跟 openClaw 溝通的時候都是使用這個數字來分別那一個 topic。所以,我習慣會把它記在 topic 標題中,例如,再按右上角 "Edit"直接把 "General"改成"General (#1)"。再回到 General Topic 聊天畫面,目前還是都沒有反應。



- 連結 openclaw
回到主畫面,先找"userinfobot',先打"/start",他會顯示你的資訊;然後按 "Group",他就把你剛才建立的 Group 列出來,注意,這時候的 Group ID 會是 "-100" 開頭;表示你的 Group 是"Super Group";然後編輯 openclaw.json,在 telegram 區塊中加上 Groups 以及 groupAllowFrom,要注意 Group 的 group id 是 "-100" 開頭,而 group AllowFrom 不是。
然後要打開 "~/.openclaw/openclaw.json" 這個檔案,在 telegram 的區域加上 groups.topics 的內容
"telegram": {
"groups": {
"[-100+channel ID]": {
"topics": {
"[topic ID]": {
"requireMention": false,
"groupPolicy": "open",
"enabled": true
},
}
}
},
"groupAllowFrom": [
"[channel ID]"
],
大概像這個樣子:

- 指定使用的 AI 模型
每一個 Topic Agent 都可以透過 openclaw.json 來指定所要使用的 AI model,可以在 channels 區塊底下加上一個 "modelByChannel.telegram" 的區塊來強迫使用指定的模式;例如:
"channels":{
"modelByChannel":{
"telegram":{
"-100[channel ID]:topic:[topic ID]":"google/gemini-2.5-flash"
}
},
...
}
這樣子,就可以利用 telegram group topic 指定每一個不同的 topic 有不同的 model ,具備不同能力以及個性。然後,重新啟動 gateway service
openclaw gateway restart 最後,再回到新建立好的 topic room 裏跟小蝦 say Hi,因為裏面有三個人,所以要用指定符號'@' 來指定小蝦。一旦小蝦有回覆就算是連結成功

- 步驟 8.
第一個 Topic 建立起來之後,再來就一個一個把所需要的 topic 建立起來,並且啟動;例如是 "General", "寫程式"、"看信"、"會議"、"老板"之類的。全部都 OK 了,就可以把 topicBuilder 移除掉,這樣在 topic 中交談就可以不用再指定人名。它只有在建立第一個 Topic 時會用到,之後再新增 Topic 就不需要了。這可能是我現在在用的版本中的一個 bug;新的版本可能就不需要多建立這一個額外的角色。




















