skills-experimental/feature-conditional-import/SKILL.md
# Feature Conditional Import Skill Feature Conditional Import - feature() + require() + null fallback + Dead Code Elimination + External Build Protection。 ## 功能概述 从Claude Code的多个文件提取的Feature Conditional Import模式,用于OpenClaw的条件导入。 ## 核心机制 ### feature() Check ```typescript import { feature } from 'bun:bundle' const proactiveModule = feature('PROACTIVE') || feature('KAIROS') ? require('../proactive/index.js') : null // Bun feature flag // Conditional import // null fallback ``` ### Dead
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/feature-conditional-importInstall 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.
Feature Conditional Import - feature() + require() + null fallback + Dead Code Elimination + External Build Protection。
从Claude Code的多个文件提取的Feature Conditional Import模式,用于OpenClaw的条件导入。
import { feature } from 'bun:bundle'
const proactiveModule = feature('PROACTIVE') || feature('KAIROS')
? require('../proactive/index.js')
: null
// Bun feature flag
// Conditional import
// null fallback
/* eslint-disable @typescript-eslint/no-require-imports */
const reactiveCompact = feature('REACTIVE_COMPACT')
? require('./services/compact/reactiveCompact.js')
: null
const contextCollapse = feature('CONTEXT_COLLAPSE')
? require('./services/contextCollapse/index.js')
: null
/* eslint-enable @typescript-eslint/no-require-imports */
// Bun compiler eliminates dead branches
// External builds don't include module
// No code leak
// Importing from BriefTool.ts would leak tool-name strings into external builds
// Single spinner instance → hooks stay unconditional
// Inlined isBriefEnabled() logic instead of import
// Prevent tool name leakage
// Inline logic for sensitive modules
const skillPrefetch = feature('EXPERIMENTAL_SKILL_SEARCH')
? (require('./services/skillSearch/prefetch.js') as typeof import('./services/skillSearch/prefetch.js'))
: null
// Type cast for TypeScript
// typeof import pattern
// Null-safe
feature('KAIROS') || feature('KAIROS_BRIEF')
? (require('../tools/BriefTool/prompt.js')).BRIEF_TOOL_NAME
: null
// Multiple feature flags
// OR logic
// Extract specific constant
/* eslint-disable @typescript-eslint/no-require-imports */
const module = feature('X') ? require('./module.js') : null
/* eslint-enable @typescript-eslint/no-require-imports */
// Disable require import rule
// Conditional require
// Re-enable after
const useVoiceIntegration: typeof import('../hooks/useVoiceIntegration.js').useVoiceIntegration =
feature('VOICE_MODE')
? require('../hooks/useVoiceIntegration.js').useVoiceIntegration
: () => ({ stripTrailing: () => 0, handleKeyEvent: () => {} })
// Function type annotation
// Default stub implementation
// No-op when feature disabled
{
"features": ["VOICE_MODE", "KAIROS"],
"importCondition": true,
"externalBuild": true,
"deadCodeElim": true
}
feature('KAIROS') || feature('KAIROS_BRIEF') → multiple flags
// OR logic for多个feature
// 任一启用即import
require() as typeof import('...') → type-safe
// TypeScript类型转换
// typeof import pattern
feature() ? require() : null → safe access
// null fallback防止crash
// 使用时需null check
() => ({ stripTrailing: () => 0 }) → no-op stub
// feature disabled时的stub实现
// 返回默认值
Bun compiler → eliminate false branches → no external leak
// Bun编译器消除false分支
// 外部build不包含module
components/Messages.tsx, components/Spinner.tsx, query.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