Create a new Feishu topic in a dedicated topic-group, then optionally post the first thread reply inside it.
Keep this skill lightweight. Use it for topic creation and first-reply bootstrapping, not for session routing magic.
This workflow has been verified:
feishu_im_user_message.send to a topic-group chat_id creates a new top-level topic.feishu_im_user_message.reply with reply_in_thread=true posts inside that topic.@ a user by placing Feishu text markup directly in the content:<at user_id="ou_xxx">Name</at> 你好
This is the current working path. Prefer it over assumptions about implicit reply routing.
Require all of the following:
feishu_im_user_message.If user auth is unavailable or expired, stop and ask the user to re-authorize.
If the target group is not a topic-group, explain that the result will only be a normal group message, not a topic.
Default to the fixed topic-group configured in TOOLS.md, if one exists.
Do not hardcode a personal/local group name into a public skill.
Use feishu_chat with action=search to resolve the group.
If the user explicitly names a target group, use that group.
If the user does not name a group and no local default is configured:
If no matching group is found:
TOOLS.md, if configured.chat_id with feishu_chat.search.發現更多技能外掛,請訪問7w4.net。
Support four shapes:
Example:
開話題:OpenClaw 多執行緒 SOP
Send one top-level text message only.
Example:
開話題:OpenClaw 多執行緒 SOP|先寫一個 5 點大綱
Interpret as:
OpenClaw 多執行緒 SOP先寫一個 5 點大綱Example:
開話題:測試 1|回一條:@我 測試
Interpret as:
<at user_id="...">...</at> mentionExample:
開個新話題聊這個,把前面幾條帶過去,然後追問:自由現金流有幾個指數?有什麼區別?
Interpret as:
Use feishu_im_user_message.send:
action=sendreceive_id_type=chat_idreceive_id=<chat_id>msg_type=textcontent={"text":"<top-level text>"}The returned message_id is the topic root.
If the user asked for an initial reply, use feishu_im_user_message.reply:
action=replymessage_id=<topic root message_id>reply_in_thread=truemsg_type=textcontent={"text":"<reply text>"}If an @mention is requested, format it directly in the text:
<at user_id="ou_xxx">Name</at> 回覆內容
Use the current user open_id when the user says @我.
For context carry-over + new question, prefer one single top-level message. Do not add a second seed reply unless the user explicitly wants one, because two user messages may trigger two assistant replies.
Use a simple structure:
<標題>
問題:...
前情提要:...
Or, when a short summary reads better:
<標題>
問題:...
前情提要:
- ...
- ...
Rules:
Example:
HALO:自由現金流指數有什麼區別
問題:
A股裡自由現金流目前有幾個主流指數?它們分別有什麼區別?
前情提要:
- 剛討論過 HALO 在 A 股的對映,涉及資源、能源、公用事業、電網、交運、央企紅利、現金流。
- 這次只是在這個基礎上繼續追問自由現金流指數。
Treat all of the following as likely triggers:
開話題:標題開個話題:標題開個新話題:標題/topic 標題/topic 標題|正文新開一個話題,然後在話題裡回覆一條開話題: 標題, 然後在話題裡回覆 1 條測試並且 at 我Useful parsing rules:
: / : to isolate the command from the payload.| / | as a likely separator between title and first reply.然後回覆一條, 回一條, 在話題裡回覆, 並且 at 我, @我 indicate an in-thread follow-up.把前面幾條帶過去, 把剛才聊的內容帶過去, 新開一個話題聊這個, 繼續追問, 新的追問 indicate a context-carrying seed reply rather than a plain freeform reply.Do not overfit parsing. If the message is ambiguous, ask one short clarification question.
Prefer the validated user-message path for this skill:
feishu_im_user_message.sendfeishu_im_user_message.replyReason: this path has been validated end-to-end for:
Do not rely on ordinary assistant reply routing to create a fresh topic.
After success, tell the user briefly:
Keep it short.
User:
開話題:測試 4
Action:
測試 4User:
開話題:測試 3|不 @ 的執行緒回覆測試
Action:
測試 3不 @ 的執行緒回覆測試User:
開話題:測試 2|@我 再測一次
Action:
測試 2<at user_id="ou_xxx">Name</at> 再測一次User:
開個新話題聊這個,把前面幾條帶過去,然後追問:自由現金流有幾個指數?有什麼區別?
Action:
問題:... first前情提要:...這個 Skill 功能設計清晰,文件說明詳細,能準確理解開話題等多種表達方式。但存在配置缺失問題,實際使用時可能因缺少工具配置而無法正常執行。文件缺少常見問題解答,實際體驗可能受影響。總體質量中等偏上,核心功能明確但完整度有待提升。