ag-cortex 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/commands/test-browser.md +339 -0
- package/.agent/rules/00-constitution.md +46 -0
- package/.agent/rules/project-rules.md +49 -0
- package/.agent/skills/agent-browser/SKILL.md +223 -0
- package/.agent/skills/agent-native-architecture/SKILL.md +435 -0
- package/.agent/skills/agent-native-architecture/references/action-parity-discipline.md +409 -0
- package/.agent/skills/agent-native-architecture/references/agent-execution-patterns.md +467 -0
- package/.agent/skills/agent-native-architecture/references/agent-native-testing.md +582 -0
- package/.agent/skills/agent-native-architecture/references/architecture-patterns.md +478 -0
- package/.agent/skills/agent-native-architecture/references/dynamic-context-injection.md +338 -0
- package/.agent/skills/agent-native-architecture/references/files-universal-interface.md +301 -0
- package/.agent/skills/agent-native-architecture/references/from-primitives-to-domain-tools.md +359 -0
- package/.agent/skills/agent-native-architecture/references/mcp-tool-design.md +506 -0
- package/.agent/skills/agent-native-architecture/references/mobile-patterns.md +871 -0
- package/.agent/skills/agent-native-architecture/references/product-implications.md +443 -0
- package/.agent/skills/agent-native-architecture/references/refactoring-to-prompt-native.md +317 -0
- package/.agent/skills/agent-native-architecture/references/self-modification.md +269 -0
- package/.agent/skills/agent-native-architecture/references/shared-workspace-architecture.md +680 -0
- package/.agent/skills/agent-native-architecture/references/system-prompt-design.md +250 -0
- package/.agent/skills/agent-native-reviewer/SKILL.md +246 -0
- package/.agent/skills/andrew-kane-gem-writer/SKILL.md +184 -0
- package/.agent/skills/andrew-kane-gem-writer/references/database-adapters.md +231 -0
- package/.agent/skills/andrew-kane-gem-writer/references/module-organization.md +121 -0
- package/.agent/skills/andrew-kane-gem-writer/references/rails-integration.md +183 -0
- package/.agent/skills/andrew-kane-gem-writer/references/resources.md +119 -0
- package/.agent/skills/andrew-kane-gem-writer/references/testing-patterns.md +261 -0
- package/.agent/skills/ankane-readme-writer/SKILL.md +50 -0
- package/.agent/skills/architecture-strategist/SKILL.md +52 -0
- package/.agent/skills/best-practices-researcher/SKILL.md +100 -0
- package/.agent/skills/bug-reproduction-validator/SKILL.md +67 -0
- package/.agent/skills/code-simplicity-reviewer/SKILL.md +85 -0
- package/.agent/skills/coding-tutor/.claude-plugin/plugin.json +9 -0
- package/.agent/skills/coding-tutor/README.md +37 -0
- package/.agent/skills/coding-tutor/commands/quiz-me.md +1 -0
- package/.agent/skills/coding-tutor/commands/sync-tutorials.md +25 -0
- package/.agent/skills/coding-tutor/commands/teach-me.md +1 -0
- package/.agent/skills/coding-tutor/skills/coding-tutor/SKILL.md +214 -0
- package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/create_tutorial.py +202 -0
- package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/index_tutorials.py +203 -0
- package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/quiz_priority.py +190 -0
- package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/setup_tutorials.py +132 -0
- package/.agent/skills/compound-docs/SKILL.md +510 -0
- package/.agent/skills/compound-docs/assets/critical-pattern-template.md +34 -0
- package/.agent/skills/compound-docs/assets/resolution-template.md +93 -0
- package/.agent/skills/compound-docs/references/yaml-schema.md +65 -0
- package/.agent/skills/compound-docs/schema.yaml +176 -0
- package/.agent/skills/create-agent-skills/SKILL.md +299 -0
- package/.agent/skills/create-agent-skills/references/api-security.md +226 -0
- package/.agent/skills/create-agent-skills/references/be-clear-and-direct.md +531 -0
- package/.agent/skills/create-agent-skills/references/best-practices.md +404 -0
- package/.agent/skills/create-agent-skills/references/common-patterns.md +595 -0
- package/.agent/skills/create-agent-skills/references/core-principles.md +437 -0
- package/.agent/skills/create-agent-skills/references/executable-code.md +175 -0
- package/.agent/skills/create-agent-skills/references/iteration-and-testing.md +474 -0
- package/.agent/skills/create-agent-skills/references/official-spec.md +185 -0
- package/.agent/skills/create-agent-skills/references/recommended-structure.md +168 -0
- package/.agent/skills/create-agent-skills/references/skill-structure.md +372 -0
- package/.agent/skills/create-agent-skills/references/using-scripts.md +113 -0
- package/.agent/skills/create-agent-skills/references/using-templates.md +112 -0
- package/.agent/skills/create-agent-skills/references/workflows-and-validation.md +510 -0
- package/.agent/skills/create-agent-skills/templates/router-skill.md +73 -0
- package/.agent/skills/create-agent-skills/templates/simple-skill.md +33 -0
- package/.agent/skills/create-agent-skills/workflows/add-reference.md +96 -0
- package/.agent/skills/create-agent-skills/workflows/add-script.md +93 -0
- package/.agent/skills/create-agent-skills/workflows/add-template.md +74 -0
- package/.agent/skills/create-agent-skills/workflows/add-workflow.md +120 -0
- package/.agent/skills/create-agent-skills/workflows/audit-skill.md +138 -0
- package/.agent/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +605 -0
- package/.agent/skills/create-agent-skills/workflows/create-new-skill.md +191 -0
- package/.agent/skills/create-agent-skills/workflows/get-guidance.md +121 -0
- package/.agent/skills/create-agent-skills/workflows/upgrade-to-router.md +161 -0
- package/.agent/skills/create-agent-skills/workflows/verify-skill.md +204 -0
- package/.agent/skills/data-integrity-guardian/SKILL.md +70 -0
- package/.agent/skills/data-migration-expert/SKILL.md +97 -0
- package/.agent/skills/deployment-verification-agent/SKILL.md +159 -0
- package/.agent/skills/design-implementation-reviewer/SKILL.md +85 -0
- package/.agent/skills/design-iterator/SKILL.md +197 -0
- package/.agent/skills/dhh-rails-reviewer/SKILL.md +45 -0
- package/.agent/skills/dhh-rails-style/SKILL.md +184 -0
- package/.agent/skills/dhh-rails-style/references/architecture.md +653 -0
- package/.agent/skills/dhh-rails-style/references/controllers.md +303 -0
- package/.agent/skills/dhh-rails-style/references/frontend.md +510 -0
- package/.agent/skills/dhh-rails-style/references/gems.md +266 -0
- package/.agent/skills/dhh-rails-style/references/models.md +359 -0
- package/.agent/skills/dhh-rails-style/references/testing.md +338 -0
- package/.agent/skills/dspy-ruby/SKILL.md +594 -0
- package/.agent/skills/dspy-ruby/assets/config-template.rb +359 -0
- package/.agent/skills/dspy-ruby/assets/module-template.rb +326 -0
- package/.agent/skills/dspy-ruby/assets/signature-template.rb +143 -0
- package/.agent/skills/dspy-ruby/references/core-concepts.md +265 -0
- package/.agent/skills/dspy-ruby/references/optimization.md +623 -0
- package/.agent/skills/dspy-ruby/references/providers.md +305 -0
- package/.agent/skills/every-style-editor/SKILL.md +134 -0
- package/.agent/skills/every-style-editor/references/EVERY_WRITE_STYLE.md +529 -0
- package/.agent/skills/figma-design-sync/SKILL.md +166 -0
- package/.agent/skills/file-todos/SKILL.md +251 -0
- package/.agent/skills/file-todos/assets/todo-template.md +155 -0
- package/.agent/skills/framework-docs-researcher/SKILL.md +83 -0
- package/.agent/skills/frontend-design/SKILL.md +42 -0
- package/.agent/skills/gemini-imagegen/SKILL.md +237 -0
- package/.agent/skills/gemini-imagegen/requirements.txt +2 -0
- package/.agent/skills/gemini-imagegen/scripts/compose_images.py +168 -0
- package/.agent/skills/gemini-imagegen/scripts/edit_image.py +157 -0
- package/.agent/skills/gemini-imagegen/scripts/gemini_images.py +265 -0
- package/.agent/skills/gemini-imagegen/scripts/generate_image.py +147 -0
- package/.agent/skills/gemini-imagegen/scripts/multi_turn_chat.py +215 -0
- package/.agent/skills/git-history-analyzer/SKILL.md +42 -0
- package/.agent/skills/git-worktree/SKILL.md +302 -0
- package/.agent/skills/git-worktree/scripts/worktree-manager.sh +345 -0
- package/.agent/skills/julik-frontend-races-reviewer/SKILL.md +222 -0
- package/.agent/skills/kieran-python-reviewer/SKILL.md +104 -0
- package/.agent/skills/kieran-rails-reviewer/SKILL.md +86 -0
- package/.agent/skills/kieran-typescript-reviewer/SKILL.md +95 -0
- package/.agent/skills/lint/SKILL.md +16 -0
- package/.agent/skills/pattern-recognition-specialist/SKILL.md +57 -0
- package/.agent/skills/performance-oracle/SKILL.md +110 -0
- package/.agent/skills/pr-comment-resolver/SKILL.md +69 -0
- package/.agent/skills/rclone/SKILL.md +150 -0
- package/.agent/skills/rclone/scripts/check_setup.sh +60 -0
- package/.agent/skills/repo-research-analyst/SKILL.md +113 -0
- package/.agent/skills/security-sentinel/SKILL.md +93 -0
- package/.agent/skills/skill-creator/SKILL.md +209 -0
- package/.agent/skills/skill-creator/scripts/init_skill.py +304 -0
- package/.agent/skills/skill-creator/scripts/package_skill.py +112 -0
- package/.agent/skills/skill-creator/scripts/quick_validate.py +72 -0
- package/.agent/skills/spec-flow-analyzer/SKILL.md +113 -0
- package/.agent/skills/test-agent/SKILL.md +4 -0
- package/.agent/workflows/agent-native-audit.md +277 -0
- package/.agent/workflows/ask-user-question.md +21 -0
- package/.agent/workflows/changelog.md +137 -0
- package/.agent/workflows/compound.md +202 -0
- package/.agent/workflows/create-agent-skill.md +8 -0
- package/.agent/workflows/deepen-plan-research.md +334 -0
- package/.agent/workflows/deepen-plan-synthesis.md +182 -0
- package/.agent/workflows/deepen-plan.md +79 -0
- package/.agent/workflows/feature-video.md +342 -0
- package/.agent/workflows/generate-command.md +162 -0
- package/.agent/workflows/heal-skill.md +142 -0
- package/.agent/workflows/lfg.md +20 -0
- package/.agent/workflows/plan-analysis.md +67 -0
- package/.agent/workflows/plan-next-steps.md +63 -0
- package/.agent/workflows/plan-review.md +33 -0
- package/.agent/workflows/plan-synthesis.md +106 -0
- package/.agent/workflows/plan.md +49 -0
- package/.agent/workflows/report-bug.md +150 -0
- package/.agent/workflows/reproduce-bug.md +99 -0
- package/.agent/workflows/resolve-parallel.md +34 -0
- package/.agent/workflows/resolve-pr-parallel.md +49 -0
- package/.agent/workflows/resolve-todo-parallel.md +35 -0
- package/.agent/workflows/review-analysis.md +145 -0
- package/.agent/workflows/review-synthesis.md +262 -0
- package/.agent/workflows/review.md +64 -0
- package/.agent/workflows/ship.md +90 -0
- package/.agent/workflows/test-command.md +3 -0
- package/.agent/workflows/triage.md +310 -0
- package/.agent/workflows/work.md +157 -0
- package/.agent/workflows/xcode-test.md +332 -0
- package/LICENSE +22 -0
- package/README.md +49 -0
- package/bin/ag-cortex.js +54 -0
- package/lib/core.js +165 -0
- package/package.json +31 -0
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
# Skill Authoring Best Practices
|
|
2
|
+
|
|
3
|
+
Source: [platform.agent.com/docs/en/agents-and-tools/agent-skills/best-practices](https://platform.agent.com/docs/en/agents-and-tools/agent-skills/best-practices)
|
|
4
|
+
|
|
5
|
+
## Core Principles
|
|
6
|
+
|
|
7
|
+
### Concise is Key
|
|
8
|
+
|
|
9
|
+
The context window is a public good. Your Skill shares the context window with everything else Antigravity needs to know.
|
|
10
|
+
|
|
11
|
+
**Default assumption**: Antigravity is already very smart. Only add context Antigravity doesn't already have.
|
|
12
|
+
|
|
13
|
+
Challenge each piece of information:
|
|
14
|
+
- "Does Antigravity really need this explanation?"
|
|
15
|
+
- "Can I assume Antigravity knows this?"
|
|
16
|
+
- "Does this paragraph justify its token cost?"
|
|
17
|
+
|
|
18
|
+
**Good example (concise, ~50 tokens):**
|
|
19
|
+
```markdown
|
|
20
|
+
## Extract PDF text
|
|
21
|
+
|
|
22
|
+
Use pdfplumber for text extraction:
|
|
23
|
+
|
|
24
|
+
```python
|
|
25
|
+
import pdfplumber
|
|
26
|
+
with pdfplumber.open("file.pdf") as pdf:
|
|
27
|
+
text = pdf.pages[0].extract_text()
|
|
28
|
+
```
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Bad example (too verbose, ~150 tokens):**
|
|
32
|
+
```markdown
|
|
33
|
+
## Extract PDF text
|
|
34
|
+
|
|
35
|
+
PDF (Portable Document Format) files are a common file format that contains
|
|
36
|
+
text, images, and other content. To extract text from a PDF, you'll need to
|
|
37
|
+
use a library. There are many libraries available...
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Set Appropriate Degrees of Freedom
|
|
41
|
+
|
|
42
|
+
Match specificity to task fragility and variability.
|
|
43
|
+
|
|
44
|
+
**High freedom** (multiple valid approaches):
|
|
45
|
+
```markdown
|
|
46
|
+
## Code review process
|
|
47
|
+
|
|
48
|
+
1. Analyze the code structure and organization
|
|
49
|
+
2. Check for potential bugs or edge cases
|
|
50
|
+
3. Suggest improvements for readability
|
|
51
|
+
4. Verify adherence to project conventions
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Medium freedom** (preferred pattern with variation):
|
|
55
|
+
```markdown
|
|
56
|
+
## Generate report
|
|
57
|
+
|
|
58
|
+
Use this template and customize as needed:
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
def generate_report(data, format="markdown"):
|
|
62
|
+
# Process data
|
|
63
|
+
# Generate output in specified format
|
|
64
|
+
```
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Low freedom** (fragile, exact sequence required):
|
|
68
|
+
```markdown
|
|
69
|
+
## Database migration
|
|
70
|
+
|
|
71
|
+
Run exactly this script:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
python scripts/migrate.py --verify --backup
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Do not modify the command or add flags.
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Test With All Models
|
|
81
|
+
|
|
82
|
+
Skills act as additions to models. Test with Haiku, Sonnet, and Opus.
|
|
83
|
+
|
|
84
|
+
- **Haiku**: Does the Skill provide enough guidance?
|
|
85
|
+
- **Sonnet**: Is the Skill clear and efficient?
|
|
86
|
+
- **Opus**: Does the Skill avoid over-explaining?
|
|
87
|
+
|
|
88
|
+
## Naming Conventions
|
|
89
|
+
|
|
90
|
+
Use **gerund form** (verb + -ing) for Skill names:
|
|
91
|
+
|
|
92
|
+
**Good:**
|
|
93
|
+
- `processing-pdfs`
|
|
94
|
+
- `analyzing-spreadsheets`
|
|
95
|
+
- `managing-databases`
|
|
96
|
+
- `testing-code`
|
|
97
|
+
- `writing-documentation`
|
|
98
|
+
|
|
99
|
+
**Acceptable alternatives:**
|
|
100
|
+
- Noun phrases: `pdf-processing`, `spreadsheet-analysis`
|
|
101
|
+
- Action-oriented: `process-pdfs`, `analyze-spreadsheets`
|
|
102
|
+
|
|
103
|
+
**Avoid:**
|
|
104
|
+
- Vague: `helper`, `utils`, `tools`
|
|
105
|
+
- Generic: `documents`, `data`, `files`
|
|
106
|
+
- Reserved: `antigravity-*`, `agent-*`
|
|
107
|
+
|
|
108
|
+
## Writing Effective Descriptions
|
|
109
|
+
|
|
110
|
+
**Always write in third person.** The description is injected into the system prompt.
|
|
111
|
+
|
|
112
|
+
**Be specific and include key terms:**
|
|
113
|
+
|
|
114
|
+
```yaml
|
|
115
|
+
# PDF Processing skill
|
|
116
|
+
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
|
|
117
|
+
|
|
118
|
+
# Excel Analysis skill
|
|
119
|
+
description: Analyze Excel spreadsheets, create pivot tables, generate charts. Use when analyzing Excel files, spreadsheets, tabular data, or .xlsx files.
|
|
120
|
+
|
|
121
|
+
# Git Commit Helper skill
|
|
122
|
+
description: Generate descriptive commit messages by analyzing git diffs. Use when the user asks for help writing commit messages or reviewing staged changes.
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Avoid vague descriptions:**
|
|
126
|
+
```yaml
|
|
127
|
+
description: Helps with documents # Too vague!
|
|
128
|
+
description: Processes data # Too generic!
|
|
129
|
+
description: Does stuff with files # Useless!
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Progressive Disclosure Patterns
|
|
133
|
+
|
|
134
|
+
### Pattern 1: High-level guide with references
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
---
|
|
138
|
+
name: pdf-processing
|
|
139
|
+
description: Extracts text and tables from PDF files, fills forms, merges documents.
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
# PDF Processing
|
|
143
|
+
|
|
144
|
+
## Quick start
|
|
145
|
+
|
|
146
|
+
```python
|
|
147
|
+
import pdfplumber
|
|
148
|
+
with pdfplumber.open("file.pdf") as pdf:
|
|
149
|
+
text = pdf.pages[0].extract_text()
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
## Advanced features
|
|
153
|
+
|
|
154
|
+
**Form filling**: See [FORMS.md](FORMS.md)
|
|
155
|
+
**API reference**: See [REFERENCE.md](REFERENCE.md)
|
|
156
|
+
**Examples**: See [EXAMPLES.md](EXAMPLES.md)
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Pattern 2: Domain-specific organization
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
bigquery-skill/
|
|
163
|
+
├── SKILL.md (overview and navigation)
|
|
164
|
+
└── reference/
|
|
165
|
+
├── finance.md (revenue, billing)
|
|
166
|
+
├── sales.md (opportunities, pipeline)
|
|
167
|
+
├── product.md (API usage, features)
|
|
168
|
+
└── marketing.md (campaigns, attribution)
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Pattern 3: Conditional details
|
|
172
|
+
|
|
173
|
+
```markdown
|
|
174
|
+
# DOCX Processing
|
|
175
|
+
|
|
176
|
+
## Creating documents
|
|
177
|
+
|
|
178
|
+
Use docx-js for new documents. See [DOCX-JS.md](DOCX-JS.md).
|
|
179
|
+
|
|
180
|
+
## Editing documents
|
|
181
|
+
|
|
182
|
+
For simple edits, modify the XML directly.
|
|
183
|
+
|
|
184
|
+
**For tracked changes**: See [REDLINING.md](REDLINING.md)
|
|
185
|
+
**For OOXML details**: See [OOXML.md](OOXML.md)
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## Keep References One Level Deep
|
|
189
|
+
|
|
190
|
+
Antigravity may partially read files when they're referenced from other referenced files.
|
|
191
|
+
|
|
192
|
+
**Bad (too deep):**
|
|
193
|
+
```markdown
|
|
194
|
+
# SKILL.md
|
|
195
|
+
See [advanced.md](advanced.md)...
|
|
196
|
+
|
|
197
|
+
# advanced.md
|
|
198
|
+
See [details.md](details.md)...
|
|
199
|
+
|
|
200
|
+
# details.md
|
|
201
|
+
Here's the actual information...
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
**Good (one level deep):**
|
|
205
|
+
```markdown
|
|
206
|
+
# SKILL.md
|
|
207
|
+
|
|
208
|
+
**Basic usage**: [in SKILL.md]
|
|
209
|
+
**Advanced features**: See [advanced.md](advanced.md)
|
|
210
|
+
**API reference**: See [reference.md](reference.md)
|
|
211
|
+
**Examples**: See [examples.md](examples.md)
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## Workflows and Feedback Loops
|
|
215
|
+
|
|
216
|
+
### Workflow with Checklist
|
|
217
|
+
|
|
218
|
+
```markdown
|
|
219
|
+
## Research synthesis workflow
|
|
220
|
+
|
|
221
|
+
Copy this checklist:
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
- [ ] Step 1: Read all source documents
|
|
225
|
+
- [ ] Step 2: Identify key themes
|
|
226
|
+
- [ ] Step 3: Cross-reference claims
|
|
227
|
+
- [ ] Step 4: Create structured summary
|
|
228
|
+
- [ ] Step 5: Verify citations
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
**Step 1: Read all source documents**
|
|
232
|
+
|
|
233
|
+
Review each document in `sources/`. Note main arguments.
|
|
234
|
+
...
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
### Feedback Loop Pattern
|
|
238
|
+
|
|
239
|
+
```markdown
|
|
240
|
+
## Document editing process
|
|
241
|
+
|
|
242
|
+
1. Make your edits to `word/document.xml`
|
|
243
|
+
2. **Validate immediately**: `python scripts/validate.py unpacked_dir/`
|
|
244
|
+
3. If validation fails:
|
|
245
|
+
- Review the error message
|
|
246
|
+
- Fix the issues
|
|
247
|
+
- Run validation again
|
|
248
|
+
4. **Only proceed when validation passes**
|
|
249
|
+
5. Rebuild: `python scripts/pack.py unpacked_dir/ output.docx`
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
## Common Patterns
|
|
253
|
+
|
|
254
|
+
### Template Pattern
|
|
255
|
+
|
|
256
|
+
```markdown
|
|
257
|
+
## Report structure
|
|
258
|
+
|
|
259
|
+
Use this template:
|
|
260
|
+
|
|
261
|
+
```markdown
|
|
262
|
+
# [Analysis Title]
|
|
263
|
+
|
|
264
|
+
## Executive summary
|
|
265
|
+
[One-paragraph overview]
|
|
266
|
+
|
|
267
|
+
## Key findings
|
|
268
|
+
- Finding 1 with supporting data
|
|
269
|
+
- Finding 2 with supporting data
|
|
270
|
+
|
|
271
|
+
## Recommendations
|
|
272
|
+
1. Specific actionable recommendation
|
|
273
|
+
2. Specific actionable recommendation
|
|
274
|
+
```
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Examples Pattern
|
|
278
|
+
|
|
279
|
+
```markdown
|
|
280
|
+
## Commit message format
|
|
281
|
+
|
|
282
|
+
**Example 1:**
|
|
283
|
+
Input: Added user authentication with JWT tokens
|
|
284
|
+
Output:
|
|
285
|
+
```
|
|
286
|
+
feat(auth): implement JWT-based authentication
|
|
287
|
+
|
|
288
|
+
Add login endpoint and token validation middleware
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
**Example 2:**
|
|
292
|
+
Input: Fixed bug where dates displayed incorrectly
|
|
293
|
+
Output:
|
|
294
|
+
```
|
|
295
|
+
fix(reports): correct date formatting in timezone conversion
|
|
296
|
+
```
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
### Conditional Workflow Pattern
|
|
300
|
+
|
|
301
|
+
```markdown
|
|
302
|
+
## Document modification
|
|
303
|
+
|
|
304
|
+
1. Determine the modification type:
|
|
305
|
+
|
|
306
|
+
**Creating new content?** → Follow "Creation workflow"
|
|
307
|
+
**Editing existing?** → Follow "Editing workflow"
|
|
308
|
+
|
|
309
|
+
2. Creation workflow:
|
|
310
|
+
- Use docx-js library
|
|
311
|
+
- Build document from scratch
|
|
312
|
+
|
|
313
|
+
3. Editing workflow:
|
|
314
|
+
- Unpack existing document
|
|
315
|
+
- Modify XML directly
|
|
316
|
+
- Validate after each change
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
## Content Guidelines
|
|
320
|
+
|
|
321
|
+
### Avoid Time-Sensitive Information
|
|
322
|
+
|
|
323
|
+
**Bad:**
|
|
324
|
+
```markdown
|
|
325
|
+
If you're doing this before August 2025, use the old API.
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
**Good:**
|
|
329
|
+
```markdown
|
|
330
|
+
## Current method
|
|
331
|
+
|
|
332
|
+
Use the v2 API endpoint: `api.example.com/v2/messages`
|
|
333
|
+
|
|
334
|
+
## Old patterns
|
|
335
|
+
|
|
336
|
+
<details>
|
|
337
|
+
<summary>Legacy v1 API (deprecated 2025-08)</summary>
|
|
338
|
+
The v1 API used: `api.example.com/v1/messages`
|
|
339
|
+
</details>
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
### Use Consistent Terminology
|
|
343
|
+
|
|
344
|
+
**Good - Consistent:**
|
|
345
|
+
- Always "API endpoint"
|
|
346
|
+
- Always "field"
|
|
347
|
+
- Always "extract"
|
|
348
|
+
|
|
349
|
+
**Bad - Inconsistent:**
|
|
350
|
+
- Mix "API endpoint", "URL", "API route", "path"
|
|
351
|
+
- Mix "field", "box", "element", "control"
|
|
352
|
+
|
|
353
|
+
## Anti-Patterns to Avoid
|
|
354
|
+
|
|
355
|
+
### Windows-Style Paths
|
|
356
|
+
|
|
357
|
+
- **Good**: `scripts/helper.py`, `reference/guide.md`
|
|
358
|
+
- **Avoid**: `scripts\helper.py`, `reference\guide.md`
|
|
359
|
+
|
|
360
|
+
### Too Many Options
|
|
361
|
+
|
|
362
|
+
**Bad:**
|
|
363
|
+
```markdown
|
|
364
|
+
You can use pypdf, or pdfplumber, or PyMuPDF, or pdf2image, or...
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
**Good:**
|
|
368
|
+
```markdown
|
|
369
|
+
Use pdfplumber for text extraction:
|
|
370
|
+
```python
|
|
371
|
+
import pdfplumber
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
For scanned PDFs requiring OCR, use pdf2image with pytesseract instead.
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
## Checklist for Effective Skills
|
|
378
|
+
|
|
379
|
+
### Core Quality
|
|
380
|
+
- [ ] Description is specific and includes key terms
|
|
381
|
+
- [ ] Description includes both what and when
|
|
382
|
+
- [ ] SKILL.md body under 500 lines
|
|
383
|
+
- [ ] Additional details in separate files
|
|
384
|
+
- [ ] No time-sensitive information
|
|
385
|
+
- [ ] Consistent terminology
|
|
386
|
+
- [ ] Examples are concrete
|
|
387
|
+
- [ ] References one level deep
|
|
388
|
+
- [ ] Progressive disclosure used appropriately
|
|
389
|
+
- [ ] Workflows have clear steps
|
|
390
|
+
|
|
391
|
+
### Code and Scripts
|
|
392
|
+
- [ ] Scripts handle errors explicitly
|
|
393
|
+
- [ ] No "voodoo constants" (all values justified)
|
|
394
|
+
- [ ] Required packages listed
|
|
395
|
+
- [ ] Scripts have clear documentation
|
|
396
|
+
- [ ] No Windows-style paths
|
|
397
|
+
- [ ] Validation steps for critical operations
|
|
398
|
+
- [ ] Feedback loops for quality-critical tasks
|
|
399
|
+
|
|
400
|
+
### Testing
|
|
401
|
+
- [ ] At least three test scenarios
|
|
402
|
+
- [ ] Tested with Haiku, Sonnet, and Opus
|
|
403
|
+
- [ ] Tested with real usage scenarios
|
|
404
|
+
- [ ] Team feedback incorporated
|