skills-experimental/command-types/SKILL.md
# Command Types Skill 命令类型系统 - Discriminated command kind + Availability array + Lazy load module + Immediate bypass queue。 ## 功能概述 从Claude Code的Command Types提取的命令类型模式,用于OpenClaw的命令系统。 ## 核心机制 ### Discriminated Command Kind ```typescript type LocalCommand = { type: 'local', load: () => Promise<LocalCommandModule> } type LocalJSXCommand = { type: 'local-jsx', load: () => Promise<LocalJSXCommandModule> } type PromptCommand = { type: 'prompt', getPromptForCommand(...), source, context, agent
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/command-typesInstall 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.
命令类型系统 - Discriminated command kind + Availability array + Lazy load module + Immediate bypass queue。
从Claude Code的Command Types提取的命令类型模式,用于OpenClaw的命令系统。
type LocalCommand = { type: 'local', load: () => Promise<LocalCommandModule> }
type LocalJSXCommand = { type: 'local-jsx', load: () => Promise<LocalJSXCommandModule> }
type PromptCommand = { type: 'prompt', getPromptForCommand(...), source, context, agent }
export type Command = CommandBase & (PromptCommand | LocalCommand | LocalJSXCommand)
// type作为discriminator
// 不同command类型
export type CommandAvailability = 'claude-ai' | 'console'
export type CommandBase = {
availability?: CommandAvailability[]
// Only shown if user matches at least one
// availability = who can use (auth requirement)
// isEnabled = is turned on right now (GB, env)
}
// 静态auth requirement
// 与isEnabled分离
type LocalCommand = {
type: 'local'
load: () => Promise<LocalCommandModule> // Defer heavy dependencies
}
type LocalJSXCommand = {
type: 'local-jsx'
load: () => Promise<LocalJSXCommandModule>
}
// Lazy load until invoked
// 避免启动时加载所有依赖
export type CommandBase = {
immediate?: boolean // If true, executes immediately without waiting for stop point
// Bypasses queue
}
// 不等待stop point
// 立即执行
export type PromptCommand = {
context?: 'inline' | 'fork'
agent?: string // Agent type when forked
paths?: string[] // Glob patterns for file matching
hooks?: HooksSettings // Hooks to register
skillRoot?: string // Base directory for skill hooks
}
// inline → expands to current conversation
// fork → runs as sub-agent
export type CommandBase = {
userInvocable?: boolean // Whether users can invoke by typing /skill-name
disableModelInvocation?: boolean // Disable model invocation
}
// 用户可调用 vs model可调用
// 分离控制
export type CommandBase = {
isSensitive?: boolean // If true, args redacted from conversation history
}
// 敏感命令 → args隐藏
// 保护隐私
export type CommandBase = {
kind?: 'workflow' // Distinguishes workflow-backed commands
// Badged in autocomplete
}
// workflow标记
// UI badge
export type CommandResultDisplay = 'skip' | 'system' | 'user'
export type LocalJSXCommandOnDone = (
result?: string,
options?: { display?: CommandResultDisplay, shouldQuery?: boolean }
)
// skip → 不显示
// system → system message
// user → user message
{
"type": "prompt",
"context": "fork",
"agent": "Bash",
"availability": ["claude-ai", "console"],
"immediate": false
}
type: 'local' | 'local-jsx' | 'prompt' → unique shape
// 不同command类型
// 编译时区分
availability = auth requirement (static)
isEnabled = turned on (dynamic)
// 分离静态vs动态
// 不同gate层级
load: () => Promise<Module>
// 启动时不加载
// 按需加载依赖
immediate: true → bypass queue → immediate execution
// 不等待stop point
// 优先执行
context: 'inline' → expands to conversation
context: 'fork' → runs as sub-agent
// 执行模式选择
types/command.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