skills-experimental/config-tool/SKILL.md
# Config Tool Skill 配置工具 - Kill switch + Kill switch validation + AppState sync。 ## 功能概述 从Claude Code的ConfigTool提取的配置管理模式,用于OpenClaw的设置管理。 ## 核心机制 ### Kill Switch Check ```typescript if (feature('VOICE_MODE') && setting === 'voiceEnabled') { const { isVoiceGrowthBookEnabled } = await import('...') if (!isVoiceGrowthBookEnabled()) { return { success: false, error: 'Unknown setting' } } } // Runtime gate检查 // Kill switch关时不暴露设置 ``` ### Coerce Boolean ```typescript if (config.type
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/config-toolInstall 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.
配置工具 - Kill switch + Kill switch validation + AppState sync。
从Claude Code的ConfigTool提取的配置管理模式,用于OpenClaw的设置管理。
if (feature('VOICE_MODE') && setting === 'voiceEnabled') {
const { isVoiceGrowthBookEnabled } = await import('...')
if (!isVoiceGrowthBookEnabled()) {
return { success: false, error: 'Unknown setting' }
}
}
// Runtime gate检查
// Kill switch关时不暴露设置
if (config.type === 'boolean') {
if (typeof value === 'string') {
const lower = value.toLowerCase().trim()
if (lower === 'true') finalValue = true
else if (lower === 'false') finalValue = false
}
}
// String → Boolean coercion
// 用户友好输入
if (config.validateOnWrite) {
const result = await config.validateOnWrite(finalValue)
if (!result.valid) {
return { success: false, error: result.error }
}
}
// 异步验证(如model API check)
// 写入前校验
if (config.appStateKey) {
context.setAppState(prev => {
if (prev[appKey] === finalValue) return prev
return { ...prev, [appKey]: finalValue }
})
}
// 配置变更同步到AppState
// 立即UI响应
if (value.toLowerCase().trim() === 'default') {
saveGlobalConfig(prev => {
delete prev.remoteControlAtStartup
return prev
})
const resolved = getRemoteControlAtStartup() // Platform-aware default
}
// 'default' → unset → resolve default
// 支持平台感知默认值
// Voice mode: multi-layer checks
const recording = await checkRecordingAvailability()
const deps = await checkVoiceDependencies()
const mic = await requestMicrophonePermission()
// 多层pre-flight validation
// 环境依赖检查
{
"setting": "voiceEnabled",
"operation": "set",
"previousValue": false,
"newValue": true,
"appStateSynced": true,
"validationPassed": true
}
feature gate → runtime check → deny if disabled
// 双层gate(build-time + runtime)
// 保护sensitive设置
Coerce → Options → ValidateOnWrite → Pre-flight
// 层层验证
// 失败返回详细error
Config write → setAppState → UI react
// 无延迟响应
// 避免stale state
tools/ConfigTool/ConfigTool.ts (8KB)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