|
1 | | -# Claude Code Skills Repository |
| 1 | +# AGENTS.md |
2 | 2 |
|
3 | | -This repository contains a collection of reusable Skills for AI coding agents, specifically designed for use with Claude Code. |
| 3 | +This file provides guidance to Claude Code when working in this repository. |
| 4 | +`CLAUDE.md` is a symlink to this file. |
4 | 5 |
|
5 | | -## Repository Structure |
| 6 | +## What This Repo Is |
6 | 7 |
|
7 | | -Each subdirectory in this repository represents a single Skill: |
| 8 | +A collection of reusable Claude Code skills. Each top-level directory with a `SKILL.md` is a skill. |
8 | 9 |
|
9 | | -```text |
10 | | -claude-skills/ |
11 | | -├── skill-name-1/ |
12 | | -│ ├── SKILL.md # Required: Skill definition and instructions |
13 | | -│ ├── reference.md # Optional: Additional reference material |
14 | | -│ └── scripts/ # Optional: Supporting scripts and templates |
15 | | -├── skill-name-2/ |
16 | | -│ └── SKILL.md |
17 | | -└── ... |
18 | | -``` |
19 | | - |
20 | | -## What Are Skills? |
21 | | - |
22 | | -Skills are modular capabilities that extend AI coding agent functionality with specialized, reusable features tailored to specific workflows. They are: |
23 | | - |
24 | | -- **Model-invoked**: The agent autonomously decides when to use them based on the user's request and the Skill's description |
25 | | -- **Focused**: Each Skill should handle one specific capability |
26 | | -- **Portable**: Can be shared via git for team collaboration |
27 | | - |
28 | | -## Creating a New Skill |
29 | | - |
30 | | -### 1. Create a Directory |
31 | | - |
32 | | -```bash |
33 | | -mkdir your-skill-name |
34 | | -cd your-skill-name |
35 | | -``` |
36 | | - |
37 | | -**Naming conventions:** |
38 | | - |
39 | | -- Use lowercase letters, numbers, and hyphens only |
40 | | -- Maximum 64 characters |
41 | | -- Be descriptive but concise |
42 | | - |
43 | | -### 2. Create SKILL.md |
44 | | - |
45 | | -Every Skill requires a `SKILL.md` file with YAML frontmatter: |
46 | | - |
47 | | -```yaml |
48 | | ---- |
49 | | -name: your-skill-name |
50 | | -description: Clear explanation of what it does and when to use it (max 1024 chars) |
51 | | ---- |
52 | | - |
53 | | -# Detailed Instructions |
54 | | - |
55 | | -Provide comprehensive instructions here for the AI agent to follow when |
56 | | -this Skill is invoked. |
57 | | - |
58 | | -## When to Use |
59 | | - |
60 | | -Describe the specific scenarios or trigger phrases that should activate |
61 | | -this Skill. |
62 | | - |
63 | | -## Implementation Steps |
64 | | - |
65 | | -Detail the steps the agent should follow, referencing any supporting |
66 | | -files with relative paths. |
67 | | -``` |
68 | | - |
69 | | -**Critical Requirements:** |
70 | | - |
71 | | -- `name`: Must match directory name, lowercase with hyphens only |
72 | | -- `description`: This is crucial - agents use it to decide when to invoke the Skill |
73 | | -- Use valid YAML syntax (no tabs, proper indentation) |
74 | | -- Write specific, concrete trigger terms in the description |
75 | | - |
76 | | -### 3. Add Supporting Files (Optional) |
77 | | - |
78 | | -Organize additional resources alongside SKILL.md: |
| 10 | +## Repo Layout |
79 | 11 |
|
80 | 12 | ```text |
81 | | -your-skill-name/ |
82 | | -├── SKILL.md |
83 | | -├── reference.md # Reference documentation |
84 | | -├── templates/ # Template files |
85 | | -│ └── config.template |
86 | | -└── scripts/ # Helper scripts |
87 | | - └── process.py |
88 | | -``` |
89 | | - |
90 | | -Reference these from SKILL.md using relative paths. Agents load them progressively to manage context efficiently. |
91 | | - |
92 | | -### 4. Restrict Tools (Optional) |
93 | | - |
94 | | -Limit which tools the agent can use within the Skill by adding `allowed-tools` to frontmatter: |
95 | | - |
96 | | -```yaml |
97 | | ---- |
98 | | -name: read-only-analyzer |
99 | | -description: Analyzes code without making modifications |
100 | | -allowed-tools: Read, Grep, Glob |
101 | | ---- |
102 | | -``` |
103 | | - |
104 | | -Common tool sets: |
105 | | - |
106 | | -- Read-only: `Read, Grep, Glob, Bash` |
107 | | -- File operations: `Read, Write, Edit` |
108 | | -- Full access: Omit `allowed-tools` field |
109 | | - |
110 | | -## Best Practices |
111 | | - |
112 | | -### Writing Effective Descriptions |
113 | | - |
114 | | -The description field is the most important part of your Skill. It determines when agents will use it. |
115 | | - |
116 | | -**Good description:** |
117 | | -> "Analyze GitHub Actions workflow files for performance issues, security vulnerabilities, and best practices. Use when troubleshooting CI/CD failures or optimizing build times." |
118 | | -
|
119 | | -**Poor description:** |
120 | | -> "Helps with GitHub stuff" |
121 | | -
|
122 | | -### Keep Skills Focused |
123 | | - |
124 | | -Each Skill should do one thing well: |
125 | | - |
126 | | -- ✅ Good: "Format Python code with black and check with ruff" |
127 | | -- ❌ Too broad: "Handle all Python development tasks" |
128 | | - |
129 | | -### Test Your Skills |
130 | | - |
131 | | -Test by asking questions that match your description: |
132 | | - |
133 | | -- Verify the agent invokes the Skill at appropriate times |
134 | | -- Ensure the instructions are clear and actionable |
135 | | -- Check that supporting files are properly referenced |
136 | | - |
137 | | -### Document Thoroughly |
138 | | - |
139 | | -Include in SKILL.md: |
140 | | - |
141 | | -- Clear purpose and use cases |
142 | | -- Step-by-step instructions |
143 | | -- Examples of expected input/output |
144 | | -- References to supporting files |
145 | | -- Any prerequisites or dependencies |
146 | | - |
147 | | -## Using This Repository |
148 | | - |
149 | | -### As Project Skills |
150 | | - |
151 | | -To use these Skills in a specific project: |
152 | | - |
153 | | -1. Copy the `.claude/skills/` structure: |
154 | | - |
155 | | - ```bash |
156 | | - mkdir -p .claude/skills |
157 | | - ``` |
158 | | - |
159 | | -2. Copy desired Skill directories: |
160 | | - |
161 | | - ```bash |
162 | | - cp -r /path/to/claude-skills/skill-name .claude/skills/ |
163 | | - ``` |
164 | | - |
165 | | -3. Commit to version control for team sharing |
166 | | - |
167 | | -### As Personal Skills |
168 | | - |
169 | | -To install Skills globally for all your projects: |
170 | | - |
171 | | -```bash |
172 | | -cp -r skill-name ~/.claude/skills/ |
| 13 | +claude-skills/ |
| 14 | +├── {skill-name}/ |
| 15 | +│ ├── SKILL.md # Skill definition (YAML frontmatter + instructions) |
| 16 | +│ ├── reference.md # Optional reference material |
| 17 | +│ └── scripts/ # Optional helper scripts |
| 18 | +├── scripts/ # CI validation helpers |
| 19 | +├── README.md # User-facing docs and skill catalog |
| 20 | +└── AGENTS.md # This file (CLAUDE.md symlinks here) |
173 | 21 | ``` |
174 | 22 |
|
175 | | -## Decision Record Skills |
176 | | - |
177 | | -This repository includes skills for creating decision documentation following the [Decision Records with AI Assistance](https://github.com/stephen-tatari/coding-agent-documentation) convention. |
178 | | - |
179 | | -### Workflow |
180 | | - |
181 | | -1. **Set up docs**: Run `/init-ai-docs` (local) or `/init-central-docs` (cross-project) |
182 | | -2. **Start a feature**: Run `/create-plan` to document approach before coding |
183 | | -3. **Technical decisions**: Run `/create-research` to capture ADRs |
184 | | -4. **Session breaks**: Run `/create-handoff` to preserve context |
185 | | -5. **Resume work**: Run `/resume-handoff` to continue from where you left off |
186 | | - |
187 | | -### Schema |
188 | | - |
189 | | -Documents follow a structured schema: |
190 | | - |
191 | | -- **Required**: `schema_version`, `date`, `type`, `status`, `topic` |
192 | | -- **Accountability**: `author` (git user name), `ai_assisted`, `ai_model` |
193 | | -- **Linking**: `related_prs`, `related_issue`, `superseded_by` |
194 | | -- **Project**: `project`, `repo` |
195 | | -- **Classification**: `tags`, `data_sensitivity` |
196 | | - |
197 | | -### Quality Bar |
198 | | - |
199 | | -Before committing decision documents: |
200 | | - |
201 | | -- Claims linked to sources |
202 | | -- Assumptions explicitly listed |
203 | | -- Alternatives considered (for plans/research) |
204 | | -- PR review provides human accountability (no separate `reviewed_by` field needed) |
205 | | -- No secrets or sensitive data |
206 | | - |
207 | | -## Reference |
208 | | - |
209 | | -For comprehensive documentation on Skills, see: |
210 | | - |
211 | | -- [Claude Code Skills Documentation](https://docs.claude.com/en/docs/claude-code/skills.md) |
212 | | -- [Sub-agents Documentation](https://docs.claude.com/en/docs/claude-code/sub-agents.md) |
213 | | - |
214 | | -## Contributing |
| 23 | +## Available Skills |
215 | 24 |
|
216 | | -When adding new Skills to this repository: |
| 25 | +| Category | Skills | |
| 26 | +|---|---| |
| 27 | +| Decision Records | `init-ai-docs`, `init-central-docs`, `create-plan`, `create-research`, `create-handoff`, `resume-handoff` | |
| 28 | +| DevOps & CI/CD | `tatari-turbolift`, `argocd-ops`, `pr-status`, `loki-debug` | |
| 29 | +| Code Analysis | `codex` | |
| 30 | +| Quality & Review | `convergent-review` | |
| 31 | +| Project Management | `jira` | |
217 | 32 |
|
218 | | -1. Create a descriptive directory name |
219 | | -2. Include a complete SKILL.md with proper frontmatter |
220 | | -3. Add supporting files if needed |
221 | | -4. Test the Skill with various prompts |
222 | | -5. Document any dependencies or requirements |
223 | | -6. Commit with clear commit messages |
| 33 | +## Adding a New Skill |
224 | 34 |
|
225 | | -## License |
| 35 | +1. Create `{skill-name}/SKILL.md` with YAML frontmatter (`name`, `description`) |
| 36 | +2. `name` must match the directory name (lowercase, hyphens only) |
| 37 | +3. Add helper scripts in `{skill-name}/scripts/` if needed |
| 38 | +4. Update the "Available Skills" table in `README.md` |
226 | 39 |
|
227 | | -This repository is licensed under the MIT License. See LICENSE file for details. |
| 40 | +See [README.md](./README.md) for the full creation guide and examples. |
0 commit comments