skills-experimental/away-summary/SKILL.md
# Away Summary Skill **优先级**: P32 **来源**: Claude Code `awaySummary.ts` **适用场景**: 用户离开后返回摘要生成 --- ## 概述 Away Summary生成"While you were away"摘要,用于用户长时间未交互后返回时快速了解进度。使用最近30条消息 + session memory,调用small fast model生成1-3句摘要。 --- ## 核心功能 ### 1. 消息窗口 ```typescript const RECENT_MESSAGE_WINDOW = 30 export async function generateAwaySummary( messages: readonly Message[], signal: AbortSignal ): Promise<string | null> { if (messages.length === 0) return null const recent = messages.slice(-R
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/away-summaryInstall 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.
优先级: P32
来源: Claude Code awaySummary.ts
适用场景: 用户离开后返回摘要生成
Away Summary生成"While you were away"摘要,用于用户长时间未交互后返回时快速了解进度。使用最近30条消息 + session memory,调用small fast model生成1-3句摘要。
const RECENT_MESSAGE_WINDOW = 30
export async function generateAwaySummary(
messages: readonly Message[],
signal: AbortSignal
): Promise<string | null> {
if (messages.length === 0) return null
const recent = messages.slice(-RECENT_MESSAGE_WINDOW)
const memory = await getSessionMemoryContent()
recent.push(createUserMessage({
content: buildAwaySummaryPrompt(memory)
}))
return await queryModelWithoutStreaming({
messages: recent,
model: getSmallFastModel()
})
}
function buildAwaySummaryPrompt(memory: string | null): string {
const memoryBlock = memory
? `Session memory (broader context):\n${memory}\n\n`
: ''
return `${memoryBlock}The user stepped away and is coming back.
Write exactly 1-3 short sentences.
Start by stating the high-level task — what they are building or debugging.
Next: the concrete next step.
Skip status reports and commit recaps.`
}
// 用户超过1小时未发消息
const lastMessageTime = getLastMessageTime()
const now = Date.now()
if (now - lastMessageTime > 3600000) { // 1 hour
const summary = await generateAwaySummary(messages)
if (summary) {
// 发送飞书卡片:"你刚才在做什么..."
await feishuApi.sendCard({
title: "While you were away",
content: summary
})
}
}
{
"skill": "away-summary",
"priority": "P32",
"source": "awaySummary.ts",
"enabled": true,
"recentMessageWindow": 30,
"maxSentences": 3,
"model": "small-fast",
"createdAt": "2026-04-12T14:00:00Z"
}
awaySummary.tssessionMemory.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