skills-experimental/effort/SKILL.md
Effort levels for task complexity. Low/Medium/High/Max effort corresponds to task difficulty and model capability. Helps match task complexity with appropriate effort. Use when [effort] is needed.
npx skillsauth add bianhaifeng789-hue/openclaw-config effortInstall 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.
任务复杂度级别,匹配任务难度和模型能力。
场景:
Claude Code 方案:effort.ts + EFFORT_LEVELS OpenClaw 飞书适配:关键词触发 + 任务匹配
const EFFORT_LEVELS = [
'low', // 简单任务
'medium', // 中等任务(默认)
'high', // 复杂任务
'max' // 极难任务(Opus 4.6 only)
] as const
适用任务:
示例:
用户:low effort 修复这个 typo
Agent:
→ Effort: low
→ 快速执行
→ 简单验证
适用任务(默认):
示例:
用户:medium effort 添加一个新 endpoint
Agent:
→ Effort: medium(默认)
→ 正常执行
→ 标准验证
适用任务:
示例:
用户:high effort 重构认证系统
Agent:
→ Effort: high
→ 深度分析
→ 多步验证
→ 全面测试
适用任务(Opus 4.6 only):
示例:
用户:max effort 设计一个全新的认证架构
Agent:
→ Effort: max(仅 Opus 4.6 支持)
→ 深度推理
→ 多方案对比
→ 全面验证
function modelSupportsEffort(model: string): boolean {
const m = model.toLowerCase()
// Opus 4.6 和 Sonnet 4.6 支持
if (m.includes('opus-4-6') || m.includes('sonnet-4-6')) {
return true
}
// 其他模型不支持
return false
}
function modelSupportsMaxEffort(model: string): boolean {
// 只有 Opus 4.6 支持 max effort
return model.toLowerCase().includes('opus-4-6')
}
用户输入包含 effort 关键词时:
用户:high effort 分析这个性能问题
Agent:
→ 检测关键词 "high effort"
→ 设置 EffortLevel: 'high'
→ 执行高复杂度分析
{
"config": {"wide_screen_mode": true},
"elements": [
{
"tag": "div",
"text": {
"tag": "lark_md",
"content": "**⚡ Effort 级别**\n\n**任务**:重构认证系统\n**级别**:High\n\n**说明**:\n这是一个复杂任务,需要深度分析和多步验证。\n\n**预计耗时**:30-60 分钟\n**验证步骤**:\n• 架构分析\n• 代码修改\n• 测试验证\n• 文档更新"
}
},
{
"tag": "note",
"elements": [
{"tag": "plain_text", "content": "执行中..."}
]
}
]
}
{
"config": {"wide_screen_mode": true},
"elements": [
{
"tag": "div",
"text": {
"tag": "lark_md",
"content": "**⚡ Effort 完成**\n\n**任务**:重构认证系统\n**级别**:High\n\n**完成内容**:\n✅ 架构分析完成\n✅ 代码修改完成\n✅ 测试验证通过\n✅ 文档更新完成\n\n**实际耗时**:45 分钟\n**验证结果**:全部通过"
}
}
]
}
function parseEffortValue(value: unknown): EffortLevel | undefined {
if (value === undefined) return 'medium' // 默认
const str = String(value).toLowerCase()
if (['low', 'medium', 'high', 'max'].includes(str)) {
return str as EffortLevel
}
return undefined
}
Agent:
1. 检测用户输入中的 effort 关键词
2. 解析 EffortLevel
3. 检查模型支持(max effort 需要 Opus 4.6)
4. 发送飞书卡片:"⚡ Effort 级别"
5. 执行对应复杂度的任务
Model:
1. 根据 effort 级别调整思考深度
2. Low: 快速执行,简单验证
3. Medium: 正常执行,标准验证
4. High: 深度分析,多步验证
5. Max: 极深推理,全面验证
// memory/effort-state.json
{
"currentLevel": "medium",
"effortsExecuted": [
{
"id": "effort-1",
"level": "high",
"task": "重构认证系统",
"estimatedDuration": 45,
"actualDuration": 45,
"status": "completed",
"timestamp": "2026-04-11T23:00:00Z"
}
],
"stats": {
"lowEfforts": 0,
"mediumEfforts": 0,
"highEfforts": 0,
"maxEfforts": 0,
"totalEfforts": 0
}
}
| Claude Code | OpenClaw 飞书场景 | |-------------|------------------| | EFFORT_LEVELS | 同样 4 个级别 | | modelSupportsEffort | 同样检测 | | modelSupportsMaxEffort | Opus 4.6 only | | parseEffortValue | 同样解析 | | Terminal UI | 飞书卡片展示 |
此 Skill 在用户输入包含 effort 关键词时自动触发。
business
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