一键导入
skillopt
otimiza um documento de skill (SKILL.md) com o loop SkillOpt (Rollout -> Reflect -> Edit -> Gate) contra uma suíte de tarefas, sem treinar o modelo
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
otimiza um documento de skill (SKILL.md) com o loop SkillOpt (Rollout -> Reflect -> Edit -> Gate) contra uma suíte de tarefas, sem treinar o modelo
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
Author a new HyperFrames registry block (caption style, VFX block, transition, lower third) or component (text effect, overlay, snippet) and ship it as an upstream PR to the hyperframes repo. Use ONLY when the user wants to CONTRIBUTE to the public catalog — for in-project caption/transition authoring use the `hyperframes` skill, for installing existing registry items use the `hyperframes-registry` skill.
GSAP animation reference for HyperFrames. Covers gsap.to(), from(), fromTo(), easing, stagger, defaults, timelines (gsap.timeline(), position parameter, labels, nesting, playback), and performance (transforms, will-change, quickTo). Use when writing GSAP animations in HyperFrames compositions.
Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML. Use when asked to build any HTML-based video content, add captions or subtitles synced to audio, generate text-to-speech narration, create audio-reactive animation (beat sync, glow, pulse driven by music), add animated text highlighting (marker sweeps, hand-drawn circles, burst lines, scribble, sketchout), or add transitions between scenes (crossfades, wipes, reveals, shader transitions). Covers composition authoring, timing, media, and the full video production workflow. For dev-loop CLI commands (init, lint, inspect, preview, render) see the hyperframes-cli skill; for asset preprocessing commands (tts, transcribe, remove-background) see the hyperframes-media skill.
| name | skillopt |
| description | otimiza um documento de skill (SKILL.md) com o loop SkillOpt (Rollout -> Reflect -> Edit -> Gate) contra uma suíte de tarefas, sem treinar o modelo |
skilloptOtimização de skill no estilo SkillOpt (Microsoft Research): o documento de skill é o único artefato treinável, o modelo-alvo permanece congelado. Um otimizador propõe edits limitados (add/delete/replace) e só aceita os que melhoram um split held-out.
Implementação local neste repo: bin/skillopt.js + engine determinístico em scripts/skillopt/engine.js. Roda offline, sem dependências e sem chave de API — o scorer default é determinístico e pode ser trocado por um adapter de LLM real via opts.scorer.
SKILL.md / prompt de instrução.requires / forbids mensuráveis para guiar o ajuste.id, split (train ou holdout), requires (diretrizes que devem aparecer) e forbids (diretrizes proibidas). Veja example.suite.json.suite.skill ou --skill <SKILL.md>.node bin/skillopt.js --suite <suite.json> --out best_skill.md --report report.json.gate score inicial -> final, pass rate, edits aceitos/rejeitados e EXIT_SIGNAL.best_skill.md (diff contra o original) antes de promover. O otimizador adiciona diretrizes sob a seção ## SkillOpt Directives.SKILL.md original pelo otimizado e rode lint/test.--budget N limita ops aceitos por round. Comece baixo (1-2) para updates conservadores.split: "holdout". Sem held-out, o gate cai para o split de train (sinalizado em scores.usedHoldout).*.suite.json, saída padrão best_skill.md, receipt em .catalog/receipts/<sha>.json.best_skill.md sem revisão humana do diff; suítes sem holdout.node bin/skillopt.js --suite <suite.json> roda com exit 0.best_skill.md gerado e contém as diretrizes faltantes que a suíte exigia.scores.best.gate >= scores.initial.gate (sem regressão no held-out).EXIT_SIGNAL: true quando a suíte converge (train e gate com pass rate 1)..catalog/receipts/ (ou --no-receipt deliberado).# otimiza o skill fraco de exemplo contra a suíte de exemplo
node bin/skillopt.js \
--suite .skills/skillopt/example.suite.json \
--out best_skill.md \
--report skillopt-report.json
# via subcomando do CLI
node bin/cli.js skillopt --suite .skills/skillopt/example.suite.json
Saída resumida:
SkillOpt run complete
gate score : 0.4 -> 1 (Δ +0.6)
pass rate : train 1, gate 1
edits : 2 accepted, 0 rejected
EXIT_SIGNAL : true
scripts/skillopt/engine.js (optimize, reflect, applyEdits, evaluateSplit).opts.scorer para optimize() retornando { score, pass, missing, offending } por task — o loop não muda.