@trespies-source/dojo-genesis-plugin 1.0.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 (209) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/LICENSE +21 -0
  3. package/README.md +204 -0
  4. package/dist/hooks/after-tool-call/handler.d.ts +4 -0
  5. package/dist/hooks/after-tool-call/handler.d.ts.map +1 -0
  6. package/dist/hooks/after-tool-call/handler.js +37 -0
  7. package/dist/hooks/after-tool-call/handler.js.map +1 -0
  8. package/dist/hooks/agent-end/handler.d.ts +4 -0
  9. package/dist/hooks/agent-end/handler.d.ts.map +1 -0
  10. package/dist/hooks/agent-end/handler.js +16 -0
  11. package/dist/hooks/agent-end/handler.js.map +1 -0
  12. package/dist/hooks/before-agent-start/handler.d.ts +4 -0
  13. package/dist/hooks/before-agent-start/handler.d.ts.map +1 -0
  14. package/dist/hooks/before-agent-start/handler.js +81 -0
  15. package/dist/hooks/before-agent-start/handler.js.map +1 -0
  16. package/dist/index.d.ts +18 -0
  17. package/dist/index.d.ts.map +1 -0
  18. package/dist/index.js +35 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/src/commands/archive.d.ts +4 -0
  21. package/dist/src/commands/archive.d.ts.map +1 -0
  22. package/dist/src/commands/archive.js +20 -0
  23. package/dist/src/commands/archive.js.map +1 -0
  24. package/dist/src/commands/init.d.ts +4 -0
  25. package/dist/src/commands/init.d.ts.map +1 -0
  26. package/dist/src/commands/init.js +57 -0
  27. package/dist/src/commands/init.js.map +1 -0
  28. package/dist/src/commands/list.d.ts +4 -0
  29. package/dist/src/commands/list.d.ts.map +1 -0
  30. package/dist/src/commands/list.js +9 -0
  31. package/dist/src/commands/list.js.map +1 -0
  32. package/dist/src/commands/router.d.ts +3 -0
  33. package/dist/src/commands/router.d.ts.map +1 -0
  34. package/dist/src/commands/router.js +83 -0
  35. package/dist/src/commands/router.js.map +1 -0
  36. package/dist/src/commands/skill-invoke.d.ts +4 -0
  37. package/dist/src/commands/skill-invoke.d.ts.map +1 -0
  38. package/dist/src/commands/skill-invoke.js +26 -0
  39. package/dist/src/commands/skill-invoke.js.map +1 -0
  40. package/dist/src/commands/status.d.ts +4 -0
  41. package/dist/src/commands/status.d.ts.map +1 -0
  42. package/dist/src/commands/status.js +42 -0
  43. package/dist/src/commands/status.js.map +1 -0
  44. package/dist/src/commands/switch.d.ts +4 -0
  45. package/dist/src/commands/switch.d.ts.map +1 -0
  46. package/dist/src/commands/switch.js +20 -0
  47. package/dist/src/commands/switch.js.map +1 -0
  48. package/dist/src/orchestration/tool-registry.d.ts +18 -0
  49. package/dist/src/orchestration/tool-registry.d.ts.map +1 -0
  50. package/dist/src/orchestration/tool-registry.js +153 -0
  51. package/dist/src/orchestration/tool-registry.js.map +1 -0
  52. package/dist/src/skills/catalog.d.ts +9 -0
  53. package/dist/src/skills/catalog.d.ts.map +1 -0
  54. package/dist/src/skills/catalog.js +251 -0
  55. package/dist/src/skills/catalog.js.map +1 -0
  56. package/dist/src/state/manager.d.ts +19 -0
  57. package/dist/src/state/manager.d.ts.map +1 -0
  58. package/dist/src/state/manager.js +114 -0
  59. package/dist/src/state/manager.js.map +1 -0
  60. package/dist/src/state/migrations.d.ts +3 -0
  61. package/dist/src/state/migrations.d.ts.map +1 -0
  62. package/dist/src/state/migrations.js +8 -0
  63. package/dist/src/state/migrations.js.map +1 -0
  64. package/dist/src/state/types.d.ts +62 -0
  65. package/dist/src/state/types.d.ts.map +1 -0
  66. package/dist/src/state/types.js +2 -0
  67. package/dist/src/state/types.js.map +1 -0
  68. package/dist/src/ui/chat-formatter.d.ts +11 -0
  69. package/dist/src/ui/chat-formatter.d.ts.map +1 -0
  70. package/dist/src/ui/chat-formatter.js +39 -0
  71. package/dist/src/ui/chat-formatter.js.map +1 -0
  72. package/dist/src/utils/file-ops.d.ts +6 -0
  73. package/dist/src/utils/file-ops.d.ts.map +1 -0
  74. package/dist/src/utils/file-ops.js +38 -0
  75. package/dist/src/utils/file-ops.js.map +1 -0
  76. package/dist/src/utils/markdown.d.ts +2 -0
  77. package/dist/src/utils/markdown.d.ts.map +1 -0
  78. package/dist/src/utils/markdown.js +11 -0
  79. package/dist/src/utils/markdown.js.map +1 -0
  80. package/dist/src/utils/validation.d.ts +7 -0
  81. package/dist/src/utils/validation.d.ts.map +1 -0
  82. package/dist/src/utils/validation.js +29 -0
  83. package/dist/src/utils/validation.js.map +1 -0
  84. package/dist/tests/__mocks__/openclaw-types.d.ts +54 -0
  85. package/dist/tests/__mocks__/openclaw-types.d.ts.map +1 -0
  86. package/dist/tests/__mocks__/openclaw-types.js +29 -0
  87. package/dist/tests/__mocks__/openclaw-types.js.map +1 -0
  88. package/hooks/after-tool-call/HOOK.md +7 -0
  89. package/hooks/after-tool-call/handler.ts +41 -0
  90. package/hooks/agent-end/HOOK.md +7 -0
  91. package/hooks/agent-end/handler.ts +18 -0
  92. package/hooks/before-agent-start/HOOK.md +7 -0
  93. package/hooks/before-agent-start/handler.ts +133 -0
  94. package/openclaw.plugin.json +19 -0
  95. package/package.json +61 -0
  96. package/skills/agent-teaching/SKILL.md +583 -0
  97. package/skills/agent-teaching/claw.json +12 -0
  98. package/skills/compression-ritual/SKILL.md +136 -0
  99. package/skills/compression-ritual/claw.json +12 -0
  100. package/skills/context-ingestion/SKILL.md +109 -0
  101. package/skills/context-ingestion/claw.json +12 -0
  102. package/skills/decision-propagation/SKILL.md +130 -0
  103. package/skills/decision-propagation/claw.json +12 -0
  104. package/skills/documentation-audit/SKILL.md +146 -0
  105. package/skills/documentation-audit/claw.json +12 -0
  106. package/skills/era-architecture/SKILL.md +166 -0
  107. package/skills/era-architecture/claw.json +12 -0
  108. package/skills/file-management/SKILL.md +127 -0
  109. package/skills/file-management/claw.json +12 -0
  110. package/skills/frontend-from-backend/SKILL.md +127 -0
  111. package/skills/frontend-from-backend/claw.json +12 -0
  112. package/skills/handoff-protocol/SKILL.md +168 -0
  113. package/skills/handoff-protocol/claw.json +12 -0
  114. package/skills/health-audit/SKILL.md +123 -0
  115. package/skills/health-audit/claw.json +12 -0
  116. package/skills/implementation-prompt/SKILL.md +361 -0
  117. package/skills/implementation-prompt/claw.json +12 -0
  118. package/skills/iterative-scouting/SKILL.md +106 -0
  119. package/skills/iterative-scouting/claw.json +12 -0
  120. package/skills/memory-garden/SKILL.md +470 -0
  121. package/skills/memory-garden/claw.json +12 -0
  122. package/skills/multi-surface-strategy/SKILL.md +288 -0
  123. package/skills/multi-surface-strategy/claw.json +12 -0
  124. package/skills/parallel-tracks/SKILL.md +152 -0
  125. package/skills/parallel-tracks/claw.json +12 -0
  126. package/skills/patient-learning-protocol/SKILL.md +438 -0
  127. package/skills/patient-learning-protocol/claw.json +12 -0
  128. package/skills/planning-with-files/SKILL.md +139 -0
  129. package/skills/planning-with-files/claw.json +12 -0
  130. package/skills/pre-implementation-checklist/SKILL.md +156 -0
  131. package/skills/pre-implementation-checklist/claw.json +12 -0
  132. package/skills/process-extraction/SKILL.md +148 -0
  133. package/skills/process-extraction/claw.json +12 -0
  134. package/skills/process-extraction/references/process_example_template.md +40 -0
  135. package/skills/product-positioning/SKILL.md +293 -0
  136. package/skills/product-positioning/claw.json +12 -0
  137. package/skills/project-exploration/SKILL.md +168 -0
  138. package/skills/project-exploration/claw.json +12 -0
  139. package/skills/release-specification/SKILL.md +645 -0
  140. package/skills/release-specification/claw.json +12 -0
  141. package/skills/repo-context-sync/SKILL.md +362 -0
  142. package/skills/repo-context-sync/claw.json +12 -0
  143. package/skills/repo-context-sync/references/file_hierarchy_patterns.md +186 -0
  144. package/skills/repo-context-sync/references/zenflow_repo_patterns.md +328 -0
  145. package/skills/repo-context-sync/scripts/context_mapper.py +251 -0
  146. package/skills/repo-context-sync/scripts/diff_tracker.py +187 -0
  147. package/skills/repo-context-sync/scripts/smart_clone.sh +52 -0
  148. package/skills/repo-context-sync/templates/context_summary.md +58 -0
  149. package/skills/repo-status/SKILL.md +240 -0
  150. package/skills/repo-status/claw.json +12 -0
  151. package/skills/repo-status/references/semantic-clusters.md +159 -0
  152. package/skills/repo-status/references/status-template.md +214 -0
  153. package/skills/research-modes/SKILL.md +515 -0
  154. package/skills/research-modes/claw.json +12 -0
  155. package/skills/research-synthesis/SKILL.md +110 -0
  156. package/skills/research-synthesis/claw.json +12 -0
  157. package/skills/retrospective/SKILL.md +152 -0
  158. package/skills/retrospective/claw.json +12 -0
  159. package/skills/seed-extraction/SKILL.md +419 -0
  160. package/skills/seed-extraction/claw.json +12 -0
  161. package/skills/seed-library/SKILL.md +424 -0
  162. package/skills/seed-library/claw.json +12 -0
  163. package/skills/seed-library/references/seed_catalog.md +171 -0
  164. package/skills/seed-library/scripts/apply_seed.py +129 -0
  165. package/skills/seed-library/scripts/suggest_seeds.py +183 -0
  166. package/skills/seed-library/seeds/01_three_tiered_governance.md +90 -0
  167. package/skills/seed-library/seeds/02_harness_trace.md +135 -0
  168. package/skills/seed-library/seeds/03_context_iceberg.md +120 -0
  169. package/skills/seed-library/seeds/04_agent_connect.md +106 -0
  170. package/skills/seed-library/seeds/05_go_live_bundles.md +40 -0
  171. package/skills/seed-library/seeds/06_cost_guard.md +40 -0
  172. package/skills/seed-library/seeds/07_safety_switch.md +41 -0
  173. package/skills/seed-library/seeds/08_implicit_perspective_extraction.md +41 -0
  174. package/skills/seed-library/seeds/09_mode_based_complexity_gating.md +46 -0
  175. package/skills/seed-library/seeds/10_shared_infrastructure.md +75 -0
  176. package/skills/seed-library/seeds/11_voice_before_structure.md +74 -0
  177. package/skills/seed-library/seeds/12_pointer_directories.md +81 -0
  178. package/skills/seed-library/seeds/13_granular_visibility.md +82 -0
  179. package/skills/seed-library/seeds/meta_governance_multiplies_velocity.md +43 -0
  180. package/skills/seed-to-skill-converter/SKILL.md +113 -0
  181. package/skills/seed-to-skill-converter/claw.json +12 -0
  182. package/skills/semantic-clusters/SKILL.md +246 -0
  183. package/skills/semantic-clusters/claw.json +12 -0
  184. package/skills/semantic-clusters/references/verb-catalog.md +267 -0
  185. package/skills/skill-audit-upgrade/SKILL.md +427 -0
  186. package/skills/skill-audit-upgrade/claw.json +12 -0
  187. package/skills/skill-creation/LICENSE.txt +202 -0
  188. package/skills/skill-creation/SKILL.md +252 -0
  189. package/skills/skill-creation/claw.json +12 -0
  190. package/skills/skill-creation/references/output-patterns.md +82 -0
  191. package/skills/skill-creation/references/progressive-disclosure-patterns.md +79 -0
  192. package/skills/skill-creation/references/workflows.md +28 -0
  193. package/skills/skill-creation/scripts/init_skill.py +305 -0
  194. package/skills/skill-creation/scripts/quick_validate.py +134 -0
  195. package/skills/skill-maintenance/SKILL.md +413 -0
  196. package/skills/skill-maintenance/claw.json +12 -0
  197. package/skills/spec-constellation-to-prompt-suite/SKILL.md +174 -0
  198. package/skills/spec-constellation-to-prompt-suite/claw.json +12 -0
  199. package/skills/status-template/SKILL.md +211 -0
  200. package/skills/status-template/claw.json +12 -0
  201. package/skills/status-template/references/complete-template.md +191 -0
  202. package/skills/status-writing/SKILL.md +161 -0
  203. package/skills/status-writing/claw.json +12 -0
  204. package/skills/strategic-scout/SKILL.md +163 -0
  205. package/skills/strategic-scout/claw.json +12 -0
  206. package/skills/strategic-to-tactical-workflow/SKILL.md +391 -0
  207. package/skills/strategic-to-tactical-workflow/claw.json +12 -0
  208. package/skills/workspace-navigation/SKILL.md +622 -0
  209. package/skills/workspace-navigation/claw.json +12 -0
@@ -0,0 +1,252 @@
1
+ ---
2
+ name: skill-creation
3
+ description: Guide for creating modular, reusable skills with proper structure and progressive disclosure. Use when formalizing workflows or building capability packages. Trigger phrases: "create a new skill", "write a skill", "build a skill for this workflow", "turn this into a skill", "upgrade this to a skill".
4
+ license: Complete terms in LICENSE.txt
5
+ ---
6
+
7
+ > **OpenClaw Integration:** This skill is invoked by the Dojo Genesis plugin via `/dojo run skill-creation`.
8
+ > The agent receives project context automatically via the `before_agent_start` hook.
9
+ > Use `dojo_get_context` for full state, `dojo_save_artifact` to persist outputs,
10
+ > and `dojo_update_state` to record phase transitions and decisions.
11
+
12
+ # Skill Creator
13
+
14
+ This skill provides guidance for creating effective skills.
15
+
16
+ ## About Skills
17
+
18
+ Skills are modular, self-contained packages that extend Manus's capabilities by providing specialized knowledge, workflows, and tools. Think of them as "onboarding guides" for specific domains or tasks—they transform Manus from a general-purpose agent into a specialized agent equipped with procedural knowledge that no model can fully possess.
19
+
20
+ ### What Skills Provide
21
+
22
+ 1. Specialized workflows - Multi-step procedures for specific domains
23
+ 2. Tool integrations - Instructions for working with specific file formats or APIs
24
+ 3. Domain expertise - Company-specific knowledge, schemas, business logic
25
+ 4. Bundled resources - Scripts, references, and assets for complex and repetitive tasks
26
+
27
+ ## Core Principles
28
+
29
+ ### Concise is Key
30
+
31
+ The context window is a public good. Skills share the context window with everything else Manus needs: system prompt, conversation history, other Skills' metadata, and the actual user request.
32
+
33
+ **Default assumption: Manus is already very smart.** Only add context Manus doesn't already have. Challenge each piece of information: "Does Manus really need this explanation?" and "Does this paragraph justify its token cost?"
34
+
35
+ Prefer concise examples over verbose explanations.
36
+
37
+ ### Set Appropriate Degrees of Freedom
38
+
39
+ Match the level of specificity to the task's fragility and variability:
40
+
41
+ **High freedom (text-based instructions)**: Use when multiple approaches are valid, decisions depend on context, or heuristics guide the approach.
42
+
43
+ **Medium freedom (pseudocode or scripts with parameters)**: Use when a preferred pattern exists, some variation is acceptable, or configuration affects behavior.
44
+
45
+ **Low freedom (specific scripts, few parameters)**: Use when operations are fragile and error-prone, consistency is critical, or a specific sequence must be followed.
46
+
47
+ Think of Manus as exploring a path: a narrow bridge with cliffs needs specific guardrails (low freedom), while an open field allows many routes (high freedom).
48
+
49
+ ### Anatomy of a Skill
50
+
51
+ Every skill consists of a required SKILL.md file and optional bundled resources:
52
+
53
+ ```
54
+ skill-name/
55
+ ├── SKILL.md (required)
56
+ │ ├── YAML frontmatter metadata (required)
57
+ │ │ ├── name: (required)
58
+ │ │ └── description: (required)
59
+ │ └── Markdown instructions (required)
60
+ └── Bundled Resources (optional)
61
+ ├── scripts/ - Executable code (Python/Bash/etc.)
62
+ ├── references/ - Documentation intended to be loaded into context as needed
63
+ └── templates/ - Files used in output (templates, icons, fonts, etc.)
64
+ ```
65
+
66
+ #### SKILL.md (required)
67
+
68
+ Every SKILL.md consists of:
69
+
70
+ - **Frontmatter** (YAML): Contains `name` and `description` fields. These are the only fields that Manus reads to determine when the skill gets used, thus it is very important to be clear and comprehensive in describing what the skill is, and when it should be used.
71
+ - **Body** (Markdown): Instructions and guidance for using the skill. Only loaded AFTER the skill triggers (if at all).
72
+
73
+ #### Bundled Resources (optional)
74
+
75
+ - **`scripts/`** - Executable code for repetitive or deterministic tasks (e.g., `rotate_pdf.py`). Token efficient, can run without loading into context.
76
+ - **`references/`** - Documentation loaded as needed (schemas, API docs, policies). Keeps SKILL.md lean. For large files (>10k words), include grep patterns in SKILL.md.
77
+ - **`templates/`** - Output assets not loaded into context (logos, fonts, boilerplate code).
78
+
79
+ **Avoid duplication**: Information lives in SKILL.md OR references, not both.
80
+
81
+ **Do NOT include**: README.md, CHANGELOG.md, or other auxiliary documentation. Skills are for AI agents, not users.
82
+
83
+ ### Progressive Disclosure
84
+
85
+ Three-level loading system:
86
+ 1. **Metadata** - Always in context (~100 words)
87
+ 2. **SKILL.md body** - When skill triggers (<500 lines)
88
+ 3. **Bundled resources** - As needed
89
+
90
+ Keep SKILL.md under 500 lines. When splitting content to references, clearly describe when to read them.
91
+
92
+ **Key principle:** Keep core workflow in SKILL.md; move variant-specific details to reference files.
93
+
94
+ Example structure for multi-domain skills:
95
+
96
+ ```
97
+ bigquery-skill/
98
+ ├── SKILL.md (overview + navigation)
99
+ └── references/
100
+ ├── finance.md
101
+ ├── sales.md
102
+ └── product.md
103
+ ```
104
+
105
+ Manus only loads the relevant reference file when needed.
106
+
107
+ ## Skill Creation Process
108
+
109
+ Skill creation involves these steps:
110
+
111
+ 1. Understand the skill with concrete examples
112
+ 2. Plan reusable skill contents (scripts, references, templates)
113
+ 3. Initialize the skill (run init_skill.py)
114
+ 4. Edit the skill (implement resources and write SKILL.md)
115
+ 5. Deliver the skill (send SKILL.md path via notify_user)
116
+ 6. Iterate based on real usage
117
+
118
+ Follow these steps in order, skipping only if there is a clear reason why they are not applicable.
119
+
120
+ ### Step 1: Understanding the Skill with Concrete Examples
121
+
122
+ Skip this step only when the skill's usage patterns are already clearly understood.
123
+
124
+ Gather concrete examples of how the skill will be used. Ask questions like:
125
+ - "What functionality should this skill support?"
126
+ - "Can you give examples of how it would be used?"
127
+
128
+ Avoid asking too many questions at once. Conclude when you have a clear sense of the functionality.
129
+
130
+ ### Step 2: Planning the Reusable Skill Contents
131
+
132
+ For each example, identify reusable resources:
133
+
134
+ | Resource Type | When to Use | Example |
135
+ | ------------- | ------------------------------- | ------------------------------------- |
136
+ | `scripts/` | Code rewritten repeatedly | `rotate_pdf.py` for PDF rotation |
137
+ | `templates/` | Same boilerplate each time | HTML/React starter for webapp builder |
138
+ | `references/` | Documentation needed repeatedly | Database schemas for BigQuery skill |
139
+
140
+ ### Step 3: Initializing the Skill
141
+
142
+ At this point, it is time to actually create the skill.
143
+
144
+ 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.
145
+
146
+ 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.
147
+
148
+ Usage:
149
+
150
+ ```bash
151
+ python /home/ubuntu/skills/skill-creation/scripts/init_skill.py <skill-name>
152
+ ```
153
+
154
+ The script:
155
+
156
+ - Creates the skill directory at `/home/ubuntu/skills/<skill-name>/`
157
+ - Generates a SKILL.md template with proper frontmatter and TODO placeholders
158
+ - Creates example resource directories: `scripts/`, `references/`, and `templates/`
159
+ - Adds example files in each directory that can be customized or deleted
160
+
161
+ After initialization, customize or remove the generated SKILL.md and example files as needed.
162
+
163
+ ### Step 4: Edit the Skill
164
+
165
+ When editing the (newly-generated or existing) skill, remember that the skill is being created for another instance of Manus to use. Include information that would be beneficial and non-obvious to Manus. Consider what procedural knowledge, domain-specific details, or reusable assets would help another Manus instance execute these tasks more effectively.
166
+
167
+ #### Learn Proven Design Patterns
168
+
169
+ Consult these helpful guides based on your skill's needs:
170
+
171
+ - **Multi-step processes**: See `/home/ubuntu/skills/skill-creation/references/workflows.md` for sequential workflows and conditional logic
172
+ - **Output formats or quality standards**: See `/home/ubuntu/skills/skill-creation/references/output-patterns.md` for template and example patterns
173
+ - **Progressive Disclosure Patterns**: See `/home/ubuntu/skills/skill-creation/references/progressive-disclosure-patterns.md` for splitting content across files.
174
+
175
+ These files contain established best practices for effective skill design.
176
+
177
+ #### Start with Reusable Skill Contents
178
+
179
+ Begin with the `scripts/`, `references/`, and `templates/` files identified in Step 2. This may require user input (e.g., brand assets for `templates/`, documentation for `references/`).
180
+
181
+ Test added scripts by running them to ensure they work correctly. For many similar scripts, test a representative sample.
182
+
183
+ Delete any unused example files from initialization.
184
+
185
+ #### Update SKILL.md
186
+
187
+ **Writing Guidelines:** Always use imperative/infinitive form.
188
+
189
+ ##### Frontmatter
190
+
191
+ Write the YAML frontmatter with `name` and `description`:
192
+
193
+ - `name`: The skill name
194
+ - `description`: Primary trigger mechanism. Must include what the skill does AND when to use it (body only loads after triggering).
195
+ - Example: "Document creation and editing with tracked changes. Use for: creating .docx files, modifying content, working with tracked changes."
196
+
197
+ ##### Body
198
+
199
+ Write instructions for using the skill and its bundled resources.
200
+
201
+ ### Step 5: Delivering the Skill
202
+
203
+ Once development of the skill is complete, validate and deliver it to the user.
204
+
205
+ #### Validate the Skill
206
+
207
+ Run the validation script to ensure the skill meets all requirements:
208
+
209
+ ```bash
210
+ python /home/ubuntu/skills/skill-creation/scripts/quick_validate.py <skill-name>
211
+ ```
212
+
213
+ If validation fails, fix the errors and run validation again.
214
+
215
+ #### Deliver to User
216
+
217
+ Use `message` tool to send the SKILL.md file as attachment:
218
+
219
+ ```
220
+ /home/ubuntu/skills/{skill-name}/SKILL.md
221
+ ```
222
+
223
+ The system will automatically:
224
+
225
+ 1. Detect the path pattern `/home/ubuntu/skills/*/SKILL.md`
226
+ 2. Package the skill directory into a `.skill` file
227
+ 3. Send to frontend as a special card with options:
228
+ - Add to My Skills
229
+ - Download
230
+ - Preview
231
+
232
+ ### Step 6: Iterate
233
+
234
+ After testing the skill, users may request improvements. Often this happens right after using the skill, with fresh context of how the skill performed.
235
+
236
+ **Iteration workflow:**
237
+
238
+ 1. Use the skill on real tasks
239
+ 2. Notice struggles or inefficiencies
240
+ 3. Identify how SKILL.md or bundled resources should be updated
241
+ 4. Implement changes and test again
242
+ ---
243
+
244
+ ## OpenClaw Tool Integration
245
+
246
+ When running inside the Dojo Genesis plugin:
247
+
248
+ 1. **Start** by calling `dojo_get_context` to retrieve full project state, history, and artifacts
249
+ 2. **During** the skill, follow the workflow steps documented above
250
+ 3. **Save** outputs using `dojo_save_artifact` with the `artifacts` output directory
251
+ 4. **Update** project state by calling `dojo_update_state` to record skill completion and any phase transitions
252
+
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "dojo-genesis-plugin-skill-creation",
3
+ "version": "1.0.0",
4
+ "description": "Create new reusable skills",
5
+ "author": "dojo-genesis",
6
+ "license": "MIT",
7
+ "permissions": [],
8
+ "entry": "SKILL.md",
9
+ "tags": ["dojo-genesis", "orchestration", "forge", "skills"],
10
+ "models": ["claude-*", "gpt-*", "gemini-*"],
11
+ "minOpenClawVersion": "2026.1.0"
12
+ }
@@ -0,0 +1,82 @@
1
+ # Output Patterns
2
+
3
+ Use these patterns when skills need to produce consistent, high-quality output.
4
+
5
+ ## Template Pattern
6
+
7
+ Provide templates for output format. Match the level of strictness to your needs.
8
+
9
+ **For strict requirements (like API responses or data formats):**
10
+
11
+ ```markdown
12
+ ## Report structure
13
+
14
+ ALWAYS use this exact template structure:
15
+
16
+ # [Analysis Title]
17
+
18
+ ## Executive summary
19
+ [One-paragraph overview of key findings]
20
+
21
+ ## Key findings
22
+ - Finding 1 with supporting data
23
+ - Finding 2 with supporting data
24
+ - Finding 3 with supporting data
25
+
26
+ ## Recommendations
27
+ 1. Specific actionable recommendation
28
+ 2. Specific actionable recommendation
29
+ ```
30
+
31
+ **For flexible guidance (when adaptation is useful):**
32
+
33
+ ```markdown
34
+ ## Report structure
35
+
36
+ Here is a sensible default format, but use your best judgment:
37
+
38
+ # [Analysis Title]
39
+
40
+ ## Executive summary
41
+ [Overview]
42
+
43
+ ## Key findings
44
+ [Adapt sections based on what you discover]
45
+
46
+ ## Recommendations
47
+ [Tailor to the specific context]
48
+
49
+ Adjust sections as needed for the specific analysis type.
50
+ ```
51
+
52
+ ## Examples Pattern
53
+
54
+ For skills where output quality depends on seeing examples, provide input/output pairs:
55
+
56
+ ```markdown
57
+ ## Commit message format
58
+
59
+ Generate commit messages following these examples:
60
+
61
+ **Example 1:**
62
+ Input: Added user authentication with JWT tokens
63
+ Output:
64
+ ```
65
+ feat(auth): implement JWT-based authentication
66
+
67
+ Add login endpoint and token validation middleware
68
+ ```
69
+
70
+ **Example 2:**
71
+ Input: Fixed bug where dates displayed incorrectly in reports
72
+ Output:
73
+ ```
74
+ fix(reports): correct date formatting in timezone conversion
75
+
76
+ Use UTC timestamps consistently across report generation
77
+ ```
78
+
79
+ Follow this style: type(scope): brief description, then detailed explanation.
80
+ ```
81
+
82
+ Examples help Manus understand the desired style and level of detail more clearly than descriptions alone.
@@ -0,0 +1,79 @@
1
+ # Progressive Disclosure Patterns
2
+
3
+ Keep SKILL.md body to the essentials and under 500 lines to minimize context bloat. Split content into separate files when approaching this limit. When splitting out content into other files, it is very important to reference them from SKILL.md and describe clearly when to read them, to ensure the reader of the skill knows they exist and when to use them.
4
+
5
+ **Key principle:** When a skill supports multiple variations, frameworks, or options, keep only the core workflow and selection guidance in SKILL.md. Move variant-specific details (patterns, examples, configuration) into separate reference files.
6
+
7
+ **Pattern 1: High-level guide with references**
8
+
9
+ ```markdown
10
+ # PDF Processing
11
+
12
+ ## Quick start
13
+
14
+ Extract text with pdfplumber:
15
+ [code example]
16
+
17
+ ## Advanced features
18
+
19
+ - **Form filling**: See [FORMS.md](FORMS.md) for complete guide
20
+ - **API reference**: See [REFERENCE.md](REFERENCE.md) for all methods
21
+ - **Examples**: See [EXAMPLES.md](EXAMPLES.md) for common patterns
22
+ ```
23
+
24
+ Manus loads FORMS.md, REFERENCE.md, or EXAMPLES.md only when needed.
25
+
26
+ **Pattern 2: Domain-specific organization**
27
+
28
+ For Skills with multiple domains, organize content by domain to avoid loading irrelevant context:
29
+
30
+ ```
31
+ bigquery-skill/
32
+ ├── SKILL.md (overview and navigation)
33
+ └── reference/
34
+ ├── finance.md (revenue, billing metrics)
35
+ ├── sales.md (opportunities, pipeline)
36
+ ├── product.md (API usage, features)
37
+ └── marketing.md (campaigns, attribution)
38
+ ```
39
+
40
+ When a user asks about sales metrics, Manus only reads sales.md.
41
+
42
+ Similarly, for skills supporting multiple frameworks or variants, organize by variant:
43
+
44
+ ```
45
+ cloud-deploy/
46
+ ├── SKILL.md (workflow + provider selection)
47
+ └── references/
48
+ ├── aws.md (AWS deployment patterns)
49
+ ├── gcp.md (GCP deployment patterns)
50
+ └── azure.md (Azure deployment patterns)
51
+ ```
52
+
53
+ When the user chooses AWS, Manus only reads aws.md.
54
+
55
+ **Pattern 3: Conditional details**
56
+
57
+ Show basic content, link to advanced content:
58
+
59
+ ```markdown
60
+ # DOCX Processing
61
+
62
+ ## Creating documents
63
+
64
+ Use docx-js for new documents. See [DOCX-JS.md](DOCX-JS.md).
65
+
66
+ ## Editing documents
67
+
68
+ For simple edits, modify the XML directly.
69
+
70
+ **For tracked changes**: See [REDLINING.md](REDLINING.md)
71
+ **For OOXML details**: See [OOXML.md](OOXML.md)
72
+ ```
73
+
74
+ Manus reads REDLINING.md or OOXML.md only when the user needs those features.
75
+
76
+ **Important guidelines:**
77
+
78
+ - **Avoid deeply nested references** - Keep references one level deep from SKILL.md. All reference files should link directly from SKILL.md.
79
+ - **Structure longer reference files** - For files longer than 100 lines, include a table of contents at the top so Manus can see the full scope when previewing.
@@ -0,0 +1,28 @@
1
+ # Workflow Patterns
2
+
3
+ ## Sequential Workflows
4
+
5
+ For complex tasks, break operations into clear, sequential steps. It is often helpful to give Manus an overview of the process towards the beginning of SKILL.md:
6
+
7
+ ```markdown
8
+ Filling a PDF form involves these steps:
9
+
10
+ 1. Analyze the form (run analyze_form.py)
11
+ 2. Create field mapping (edit fields.json)
12
+ 3. Validate mapping (run validate_fields.py)
13
+ 4. Fill the form (run fill_form.py)
14
+ 5. Verify output (run verify_output.py)
15
+ ```
16
+
17
+ ## Conditional Workflows
18
+
19
+ For tasks with branching logic, guide Manus through decision points:
20
+
21
+ ```markdown
22
+ 1. Determine the modification type:
23
+ **Creating new content?** → Follow "Creation workflow" below
24
+ **Editing existing content?** → Follow "Editing workflow" below
25
+
26
+ 2. Creation workflow: [steps]
27
+ 3. Editing workflow: [steps]
28
+ ```