A portable, shareable collection of AI agent skills — structured instruction packs that teach coding agents how to perform specific tasks consistently.
AI skills are Markdown files (SKILL.md) that follow a standard format. Each skill contains:
- Metadata (name, description, trigger phrases, allowed tools)
- Structured instructions the agent follows step-by-step
- Examples, anti-patterns, and best practices
When an AI agent loads a skill, it adopts that skill's workflow for the duration of the task. This means:
- Consistent output — every agent produces the same quality changelog, README, or commit message
- Portable knowledge — skills work across OpenWork, Claude Code, Codex CLI, and compatible agents
- Version-controlled expertise — skills live in git, so they evolve with your team
AI coding agents are becoming the new IDE. But each agent starts from zero — it doesn't know your team's conventions. A skill repository acts as a shared brain:
- Clone the repo into any project's
.opencode/skills/,.claude/skills/, or.agents/skills/directory - Every agent on every machine immediately knows how to write your changelogs, READMEs, and commit messages
- No more "wait, which format do we use for changelogs?"
Just like code, agent behavior should be reviewable and auditable:
- Track changes to your conventions over time via git history
- Review skill updates in pull requests before they affect agent behavior
- Roll back if a skill change produces unexpected results
- Tag releases so teams can pin to a known-good version of your skills
Without skills, each developer's AI agent independently invents formatting, structure, and tone. With shared skills:
- Changelogs follow Keep a Changelog v1.1.0 every time
- Commit messages follow Conventional Commits v1.0.0 every time
- READMEs follow a consistent structure every time
- New team members get the same quality output as veterans
Skills live outside your application code:
- No dependency on a specific project's structure
- Reusable across monorepos, microservices, libraries, and apps
- Easy to update all projects at once by updating the shared skill repo
Open skill repos enable sharing:
- Fork and customize skills for your team's needs
- Contribute improvements back to the community
- Discover patterns others have solved well
- Build on each other's work instead of starting from scratch
skills/
├── README.md # This file
├── bash-scripting/
│ └── SKILL.md # Bash scripting patterns and best practices
├── brew-update/
│ └── SKILL.md # Homebrew update/upgrade/cleanup workflow
├── conventional-changelog/
│ └── SKILL.md # Keep a Changelog v1.1.0 format
├── conventional-git/
│ └── SKILL.md # Conventional Commits v1.0.0 branch/commit naming
├── conventional-readme/
│ └── SKILL.md # README structure based on makeareadme.com
├── disk-cleanup/
│ └── SKILL.md # Remote disk cleanup for Debian/Ubuntu
└── linux-system-audit/
└── SKILL.md # Read-only Linux/VPS/container-host audit and report
| Skill | Description | Trigger Phrases |
|---|---|---|
| bash-scripting | Robust Bash script patterns, error handling, and idioms | "write a bash script", "shell script" |
| brew-update | Homebrew update, upgrade, and cleanup workflow | "brew update", "update packages" |
| conventional-changelog | Keep a Changelog v1.1.0 format for CHANGELOG.md | "update changelog", "release notes" |
| conventional-git | Conventional Commits v1.0.0 for branches, worktrees, and messages | "name a worktree", "commit message" |
| conventional-readme | README structure and best practices from makeareadme.com | "write a readme", "improve readme" |
| disk-cleanup | Deploy and run disk cleanup on remote servers | "clean disk", "free space" |
| linux-system-audit | Read-only Linux/VPS/container-host audit with a prioritized Markdown report | "audit this server", "VPS report" |
Each agent auto-detects skills placed in its skills directory — no registration step. Use the global path for skills you want available everywhere, or the per-project path to scope a skill to one repo (e.g. project-specific conventions).
# Global (all projects)
cp -r conventional-git/ ~/.config/opencode/skills/
# Per-project
cp -r conventional-git/ /path/to/project/.opencode/skills/# Global (all projects)
cp -r conventional-git/ ~/.claude/skills/
# Per-project
cp -r conventional-git/ /path/to/project/.claude/skills/Codex discovers skills under .agents/skills directories (repo-level, checked from the current working directory up to the repo root, then user- and system-level):
# Global (all projects)
cp -r conventional-git/ ~/.agents/skills/
# Per-project (repo root)
cp -r conventional-git/ /path/to/project/.agents/skills/Codex detects skill changes automatically — no restart needed.
Each skill is a single directory with a SKILL.md file. The frontmatter defines metadata, and the body contains the instructions.
---
name: my-skill
description: What this skill does and when to trigger it.
user-invocable: true
allowed-tools: Read Edit Write Bash
---
# Skill Title
Instructions the agent follows...See samber/cc-skills for a large collection of community skills.
| Field | Required | Description |
|---|---|---|
name |
Yes | Unique identifier (lowercase, hyphens) |
description |
Yes | What the skill does and when to trigger it |
user-invocable |
No | Whether the user can invoke it directly (default: false) |
allowed-tools |
No | Tools the skill is permitted to use |
argument-hint |
No | Hint for required arguments |
metadata |
No | Author, version, source URL, and other metadata |
MIT