skillfed

A skill compiler lifts Claude Code pass rates from 21% to 33% — and catches a missing safety guard in 95% of real-world skills

Notes on SkCC: Portable and Secure Skill Compilation for Cross-Framework LLM Agents (arXiv:2605.03353) — Yipeng Ouyang, Yingjiao Xiao, Yuhao Gu, Xianwei Zhang · May 2026

Note published · written by SkillFed’s research pipeline from the paper above · how these notes are made

AI-assisted notes · reviewed by SkillFed Skill security

SkCC treats SKILL.md as source code, not the final artifact. A syntax parser lowers the raw markdown into a typed abstract syntax tree; an IR builder then normalizes that tree into SkIR, a strongly-typed intermediate representation capturing a skill's procedures, permissions, input/output schemas, constraints, and MCP dependencies independent of any target framework. Before anything gets emitted, a static Security Optimizer runs four passes over the IR — structural validation, permission auditing, pattern-based injection of missing safety constraints like timeouts, loop bounds, and destructive-operation guards, and risk-tier classification. From there, four emitters render the same hardened IR differently per framework: Claude gets XML-tagged sections, Gemini switches to YAML once nesting passes a depth threshold, Kimi keeps full markdown, Codex gets XML-tagged markdown to dodge JSON's token overhead. Parsing and static analysis run once per skill no matter how many targets follow, which is why adaptation cost moves from O(m×n) — m skills times n frameworks, each pair hand-rewritten — to O(m+n).

On SkillsBench — 89 tasks run against 225 skills pulled from four community repositories, spanning Claude Code, Codex CLI, Gemini CLI, and Kimi CLI — compiled skills lifted Claude Code's pass rate from 21.1% to 33.3% and Kimi CLI's from 35.1% to 48.7%; Gemini CLI barely moved. Compilation itself averaged under 9ms per skill across all four targets combined. The security pass found something to flag in 94.8% of a separate 233-skill corpus, most often missing HTTP timeout or retry limits and unbounded loops. Runtime token consumption dropped 10-46% depending on framework and skill complexity. A follow-up ablation then swapped the Kimi-optimized compiled format onto two other models, GLM and DeepSeek, run through a different harness — the gain that was statistically significant for Kimi (p=0.0063) vanished for both, confirming that format gains track a specific model rather than one markdown dialect being universally better.

Key numbers

Claude Code pass rate, compiled vs. original21.1% → 33.3%
Kimi CLI pass rate, compiled vs. original35.1% → 48.7%
Community skills flagged by the security pass221 of 233 (94.8%)
Mean compilation latency, all 4 frameworks8.93ms across 225 skills
Runtime token savings across frameworks10-46%

Skills related to this research

Related notes

References

  1. Ouyang, Y., Xiao, Y., Gu, Y., & Zhang, X. (2026). SkCC: Portable and Secure Skill Compilation for Cross-Framework LLM Agents. arXiv:2605.03353.
  2. Lattner, C., & Adve, V. (2004). LLVM: A compilation framework for lifelong program analysis & transformation — the single-IR, multi-backend compilation model SkIR builds on.
  3. Lattner, C., et al. (2021). MLIR: Scaling compiler infrastructure for domain-specific computation — cited as the modern extension of IR-based compilation to domain-specific pipelines.
  4. Chen et al. (2026). SkVM — prior JVM-style compilation architecture for agent skills, cited as SkCC's closest predecessor (semantic capability compilation without format adaptation or security enforcement).
  5. Snyk (2026). Security audit of community agent skills — cited as the motivating finding that roughly 37% of a sample of ~3,984 community skills contain vulnerabilities.