This repository contains reusable skills for Claude Code and OpenCode that extend the capabilities of your AI coding assistant with specialized workflows and domain knowledge.
Skills are extensions that add custom capabilities to Claude Code and OpenCode. They allow you to:
- Create custom slash commands (e.g.,
/slides) - Provide domain-specific knowledge and conventions
- Automate workflows and tasks
- Share reusable functionality across projects
Skills follow the Agent Skills open standard and work across multiple AI tools.
Create professional HTML slide presentations from reference materials.
Usage:
/slides [input-files]
Features:
- Converts docs, PDFs, images, and markdown into clean HTML slides
- Dark modern aesthetic with CSS animations
- Keyboard navigation (←/→, Space, Enter)
- Animated charts and counters
- Fully self-contained HTML (no external dependencies)
Skills can be installed at different scopes:
Install skills globally for your user account:
# Create the skills directory
mkdir -p ~/.claude/skills
# Clone or copy the skill
cp -r /path/to/cc-skills/slides ~/.claude/skills/Install skills only for a specific project:
# Navigate to your project
cd /path/to/your/project
# Create the skills directory
mkdir -p .claude/skills
# Clone or copy the skill
cp -r /path/to/cc-skills/slides .claude/skills/Clone this repository directly into your skills directory:
# For personal use
cd ~/.claude/skills
git clone https://github.com/raihan0824/cc-skills.git
# For project use
cd /path/to/your/project/.claude/skills
git clone https://github.com/raihan0824/cc-skills.gitOpenCode searches multiple locations for skills:
# Create the skills directory
mkdir -p ~/.config/opencode/skills
# Clone or copy the skill
cp -r /path/to/cc-skills/slides ~/.config/opencode/skills/# Navigate to your project
cd /path/to/your/project
# Create the skills directory
mkdir -p .opencode/skills
# Clone or copy the skill
cp -r /path/to/cc-skills/slides .opencode/skills/OpenCode also supports Claude Code paths:
# Global (Claude-compatible)
mkdir -p ~/.claude/skills
cp -r /path/to/cc-skills/slides ~/.claude/skills/
# Project (Claude-compatible)
mkdir -p .claude/skills
cp -r /path/to/cc-skills/slides .claude/skills/Call a skill directly using the slash command:
/slides presentation-notes.md company-logo.png
Claude Code can automatically invoke skills based on your request:
Create a presentation about our Q4 results
Claude will recognize the task matches the slides skill and invoke it automatically.
Pass arguments to skills:
/slides --theme dark project-summary.md
When the same skill exists in multiple locations, the following priority order applies:
- Project skills (
.claude/skills/or.opencode/skills/) - Personal skills (
~/.claude/skills/or~/.config/opencode/skills/) - Enterprise skills (managed by organization)
Project-level skills override personal skills with the same name.
Restrict skill access in /permissions:
# Deny all skills
Skill
# Allow specific skills
Skill(slides)
# Deny specific skills
Skill(deploy:*)Control permissions in opencode.json:
{
"permissions": {
"skills": {
"slides": "allow",
"deploy": "deny",
"internal-*": "ask"
}
}
}Options:
allow: Loads immediatelydeny: Hidden from agentsask: Prompts user for approval
Every skill requires a SKILL.md file:
my-skill/
├── SKILL.md # Main instructions (required)
├── assets/ # Optional: templates, images
├── examples/ # Optional: example output
└── scripts/ # Optional: utility scripts
---
name: my-skill
description: What this skill does and when to use it
---
# My Skill
Instructions for Claude to follow when this skill is invoked.
## Workflow
1. Step one
2. Step two
3. Step three- name: Lowercase, hyphens only, 1-64 characters
- description: When to use this skill, 1-1024 characters
---
name: my-skill
description: What this skill does
argument-hint: [file-path] # Autocomplete hint
disable-model-invocation: true # Only manual invocation
user-invocable: false # Only Claude can invoke
allowed-tools: Read, Grep # Restrict tool access
model: claude-opus # Custom model
context: fork # Run in isolated context
agent: Explore # Subagent type
---Claude Code:
- Verify the skill is in
~/.claude/skills/<skill-name>/SKILL.mdor.claude/skills/<skill-name>/SKILL.md - Check that
SKILL.mdfilename is uppercase - Run
/contextto see loaded skills
OpenCode:
- Check
~/.config/opencode/skills/or.opencode/skills/ - Verify you're in a git repository for project-local skills
- Ensure frontmatter has required
nameanddescriptionfields
- Make the
descriptionfield more specific with clear keywords - Try manual invocation with
/skill-name - Check if
disable-model-invocation: trueis set
- Make the description more specific
- Add
disable-model-invocation: trueto require manual invocation
To add new skills to this repository:
- Create a new directory with your skill name
- Add a
SKILL.mdfile with proper frontmatter - Include examples and documentation
- Test with both Claude Code and OpenCode
- Submit a pull request