I’ve released Agent Compiler – a CLI tool that takes your Claude Code skills and embeds them directly into your CLAUDE.md or AGENTS.md files.
Imagine taking the sprawling web of SKILL.md files and their supporting reference files and smashing them together into your CLAUDE.md or AGENT.md to guarantee claude code (or opencode or whatever else) knows about your skills right away and without any second-guessing.
Why?
Skills don’t always trigger and that can be frustrating. You set up the right invocation phrases, you structure the markdown correctly, and then Claude just… ignores it. Tools update, their performance changes and we get unpredictable results. I’ve had skills that worked perfectly one day and then nothing the next. No changes, no updates, just gone.
Vercel’s agent evals actually confirmed what I’d been experiencing: docs embedded in AGENTS.md outperform skills. In their tests, skills weren’t even invoked most of the time – the model just didn’t bother to look them up. So I built a tool that takes all the skills you’ve already written and compiles them into your config where they’re guaranteed to be read.
Installation
npx agent-compiler compile Or install it globally if you want:
npm install -g agent-compiler
agent-compiler compile How It Works
The compiler scans both your global (~/.claude/skills/) and local (./.claude/skills/) directories, gives you an interactive multi-select to pick what you want embedded, and then inserts everything into dedicated SKILLS and COMMANDS sections in your target file. It backs up your file before touching anything – if something fails, it rolls back.
You can re-run it whenever you want. It updates the sections in place so you’re not dealing with duplicate content or manual cleanup. I’ve been re-running it pretty frequently with tweaks to my Skillbox in order to make sure it works right.
What It Generates
Your CLAUDE.md ends up with organized sections that look like this:
## SKILLS
### save-session
Track progress across long development sessions. Creates structured
summaries, captures architectural decisions, and enables seamless
context restoration.
[full skill content here]
## COMMANDS
### /review
[command content] Everything that was already in your config stays untouched. The compiler only manages its own sections.
What’s Next
There’s more I want to add – script-based skill support (not just markdown), content compression so embedded skills don’t bloat your config, and the ability to manage individual embeds without re-running the whole thing.
Check out the GitHub repository to try it out. If you’re already using SkillBox, this pairs well with it – write your skills with SkillBox, then compile them into your config.