Reusable, on-demand prompt modules that teach your AI coding assistant specific workflows, procedures, and domain knowledge — loaded only when needed.
This guide covers installation for Claude Code, OpenCode, and ChatGPT.
| Skill | Description | Gist |
|---|---|---|
/find-session |
Search and resume past AI coding sessions | find-session |
/redact-history |
Scan and redact secrets from AI chat histories | redact-history |
| Dependency | Used By | What It Does | Install |
|---|---|---|---|
| cass | /find-session |
Coding Agent Session Search — Rust CLI/TUI that indexes and searches past sessions from Claude Code, OpenCode, Cursor, Aider, and 11+ other AI coding tools. Provides sub-60ms full-text search across all your conversations, with cross-machine sync via SSH/rsync. | cargo install coding_agent_session_search or grab a binary from releases |
Claude Code uses a skills/ directory with SKILL.md files.
Directory structure:
~/.claude/skills/ # Global skills (available in all projects)
find-session/
SKILL.md
redact-history/
SKILL.md
.claude/skills/ # Project-local skills (per-repo)
my-skill/
SKILL.md
Install a skill:
# Global install
mkdir -p ~/.claude/skills/find-session
curl -sL https://gist.githubusercontent.com/kvncrw/d060d75454ee38806b4137df6432f6b6/raw/SKILL.md \
-o ~/.claude/skills/find-session/SKILL.md
mkdir -p ~/.claude/skills/redact-history
# redact-history has two files: SKILL.md and the Python script
curl -sL https://gist.githubusercontent.com/kvncrw/f51bad8a98575472eb2d02596d1877be/raw/SKILL.md \
-o ~/.claude/skills/redact-history/SKILL.md
curl -sL https://gist.githubusercontent.com/kvncrw/f51bad8a98575472eb2d02596d1877be/raw/redact-history \
-o ~/.local/bin/redact-history && chmod +x ~/.local/bin/redact-historySKILL.md format:
---
name: my-skill
description: >
What the skill does. Include trigger phrases so the AI knows when to use it.
Triggers: keyword1, keyword2, phrase that activates this skill.
---
# My Skill
Step-by-step instructions, procedures, code blocks, etc.
The AI loads this content on-demand when the skill is invoked.Usage: Type /find-session or describe what you want naturally ("search my past sessions for the polymarket work").
OpenCode is compatible with Claude Code's skill format and also has its own locations.
Directory structure (any of these work):
~/.config/opencode/skills/ # OpenCode global
~/.claude/skills/ # Claude-compatible global (shared with Claude Code)
~/.agents/skills/ # Agent-compatible global
.opencode/skills/ # Project-local
.claude/skills/ # Claude-compatible project-local
.agents/skills/ # Agent-compatible project-local
Same SKILL.md format as Claude Code. If you already installed skills for Claude Code at ~/.claude/skills/, OpenCode will discover them automatically — no extra setup needed.
Alternatively, use OpenCode's custom commands:
~/.config/opencode/commands/ # Global commands
.opencode/commands/ # Project-local commands
Command files are simpler markdown with different frontmatter:
---
description: Search past sessions
agent: task
---
Search for past AI coding sessions matching: $ARGUMENTSThe filename becomes the command name (find-session.md → /find-session).
Key differences from skills:
- Commands are simpler prompt templates; skills are richer instruction sets
- Commands support
$ARGUMENTS,$1/$2positional args,!commandshell injection,@fileincludes - Skills are loaded on-demand by the agent; commands are invoked explicitly
ChatGPT doesn't have a direct equivalent to file-based skills yet. OpenAI's "Skills" feature (codenamed Hazelnut) is in testing as of early 2026 and is modeled after Claude Code's skill system.
Current options:
Option 1: Custom Instructions (GPT settings)
Paste condensed skill content into Settings → Personalization → Custom Instructions. Limited to ~1500 characters.
Option 2: Custom GPT
Create a custom GPT with the skill instructions in the system prompt. Unlimited instruction length and can be shared.
Option 3: Slash-command convention in Custom Instructions
Add command definitions to your custom instructions:
When I type /find-session, help me search past conversations using the following procedure:
[paste condensed skill instructions]
Note: ChatGPT (web/app) doesn't have terminal access, so skills like /find-session and /redact-history that rely on local CLI tools won't work directly. They're designed for terminal-based AI coding assistants.
- Be procedural — Write step-by-step instructions, not vague descriptions
- Include trigger phrases in the description so the AI knows when to activate
- Add constraints — Document things the AI should NEVER do
- Keep it focused — One skill = one workflow
- List dependencies — Name required CLI tools, packages, or services
---
name: my-new-skill
description: >
One-line description of what this does.
Triggers: natural language phrases that should activate this skill.
---
# Skill Name
Brief overview of the workflow.
## Dependencies
- **[tool-name](https://link)** — what it does, how to install
## Procedure
### Step 1: Do the thing
Detailed instructions...
### Step 2: Verify
How to confirm it worked...
## Important Notes
- Constraints, gotchas, things to never do| Problem | Solution |
|---|---|
| Skill not discovered | Check directory name matches name in frontmatter |
| Skill never triggers | Add more trigger phrases to the description field |
| Works in Claude but not OpenCode | Ensure skill is in a compatible directory (~/.claude/skills/ works for both) |
/find-session returns no results |
Run cass index --full to rebuild the search index |
/redact-history can't find sessions |
Ensure ~/.claude/projects/ exists and contains .jsonl files |