@fro.bot/systematic 1.14.0 → 1.16.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.
Files changed (32) hide show
  1. package/README.md +29 -3
  2. package/package.json +4 -2
  3. package/skills/agent-browser/SKILL.md +1 -0
  4. package/skills/agent-native-architecture/SKILL.md +4 -4
  5. package/skills/agent-native-architecture/references/files-universal-interface.md +1 -1
  6. package/skills/agent-native-architecture/references/product-implications.md +1 -1
  7. package/skills/brainstorming/SKILL.md +1 -0
  8. package/skills/compound-docs/SKILL.md +14 -13
  9. package/skills/compound-docs/assets/critical-pattern-template.md +1 -1
  10. package/skills/compound-docs/assets/resolution-template.md +3 -3
  11. package/skills/compound-docs/references/yaml-schema.md +2 -2
  12. package/skills/create-agent-skills/SKILL.md +169 -192
  13. package/skills/create-agent-skills/references/api-security.md +24 -24
  14. package/skills/create-agent-skills/references/executable-code.md +1 -1
  15. package/skills/create-agent-skills/references/official-spec.md +74 -125
  16. package/skills/create-agent-skills/references/skill-structure.md +109 -329
  17. package/skills/create-agent-skills/workflows/add-reference.md +3 -3
  18. package/skills/create-agent-skills/workflows/add-script.md +2 -2
  19. package/skills/create-agent-skills/workflows/add-template.md +1 -1
  20. package/skills/create-agent-skills/workflows/add-workflow.md +5 -5
  21. package/skills/create-agent-skills/workflows/audit-skill.md +6 -6
  22. package/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +8 -8
  23. package/skills/create-agent-skills/workflows/create-new-skill.md +8 -8
  24. package/skills/create-agent-skills/workflows/upgrade-to-router.md +5 -5
  25. package/skills/create-agent-skills/workflows/verify-skill.md +4 -4
  26. package/skills/document-review/SKILL.md +88 -0
  27. package/skills/file-todos/SKILL.md +3 -2
  28. package/skills/file-todos/assets/todo-template.md +1 -1
  29. package/skills/frontend-design/SKILL.md +43 -0
  30. package/skills/git-worktree/SKILL.md +23 -22
  31. package/skills/git-worktree/scripts/worktree-manager.sh +2 -10
  32. package/skills/orchestrating-swarms/SKILL.md +1718 -0
@@ -1,372 +1,152 @@
1
- <overview>
2
- Skills have three structural components: YAML frontmatter (metadata), pure XML body structure (content organization), and progressive disclosure (file organization). This reference defines requirements and best practices for each component.
3
- </overview>
4
-
5
- <xml_structure_requirements>
6
- <critical_rule>
7
- **Remove ALL markdown headings (#, ##, ###) from skill body content.** Replace with semantic XML tags. Keep markdown formatting WITHIN content (bold, italic, lists, code blocks, links).
8
- </critical_rule>
9
-
10
- <required_tags>
11
- Every skill MUST have these three tags:
12
-
13
- - **`<objective>`** - What the skill does and why it matters (1-3 paragraphs)
14
- - **`<quick_start>`** - Immediate, actionable guidance (minimal working example)
15
- - **`<success_criteria>`** or **`<when_successful>`** - How to know it worked
16
- </required_tags>
17
-
18
- <conditional_tags>
19
- Add based on skill complexity and domain requirements:
20
-
21
- - **`<context>`** - Background/situational information
22
- - **`<workflow>` or `<process>`** - Step-by-step procedures
23
- - **`<advanced_features>`** - Deep-dive topics (progressive disclosure)
24
- - **`<validation>`** - How to verify outputs
25
- - **`<examples>`** - Multi-shot learning
26
- - **`<anti_patterns>`** - Common mistakes to avoid
27
- - **`<security_checklist>`** - Non-negotiable security patterns
28
- - **`<testing>`** - Testing workflows
29
- - **`<common_patterns>`** - Code examples and recipes
30
- - **`<reference_guides>` or `<detailed_references>`** - Links to reference files
31
-
32
- See [use-xml-tags.md](use-xml-tags.md) for detailed guidance on each tag.
33
- </conditional_tags>
34
-
35
- <tag_selection_intelligence>
36
- **Simple skills** (single domain, straightforward):
37
- - Required tags only
38
- - Example: Text extraction, file format conversion
39
-
40
- **Medium skills** (multiple patterns, some complexity):
41
- - Required tags + workflow/examples as needed
42
- - Example: Document processing with steps, API integration
43
-
44
- **Complex skills** (multiple domains, security, APIs):
45
- - Required tags + conditional tags as appropriate
46
- - Example: Payment processing, authentication systems, multi-step workflows
47
- </tag_selection_intelligence>
48
-
49
- <xml_nesting>
50
- Properly nest XML tags for hierarchical content:
51
-
52
- ```xml
53
- <examples>
54
- <example number="1">
55
- <input>User input</input>
56
- <output>Expected output</output>
57
- </example>
58
- </examples>
59
- ```
1
+ # Skill Structure Reference
60
2
 
61
- Always close tags:
62
- ```xml
63
- <objective>
64
- Content here
65
- </objective>
66
- ```
67
- </xml_nesting>
3
+ Skills have three structural components: YAML frontmatter (metadata), standard markdown body (content), and progressive disclosure (file organization).
68
4
 
69
- <tag_naming_conventions>
70
- Use descriptive, semantic names:
71
- - `<workflow>` not `<steps>`
72
- - `<success_criteria>` not `<done>`
73
- - `<anti_patterns>` not `<dont_do>`
5
+ ## Body Format
74
6
 
75
- Be consistent within your skill. If you use `<workflow>`, don't also use `<process>` for the same purpose (unless they serve different roles).
76
- </tag_naming_conventions>
77
- </xml_structure_requirements>
7
+ Use **standard markdown headings** for structure. Keep markdown formatting within content (bold, italic, lists, code blocks, links).
78
8
 
79
- <yaml_requirements>
80
- <required_fields>
81
- ```yaml
9
+ ```markdown
82
10
  ---
83
- name: skill-name-here
84
- description: What it does and when to use it (third person, specific triggers)
11
+ name: my-skill
12
+ description: What it does and when to use it
85
13
  ---
86
- ```
87
- </required_fields>
88
-
89
- <name_field>
90
- **Validation rules**:
91
- - Maximum 64 characters
92
- - Lowercase letters, numbers, hyphens only
93
- - No XML tags
94
- - No reserved words: "anthropic", "claude"
95
- - Must match directory name exactly
96
-
97
- **Examples**:
98
- - ✅ `process-pdfs`
99
- - ✅ `manage-facebook-ads`
100
- - ✅ `setup-stripe-payments`
101
- - ❌ `PDF_Processor` (uppercase)
102
- - ❌ `helper` (vague)
103
- - ❌ `claude-helper` (reserved word)
104
- </name_field>
105
-
106
- <description_field>
107
- **Validation rules**:
108
- - Non-empty, maximum 1024 characters
109
- - No XML tags
110
- - Third person (never first or second person)
111
- - Include what it does AND when to use it
112
-
113
- **Critical rule**: Always write in third person.
114
- - ✅ "Processes Excel files and generates reports"
115
- - ❌ "I can help you process Excel files"
116
- - ❌ "You can use this to process Excel files"
117
14
 
118
- **Structure**: Include both capabilities and triggers.
119
-
120
- **Effective examples**:
121
- ```yaml
122
- 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.
123
- ```
15
+ # Skill Name
124
16
 
125
- ```yaml
126
- description: Analyze Excel spreadsheets, create pivot tables, generate charts. Use when analyzing Excel files, spreadsheets, tabular data, or .xlsx files.
127
- ```
17
+ ## Quick Start
18
+ Immediate actionable guidance...
128
19
 
129
- ```yaml
130
- description: Generate descriptive commit messages by analyzing git diffs. Use when the user asks for help writing commit messages or reviewing staged changes.
131
- ```
20
+ ## Instructions
21
+ Step-by-step procedures...
132
22
 
133
- **Avoid**:
134
- ```yaml
135
- description: Helps with documents
136
- ```
23
+ ## Examples
24
+ Concrete usage examples...
137
25
 
138
- ```yaml
139
- description: Processes data
26
+ ## Guidelines
27
+ Rules and constraints...
140
28
  ```
141
- </description_field>
142
- </yaml_requirements>
143
29
 
144
- <naming_conventions>
145
- Use **verb-noun convention** for skill names:
30
+ ## Recommended Sections
146
31
 
147
- <pattern name="create">
148
- Building/authoring tools
32
+ Every skill should have:
149
33
 
150
- Examples: `create-agent-skills`, `create-hooks`, `create-landing-pages`
151
- </pattern>
34
+ - **Quick Start** - Immediate, actionable guidance (minimal working example)
35
+ - **Instructions** - Core step-by-step guidance
36
+ - **Success Criteria** - How to know it worked
152
37
 
153
- <pattern name="manage">
154
- Managing external services or resources
38
+ Add based on complexity:
155
39
 
156
- Examples: `manage-facebook-ads`, `manage-zoom`, `manage-stripe`, `manage-supabase`
157
- </pattern>
40
+ - **Context** - Background/situational information
41
+ - **Workflow** - Multi-step procedures
42
+ - **Examples** - Concrete input/output pairs
43
+ - **Advanced Features** - Deep-dive topics (link to reference files)
44
+ - **Anti-Patterns** - Common mistakes to avoid
45
+ - **Guidelines** - Rules and constraints
158
46
 
159
- <pattern name="setup">
160
- Configuration/integration tasks
161
-
162
- Examples: `setup-stripe-payments`, `setup-meta-tracking`
163
- </pattern>
164
-
165
- <pattern name="generate">
166
- Generation tasks
167
-
168
- Examples: `generate-ai-images`
169
- </pattern>
170
-
171
- <avoid_patterns>
172
- - Vague: `helper`, `utils`, `tools`
173
- - Generic: `documents`, `data`, `files`
174
- - Reserved words: `anthropic-helper`, `claude-tools`
175
- - Inconsistent: Directory `facebook-ads` but name `facebook-ads-manager`
176
- </avoid_patterns>
177
- </naming_conventions>
178
-
179
- <progressive_disclosure>
180
- <principle>
181
- SKILL.md serves as an overview that points to detailed materials as needed. This keeps context window usage efficient.
182
- </principle>
183
-
184
- <practical_guidance>
185
- - Keep SKILL.md body under 500 lines
186
- - Split content into separate files when approaching this limit
187
- - Keep references one level deep from SKILL.md
188
- - Add table of contents to reference files over 100 lines
189
- </practical_guidance>
47
+ ## YAML Frontmatter
190
48
 
191
- <pattern name="high_level_guide">
192
- Quick start in SKILL.md, details in reference files:
49
+ ### Required/Recommended Fields
193
50
 
194
- ```markdown
51
+ ```yaml
195
52
  ---
196
- name: pdf-processing
197
- description: Extracts text and tables from PDF files, fills forms, and merges documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
53
+ name: skill-name-here
54
+ description: What it does and when to use it (specific triggers included)
198
55
  ---
199
-
200
- <objective>
201
- Extract text and tables from PDF files, fill forms, and merge documents using Python libraries.
202
- </objective>
203
-
204
- <quick_start>
205
- Extract text with pdfplumber:
206
-
207
- ```python
208
- import pdfplumber
209
- with pdfplumber.open("file.pdf") as pdf:
210
- text = pdf.pages[0].extract_text()
211
- ```
212
- </quick_start>
213
-
214
- <advanced_features>
215
- **Form filling**: See [forms.md](forms.md)
216
- **API reference**: See [reference.md](reference.md)
217
- </advanced_features>
218
56
  ```
219
57
 
220
- Claude loads forms.md or reference.md only when needed.
221
- </pattern>
58
+ ### Name Field
222
59
 
223
- <pattern name="domain_organization">
224
- For skills with multiple domains, organize by domain to avoid loading irrelevant context:
225
-
226
- ```
227
- bigquery-skill/
228
- ├── SKILL.md (overview and navigation)
229
- └── reference/
230
- ├── finance.md (revenue, billing metrics)
231
- ├── sales.md (opportunities, pipeline)
232
- ├── product.md (API usage, features)
233
- └── marketing.md (campaigns, attribution)
234
- ```
60
+ **Validation rules:**
61
+ - Maximum 64 characters
62
+ - Lowercase letters, numbers, hyphens only
63
+ - Must match directory name
64
+ - No reserved words: "anthropic", "claude"
235
65
 
236
- When user asks about revenue, Claude reads only finance.md. Other files stay on filesystem consuming zero tokens.
237
- </pattern>
66
+ **Examples:**
67
+ - `triage-prs`
68
+ - `deploy-production`
69
+ - `review-code`
70
+ - `setup-stripe-payments`
238
71
 
239
- <pattern name="conditional_details">
240
- Show basic content in SKILL.md, link to advanced in reference files:
72
+ **Avoid:** `helper`, `utils`, `tools`, generic names
241
73
 
242
- ```xml
243
- <objective>
244
- Process DOCX files with creation and editing capabilities.
245
- </objective>
74
+ ### Description Field
246
75
 
247
- <quick_start>
248
- <creating_documents>
249
- Use docx-js for new documents. See [docx-js.md](docx-js.md).
250
- </creating_documents>
76
+ **Validation rules:**
77
+ - Maximum 1024 characters
78
+ - Include what it does AND when to use it
79
+ - Third person voice
251
80
 
252
- <editing_documents>
253
- For simple edits, modify XML directly.
81
+ **Good:**
82
+ ```yaml
83
+ 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.
84
+ ```
254
85
 
255
- **For tracked changes**: See [redlining.md](redlining.md)
256
- **For OOXML details**: See [ooxml.md](ooxml.md)
257
- </editing_documents>
258
- </quick_start>
86
+ **Bad:**
87
+ ```yaml
88
+ description: Helps with documents
259
89
  ```
260
90
 
261
- Claude reads redlining.md or ooxml.md only when the user needs those features.
262
- </pattern>
91
+ ### Optional Fields
263
92
 
264
- <critical_rules>
265
- **Keep references one level deep**: All reference files should link directly from SKILL.md. Avoid nested references (SKILL.md → advanced.md → details.md) as Claude may only partially read deeply nested files.
93
+ | Field | Description |
94
+ |-------|-------------|
95
+ | `argument-hint` | Usage hints. Example: `[issue-number]` |
96
+ | `disable-model-invocation` | `true` to prevent auto-loading. Use for side-effect workflows. |
97
+ | `user-invocable` | `false` to hide from `/` menu. Use for background knowledge. |
98
+ | `allowed-tools` | Tools without permission prompts. Example: `Read, Bash(git *)` |
99
+ | `model` | `haiku`, `sonnet`, or `opus` |
100
+ | `context` | `fork` for isolated subagent execution |
101
+ | `agent` | Subagent type: `Explore`, `Plan`, `general-purpose`, or custom |
266
102
 
267
- **Add table of contents to long files**: For reference files over 100 lines, include a table of contents at the top.
103
+ ## Naming Conventions
268
104
 
269
- **Use pure XML in reference files**: Reference files should also use pure XML structure (no markdown headings in body).
270
- </critical_rules>
271
- </progressive_disclosure>
105
+ Use descriptive names that indicate purpose:
272
106
 
273
- <file_organization>
274
- <filesystem_navigation>
275
- Claude navigates your skill directory using bash commands:
107
+ | Pattern | Examples |
108
+ |---------|----------|
109
+ | Action-oriented | `triage-prs`, `deploy-production`, `review-code` |
110
+ | Domain-specific | `setup-stripe-payments`, `manage-facebook-ads` |
111
+ | Descriptive | `git-worktree`, `frontend-design`, `dhh-rails-style` |
276
112
 
277
- - Use forward slashes: `reference/guide.md` (not `reference\guide.md`)
278
- - Name files descriptively: `form_validation_rules.md` (not `doc2.md`)
279
- - Organize by domain: `reference/finance.md`, `reference/sales.md`
280
- </filesystem_navigation>
113
+ ## Progressive Disclosure
281
114
 
282
- <directory_structure>
283
- Typical skill structure:
115
+ Keep SKILL.md under 500 lines. Split into reference files:
284
116
 
285
117
  ```
286
- skill-name/
287
- ├── SKILL.md (main entry point, pure XML structure)
288
- ├── references/ (optional, for progressive disclosure)
289
- ├── guide-1.md (pure XML structure)
290
- │ ├── guide-2.md (pure XML structure)
291
- └── examples.md (pure XML structure)
292
- └── scripts/ (optional, for utility scripts)
293
- ├── validate.py
294
- └── process.py
295
- ```
296
- </directory_structure>
297
- </file_organization>
298
-
299
- <anti_patterns>
300
- <pitfall name="markdown_headings_in_body">
301
- ❌ Do NOT use markdown headings in skill body:
302
-
303
- ```markdown
304
- # PDF Processing
305
-
306
- ## Quick start
307
- Extract text...
308
-
309
- ## Advanced features
310
- Form filling...
118
+ my-skill/
119
+ ├── SKILL.md # Entry point (required, overview + navigation)
120
+ ├── reference.md # Detailed docs (loaded when needed)
121
+ ├── examples.md # Usage examples (loaded when needed)
122
+ └── scripts/
123
+ └── helper.py # Utility script (executed, not loaded)
311
124
  ```
312
125
 
313
- ✅ Use pure XML structure:
314
-
315
- ```xml
316
- <objective>
317
- PDF processing with text extraction, form filling, and merging.
318
- </objective>
319
-
320
- <quick_start>
321
- Extract text...
322
- </quick_start>
323
-
324
- <advanced_features>
325
- Form filling...
326
- </advanced_features>
327
- ```
328
- </pitfall>
329
-
330
- <pitfall name="vague_descriptions">
331
- - ❌ "Helps with documents"
332
- - ✅ "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."
333
- </pitfall>
334
-
335
- <pitfall name="inconsistent_pov">
336
- - "I can help you process Excel files"
337
- - "Processes Excel files and generates reports"
338
- </pitfall>
339
-
340
- <pitfall name="wrong_naming_convention">
341
- - ❌ Directory: `facebook-ads`, Name: `facebook-ads-manager`
342
- - ✅ Directory: `manage-facebook-ads`, Name: `manage-facebook-ads`
343
- - ❌ Directory: `stripe-integration`, Name: `stripe`
344
- - ✅ Directory: `setup-stripe-payments`, Name: `setup-stripe-payments`
345
- </pitfall>
346
-
347
- <pitfall name="deeply_nested_references">
348
- Keep references one level deep from SKILL.md. Claude may only partially read nested files (SKILL.md → advanced.md → details.md).
349
- </pitfall>
350
-
351
- <pitfall name="windows_paths">
352
- Always use forward slashes: `scripts/helper.py` (not `scripts\helper.py`)
353
- </pitfall>
354
-
355
- <pitfall name="missing_required_tags">
356
- Every skill must have: `<objective>`, `<quick_start>`, and `<success_criteria>` (or `<when_successful>`).
357
- </pitfall>
358
- </anti_patterns>
359
-
360
- <validation_checklist>
361
- Before finalizing a skill, verify:
362
-
363
- - ✅ YAML frontmatter valid (name matches directory, description in third person)
364
- - ✅ No markdown headings in body (pure XML structure)
365
- - ✅ Required tags present: objective, quick_start, success_criteria
366
- - ✅ Conditional tags appropriate for complexity level
367
- - ✅ All XML tags properly closed
368
- - ✅ Progressive disclosure applied (SKILL.md < 500 lines)
369
- - ✅ Reference files use pure XML structure
370
- - ✅ File paths use forward slashes
371
- - ✅ Descriptive file names
372
- </validation_checklist>
126
+ **Rules:**
127
+ - Keep references one level deep from SKILL.md
128
+ - Add table of contents to reference files over 100 lines
129
+ - Use forward slashes in paths: `scripts/helper.py`
130
+ - Name files descriptively: `form_validation_rules.md` not `doc2.md`
131
+
132
+ ## Validation Checklist
133
+
134
+ Before finalizing:
135
+
136
+ - [ ] YAML frontmatter valid (name matches directory, description specific)
137
+ - [ ] Uses standard markdown headings (not XML tags)
138
+ - [ ] Has Quick Start, Instructions, and Success Criteria sections
139
+ - [ ] `disable-model-invocation: true` if skill has side effects
140
+ - [ ] SKILL.md under 500 lines
141
+ - [ ] Reference files linked properly from SKILL.md
142
+ - [ ] File paths use forward slashes
143
+ - [ ] Tested with real usage
144
+
145
+ ## Anti-Patterns
146
+
147
+ - **XML tags in body** - Use standard markdown headings
148
+ - **Vague descriptions** - Be specific with trigger keywords
149
+ - **Deep nesting** - Keep references one level from SKILL.md
150
+ - **Missing invocation control** - Side-effect workflows need `disable-model-invocation: true`
151
+ - **Inconsistent naming** - Directory name must match `name` field
152
+ - **Windows paths** - Always use forward slashes
@@ -10,7 +10,7 @@
10
10
  ## Step 1: Select the Skill
11
11
 
12
12
  ```bash
13
- ls ~/.claude/skills/
13
+ ls ~/.config/opencode/skills/
14
14
  ```
15
15
 
16
16
  Present numbered list, ask: "Which skill needs a new reference?"
@@ -18,8 +18,8 @@ Present numbered list, ask: "Which skill needs a new reference?"
18
18
  ## Step 2: Analyze Current Structure
19
19
 
20
20
  ```bash
21
- cat ~/.claude/skills/{skill-name}/SKILL.md
22
- ls ~/.claude/skills/{skill-name}/references/ 2>/dev/null
21
+ cat ~/.config/opencode/skills/{skill-name}/SKILL.md
22
+ ls ~/.config/opencode/skills/{skill-name}/references/ 2>/dev/null
23
23
  ```
24
24
 
25
25
  Determine:
@@ -24,7 +24,7 @@ If not a good fit, suggest alternatives (inline code in workflow, reference exam
24
24
  ## Step 3: Create Scripts Directory
25
25
 
26
26
  ```bash
27
- mkdir -p ~/.claude/skills/{skill-name}/scripts
27
+ mkdir -p ~/.config/opencode/skills/{skill-name}/scripts
28
28
  ```
29
29
 
30
30
  ## Step 4: Design Script
@@ -58,7 +58,7 @@ set -euo pipefail
58
58
  ## Step 6: Make Executable (if bash)
59
59
 
60
60
  ```bash
61
- chmod +x ~/.claude/skills/{skill-name}/scripts/{script-name}.sh
61
+ chmod +x ~/.config/opencode/skills/{skill-name}/scripts/{script-name}.sh
62
62
  ```
63
63
 
64
64
  ## Step 7: Update Workflow to Use Script
@@ -24,7 +24,7 @@ If not a good fit, suggest alternatives (workflow guidance, reference examples).
24
24
  ## Step 3: Create Templates Directory
25
25
 
26
26
  ```bash
27
- mkdir -p ~/.claude/skills/{skill-name}/templates
27
+ mkdir -p ~/.config/opencode/skills/{skill-name}/templates
28
28
  ```
29
29
 
30
30
  ## Step 4: Design Template Structure
@@ -9,10 +9,10 @@
9
9
  <process>
10
10
  ## Step 1: Select the Skill
11
11
 
12
- **DO NOT use AskUserQuestion** - there may be many skills.
12
+ **DO NOT use question tool** - there may be many skills.
13
13
 
14
14
  ```bash
15
- ls ~/.claude/skills/
15
+ ls ~/.config/opencode/skills/
16
16
  ```
17
17
 
18
18
  Present numbered list, ask: "Which skill needs a new workflow?"
@@ -21,8 +21,8 @@ Present numbered list, ask: "Which skill needs a new workflow?"
21
21
 
22
22
  Read the skill:
23
23
  ```bash
24
- cat ~/.claude/skills/{skill-name}/SKILL.md
25
- ls ~/.claude/skills/{skill-name}/workflows/ 2>/dev/null
24
+ cat ~/.config/opencode/skills/{skill-name}/SKILL.md
25
+ ls ~/.config/opencode/skills/{skill-name}/workflows/ 2>/dev/null
26
26
  ```
27
27
 
28
28
  Determine:
@@ -34,7 +34,7 @@ Report current structure to user.
34
34
 
35
35
  ## Step 3: Gather Workflow Requirements
36
36
 
37
- Ask using AskUserQuestion or direct question:
37
+ Ask using question tool or direct question:
38
38
  - What should this workflow do?
39
39
  - When would someone use it vs existing workflows?
40
40
  - What references would it need?
@@ -10,11 +10,11 @@
10
10
  <process>
11
11
  ## Step 1: List Available Skills
12
12
 
13
- **DO NOT use AskUserQuestion** - there may be many skills.
13
+ **DO NOT use question tool** - there may be many skills.
14
14
 
15
15
  Enumerate skills in chat as numbered list:
16
16
  ```bash
17
- ls ~/.claude/skills/
17
+ ls ~/.config/opencode/skills/
18
18
  ```
19
19
 
20
20
  Present as:
@@ -33,12 +33,12 @@ Ask: "Which skill would you like to audit? (enter number or name)"
33
33
  After user selects, read the full skill structure:
34
34
  ```bash
35
35
  # Read main file
36
- cat ~/.claude/skills/{skill-name}/SKILL.md
36
+ cat ~/.config/opencode/skills/{skill-name}/SKILL.md
37
37
 
38
38
  # Check for workflows and references
39
- ls ~/.claude/skills/{skill-name}/
40
- ls ~/.claude/skills/{skill-name}/workflows/ 2>/dev/null
41
- ls ~/.claude/skills/{skill-name}/references/ 2>/dev/null
39
+ ls ~/.config/opencode/skills/{skill-name}/
40
+ ls ~/.config/opencode/skills/{skill-name}/workflows/ 2>/dev/null
41
+ ls ~/.config/opencode/skills/{skill-name}/references/ 2>/dev/null
42
42
  ```
43
43
 
44
44
  ## Step 3: Run Audit Checklist
@@ -52,7 +52,7 @@ Get specific: "Python games" or "Python games with Pygame specifically"?
52
52
 
53
53
  Explain:
54
54
  ```
55
- Domain expertise skills go in: ~/.claude/skills/expertise/{domain-name}/
55
+ Domain expertise skills go in: ~/.config/opencode/skills/expertise/{domain-name}/
56
56
 
57
57
  These are comprehensive BUILD skills that:
58
58
  - Execute tasks (build, debug, optimize, ship)
@@ -61,7 +61,7 @@ These are comprehensive BUILD skills that:
61
61
  - Can be loaded by other skills for domain knowledge
62
62
 
63
63
  Name suggestion: {suggested-name}
64
- Location: ~/.claude/skills/expertise/{suggested-name}/
64
+ Location: ~/.config/opencode/skills/expertise/{suggested-name}/
65
65
  ```
66
66
 
67
67
  Confirm or adjust name.
@@ -499,21 +499,21 @@ Test both use cases:
499
499
 
500
500
  ```bash
501
501
  # Create structure
502
- mkdir -p ~/.claude/skills/expertise/{domain-name}
503
- mkdir -p ~/.claude/skills/expertise/{domain-name}/workflows
504
- mkdir -p ~/.claude/skills/expertise/{domain-name}/references
502
+ mkdir -p ~/.config/opencode/skills/expertise/{domain-name}
503
+ mkdir -p ~/.config/opencode/skills/expertise/{domain-name}/workflows
504
+ mkdir -p ~/.config/opencode/skills/expertise/{domain-name}/references
505
505
 
506
506
  # Write SKILL.md
507
507
  # Write all workflow files
508
508
  # Write all reference files
509
509
 
510
510
  # Verify structure
511
- ls -R ~/.claude/skills/expertise/{domain-name}
511
+ ls -R ~/.config/opencode/skills/expertise/{domain-name}
512
512
  ```
513
513
 
514
514
  ## Step 11: Document in create-plans
515
515
 
516
- Update `~/.claude/skills/create-plans/SKILL.md` to reference this new domain:
516
+ Update `~/.config/opencode/skills/create-plans/SKILL.md` to reference this new domain:
517
517
 
518
518
  Add to the domain inference table:
519
519
  ```markdown
@@ -573,7 +573,7 @@ Domain expertise skill is complete when:
573
573
  - [ ] Anti-patterns documented throughout
574
574
  - [ ] Full lifecycle covered (build → debug → test → optimize → ship)
575
575
  - [ ] Platform-specific considerations included
576
- - [ ] Located in ~/.claude/skills/expertise/{domain-name}/
576
+ - [ ] Located in ~/.config/opencode/skills/expertise/{domain-name}/
577
577
  - [ ] Referenced in create-plans domain inference table
578
578
  - [ ] Passes dual-purpose test: Can be invoked directly AND loaded for knowledge
579
579
  - [ ] User can build something professional from scratch through shipping