Feishu New Chat

👤 dxxbb 📦 v0.1.2 ⭐ 4.5 ⬇️ 858 下載
📄 辦公效率 免費

📖 技能介紹


name: feishu-topic-spawn description: "Create a new topic in a Feishu topic-group, and optionally add the first in-thread reply (with optional @mention) by sending as the user. Use when the user says things like ‘開話題’, ‘/topic’, ‘開個新話題’, ‘在話題裡回一條’, or asks to simulate a ChatGPT-style ‘new chat’ workflow inside a Feishu topic-group. In a Feishu topic-group, a top-level send creates the topic; replying with reply_in_thread=true posts inside that topic."


Feishu Topic Spawn

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.

Validated behavior

This workflow has been verified:

  1. feishu_im_user_message.send to a topic-group chat_id creates a new top-level topic.
  2. feishu_im_user_message.reply with reply_in_thread=true posts inside that topic.
  3. A reply can @ 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.

Preconditions

Require all of the following:

  • The destination is a real Feishu topic-group.
  • The user has explicitly asked to send the message.
  • The user has permission to post in that group.
  • User-auth Feishu messaging is available for 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 target group

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: - Stop. - Ask which Feishu topic-group to use.

If no matching group is found: - Stop. - Tell the user the topic-group does not exist yet. - Ask them to create it manually first.

Workflow

1. Resolve target group

  • If the user explicitly names a group, use that name.
  • Otherwise use the local default topic-group from TOOLS.md, if configured.
  • If no local default exists, ask the user which topic-group to use.
  • Resolve the chat_id with feishu_chat.search.

2. Parse requested action

Support four shapes:

A. Open topic only

Example:

開話題:OpenClaw 多執行緒 SOP

Send one top-level text message only.

B. Open topic + first thread reply

Example:

開話題:OpenClaw 多執行緒 SOP|先寫一個 5 點大綱

Interpret as: - title = OpenClaw 多執行緒 SOP - first thread reply = 先寫一個 5 點大綱

C. Open topic + first thread reply + @mention

Example:

開話題:測試 1|回一條:@我 測試

Interpret as: - top-level topic title/text - then a thread reply - optionally prepend a Feishu <at user_id="...">...</at> mention

D. Open topic + carry over prior context + ask a new question

Example:

開個新話題聊這個,把前面幾條帶過去,然後追問:自由現金流有幾個指數?有什麼區別?

Interpret as: - create a clean new topic - carry over only the minimum relevant context - put both context and the new question into the same top-level topic-opening message - make the new question impossible to miss - avoid a second seed message unless the user explicitly wants an extra in-thread reply

3. Create the topic

Use feishu_im_user_message.send: - action=send - receive_id_type=chat_id - receive_id=<chat_id> - msg_type=text - content={"text":"<top-level text>"}

The returned message_id is the topic root.

4. Optionally add the first thread reply

If the user asked for an initial reply, use feishu_im_user_message.reply: - action=reply - message_id=<topic root message_id> - reply_in_thread=true - msg_type=text - content={"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 @我.

5. When carrying context into a new topic, keep it simple

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: - Put the real question first. - Keep the summary short. - Do not add extra instruction-y wording unless absolutely needed. - The goal is not to outsmart the model; the goal is to make the follow-up obvious.

Example:

HALO:自由現金流指數有什麼區別

問題:
A股裡自由現金流目前有幾個主流指數?它們分別有什麼區別?

前情提要:
- 剛討論過 HALO 在 A 股的對映,涉及資源、能源、公用事業、電網、交運、央企紅利、現金流。
- 這次只是在這個基礎上繼續追問自由現金流指數。

Parsing guidance

Treat all of the following as likely triggers: - 開話題:標題 - 開個話題:標題 - 開個新話題:標題 - /topic 標題 - /topic 標題|正文 - 新開一個話題,然後在話題裡回覆一條 - 開話題: 標題, 然後在話題裡回覆 1 條測試並且 at 我

Useful parsing rules: - Split on the first / : to isolate the command from the payload. - Treat / | as a likely separator between title and first reply. - Phrases like 然後回覆一條, 回一條, 在話題裡回覆, 並且 at 我, @我 indicate an in-thread follow-up. - Phrases like 把前面幾條帶過去, 把剛才聊的內容帶過去, 新開一個話題聊這個, 繼續追問, 新的追問 indicate a context-carrying seed reply rather than a plain freeform reply. - If only one segment exists, treat it as topic text only.

Do not overfit parsing. If the message is ambiguous, ask one short clarification question.

Tool preference

Prefer the validated user-message path for this skill: - feishu_im_user_message.send - feishu_im_user_message.reply

Reason: this path has been validated end-to-end for: - topic creation - in-thread reply - @mention markup

Do not rely on ordinary assistant reply routing to create a fresh topic.

Report back

After success, tell the user briefly: - target group - topic text/title used - whether a thread reply was added - whether an @mention was included

Keep it short.

Boundaries

  • This skill only works as intended in a Feishu topic-group.
  • This skill does not create Feishu groups.
  • This skill should not silently send as the user unless the user explicitly asked.
  • This skill is for topic bootstrapping: create the topic, optionally seed the first thread reply, then let later conversation continue inside that topic.
  • If the user wants a normal group message instead of a topic, do not force this skill.

Minimal examples

Example 1: topic only

User:

開話題:測試 4

Action: - resolve the configured default topic-group (or ask the user which group to use) - send top-level 測試 4

Example 2: topic + thread reply

User:

開話題:測試 3|不 @ 的執行緒回覆測試

Action: - create top-level 測試 3 - reply in thread with 不 @ 的執行緒回覆測試

Example 3: topic + thread reply + @me

User:

開話題:測試 2|@我 再測一次

Action: - create top-level 測試 2 - reply in thread with:

<at user_id="ou_xxx">Name</at> 再測一次

Example 4: carry context + ask one new question cleanly

這個技能的最新版本可以在7w4.net小蔥技能站找到。

User:

開個新話題聊這個,把前面幾條帶過去,然後追問:自由現金流有幾個指數?有什麼區別?

Action: - create a fresh topic title focused on the new question - send one top-level topic-opening message - put 問題:... first - then add a short 前情提要:... - do not add a second seed reply unless the user explicitly asks for one

🤖 AI 評測

這個 Skill 功能設計清晰,文件說明詳細,能準確理解開話題等多種表達方式。但存在配置缺失問題,實際使用時可能因缺少工具配置而無法正常執行。文件缺少常見問題解答,實際體驗可能受影響。總體質量中等偏上,核心功能明確但完整度有待提升。

📊 多維度評分

適應性4.7
規範性4.3
有效性4.7
可靠性4
可信度5

📁 包含檔案 (2 個)

📄 SKILL.md 8.3 KB
📄 _meta.json 134 B