skills-experimental/bun-native-yaml-pattern/SKILL.md
# Bun Native YAML Pattern Skill Bun Native YAML Pattern - parseYaml + typeof Bun !== 'undefined' guard + Bun.YAML.parse zero-cost + require('yaml') fallback + lazy-require non-Bun branch + ~270KB yaml parser avoided + native builds never load npm package + built-in YAML parser。 ## 功能概述 从Claude Code的utils/yaml.ts提取的Bun native YAML模式,用于OpenClaw的YAML解析。 ## 核心机制 ### parseYaml ```typescript export function parseYaml(input: string): unknown { if (typeof Bun !== 'undefined') { return Bun.YA
npx skillsauth add bianhaifeng789-hue/openclaw-config skills-experimental/bun-native-yaml-patternInstall 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.
Bun Native YAML Pattern - parseYaml + typeof Bun !== 'undefined' guard + Bun.YAML.parse zero-cost + require('yaml') fallback + lazy-require non-Bun branch + ~270KB yaml parser avoided + native builds never load npm package + built-in YAML parser。
从Claude Code的utils/yaml.ts提取的Bun native YAML模式,用于OpenClaw的YAML解析。
export function parseYaml(input: string): unknown {
if (typeof Bun !== 'undefined') {
return Bun.YAML.parse(input)
}
// eslint-disable-next-line @typescript-eslint/no-require-imports
return (require('yaml') as typeof import('yaml')).parse(input)
}
// Parse YAML
# Bun native: zero-cost
# Node: require('yaml')
if (typeof Bun !== 'undefined') {
// Bun runtime
return Bun.YAML.parse(input)
}
// Bun runtime guard
# typeof Bun !== 'undefined'
# Runtime detection
return Bun.YAML.parse(input)
// Bun.YAML.parse
# Built-in YAML parser
# Zero-cost native
# No npm package
// eslint-disable-next-line @typescript-eslint/no-require-imports
return (require('yaml') as typeof import('yaml')).parse(input)
// require('yaml') fallback
# Node runtime
# npm package
// The package is lazy-required inside the non-Bun branch so native Bun builds
// never load the ~270KB yaml parser.
// Lazy-require
# Inside non-Bun branch
# Native builds never load
// ~270KB yaml parser
# npm package size
# Native Bun builds avoid
# Zero-cost built-in
// Native Bun builds never load the ~270KB yaml parser
// Native builds
# Never load npm package
# Built-in parser
// Bun has built-in YAML parser
# Bun.YAML.parse
# Zero-cost
# Native implementation
{
"runtime": "bun",
"parser": "Bun.YAML.parse",
"zeroCost": true
}
typeof Bun !== 'undefined' → Bun runtime | else → Node runtime → runtime detection
# typeof Bun runtime guard
# Bun vs Node detection
Bun.YAML.parse(input) → built-in → zero-cost → no npm package → native implementation
# Bun.YAML.parse zero-cost
# built-in parser
# no npm package
require('yaml') inside non-Bun branch → lazy require → native builds never load → ~270KB avoided
# lazy-require inside non-Bun
# native builds never load
# ~270KB avoided
native Bun builds → never load yaml npm → zero-cost built-in → startup optimization
# native builds avoid npm
# startup optimization
# zero-cost built-in
Bun → Bun.YAML.parse | Node → require('yaml').parse → runtime-specific → optimal parser
# runtime-specific parser
# Bun: built-in
# Node: npm package
utils/yaml.ts (19 lines)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