bobo-ai-cli 3.0.3 → 3.0.5

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 (238) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +259 -259
  3. package/bundled-skills/CORE_SKILLS.txt +18 -18
  4. package/bundled-skills/backend-expert/SKILL.md +97 -97
  5. package/bundled-skills/code-review/SKILL.md +280 -280
  6. package/bundled-skills/code-review-expert/SKILL.md +85 -85
  7. package/bundled-skills/context-budget-analyzer/SKILL.md +76 -76
  8. package/bundled-skills/context-compressor/SKILL.md +75 -75
  9. package/bundled-skills/context-optimization-suite/SKILL.md +162 -162
  10. package/bundled-skills/frontend-expert/SKILL.md +93 -93
  11. package/bundled-skills/github/SKILL.md +12 -12
  12. package/bundled-skills/high-agency/SKILL.md +473 -473
  13. package/bundled-skills/high-agency/references/builder-patterns.md +126 -126
  14. package/bundled-skills/high-agency/references/recovery-playbook.md +298 -298
  15. package/bundled-skills/memory-manager/SKILL.md +214 -214
  16. package/bundled-skills/memory-manager/references/advanced-config.md +65 -65
  17. package/bundled-skills/orchestrator/SKILL.md +681 -681
  18. package/bundled-skills/planning-with-files/SKILL.md +193 -193
  19. package/bundled-skills/skill-creator/SKILL.md +220 -220
  20. package/bundled-skills/testing-expert/SKILL.md +99 -99
  21. package/bundled-skills/verify/SKILL.md +15 -15
  22. package/dist/agent.d.ts +5 -0
  23. package/dist/agent.js +11 -1
  24. package/dist/agent.js.map +1 -1
  25. package/dist/agents/catalog.d.ts +47 -0
  26. package/dist/agents/catalog.js +63 -5
  27. package/dist/agents/catalog.js.map +1 -1
  28. package/dist/agents/router.d.ts +12 -1
  29. package/dist/agents/router.js +43 -3
  30. package/dist/agents/router.js.map +1 -1
  31. package/dist/agents/spawn.js +36 -18
  32. package/dist/agents/spawn.js.map +1 -1
  33. package/dist/autonomous.js +5 -5
  34. package/dist/cli.js +23 -21
  35. package/dist/cli.js.map +1 -1
  36. package/dist/compactor.js +39 -39
  37. package/dist/dream.js +29 -29
  38. package/dist/image-input.d.ts +44 -0
  39. package/dist/image-input.js +161 -0
  40. package/dist/image-input.js.map +1 -0
  41. package/dist/memory.js +13 -13
  42. package/dist/project.js +15 -15
  43. package/dist/repl.js +88 -0
  44. package/dist/repl.js.map +1 -1
  45. package/dist/skills.js +54 -54
  46. package/dist/sub-agents.js +65 -65
  47. package/dist/tools/browser.js +21 -21
  48. package/dist/tools/claude-code.js +10 -10
  49. package/dist/web.js +7 -7
  50. package/dist/wiki-commands.d.ts +2 -0
  51. package/dist/wiki-commands.js +249 -0
  52. package/dist/wiki-commands.js.map +1 -0
  53. package/dist/wiki.d.ts +90 -0
  54. package/dist/wiki.js +614 -0
  55. package/dist/wiki.js.map +1 -0
  56. package/knowledge/advanced-patterns.md +70 -70
  57. package/knowledge/agent-directives.md +74 -74
  58. package/knowledge/api-integration-patterns.md +102 -0
  59. package/knowledge/code-review-protocol.md +69 -0
  60. package/knowledge/dream.md +36 -36
  61. package/knowledge/engineering.md +52 -46
  62. package/knowledge/error-catalog.md +38 -33
  63. package/knowledge/event-driven-architecture.md +43 -0
  64. package/knowledge/external-alignment.md +47 -0
  65. package/knowledge/high-agency.md +73 -0
  66. package/knowledge/image-generation.md +48 -0
  67. package/knowledge/index.json +194 -169
  68. package/knowledge/llm-wiki-pattern.md +71 -0
  69. package/knowledge/long-task-management.md +79 -0
  70. package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -102
  71. package/knowledge/memory/engineering-patterns.md +134 -134
  72. package/knowledge/memory/feedback_root_structure.md +15 -15
  73. package/knowledge/memory/project-contexts.md +69 -69
  74. package/knowledge/memory/tools-and-services.md +85 -85
  75. package/knowledge/memory-management.md +72 -0
  76. package/knowledge/rules/advisor-strategy.md +204 -0
  77. package/knowledge/rules/agents.md +62 -62
  78. package/knowledge/rules/blocking-rules.md +323 -323
  79. package/knowledge/rules/cache-management.md +379 -379
  80. package/knowledge/rules/capability-evolution.md +132 -132
  81. package/knowledge/rules/coding.md +126 -126
  82. package/knowledge/rules/engineering-workflows.md +225 -225
  83. package/knowledge/rules/evomap-content-guidelines.md +354 -354
  84. package/knowledge/rules/evomap-guide.md +224 -224
  85. package/knowledge/rules/external-alignment.md +22 -0
  86. package/knowledge/rules/git.md +31 -31
  87. package/knowledge/rules/hooks.md +106 -106
  88. package/knowledge/rules/performance.md +101 -101
  89. package/knowledge/rules/remotion-auto-production.md +1120 -1120
  90. package/knowledge/rules/security.md +46 -46
  91. package/knowledge/rules/testing.md +32 -32
  92. package/knowledge/rules/work-mode.md +208 -208
  93. package/knowledge/rules.md +62 -62
  94. package/knowledge/self-evolution.md +78 -0
  95. package/knowledge/self-rationalization-guard.md +52 -0
  96. package/knowledge/skills/Skill_Seekers.md +1722 -1722
  97. package/knowledge/skills/ab-test-setup.md +557 -557
  98. package/knowledge/skills/agent-sdk-dev.md +238 -238
  99. package/knowledge/skills/agent-tools.md +136 -136
  100. package/knowledge/skills/analytics-tracking.md +597 -597
  101. package/knowledge/skills/artifacts-builder.md +89 -89
  102. package/knowledge/skills/asana.md +12 -12
  103. package/knowledge/skills/backend-expert.md +97 -97
  104. package/knowledge/skills/brand-voice.md +481 -481
  105. package/knowledge/skills/browser-use.md +419 -419
  106. package/knowledge/skills/cache-optimization-skill.md +179 -179
  107. package/knowledge/skills/canvas-design.md +147 -147
  108. package/knowledge/skills/citation-validator.md +203 -203
  109. package/knowledge/skills/clangd-lsp.md +52 -52
  110. package/knowledge/skills/code-review-expert.md +85 -85
  111. package/knowledge/skills/code-review.md +280 -280
  112. package/knowledge/skills/code-simplifier.md +12 -12
  113. package/knowledge/skills/commit-commands.md +258 -258
  114. package/knowledge/skills/competitor-alternatives.md +795 -795
  115. package/knowledge/skills/content-atomizer.md +910 -910
  116. package/knowledge/skills/content-research-writer.md +605 -605
  117. package/knowledge/skills/context-optimization-suite.md +162 -162
  118. package/knowledge/skills/context7.md +12 -12
  119. package/knowledge/skills/copy-editing.md +494 -494
  120. package/knowledge/skills/copywriting.md +510 -510
  121. package/knowledge/skills/csharp-lsp.md +40 -40
  122. package/knowledge/skills/decision-making-framework.md +154 -154
  123. package/knowledge/skills/developer-growth-analysis.md +335 -335
  124. package/knowledge/skills/direct-response-copy.md +2336 -2336
  125. package/knowledge/skills/docker-expert.md +229 -229
  126. package/knowledge/skills/document-skills.md +12 -12
  127. package/knowledge/skills/documentation-expert.md +126 -126
  128. package/knowledge/skills/email-sequence.md +1061 -1061
  129. package/knowledge/skills/email-sequences.md +910 -910
  130. package/knowledge/skills/example-plugin.md +72 -72
  131. package/knowledge/skills/explanatory-output-style.md +82 -82
  132. package/knowledge/skills/feature-dev.md +458 -458
  133. package/knowledge/skills/file-organizer.md +466 -466
  134. package/knowledge/skills/firebase.disabled.md +12 -12
  135. package/knowledge/skills/form-cro.md +488 -488
  136. package/knowledge/skills/free-tool-strategy.md +636 -636
  137. package/knowledge/skills/frontend-design-offical.md +55 -55
  138. package/knowledge/skills/frontend-design.md +41 -41
  139. package/knowledge/skills/frontend-expert.md +93 -93
  140. package/knowledge/skills/github.md +12 -12
  141. package/knowledge/skills/gitlab.md +12 -12
  142. package/knowledge/skills/gopls-lsp.md +32 -32
  143. package/knowledge/skills/got-controller.md +218 -218
  144. package/knowledge/skills/greptile.md +72 -72
  145. package/knowledge/skills/hookify.md +376 -376
  146. package/knowledge/skills/image-editor.md +189 -189
  147. package/knowledge/skills/image-enhancer.md +109 -109
  148. package/knowledge/skills/jdtls-lsp.md +49 -49
  149. package/knowledge/skills/json-canvas.md +654 -654
  150. package/knowledge/skills/keyword-research.md +559 -559
  151. package/knowledge/skills/kotlin-lsp.md +28 -28
  152. package/knowledge/skills/laravel-boost.md +12 -12
  153. package/knowledge/skills/launch-strategy.md +394 -394
  154. package/knowledge/skills/lead-magnet.md +393 -393
  155. package/knowledge/skills/learning-output-style.md +106 -106
  156. package/knowledge/skills/linear.md +12 -12
  157. package/knowledge/skills/lua-lsp.md +47 -47
  158. package/knowledge/skills/marketing-ideas.md +720 -720
  159. package/knowledge/skills/marketing-psychology.md +534 -534
  160. package/knowledge/skills/mcp-builder.md +369 -369
  161. package/knowledge/skills/meeting-insights-analyzer.md +347 -347
  162. package/knowledge/skills/memory-evolution-system.md +172 -172
  163. package/knowledge/skills/multi-lens-thinking.md +407 -407
  164. package/knowledge/skills/nano-banana-pro.md +116 -116
  165. package/knowledge/skills/newsletter.md +736 -736
  166. package/knowledge/skills/notebooklm.md +296 -296
  167. package/knowledge/skills/obsidian-bases.md +634 -634
  168. package/knowledge/skills/obsidian-markdown.md +651 -651
  169. package/knowledge/skills/onboarding-cro.md +494 -494
  170. package/knowledge/skills/orchestrator.md +681 -681
  171. package/knowledge/skills/page-cro.md +379 -379
  172. package/knowledge/skills/paid-ads.md +624 -624
  173. package/knowledge/skills/paywall-upgrade-cro.md +651 -651
  174. package/knowledge/skills/php-lsp.md +36 -36
  175. package/knowledge/skills/planning-with-files.md +193 -193
  176. package/knowledge/skills/playwright.md +12 -12
  177. package/knowledge/skills/plugin-dev.md +434 -434
  178. package/knowledge/skills/popup-cro.md +520 -520
  179. package/knowledge/skills/positioning-angles.md +330 -330
  180. package/knowledge/skills/pr-review-toolkit.md +359 -359
  181. package/knowledge/skills/pricing-strategy.md +777 -777
  182. package/knowledge/skills/programmatic-seo.md +714 -714
  183. package/knowledge/skills/pyright-lsp.md +43 -43
  184. package/knowledge/skills/quality-assurance-framework.md +168 -168
  185. package/knowledge/skills/question-refiner.md +160 -160
  186. package/knowledge/skills/ralph-loop.md +205 -205
  187. package/knowledge/skills/refactoring-expert.md +103 -103
  188. package/knowledge/skills/referral-program.md +668 -668
  189. package/knowledge/skills/research-executor.md +164 -164
  190. package/knowledge/skills/review-with-security.md +12 -12
  191. package/knowledge/skills/rust-analyzer-lsp.md +50 -50
  192. package/knowledge/skills/schema-markup.md +647 -647
  193. package/knowledge/skills/security-audit-expert.md +124 -124
  194. package/knowledge/skills/security-expert.md +140 -140
  195. package/knowledge/skills/security-guidance.md +12 -12
  196. package/knowledge/skills/seedance-prompt.md +139 -139
  197. package/knowledge/skills/self-evolution.md +1160 -1160
  198. package/knowledge/skills/seo-audit.md +432 -432
  199. package/knowledge/skills/seo-content.md +787 -787
  200. package/knowledge/skills/serena.md +12 -12
  201. package/knowledge/skills/signup-flow-cro.md +409 -409
  202. package/knowledge/skills/skill-creator.md +220 -220
  203. package/knowledge/skills/skill-manager.md +226 -226
  204. package/knowledge/skills/skill-share.md +98 -98
  205. package/knowledge/skills/slack.md +12 -12
  206. package/knowledge/skills/social-content.md +878 -878
  207. package/knowledge/skills/spec-flow-skill.md +124 -124
  208. package/knowledge/skills/stripe.md +12 -12
  209. package/knowledge/skills/supabase.md +12 -12
  210. package/knowledge/skills/swift-lsp.md +40 -40
  211. package/knowledge/skills/synthesizer.md +236 -236
  212. package/knowledge/skills/template-skill.md +16 -16
  213. package/knowledge/skills/testing-expert.md +99 -99
  214. package/knowledge/skills/theme-factory.md +72 -72
  215. package/knowledge/skills/tiktok-research.md +208 -208
  216. package/knowledge/skills/typescript-lsp.md +36 -36
  217. package/knowledge/skills/ui-ux-pro-max.md +247 -247
  218. package/knowledge/skills/verify.md +15 -15
  219. package/knowledge/skills/visual-prompt-engineer.md +102 -102
  220. package/knowledge/skills/webapp-testing.md +111 -111
  221. package/knowledge/skills/wide-research.md +191 -191
  222. package/knowledge/system.md +93 -93
  223. package/knowledge/task-router.md +46 -37
  224. package/knowledge/verification.md +38 -38
  225. package/knowledge/worker-prompt-craft.md +66 -0
  226. package/knowledge/workflows/3d-viz.md +47 -47
  227. package/knowledge/workflows/data-pipeline.md +47 -47
  228. package/knowledge/workflows/db-migration.md +51 -51
  229. package/knowledge/workflows/feature-dev.md +41 -41
  230. package/knowledge/workflows/tdd-flow.md +52 -52
  231. package/knowledge/workflows/ui-verify.md +51 -51
  232. package/package.json +74 -74
  233. package/dist/claude-bridge.d.ts +0 -18
  234. package/dist/claude-bridge.js +0 -91
  235. package/dist/claude-bridge.js.map +0 -1
  236. package/dist/tools/claude-bridge-tool.d.ts +0 -4
  237. package/dist/tools/claude-bridge-tool.js +0 -44
  238. package/dist/tools/claude-bridge-tool.js.map +0 -1
@@ -1,220 +1,220 @@
1
- ---
2
- id: "skill-creator"
3
- title: "Skill Creator"
4
- category: "agent-engineering"
5
- tags: ["skill creator", "about skills", "skill creation process"]
6
- triggers: []
7
- dependencies: []
8
- source: "E:/Bobo's Coding cache/.claude/skills/skill-creator"
9
- ---
10
-
11
- ---
12
- name: skill-creator
13
- description: Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
14
- license: Complete terms in LICENSE.txt
15
- ---
16
-
17
- # Skill Creator
18
-
19
- This skill provides guidance for creating effective skills.
20
-
21
- ## About Skills
22
-
23
- Skills are modular, self-contained packages that extend Claude's capabilities by providing
24
- specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific
25
- domains or tasks—they transform Claude from a general-purpose agent into a specialized agent
26
- equipped with procedural knowledge that no model can fully possess.
27
-
28
- ### What Skills Provide
29
-
30
- 1. Specialized workflows - Multi-step procedures for specific domains
31
- 2. Tool integrations - Instructions for working with specific file formats or APIs
32
- 3. Domain expertise - Company-specific knowledge, schemas, business logic
33
- 4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks
34
-
35
- ### Anatomy of a Skill
36
-
37
- Every skill consists of a required SKILL.md file and optional bundled resources:
38
-
39
- ```
40
- skill-name/
41
- ├── SKILL.md (required)
42
- │ ├── YAML frontmatter metadata (required)
43
- │ │ ├── name: (required)
44
- │ │ └── description: (required)
45
- │ └── Markdown instructions (required)
46
- └── Bundled Resources (optional)
47
- ├── scripts/ - Executable code (Python/Bash/etc.)
48
- ├── references/ - Documentation intended to be loaded into context as needed
49
- └── assets/ - Files used in output (templates, icons, fonts, etc.)
50
- ```
51
-
52
- #### SKILL.md (required)
53
-
54
- **Metadata Quality:** The `name` and `description` in YAML frontmatter determine when Claude will use the skill. Be specific about what the skill does and when to use it. Use the third-person (e.g. "This skill should be used when..." instead of "Use this skill when...").
55
-
56
- #### Bundled Resources (optional)
57
-
58
- ##### Scripts (`scripts/`)
59
-
60
- Executable code (Python/Bash/etc.) for tasks that require deterministic reliability or are repeatedly rewritten.
61
-
62
- - **When to include**: When the same code is being rewritten repeatedly or deterministic reliability is needed
63
- - **Example**: `scripts/rotate_pdf.py` for PDF rotation tasks
64
- - **Benefits**: Token efficient, deterministic, may be executed without loading into context
65
- - **Note**: Scripts may still need to be read by Claude for patching or environment-specific adjustments
66
-
67
- ##### References (`references/`)
68
-
69
- Documentation and reference material intended to be loaded as needed into context to inform Claude's process and thinking.
70
-
71
- - **When to include**: For documentation that Claude should reference while working
72
- - **Examples**: `references/finance.md` for financial schemas, `references/mnda.md` for company NDA template, `references/policies.md` for company policies, `references/api_docs.md` for API specifications
73
- - **Use cases**: Database schemas, API documentation, domain knowledge, company policies, detailed workflow guides
74
- - **Benefits**: Keeps SKILL.md lean, loaded only when Claude determines it's needed
75
- - **Best practice**: If files are large (>10k words), include grep search patterns in SKILL.md
76
- - **Avoid duplication**: Information should live in either SKILL.md or references files, not both. Prefer references files for detailed information unless it's truly core to the skill—this keeps SKILL.md lean while making information discoverable without hogging the context window. Keep only essential procedural instructions and workflow guidance in SKILL.md; move detailed reference material, schemas, and examples to references files.
77
-
78
- ##### Assets (`assets/`)
79
-
80
- Files not intended to be loaded into context, but rather used within the output Claude produces.
81
-
82
- - **When to include**: When the skill needs files that will be used in the final output
83
- - **Examples**: `assets/logo.png` for brand assets, `assets/slides.pptx` for PowerPoint templates, `assets/frontend-template/` for HTML/React boilerplate, `assets/font.ttf` for typography
84
- - **Use cases**: Templates, images, icons, boilerplate code, fonts, sample documents that get copied or modified
85
- - **Benefits**: Separates output resources from documentation, enables Claude to use files without loading them into context
86
-
87
- ### Progressive Disclosure Design Principle
88
-
89
- Skills use a three-level loading system to manage context efficiently:
90
-
91
- 1. **Metadata (name + description)** - Always in context (~100 words)
92
- 2. **SKILL.md body** - When skill triggers (<5k words)
93
- 3. **Bundled resources** - As needed by Claude (Unlimited\*)
94
-
95
- \*Unlimited because scripts can be executed without reading into context window.
96
-
97
- ## Skill Creation Process
98
-
99
- To create a skill, follow the "Skill Creation Process" in order, skipping steps only if there is a clear reason why they are not applicable.
100
-
101
- ### Step 1: Understanding the Skill with Concrete Examples
102
-
103
- Skip this step only when the skill's usage patterns are already clearly understood. It remains valuable even when working with an existing skill.
104
-
105
- To create an effective skill, clearly understand concrete examples of how the skill will be used. This understanding can come from either direct user examples or generated examples that are validated with user feedback.
106
-
107
- For example, when building an image-editor skill, relevant questions include:
108
-
109
- - "What functionality should the image-editor skill support? Editing, rotating, anything else?"
110
- - "Can you give some examples of how this skill would be used?"
111
- - "I can imagine users asking for things like 'Remove the red-eye from this image' or 'Rotate this image'. Are there other ways you imagine this skill being used?"
112
- - "What would a user say that should trigger this skill?"
113
-
114
- To avoid overwhelming users, avoid asking too many questions in a single message. Start with the most important questions and follow up as needed for better effectiveness.
115
-
116
- Conclude this step when there is a clear sense of the functionality the skill should support.
117
-
118
- ### Step 2: Planning the Reusable Skill Contents
119
-
120
- To turn concrete examples into an effective skill, analyze each example by:
121
-
122
- 1. Considering how to execute on the example from scratch
123
- 2. Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly
124
-
125
- Example: When building a `pdf-editor` skill to handle queries like "Help me rotate this PDF," the analysis shows:
126
-
127
- 1. Rotating a PDF requires re-writing the same code each time
128
- 2. A `scripts/rotate_pdf.py` script would be helpful to store in the skill
129
-
130
- Example: When designing a `frontend-webapp-builder` skill for queries like "Build me a todo app" or "Build me a dashboard to track my steps," the analysis shows:
131
-
132
- 1. Writing a frontend webapp requires the same boilerplate HTML/React each time
133
- 2. An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill
134
-
135
- Example: When building a `big-query` skill to handle queries like "How many users have logged in today?" the analysis shows:
136
-
137
- 1. Querying BigQuery requires re-discovering the table schemas and relationships each time
138
- 2. A `references/schema.md` file documenting the table schemas would be helpful to store in the skill
139
-
140
- To establish the skill's contents, analyze each concrete example to create a list of the reusable resources to include: scripts, references, and assets.
141
-
142
- ### Step 3: Initializing the Skill
143
-
144
- At this point, it is time to actually create the skill.
145
-
146
- Skip this step only if the skill being developed already exists, and iteration or packaging is needed. In this case, continue to the next step.
147
-
148
- When creating a new skill from scratch, always run the `init_skill.py` script. The script conveniently generates a new template skill directory that automatically includes everything a skill requires, making the skill creation process much more efficient and reliable.
149
-
150
- Usage:
151
-
152
- ```bash
153
- scripts/init_skill.py <skill-name> --path <output-directory>
154
- ```
155
-
156
- The script:
157
-
158
- - Creates the skill directory at the specified path
159
- - Generates a SKILL.md template with proper frontmatter and TODO placeholders
160
- - Creates example resource directories: `scripts/`, `references/`, and `assets/`
161
- - Adds example files in each directory that can be customized or deleted
162
-
163
- After initialization, customize or remove the generated SKILL.md and example files as needed.
164
-
165
- ### Step 4: Edit the Skill
166
-
167
- When editing the (newly-generated or existing) skill, remember that the skill is being created for another instance of Claude to use. Focus on including information that would be beneficial and non-obvious to Claude. Consider what procedural knowledge, domain-specific details, or reusable assets would help another Claude instance execute these tasks more effectively.
168
-
169
- #### Start with Reusable Skill Contents
170
-
171
- To begin implementation, start with the reusable resources identified above: `scripts/`, `references/`, and `assets/` files. Note that this step may require user input. For example, when implementing a `brand-guidelines` skill, the user may need to provide brand assets or templates to store in `assets/`, or documentation to store in `references/`.
172
-
173
- Also, delete any example files and directories not needed for the skill. The initialization script creates example files in `scripts/`, `references/`, and `assets/` to demonstrate structure, but most skills won't need all of them.
174
-
175
- #### Update SKILL.md
176
-
177
- **Writing Style:** Write the entire skill using **imperative/infinitive form** (verb-first instructions), not second person. Use objective, instructional language (e.g., "To accomplish X, do Y" rather than "You should do X" or "If you need to do X"). This maintains consistency and clarity for AI consumption.
178
-
179
- To complete SKILL.md, answer the following questions:
180
-
181
- 1. What is the purpose of the skill, in a few sentences?
182
- 2. When should the skill be used?
183
- 3. In practice, how should Claude use the skill? All reusable skill contents developed above should be referenced so that Claude knows how to use them.
184
-
185
- ### Step 5: Packaging a Skill
186
-
187
- Once the skill is ready, it should be packaged into a distributable zip file that gets shared with the user. The packaging process automatically validates the skill first to ensure it meets all requirements:
188
-
189
- ```bash
190
- scripts/package_skill.py <path/to/skill-folder>
191
- ```
192
-
193
- Optional output directory specification:
194
-
195
- ```bash
196
- scripts/package_skill.py <path/to/skill-folder> ./dist
197
- ```
198
-
199
- The packaging script will:
200
-
201
- 1. **Validate** the skill automatically, checking:
202
- - YAML frontmatter format and required fields
203
- - Skill naming conventions and directory structure
204
- - Description completeness and quality
205
- - File organization and resource references
206
-
207
- 2. **Package** the skill if validation passes, creating a zip file named after the skill (e.g., `my-skill.zip`) that includes all files and maintains the proper directory structure for distribution.
208
-
209
- If validation fails, the script will report the errors and exit without creating a package. Fix any validation errors and run the packaging command again.
210
-
211
- ### Step 6: Iterate
212
-
213
- After testing the skill, users may request improvements. Often this happens right after using the skill, with fresh context of how the skill performed.
214
-
215
- **Iteration workflow:**
216
-
217
- 1. Use the skill on real tasks
218
- 2. Notice struggles or inefficiencies
219
- 3. Identify how SKILL.md or bundled resources should be updated
220
- 4. Implement changes and test again
1
+ ---
2
+ id: "skill-creator"
3
+ title: "Skill Creator"
4
+ category: "agent-engineering"
5
+ tags: ["skill creator", "about skills", "skill creation process"]
6
+ triggers: []
7
+ dependencies: []
8
+ source: "E:/Bobo's Coding cache/.claude/skills/skill-creator"
9
+ ---
10
+
11
+ ---
12
+ name: skill-creator
13
+ description: Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
14
+ license: Complete terms in LICENSE.txt
15
+ ---
16
+
17
+ # Skill Creator
18
+
19
+ This skill provides guidance for creating effective skills.
20
+
21
+ ## About Skills
22
+
23
+ Skills are modular, self-contained packages that extend Claude's capabilities by providing
24
+ specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific
25
+ domains or tasks—they transform Claude from a general-purpose agent into a specialized agent
26
+ equipped with procedural knowledge that no model can fully possess.
27
+
28
+ ### What Skills Provide
29
+
30
+ 1. Specialized workflows - Multi-step procedures for specific domains
31
+ 2. Tool integrations - Instructions for working with specific file formats or APIs
32
+ 3. Domain expertise - Company-specific knowledge, schemas, business logic
33
+ 4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks
34
+
35
+ ### Anatomy of a Skill
36
+
37
+ Every skill consists of a required SKILL.md file and optional bundled resources:
38
+
39
+ ```
40
+ skill-name/
41
+ ├── SKILL.md (required)
42
+ │ ├── YAML frontmatter metadata (required)
43
+ │ │ ├── name: (required)
44
+ │ │ └── description: (required)
45
+ │ └── Markdown instructions (required)
46
+ └── Bundled Resources (optional)
47
+ ├── scripts/ - Executable code (Python/Bash/etc.)
48
+ ├── references/ - Documentation intended to be loaded into context as needed
49
+ └── assets/ - Files used in output (templates, icons, fonts, etc.)
50
+ ```
51
+
52
+ #### SKILL.md (required)
53
+
54
+ **Metadata Quality:** The `name` and `description` in YAML frontmatter determine when Claude will use the skill. Be specific about what the skill does and when to use it. Use the third-person (e.g. "This skill should be used when..." instead of "Use this skill when...").
55
+
56
+ #### Bundled Resources (optional)
57
+
58
+ ##### Scripts (`scripts/`)
59
+
60
+ Executable code (Python/Bash/etc.) for tasks that require deterministic reliability or are repeatedly rewritten.
61
+
62
+ - **When to include**: When the same code is being rewritten repeatedly or deterministic reliability is needed
63
+ - **Example**: `scripts/rotate_pdf.py` for PDF rotation tasks
64
+ - **Benefits**: Token efficient, deterministic, may be executed without loading into context
65
+ - **Note**: Scripts may still need to be read by Claude for patching or environment-specific adjustments
66
+
67
+ ##### References (`references/`)
68
+
69
+ Documentation and reference material intended to be loaded as needed into context to inform Claude's process and thinking.
70
+
71
+ - **When to include**: For documentation that Claude should reference while working
72
+ - **Examples**: `references/finance.md` for financial schemas, `references/mnda.md` for company NDA template, `references/policies.md` for company policies, `references/api_docs.md` for API specifications
73
+ - **Use cases**: Database schemas, API documentation, domain knowledge, company policies, detailed workflow guides
74
+ - **Benefits**: Keeps SKILL.md lean, loaded only when Claude determines it's needed
75
+ - **Best practice**: If files are large (>10k words), include grep search patterns in SKILL.md
76
+ - **Avoid duplication**: Information should live in either SKILL.md or references files, not both. Prefer references files for detailed information unless it's truly core to the skill—this keeps SKILL.md lean while making information discoverable without hogging the context window. Keep only essential procedural instructions and workflow guidance in SKILL.md; move detailed reference material, schemas, and examples to references files.
77
+
78
+ ##### Assets (`assets/`)
79
+
80
+ Files not intended to be loaded into context, but rather used within the output Claude produces.
81
+
82
+ - **When to include**: When the skill needs files that will be used in the final output
83
+ - **Examples**: `assets/logo.png` for brand assets, `assets/slides.pptx` for PowerPoint templates, `assets/frontend-template/` for HTML/React boilerplate, `assets/font.ttf` for typography
84
+ - **Use cases**: Templates, images, icons, boilerplate code, fonts, sample documents that get copied or modified
85
+ - **Benefits**: Separates output resources from documentation, enables Claude to use files without loading them into context
86
+
87
+ ### Progressive Disclosure Design Principle
88
+
89
+ Skills use a three-level loading system to manage context efficiently:
90
+
91
+ 1. **Metadata (name + description)** - Always in context (~100 words)
92
+ 2. **SKILL.md body** - When skill triggers (<5k words)
93
+ 3. **Bundled resources** - As needed by Claude (Unlimited\*)
94
+
95
+ \*Unlimited because scripts can be executed without reading into context window.
96
+
97
+ ## Skill Creation Process
98
+
99
+ To create a skill, follow the "Skill Creation Process" in order, skipping steps only if there is a clear reason why they are not applicable.
100
+
101
+ ### Step 1: Understanding the Skill with Concrete Examples
102
+
103
+ Skip this step only when the skill's usage patterns are already clearly understood. It remains valuable even when working with an existing skill.
104
+
105
+ To create an effective skill, clearly understand concrete examples of how the skill will be used. This understanding can come from either direct user examples or generated examples that are validated with user feedback.
106
+
107
+ For example, when building an image-editor skill, relevant questions include:
108
+
109
+ - "What functionality should the image-editor skill support? Editing, rotating, anything else?"
110
+ - "Can you give some examples of how this skill would be used?"
111
+ - "I can imagine users asking for things like 'Remove the red-eye from this image' or 'Rotate this image'. Are there other ways you imagine this skill being used?"
112
+ - "What would a user say that should trigger this skill?"
113
+
114
+ To avoid overwhelming users, avoid asking too many questions in a single message. Start with the most important questions and follow up as needed for better effectiveness.
115
+
116
+ Conclude this step when there is a clear sense of the functionality the skill should support.
117
+
118
+ ### Step 2: Planning the Reusable Skill Contents
119
+
120
+ To turn concrete examples into an effective skill, analyze each example by:
121
+
122
+ 1. Considering how to execute on the example from scratch
123
+ 2. Identifying what scripts, references, and assets would be helpful when executing these workflows repeatedly
124
+
125
+ Example: When building a `pdf-editor` skill to handle queries like "Help me rotate this PDF," the analysis shows:
126
+
127
+ 1. Rotating a PDF requires re-writing the same code each time
128
+ 2. A `scripts/rotate_pdf.py` script would be helpful to store in the skill
129
+
130
+ Example: When designing a `frontend-webapp-builder` skill for queries like "Build me a todo app" or "Build me a dashboard to track my steps," the analysis shows:
131
+
132
+ 1. Writing a frontend webapp requires the same boilerplate HTML/React each time
133
+ 2. An `assets/hello-world/` template containing the boilerplate HTML/React project files would be helpful to store in the skill
134
+
135
+ Example: When building a `big-query` skill to handle queries like "How many users have logged in today?" the analysis shows:
136
+
137
+ 1. Querying BigQuery requires re-discovering the table schemas and relationships each time
138
+ 2. A `references/schema.md` file documenting the table schemas would be helpful to store in the skill
139
+
140
+ To establish the skill's contents, analyze each concrete example to create a list of the reusable resources to include: scripts, references, and assets.
141
+
142
+ ### Step 3: Initializing the Skill
143
+
144
+ At this point, it is time to actually create the skill.
145
+
146
+ Skip this step only if the skill being developed already exists, and iteration or packaging is needed. In this case, continue to the next step.
147
+
148
+ When creating a new skill from scratch, always run the `init_skill.py` script. The script conveniently generates a new template skill directory that automatically includes everything a skill requires, making the skill creation process much more efficient and reliable.
149
+
150
+ Usage:
151
+
152
+ ```bash
153
+ scripts/init_skill.py <skill-name> --path <output-directory>
154
+ ```
155
+
156
+ The script:
157
+
158
+ - Creates the skill directory at the specified path
159
+ - Generates a SKILL.md template with proper frontmatter and TODO placeholders
160
+ - Creates example resource directories: `scripts/`, `references/`, and `assets/`
161
+ - Adds example files in each directory that can be customized or deleted
162
+
163
+ After initialization, customize or remove the generated SKILL.md and example files as needed.
164
+
165
+ ### Step 4: Edit the Skill
166
+
167
+ When editing the (newly-generated or existing) skill, remember that the skill is being created for another instance of Claude to use. Focus on including information that would be beneficial and non-obvious to Claude. Consider what procedural knowledge, domain-specific details, or reusable assets would help another Claude instance execute these tasks more effectively.
168
+
169
+ #### Start with Reusable Skill Contents
170
+
171
+ To begin implementation, start with the reusable resources identified above: `scripts/`, `references/`, and `assets/` files. Note that this step may require user input. For example, when implementing a `brand-guidelines` skill, the user may need to provide brand assets or templates to store in `assets/`, or documentation to store in `references/`.
172
+
173
+ Also, delete any example files and directories not needed for the skill. The initialization script creates example files in `scripts/`, `references/`, and `assets/` to demonstrate structure, but most skills won't need all of them.
174
+
175
+ #### Update SKILL.md
176
+
177
+ **Writing Style:** Write the entire skill using **imperative/infinitive form** (verb-first instructions), not second person. Use objective, instructional language (e.g., "To accomplish X, do Y" rather than "You should do X" or "If you need to do X"). This maintains consistency and clarity for AI consumption.
178
+
179
+ To complete SKILL.md, answer the following questions:
180
+
181
+ 1. What is the purpose of the skill, in a few sentences?
182
+ 2. When should the skill be used?
183
+ 3. In practice, how should Claude use the skill? All reusable skill contents developed above should be referenced so that Claude knows how to use them.
184
+
185
+ ### Step 5: Packaging a Skill
186
+
187
+ Once the skill is ready, it should be packaged into a distributable zip file that gets shared with the user. The packaging process automatically validates the skill first to ensure it meets all requirements:
188
+
189
+ ```bash
190
+ scripts/package_skill.py <path/to/skill-folder>
191
+ ```
192
+
193
+ Optional output directory specification:
194
+
195
+ ```bash
196
+ scripts/package_skill.py <path/to/skill-folder> ./dist
197
+ ```
198
+
199
+ The packaging script will:
200
+
201
+ 1. **Validate** the skill automatically, checking:
202
+ - YAML frontmatter format and required fields
203
+ - Skill naming conventions and directory structure
204
+ - Description completeness and quality
205
+ - File organization and resource references
206
+
207
+ 2. **Package** the skill if validation passes, creating a zip file named after the skill (e.g., `my-skill.zip`) that includes all files and maintains the proper directory structure for distribution.
208
+
209
+ If validation fails, the script will report the errors and exit without creating a package. Fix any validation errors and run the packaging command again.
210
+
211
+ ### Step 6: Iterate
212
+
213
+ After testing the skill, users may request improvements. Often this happens right after using the skill, with fresh context of how the skill performed.
214
+
215
+ **Iteration workflow:**
216
+
217
+ 1. Use the skill on real tasks
218
+ 2. Notice struggles or inefficiencies
219
+ 3. Identify how SKILL.md or bundled resources should be updated
220
+ 4. Implement changes and test again