wogiflow 1.0.21 → 1.0.22

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 (121) hide show
  1. package/.claude/commands/wogi-bug.md +43 -0
  2. package/.claude/commands/wogi-bulk.md +144 -0
  3. package/.claude/commands/wogi-changelog.md +36 -0
  4. package/.claude/commands/wogi-compact.md +99 -0
  5. package/.claude/commands/wogi-config.md +50 -0
  6. package/.claude/commands/wogi-context.md +68 -0
  7. package/.claude/commands/wogi-correction.md +73 -0
  8. package/.claude/commands/wogi-debt.md +128 -0
  9. package/.claude/commands/wogi-deps.md +32 -0
  10. package/.claude/commands/wogi-epics.md +145 -0
  11. package/.claude/commands/wogi-export.md +100 -0
  12. package/.claude/commands/wogi-feature.md +149 -0
  13. package/.claude/commands/wogi-guided-edit.md +83 -0
  14. package/.claude/commands/wogi-health.md +43 -0
  15. package/.claude/commands/wogi-help.md +96 -0
  16. package/.claude/commands/wogi-hybrid-edit.md +36 -0
  17. package/.claude/commands/wogi-hybrid-off.md +24 -0
  18. package/.claude/commands/wogi-hybrid-setup.md +79 -0
  19. package/.claude/commands/wogi-hybrid-status.md +45 -0
  20. package/.claude/commands/wogi-hybrid.md +54 -0
  21. package/.claude/commands/wogi-import.md +44 -0
  22. package/.claude/commands/wogi-init.md +618 -0
  23. package/.claude/commands/wogi-log.md +38 -0
  24. package/.claude/commands/wogi-map-add.md +29 -0
  25. package/.claude/commands/wogi-map-check.md +35 -0
  26. package/.claude/commands/wogi-map-index.md +98 -0
  27. package/.claude/commands/wogi-map-scan.md +38 -0
  28. package/.claude/commands/wogi-map-sync.md +91 -0
  29. package/.claude/commands/wogi-map.md +33 -0
  30. package/.claude/commands/wogi-morning.md +65 -0
  31. package/.claude/commands/wogi-onboard.md +99 -0
  32. package/.claude/commands/wogi-plan.md +173 -0
  33. package/.claude/commands/wogi-ready.md +84 -0
  34. package/.claude/commands/wogi-resume.md +95 -0
  35. package/.claude/commands/wogi-review.md +636 -0
  36. package/.claude/commands/wogi-roadmap.md +241 -0
  37. package/.claude/commands/wogi-rules.md +104 -0
  38. package/.claude/commands/wogi-search.md +33 -0
  39. package/.claude/commands/wogi-session-end.md +49 -0
  40. package/.claude/commands/wogi-setup-stack.md +151 -0
  41. package/.claude/commands/wogi-skill-learn.md +66 -0
  42. package/.claude/commands/wogi-skills.md +87 -0
  43. package/.claude/commands/wogi-standup.md +28 -0
  44. package/.claude/commands/wogi-start.md +465 -0
  45. package/.claude/commands/wogi-status.md +41 -0
  46. package/.claude/commands/wogi-statusline-setup/skill.md +109 -0
  47. package/.claude/commands/wogi-story.md +98 -0
  48. package/.claude/commands/wogi-suspend.md +87 -0
  49. package/.claude/commands/wogi-test-browser.md +43 -0
  50. package/.claude/commands/wogi-trace.md +198 -0
  51. package/.claude/docs/architecture.md +37 -0
  52. package/.claude/docs/commands.md +343 -0
  53. package/.claude/docs/knowledge-base/01-setup-onboarding/README.md +177 -0
  54. package/.claude/docs/knowledge-base/01-setup-onboarding/component-indexing.md +341 -0
  55. package/.claude/docs/knowledge-base/01-setup-onboarding/framework-detection.md +269 -0
  56. package/.claude/docs/knowledge-base/01-setup-onboarding/installation.md +146 -0
  57. package/.claude/docs/knowledge-base/01-setup-onboarding/onboarding-existing.md +317 -0
  58. package/.claude/docs/knowledge-base/01-setup-onboarding/team-setup.md +346 -0
  59. package/.claude/docs/knowledge-base/02-task-execution/01-task-planning.md +259 -0
  60. package/.claude/docs/knowledge-base/02-task-execution/02-execution-loop.md +443 -0
  61. package/.claude/docs/knowledge-base/02-task-execution/03-verification.md +417 -0
  62. package/.claude/docs/knowledge-base/02-task-execution/04-completion.md +374 -0
  63. package/.claude/docs/knowledge-base/02-task-execution/05-session-review.md +170 -0
  64. package/.claude/docs/knowledge-base/02-task-execution/README.md +173 -0
  65. package/.claude/docs/knowledge-base/02-task-execution/external-integrations.md +133 -0
  66. package/.claude/docs/knowledge-base/02-task-execution/model-management.md +202 -0
  67. package/.claude/docs/knowledge-base/02-task-execution/specification-mode.md +292 -0
  68. package/.claude/docs/knowledge-base/02-task-execution/sync-daemon.md +96 -0
  69. package/.claude/docs/knowledge-base/02-task-execution/trade-offs.md +345 -0
  70. package/.claude/docs/knowledge-base/02-task-execution/workflow-steps.md +357 -0
  71. package/.claude/docs/knowledge-base/03-self-improvement/README.md +199 -0
  72. package/.claude/docs/knowledge-base/03-self-improvement/long-input-processing.md +160 -0
  73. package/.claude/docs/knowledge-base/03-self-improvement/model-learning.md +334 -0
  74. package/.claude/docs/knowledge-base/03-self-improvement/project-learning.md +301 -0
  75. package/.claude/docs/knowledge-base/03-self-improvement/skill-learning.md +372 -0
  76. package/.claude/docs/knowledge-base/03-self-improvement/skill-matching.md +304 -0
  77. package/.claude/docs/knowledge-base/03-self-improvement/team-learning.md +342 -0
  78. package/.claude/docs/knowledge-base/04-memory-context/README.md +189 -0
  79. package/.claude/docs/knowledge-base/04-memory-context/context-management.md +308 -0
  80. package/.claude/docs/knowledge-base/04-memory-context/memory-commands.md +176 -0
  81. package/.claude/docs/knowledge-base/04-memory-context/memory-systems.md +359 -0
  82. package/.claude/docs/knowledge-base/04-memory-context/prd-management.md +115 -0
  83. package/.claude/docs/knowledge-base/04-memory-context/session-persistence.md +359 -0
  84. package/.claude/docs/knowledge-base/04-memory-context/team-history.md +317 -0
  85. package/.claude/docs/knowledge-base/05-development-tools/README.md +84 -0
  86. package/.claude/docs/knowledge-base/05-development-tools/code-traces.md +278 -0
  87. package/.claude/docs/knowledge-base/05-development-tools/figma-analyzer.md +253 -0
  88. package/.claude/docs/knowledge-base/05-development-tools/guided-edit.md +173 -0
  89. package/.claude/docs/knowledge-base/05-development-tools/mcp-integrations.md +286 -0
  90. package/.claude/docs/knowledge-base/06-safety-guardrails/README.md +153 -0
  91. package/.claude/docs/knowledge-base/06-safety-guardrails/checkpoint-rollback.md +302 -0
  92. package/.claude/docs/knowledge-base/06-safety-guardrails/commit-gates.md +309 -0
  93. package/.claude/docs/knowledge-base/06-safety-guardrails/damage-control.md +292 -0
  94. package/.claude/docs/knowledge-base/06-safety-guardrails/security-scanning.md +291 -0
  95. package/.claude/docs/knowledge-base/README.md +92 -0
  96. package/.claude/docs/knowledge-base/configuration/README.md +228 -0
  97. package/.claude/docs/knowledge-base/configuration/all-options.md +1632 -0
  98. package/.claude/docs/knowledge-base/future-features.md +277 -0
  99. package/.claude/docs/stack.md +25 -0
  100. package/.claude/docs/testing.md +71 -0
  101. package/.claude/rules/README.md +60 -0
  102. package/.claude/rules/architecture/component-reuse.md +38 -0
  103. package/.claude/rules/architecture/document-structure.md +76 -0
  104. package/.claude/rules/architecture/feature-refactoring-cleanup.md +87 -0
  105. package/.claude/rules/architecture/model-management.md +35 -0
  106. package/.claude/rules/code-style/naming-conventions.md +55 -0
  107. package/.claude/rules/security/security-patterns.md +116 -0
  108. package/.claude/skills/.gitkeep +0 -0
  109. package/.claude/skills/README.md +131 -0
  110. package/.claude/skills/_template/commands/.gitkeep +0 -0
  111. package/.claude/skills/_template/knowledge/anti-patterns.md +49 -0
  112. package/.claude/skills/_template/knowledge/learnings.md +60 -0
  113. package/.claude/skills/_template/knowledge/patterns.md +45 -0
  114. package/.claude/skills/_template/rules/.gitkeep +0 -0
  115. package/.claude/skills/_template/skill.md +99 -0
  116. package/.claude/skills/_template/templates/.gitkeep +0 -0
  117. package/.claude/skills/figma-analyzer/knowledge/anti-patterns.md +216 -0
  118. package/.claude/skills/figma-analyzer/knowledge/patterns.md +144 -0
  119. package/.claude/skills/figma-analyzer/skill.md +236 -0
  120. package/lib/installer.js +59 -19
  121. package/package.json +5 -1
@@ -0,0 +1,55 @@
1
+ ---
2
+ alwaysApply: true
3
+ description: "Naming conventions for files and code variants"
4
+ ---
5
+
6
+ # Naming Conventions
7
+
8
+ ## File Names
9
+
10
+ Use **kebab-case** for all file names in this project.
11
+
12
+ Examples:
13
+ - `flow-health.js` (correct)
14
+ - `flowHealth.js` (incorrect)
15
+ - `flow_health.js` (incorrect)
16
+
17
+ ## Variant Names
18
+
19
+ Use consistent variant names for components:
20
+
21
+ | Category | Values |
22
+ |----------|--------|
23
+ | Size | `sm`, `md`, `lg`, `xl` |
24
+ | Intent | `primary`, `secondary`, `danger`, `success`, `warning` |
25
+ | State | `default`, `hover`, `active`, `disabled` |
26
+
27
+ Examples:
28
+ ```jsx
29
+ <Button size="sm" intent="primary" />
30
+ <Badge variant="warning" />
31
+ ```
32
+
33
+ ## Catch Block Variables
34
+
35
+ Use `err` for all catch blocks in this codebase.
36
+
37
+ **Avoid**: `e`, `error`, `ex`, `exception` - these cause confusion with loop variables.
38
+
39
+ ```javascript
40
+ // Good
41
+ try {
42
+ doSomething();
43
+ } catch (err) {
44
+ console.error(err.message);
45
+ }
46
+
47
+ // Bad - 'e' conflicts with common iterator variables
48
+ try {
49
+ items.map(e => e.value); // 'e' used as iterator
50
+ } catch (e) {
51
+ console.error(e.message); // Easy to confuse with iterator 'e'
52
+ }
53
+ ```
54
+
55
+ **Reason**: Standardizing on `err` prevents mix-ups when `.map(e => ...)` is used nearby.
@@ -0,0 +1,116 @@
1
+ ---
2
+ alwaysApply: true
3
+ description: "Security patterns for file operations, JSON parsing, and path handling"
4
+ ---
5
+
6
+ # Security Patterns
7
+
8
+ Critical security patterns for this project.
9
+
10
+ ## 1. File Read Safety
11
+
12
+ Always wrap `fs.readFileSync()` in try-catch, even after `fileExists()` check.
13
+
14
+ **Reason**: Race conditions, permission changes, symlink issues can still cause failures.
15
+
16
+ ```javascript
17
+ // Good
18
+ try {
19
+ const content = fs.readFileSync(path, 'utf-8');
20
+ } catch (err) {
21
+ // Handle gracefully
22
+ }
23
+
24
+ // Bad - can still throw even if file existed
25
+ if (fs.existsSync(path)) {
26
+ const content = fs.readFileSync(path, 'utf-8');
27
+ }
28
+ ```
29
+
30
+ ## 2. JSON Parsing Safety
31
+
32
+ Use `safeJsonParse()` from flow-utils.js instead of raw `JSON.parse()`.
33
+
34
+ - Check for `__proto__`, `constructor`, `prototype` injection
35
+ - Validate parsed structure has expected fields before use
36
+ - Located in: `scripts/flow-utils.js`
37
+
38
+ ```javascript
39
+ // Good
40
+ const config = safeJsonParse(filePath, {});
41
+
42
+ // Bad - vulnerable to prototype pollution
43
+ const config = JSON.parse(fs.readFileSync(filePath));
44
+ ```
45
+
46
+ ## 3. Template Substitution Safety
47
+
48
+ When implementing template substitution:
49
+ - Block access to `__proto__`, `constructor`, `prototype` keys
50
+ - Use `Object.prototype.hasOwnProperty.call()` for property access
51
+ - Example: See `applyTemplate()` in flow-prompt-composer.js
52
+
53
+ ## 4. Path Safety
54
+
55
+ - Validate patterns before `path.join()` with user/config data
56
+ - Use `isPathWithinProject()` for defense-in-depth
57
+ - Glob-to-regex: Use `[^/]*` not `.*` to prevent path separator matching
58
+
59
+ ```javascript
60
+ // Good
61
+ if (!isPathWithinProject(targetPath)) {
62
+ throw new Error('Path outside project');
63
+ }
64
+
65
+ // Bad - allows path traversal
66
+ const fullPath = path.join(baseDir, userInput);
67
+ ```
68
+
69
+ ## 5. Module Dependencies
70
+
71
+ - Check for circular dependencies when refactoring shared functions
72
+ - Node.js handles circular deps but can cause undefined exports during load
73
+
74
+ ## 6. Claude Code Permission Patterns (2.1.7+)
75
+
76
+ When configuring permission rules in Claude Code, avoid overly permissive wildcards.
77
+
78
+ **Vulnerability fixed in 2.1.7**: Wildcard permission rules could match compound commands containing shell operators (`;`, `&&`, `||`, `|`).
79
+
80
+ ```javascript
81
+ // DANGEROUS - could match "npm test && rm -rf /"
82
+ "allow": "npm *"
83
+
84
+ // SAFER - be specific about allowed commands
85
+ "allow": "npm test"
86
+ "allow": "npm run build"
87
+ "allow": "npm install"
88
+
89
+ // BEST - use semantic prompts instead of wildcards
90
+ // In ExitPlanMode allowedPrompts:
91
+ { "tool": "Bash", "prompt": "run tests" }
92
+ { "tool": "Bash", "prompt": "install dependencies" }
93
+ ```
94
+
95
+ **Best practices:**
96
+ - Avoid `*` wildcards in permission rules
97
+ - Use specific command patterns
98
+ - Prefer semantic permission prompts over literal command matching
99
+ - Never allow broad patterns like `rm *` or `git *`
100
+ - Review permission rules after Claude Code updates
101
+
102
+ ## 7. Windows Path Safety
103
+
104
+ On Windows, be aware of path-related issues:
105
+
106
+ - Temp directory paths may contain characters like `\t` or `\n` that could be misinterpreted as escape sequences
107
+ - Use raw strings or proper escaping when constructing paths
108
+ - Cloud sync tools (OneDrive, Dropbox) and antivirus may touch file timestamps without changing content
109
+
110
+ ```javascript
111
+ // Good - use path.join() which handles platform differences
112
+ const tempPath = path.join(os.tmpdir(), 'myfile.txt');
113
+
114
+ // Bad - manual concatenation can break on Windows
115
+ const tempPath = os.tmpdir() + '/myfile.txt';
116
+ ```
File without changes
@@ -0,0 +1,131 @@
1
+ # WogiFlow Skills
2
+
3
+ Skills are modular add-ons that extend WogiFlow with specialized commands, templates, and rules for specific tech stacks.
4
+
5
+ ## Available Skills
6
+
7
+ | Skill | Description |
8
+ |-------|-------------|
9
+ | `nestjs` | NestJS module builder with TypeORM |
10
+ | `react` | React component patterns (coming soon) |
11
+ | `python` | Python/FastAPI patterns (coming soon) |
12
+
13
+ ## Installing Skills
14
+
15
+ After installing WogiFlow:
16
+
17
+ ```
18
+ /wogi-skills add nestjs
19
+ ```
20
+
21
+ Or manually:
22
+ 1. Copy skill folder to `.claude/skills/`
23
+ 2. Add skill name to `config.json` → `skills.installed`
24
+
25
+ ## Using Skills
26
+
27
+ Once installed, skill commands are available:
28
+
29
+ ```
30
+ # NestJS skill
31
+ /nestjs-scaffold users # Create complete module
32
+ /nestjs-entity User # Create entity
33
+ /nestjs-db migrate # Run migrations
34
+ ```
35
+
36
+ ## Skill Structure
37
+
38
+ Each skill follows this structure:
39
+
40
+ ```
41
+ .claude/skills/[name]/
42
+ ├── skill.md # Description, when to use, commands list
43
+ ├── rules/ # Coding conventions (auto-loaded)
44
+ │ ├── conventions.md
45
+ │ └── [topic].md
46
+ ├── commands/ # Slash commands
47
+ │ ├── scaffold.md # Becomes /[name]-scaffold
48
+ │ └── [action].md
49
+ └── templates/ # Code templates
50
+ ├── entity.template.ts
51
+ └── [type].template.ts
52
+ ```
53
+
54
+ ## Creating Custom Skills
55
+
56
+ ### 1. Create Skill Directory
57
+
58
+ ```bash
59
+ mkdir -p .claude/skills/my-skill/{rules,commands,templates}
60
+ ```
61
+
62
+ ### 2. Create skill.md
63
+
64
+ ```markdown
65
+ # My Skill
66
+
67
+ Description of what this skill does.
68
+
69
+ ## When to Use
70
+
71
+ - Creating [type] components
72
+ - Working with [technology]
73
+
74
+ ## Commands Added
75
+
76
+ | Command | Description |
77
+ |---------|-------------|
78
+ | `/my-skill-action` | Does something |
79
+ ```
80
+
81
+ ### 3. Add Commands
82
+
83
+ Create `.claude/skills/my-skill/commands/action.md`:
84
+
85
+ ```markdown
86
+ Do the action for my skill.
87
+
88
+ Usage: `/my-skill-action [args]`
89
+
90
+ ## Steps
91
+
92
+ 1. Read templates from skill folder
93
+ 2. Generate files
94
+ 3. Report results
95
+ ```
96
+
97
+ ### 4. Add Rules
98
+
99
+ Create `.claude/skills/my-skill/rules/conventions.md`:
100
+
101
+ ```markdown
102
+ # My Skill Conventions
103
+
104
+ ## Pattern 1
105
+
106
+ Always do X when Y.
107
+
108
+ ## Pattern 2
109
+
110
+ Never do A because B.
111
+ ```
112
+
113
+ ### 5. Add Templates
114
+
115
+ Create template files that commands will use.
116
+
117
+ ### 6. Register Skill
118
+
119
+ Add to `config.json`:
120
+ ```json
121
+ "skills": {
122
+ "installed": ["my-skill"]
123
+ }
124
+ ```
125
+
126
+ ## Sharing Skills
127
+
128
+ Skills can be:
129
+ - Included in project repo
130
+ - Shared via `/wogi-export` profile
131
+ - Published to skill repository (coming soon)
File without changes
@@ -0,0 +1,49 @@
1
+ # Anti-Patterns
2
+
3
+ Things that DON'T work. Learn from past mistakes.
4
+ This file is automatically updated when errors occur.
5
+
6
+ ---
7
+
8
+ ## Code Anti-Patterns
9
+
10
+ _No anti-patterns recorded yet._
11
+
12
+ <!--
13
+ Example anti-pattern entry:
14
+
15
+ ### Anti-Pattern: Descriptive Name
16
+
17
+ **What happened**: Description of the mistake
18
+ **Why it's wrong**: Explanation
19
+ **What to do instead**: Correct approach
20
+ **First encountered**: YYYY-MM-DD
21
+ **Occurrence count**: N times
22
+
23
+ ```typescript
24
+ // BAD - Don't do this
25
+ badCode();
26
+
27
+ // GOOD - Do this instead
28
+ goodCode();
29
+ ```
30
+ -->
31
+
32
+ ## Workflow Anti-Patterns
33
+
34
+ _No workflow anti-patterns recorded yet._
35
+
36
+ ## Common Errors
37
+
38
+ _No common errors recorded yet._
39
+
40
+ <!--
41
+ Example:
42
+
43
+ ### Error: TypeScript error TS2345
44
+
45
+ **When it occurs**: Passing wrong type to function X
46
+ **Root cause**: Usually because...
47
+ **Fix**: Cast the type or use...
48
+ **Prevention**: Always check types before...
49
+ -->
@@ -0,0 +1,60 @@
1
+ # Learnings Log
2
+
3
+ This file is automatically updated when corrections or insights occur.
4
+ Each entry captures context, what happened, and what to remember.
5
+
6
+ ---
7
+
8
+ ## What to Capture Here
9
+
10
+ Capture learnings when:
11
+ - **User corrects you** - They say "no, do X instead" or "that's wrong"
12
+ - **Something breaks** - Build fails, tests fail, runtime error
13
+ - **You discover a project convention** - "Ah, this project uses X pattern"
14
+ - **A workaround is needed** - Library bug, platform limitation, edge case
15
+ - **Something works unexpectedly well** - Shortcut that's now a pattern
16
+
17
+ ## Good Learning vs Noise
18
+
19
+ **Worth capturing:**
20
+ - "Module imports must use `.js` extension in this ESM project"
21
+ - "The auth middleware expects `req.user.id`, not `req.userId`"
22
+ - "Tests fail if database isn't seeded first"
23
+
24
+ **Not worth capturing:**
25
+ - "Fixed typo in variable name" (too trivial)
26
+ - "Added console.log for debugging" (temporary)
27
+ - "Used different CSS color" (preference, not pattern)
28
+
29
+ ## When to Promote to patterns.md or anti-patterns.md
30
+
31
+ A learning should be promoted when:
32
+ 1. **Same issue occurs 3+ times** - It's a pattern, not a one-off
33
+ 2. **It affects multiple files** - Project-wide concern
34
+ 3. **It cost significant time** - Worth preventing in future
35
+
36
+ To promote:
37
+ 1. Move the core insight to `patterns.md` (if positive) or `anti-patterns.md` (if negative)
38
+ 2. Add code examples if relevant
39
+ 3. Keep the original learning entry as history
40
+
41
+ ---
42
+
43
+ ## Entry Format
44
+
45
+ ```markdown
46
+ ### YYYY-MM-DD - Brief title
47
+
48
+ **Context**: What was being done
49
+ **Trigger**: commit | task-complete | correction | manual
50
+ **Issue**: What went wrong (or worked well)
51
+ **Learning**: Pattern to remember for future
52
+ **Files**: Affected files (if any)
53
+ **Related**: Link to request-log entry (if any)
54
+ ```
55
+
56
+ ---
57
+
58
+ ## Recent Learnings
59
+
60
+ _No learnings recorded yet. This file will be updated automatically as you work._
@@ -0,0 +1,45 @@
1
+ # Successful Patterns
2
+
3
+ Patterns that have proven to work well in this project.
4
+ These are extracted from successful task completions.
5
+
6
+ ---
7
+
8
+ ## Code Patterns
9
+
10
+ _No patterns recorded yet._
11
+
12
+ <!--
13
+ Example pattern entry:
14
+
15
+ ### Pattern: Descriptive Name
16
+
17
+ **Context**: When this pattern applies
18
+ **Example**:
19
+ ```typescript
20
+ // Code example here
21
+ ```
22
+ **Why it works**: Explanation
23
+ **First seen**: YYYY-MM-DD
24
+ **Usage count**: N times
25
+ -->
26
+
27
+ ## Workflow Patterns
28
+
29
+ _No workflow patterns recorded yet._
30
+
31
+ <!--
32
+ Example:
33
+
34
+ ### Pattern: Always run X before Y
35
+
36
+ **Context**: When doing Z
37
+ **Steps**:
38
+ 1. First do X
39
+ 2. Then do Y
40
+ **Why**: Prevents issues with...
41
+ -->
42
+
43
+ ## Testing Patterns
44
+
45
+ _No testing patterns recorded yet._
File without changes
@@ -0,0 +1,99 @@
1
+ ---
2
+ name: _template
3
+ version: 1.0.0
4
+ description: Template for creating new skills - DO NOT LOAD
5
+ scope: project
6
+ user-invocable: false
7
+ context: inline
8
+ agent: developer
9
+ allowed-tools:
10
+ - Read
11
+ - Glob
12
+ - Grep
13
+ - Edit
14
+ - Write
15
+ lastUpdated: {{DATE}}
16
+ learningCount: 0
17
+ successRate: 0
18
+ template: true
19
+ loadable: false
20
+ ---
21
+
22
+ <!--
23
+ ⚠️ THIS IS A TEMPLATE - DO NOT LOAD THIS SKILL
24
+
25
+ To create a new skill, copy this directory and replace:
26
+ - {{SKILL_NAME}} with your skill name
27
+ - {{SHORT_DESCRIPTION}} with a brief description
28
+ - {{USE_CASE_*}} with actual use cases
29
+ - {{FILE_PATTERN_*}} with file globs
30
+ - {{DATE}} with current date
31
+
32
+ ## Frontmatter Fields (Claude Code 2.1.x aligned)
33
+
34
+ Required:
35
+ - name: Skill identifier (kebab-case)
36
+ - description: Short description shown in slash command menu
37
+ - scope: project | user (where skill applies)
38
+
39
+ Claude Code 2.1.x fields:
40
+ - user-invocable: true | false (controls /slash command visibility)
41
+ - context: inline | fork (fork = isolated execution context)
42
+ - agent: orchestrator | developer | reviewer | tester (persona mapping)
43
+ - allowed-tools: YAML list of tools the skill can use
44
+ Example: [Read, Glob, Grep, Edit, Write, Bash(npm *), Bash(git *)]
45
+
46
+ Optional:
47
+ - lastUpdated: ISO date string
48
+ - learningCount: Number of learnings captured
49
+ - successRate: Historical success rate (0-1)
50
+ - loadable: true | false (whether skill can be loaded)
51
+ - template: true (only for _template skill)
52
+ -->
53
+
54
+ # {{SKILL_NAME}} Skill
55
+
56
+ ## When to Use
57
+
58
+ - {{USE_CASE_1}}
59
+ - {{USE_CASE_2}}
60
+
61
+ ## Quick Reference
62
+
63
+ ### Key Patterns
64
+ - Pattern 1: Description
65
+ - Pattern 2: Description
66
+
67
+ ### Common Mistakes to Avoid
68
+ - See `knowledge/anti-patterns.md` for details
69
+
70
+ ## Progressive Content
71
+
72
+ Load these files when relevant:
73
+
74
+ | File | When to Load |
75
+ |------|--------------|
76
+ | `knowledge/learnings.md` | Starting a task with this skill |
77
+ | `knowledge/patterns.md` | Looking for examples |
78
+ | `knowledge/anti-patterns.md` | Reviewing code or fixing issues |
79
+ | `rules/conventions.md` | Writing new code |
80
+
81
+ ## File Patterns
82
+
83
+ This skill applies to files matching:
84
+ - `{{FILE_PATTERN_1}}`
85
+ - `{{FILE_PATTERN_2}}`
86
+
87
+ ## Commands
88
+
89
+ | Command | Description |
90
+ |---------|-------------|
91
+ | `/{{SKILL_NAME}}-{{ACTION}}` | Description |
92
+
93
+ ## Integration
94
+
95
+ ### Dependencies
96
+ - None
97
+
98
+ ### Related Skills
99
+ - None
File without changes