skills-experimental/direct-member-message/SKILL.md
# Direct Member Message Skill **优先级**: P29 **来源**: Claude Code `directMemberMessage.ts` **适用场景**: 飞书群聊@成员消息语法 --- ## 概述 Direct Member Message解析 `@agent-name message` 语法,直接发送消息给团队成员,绕过model处理。可用于飞书群聊中直接回复特定用户。 --- ## 核心功能 ### 1. 语法解析 ```typescript export function parseDirectMemberMessage(input: string): { recipientName: string message: string } | null { const match = input.match(/^@([\w-]+)\s+(.+)$/s) if (!match) return null const [, recipientName, message] = match if (!rec
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/direct-member-messageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
优先级: P29
来源: Claude Code directMemberMessage.ts
适用场景: 飞书群聊@成员消息语法
Direct Member Message解析 @agent-name message 语法,直接发送消息给团队成员,绕过model处理。可用于飞书群聊中直接回复特定用户。
export function parseDirectMemberMessage(input: string): {
recipientName: string
message: string
} | null {
const match = input.match(/^@([\w-]+)\s+(.+)$/s)
if (!match) return null
const [, recipientName, message] = match
if (!recipientName || !message) return null
const trimmedMessage = message.trim()
if (!trimmedMessage) return null
return { recipientName, message: trimmedMessage }
}
export async function sendDirectMemberMessage(
recipientName: string,
message: string,
teamContext: AppState['teamContext'],
writeToMailbox?: WriteToMailboxFn
): Promise<DirectMessageResult>
// 在teamContext中查找成员
const member = Object.values(teamContext.teammates ?? {}).find(
t => t.name === recipientName
)
if (!member) {
return { success: false, error: 'unknown_recipient', recipientName }
}
await writeToMailbox(
recipientName,
{
from: 'user',
text: message,
timestamp: new Date().toISOString()
},
teamContext.teamName
)
return { success: true, recipientName }
// OpenClaw扩展:飞书群聊直接消息
export function parseFeishuDirectMessage(input: string): {
recipientName: string
message: string
} | null {
// 支持 @成员名 消息 内容
const match = input.match(/^@([\w-]+)\s+(.+)$/s)
return match ? { recipientName: match[1], message: match[2].trim() } : null
}
// 检查是否是飞书群聊
if (chat_type === 'group') {
const directMessage = parseFeishuDirectMessage(userMessage)
if (directMessage) {
// 直接发送给成员,不经过model
return await sendDirectFeishuMessage(directMessage.recipientName, directMessage.message)
}
}
// 飞书私聊场景
export async function sendDirectFeishuMessage(
recipientName: string,
message: string
): Promise<void> {
// 查找飞书用户
const user = await feishuApi.searchUser(recipientName)
if (!user) throw new Error(`User ${recipientName} not found`)
// 发送私聊消息
await feishuApi.sendMessage({
receive_id_type: 'open_id',
receive_id: user.open_id,
content: message,
msg_type: 'text'
})
}
{
"skill": "direct-member-message",
"priority": "P29",
"source": "directMemberMessage.ts",
"enabled": true,
"syntaxPattern": "^@([\w-]+)\\s+(.+)$",
"messagesSent": 0,
"lastRecipient": null,
"createdAt": "2026-04-12T13:00:00Z"
}
directMemberMessage.tsbusiness
IAA 日报飞书输出能力。 支持把固定 CSV 模板一键转换成: - 中文运营结论 - 飞书卡片 JSON - 飞书发送载荷 Use when: - 需要把 IAA 日报直接发到飞书 - 需要从 CSV 一键生成运营日报
data-ai
IAA日报分析模型 功能: - 渠道日报自动分析 - 小时级+日级ROI联动判断 - 按地区输出加量/降量/停投建议 - 按产品类型输出阈值 - 自动识别利润区/观察区/止损区 Use when: - 分析每天投放数据 - 生成运营日报结论 - 判断是否加量/降量/停投 - 对比美加澳/日韩表现 Keywords: - 日报模型, 投放日报, 加量, 降量, 停投, ROI日报, 分地区分析
data-ai
IAA固定日报分析模板 功能: - 固定字段模板(可直接贴每天数据) - 自动输出总盘结论 - 自动输出美加澳/日韩结论 - 自动给出加量/降量/停投建议 - 适配文件修复/清理两类产品 Use when: - 需要固定日报格式 - 每天复盘渠道表现 - 给运营团队出统一结论 Keywords: - 固定模板, 日报模板, ROI模板, IAA日报, 运营模板
development
# HyperlinkPool Pattern Skill HyperlinkPool Pattern - HyperlinkPool class + strings array + stringMap + Index 0 no hyperlink + intern(hyperlink) + get(id) + undefined handling + 5-minute reset + OSC8 hyperlink interning。 ## 功能概述 从Claude Code的ink/screen.ts提取的HyperlinkPool模式,用于OpenClaw的OSC8超链接池管理。 ## 核心机制 ### HyperlinkPool Class ```typescript export class HyperlinkPool { private strings: string[] = [''] // Index 0 = no hyperlink private stringMap = new Map<string, number>() // strings