Mastering OpenCode Skills: Caveman, Ponytail & Beyond

Jul 3, 2026

opencodeguidecli

What Are OpenCode Skills?

OpenCode skills are specialized instruction sets that override default LLM behavior for specific tasks. Think of them as plugins for your AI pair programmer — each skill teaches the model a specific workflow, communication style, or design methodology.

Skills live in ~/.config/opencode/skills/ and are loaded on demand using the skill tool.

Caveman Mode

Caveman mode compresses output by ~75% by stripping articles, filler words, and pleasantries while preserving full technical accuracy.

Without caveman:
"Sure, I'd be happy to help you fix that bug in the authentication middleware!"

With caveman:
"Bug in auth middleware. Fixing."

Intensity levels:

  • lite — gentle compression
  • full — aggressive compression (default)
  • ultra — maximum compression

Ponytail: The Lazy Senior Dev

Ponytail forces the laziest correct solution. It follows a decision ladder:

  1. Does this need to exist? (YAGNI)
  2. Already in codebase? Reuse it.
  3. Stdlib does it? Use it.
  4. Native platform? CSS over JS, DB constraint over app code.
  5. Installed dependency? Use it, don’t add new ones.
  6. One line? One line.
  7. Only then: minimum code that works.

Chaining Skills

Skills compose naturally. Brainstorming → writing-plans → execution:

User: "Build a billing system"
  → brainstorming (explore intent, propose approaches)
  → writing-plans (create implementation plan)
  → ponytail (implement with minimal code)
  → caveman-review (ultra-compressed review)

Creating Custom Skills

Skills are markdown files with clear “when to use” triggers, step-by-step instructions, and hard boundaries:

# my-custom-skill.md
Use when: [...]
Steps:
1. ...
2. ...
Hard rules: [...]

This makes OpenCode extensible — you teach it your team’s conventions once.