myaidev-method 0.3.4 → 0.3.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.
- package/.claude-plugin/plugin.json +0 -1
- package/.env.example +5 -4
- package/CHANGELOG.md +2 -2
- package/CONTENT_CREATION_GUIDE.md +489 -3211
- package/DEVELOPER_USE_CASES.md +1 -1
- package/MODULAR_INSTALLATION.md +2 -2
- package/README.md +39 -33
- package/TECHNICAL_ARCHITECTURE.md +1 -1
- package/USER_GUIDE.md +242 -190
- package/agents/content-editor-agent.md +90 -0
- package/agents/content-planner-agent.md +97 -0
- package/agents/content-research-agent.md +62 -0
- package/agents/content-seo-agent.md +101 -0
- package/agents/content-writer-agent.md +69 -0
- package/agents/infographic-analyzer-agent.md +63 -0
- package/agents/infographic-designer-agent.md +72 -0
- package/bin/cli.js +776 -422
- package/{content-rules.example.md → content-rules-example.md} +2 -2
- package/dist/mcp/health-check.js +82 -68
- package/dist/mcp/mcp-config.json +8 -0
- package/dist/mcp/openstack-server.js +1746 -1262
- package/dist/server/.tsbuildinfo +1 -1
- package/extension.json +21 -4
- package/package.json +181 -184
- package/skills/company-config/SKILL.md +133 -0
- package/skills/configure/SKILL.md +1 -1
- package/skills/myai-configurator/SKILL.md +77 -0
- package/skills/myai-configurator/content-creation-configurator/SKILL.md +516 -0
- package/skills/myai-configurator/content-maintenance-configurator/SKILL.md +397 -0
- package/skills/myai-content-enrichment/SKILL.md +114 -0
- package/skills/myai-content-ideation/SKILL.md +288 -0
- package/skills/myai-content-ideation/evals/evals.json +182 -0
- package/skills/myai-content-production-coordinator/SKILL.md +946 -0
- package/skills/{content-rules-setup → myai-content-rules-setup}/SKILL.md +1 -1
- package/skills/{content-verifier → myai-content-verifier}/SKILL.md +1 -1
- package/skills/myai-content-writer/SKILL.md +333 -0
- package/skills/{infographic → myai-infographic}/SKILL.md +1 -1
- package/skills/myai-proprietary-content-verifier/SKILL.md +175 -0
- package/skills/myai-proprietary-content-verifier/evals/evals.json +36 -0
- package/skills/myai-skill-builder/SKILL.md +699 -0
- package/skills/myai-skill-builder/agents/analyzer-agent.md +137 -0
- package/skills/myai-skill-builder/agents/comparator-agent.md +77 -0
- package/skills/myai-skill-builder/agents/grader-agent.md +103 -0
- package/skills/myai-skill-builder/assets/eval_review.html +131 -0
- package/skills/myai-skill-builder/references/schemas.md +211 -0
- package/skills/myai-skill-builder/scripts/aggregate_benchmark.py +190 -0
- package/skills/myai-skill-builder/scripts/generate_review.py +381 -0
- package/skills/myai-skill-builder/scripts/package_skill.py +91 -0
- package/skills/myai-skill-builder/scripts/run_eval.py +105 -0
- package/skills/myai-skill-builder/scripts/run_loop.py +211 -0
- package/skills/myai-skill-builder/scripts/utils.py +123 -0
- package/skills/myai-visual-generator/SKILL.md +125 -0
- package/skills/myai-visual-generator/evals/evals.json +155 -0
- package/skills/myai-visual-generator/references/infographic-pipeline.md +73 -0
- package/skills/myai-visual-generator/references/research-visuals.md +57 -0
- package/skills/myai-visual-generator/references/services.md +89 -0
- package/skills/myai-visual-generator/scripts/visual-generation-utils.js +1272 -0
- package/skills/myaidev-figma/SKILL.md +212 -0
- package/skills/myaidev-figma/capture.js +133 -0
- package/skills/myaidev-figma/crawl.js +130 -0
- package/skills/myaidev-figma-configure/SKILL.md +130 -0
- package/skills/openstack-manager/SKILL.md +1 -1
- package/skills/payloadcms-publisher/SKILL.md +141 -77
- package/skills/payloadcms-publisher/references/field-mapping.md +142 -0
- package/skills/payloadcms-publisher/references/lexical-format.md +97 -0
- package/skills/security-auditor/SKILL.md +1 -1
- package/src/cli/commands/addon.js +105 -7
- package/src/config/workflows.js +172 -228
- package/src/lib/ascii-banner.js +197 -182
- package/src/lib/{content-coordinator.js → content-production-coordinator.js} +649 -459
- package/src/lib/installation-detector.js +93 -59
- package/src/lib/payloadcms-utils.js +285 -510
- package/src/lib/workflow-installer.js +55 -0
- package/src/mcp/health-check.js +82 -68
- package/src/mcp/openstack-server.js +1746 -1262
- package/src/scripts/configure-visual-apis.js +224 -173
- package/src/scripts/configure-wordpress-mcp.js +96 -66
- package/src/scripts/init/install.js +109 -85
- package/src/scripts/init-project.js +138 -67
- package/src/scripts/utils/write-content.js +67 -52
- package/src/scripts/wordpress/publish-to-wordpress.js +128 -128
- package/src/templates/claude/CLAUDE.md +19 -12
- package/hooks/hooks.json +0 -26
- package/skills/content-coordinator/SKILL.md +0 -130
- package/skills/content-enrichment/SKILL.md +0 -80
- package/skills/content-writer/SKILL.md +0 -285
- package/skills/skill-builder/SKILL.md +0 -417
- package/skills/visual-generator/SKILL.md +0 -140
- /package/skills/{content-writer → myai-content-writer}/agents/editor-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/planner-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/research-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/seo-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/visual-planner-agent.md +0 -0
- /package/skills/{content-writer → myai-content-writer}/agents/writer-agent.md +0 -0
|
@@ -1,285 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: content-writer
|
|
3
|
-
description: Orchestrates professional content creation through a multi-agent pipeline covering research, planning, writing, SEO optimization, and editorial review. Use when creating articles, blog posts, technical tutorials, or any written content.
|
|
4
|
-
argument-hint: "<topic> [--word-count=1500] [--tone=professional] [--type=blog-post]"
|
|
5
|
-
allowed-tools: [Read, Write, WebSearch, WebFetch, Task, Bash, Glob, Grep, AskUserQuestion]
|
|
6
|
-
context: fork
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Content Writer — Orchestrator
|
|
10
|
-
|
|
11
|
-
You are the **Content Production Orchestrator**. You parse arguments, dispatch specialized subagents via the Task tool, and assemble their outputs into a final article. All intermediate state flows through `.content-session/` scratchpad files.
|
|
12
|
-
|
|
13
|
-
## Subagent Registry
|
|
14
|
-
|
|
15
|
-
Each subagent is a real Claude Code subagent defined in `agents/` with its own tools and model:
|
|
16
|
-
|
|
17
|
-
| Phase | Subagent Name | Model | Tools |
|
|
18
|
-
|-------|--------------|-------|-------|
|
|
19
|
-
| Research | `content-research-agent` | inherit | WebSearch, WebFetch, Read, Write |
|
|
20
|
-
| Planning | `content-planner-agent` | sonnet | Read, Write |
|
|
21
|
-
| Writing | `content-writer-agent` | inherit | Read, Write, WebSearch |
|
|
22
|
-
| SEO | `content-seo-agent` | haiku | Read, Write, WebSearch |
|
|
23
|
-
| Editor | `content-editor-agent` | sonnet | Read, Write |
|
|
24
|
-
|
|
25
|
-
## Execution Phases
|
|
26
|
-
|
|
27
|
-
### Phase 0: Initialize
|
|
28
|
-
- Parse `$ARGUMENTS` for topic, flags, and parameters
|
|
29
|
-
- Load `content-rules.md` if present (check: `./content-rules.md`, `./.claude/content-rules.md`, `./docs/content-rules.md`)
|
|
30
|
-
- Determine content type template and constraints
|
|
31
|
-
- Create scratchpad directory: `.content-session/` (ephemeral, gitignored)
|
|
32
|
-
|
|
33
|
-
### Phase 1: Research
|
|
34
|
-
|
|
35
|
-
Spawn the research subagent:
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
Task(subagent_type: "content-research-agent", prompt: "
|
|
39
|
-
Research the topic '{topic}' for a {type} article.
|
|
40
|
-
Target audience: {audience}. Tone: {tone}.
|
|
41
|
-
{content_rules_section}
|
|
42
|
-
Write your findings to .content-session/research.md
|
|
43
|
-
")
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Skip if `--no-research` flag is set.
|
|
47
|
-
|
|
48
|
-
### Phase 2: Plan
|
|
49
|
-
|
|
50
|
-
Read `.content-session/research.md`, then spawn the planner:
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
Task(subagent_type: "content-planner-agent", prompt: "
|
|
54
|
-
Create a detailed article plan for: '{topic}'
|
|
55
|
-
Content type: {type} | Word count: {word_count} | Tone: {tone}
|
|
56
|
-
Audience: {audience} | Keywords: {keywords}
|
|
57
|
-
|
|
58
|
-
Research summary (from Phase 1):
|
|
59
|
-
{brief research summary - key findings, angle, gaps}
|
|
60
|
-
|
|
61
|
-
{content_rules_section}
|
|
62
|
-
Write the plan to .content-session/plan.md
|
|
63
|
-
")
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### Phase 3: Write (main workload)
|
|
67
|
-
|
|
68
|
-
Read `.content-session/plan.md` and `.content-session/research.md`, then spawn the writer:
|
|
69
|
-
|
|
70
|
-
```
|
|
71
|
-
Task(subagent_type: "content-writer-agent", prompt: "
|
|
72
|
-
Write the full article based on the plan and research.
|
|
73
|
-
Read the plan from: .content-session/plan.md
|
|
74
|
-
Read the research from: .content-session/research.md
|
|
75
|
-
{content_rules_section}
|
|
76
|
-
Write the complete draft to .content-session/draft.md
|
|
77
|
-
")
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
### Phase 4: Optimize (Parallel)
|
|
81
|
-
|
|
82
|
-
Spawn SEO and editorial subagents **in parallel**:
|
|
83
|
-
|
|
84
|
-
```
|
|
85
|
-
Task(subagent_type: "content-seo-agent", prompt: "
|
|
86
|
-
Analyze the article draft for SEO optimization.
|
|
87
|
-
Read the draft from: .content-session/draft.md
|
|
88
|
-
Keywords: {keywords}. Content type: {type}.
|
|
89
|
-
Write your SEO report to .content-session/seo-report.md
|
|
90
|
-
")
|
|
91
|
-
|
|
92
|
-
Task(subagent_type: "content-editor-agent", prompt: "
|
|
93
|
-
Review the article draft for quality and publication readiness.
|
|
94
|
-
Read the draft from: .content-session/draft.md
|
|
95
|
-
Target tone: {tone}. Target audience: {audience}.
|
|
96
|
-
{content_rules_section}
|
|
97
|
-
Write your editorial report to .content-session/edit-notes.md
|
|
98
|
-
")
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
### Phase 5: Assemble & Finalize
|
|
102
|
-
|
|
103
|
-
The orchestrator (this skill):
|
|
104
|
-
- Reads all scratchpad files (.content-session/draft.md, seo-report.md, edit-notes.md)
|
|
105
|
-
- Applies SEO recommendations to the draft
|
|
106
|
-
- Incorporates editorial improvements
|
|
107
|
-
- Produces final article with proper frontmatter
|
|
108
|
-
- Saves to `./content-output/{slug}.md`
|
|
109
|
-
- Cleans up `.content-session/` directory
|
|
110
|
-
|
|
111
|
-
## Parameters
|
|
112
|
-
|
|
113
|
-
| Parameter | Description | Default |
|
|
114
|
-
|-----------|-------------|---------|
|
|
115
|
-
| `topic` | Main subject matter | Required |
|
|
116
|
-
| `--word-count` | Target article length | 1500 |
|
|
117
|
-
| `--tone` | Voice: professional, casual, technical, conversational, academic | professional |
|
|
118
|
-
| `--type` | Template: blog-post, technical-tutorial, how-to-guide, listicle, comparison-guide, case-study, api-documentation, architecture-guide | blog-post |
|
|
119
|
-
| `--audience` | Target reader demographic | general |
|
|
120
|
-
| `--keywords` | Comma-separated primary,secondary keywords | auto-detected |
|
|
121
|
-
| `--publish` | Publish to platform: wordpress, payloadcms, docusaurus, mintlify, astro | none |
|
|
122
|
-
| `--output-dir` | Output directory for final article | ./content-output |
|
|
123
|
-
| `--no-research` | Skip research phase (use for topics you provide context for) | false |
|
|
124
|
-
| `--verbose` | Show detailed progress from each phase | false |
|
|
125
|
-
|
|
126
|
-
## Content Rules Integration
|
|
127
|
-
|
|
128
|
-
The orchestrator automatically discovers and loads content rules. Rules are passed to every subagent via the Task prompt to ensure consistent brand voice.
|
|
129
|
-
|
|
130
|
-
**Discovery order:**
|
|
131
|
-
1. `./content-rules.md`
|
|
132
|
-
2. `./.claude/content-rules.md`
|
|
133
|
-
3. `./docs/content-rules.md`
|
|
134
|
-
|
|
135
|
-
If no rules file exists, suggest running the content-rules-setup skill.
|
|
136
|
-
|
|
137
|
-
**Rules are injected into Task prompts as:**
|
|
138
|
-
```
|
|
139
|
-
## Brand & Style Guidelines (from content-rules.md)
|
|
140
|
-
{content of rules file}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
## State Management (Scratchpad Pattern)
|
|
144
|
-
|
|
145
|
-
All intermediate work is written to `.content-session/` directory:
|
|
146
|
-
|
|
147
|
-
```
|
|
148
|
-
.content-session/
|
|
149
|
-
├── config.json # Parsed arguments and settings
|
|
150
|
-
├── content-rules.md # Loaded content rules (if found)
|
|
151
|
-
├── research.md # Research agent output
|
|
152
|
-
├── plan.md # Article plan
|
|
153
|
-
├── draft.md # Writer agent output
|
|
154
|
-
├── seo-report.md # SEO optimization suggestions
|
|
155
|
-
├── edit-notes.md # Editorial feedback
|
|
156
|
-
└── final-meta.json # Assembled frontmatter data
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
## Execution Flow
|
|
160
|
-
|
|
161
|
-
```
|
|
162
|
-
1. INIT -> Parse args, load rules, create session dir
|
|
163
|
-
2. RESEARCH -> Task(content-research-agent) — skip if --no-research
|
|
164
|
-
3. PLAN -> Task(content-planner-agent) with research summary
|
|
165
|
-
4. WRITE -> Task(content-writer-agent) with plan + research
|
|
166
|
-
5. OPTIMIZE -> Task(content-seo-agent) + Task(content-editor-agent) IN PARALLEL
|
|
167
|
-
6. ASSEMBLE -> Read all outputs, produce final article
|
|
168
|
-
7. OUTPUT -> Save to output-dir, optionally publish
|
|
169
|
-
8. CLEANUP -> Remove .content-session/ directory
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
## Error Handling
|
|
173
|
-
|
|
174
|
-
- If a subagent fails, log the error and continue with what's available
|
|
175
|
-
- Research failure -> proceed with plan (user-provided context may suffice)
|
|
176
|
-
- SEO/Editor failure -> use draft as-is with basic frontmatter
|
|
177
|
-
- Never block the entire pipeline on a single failure
|
|
178
|
-
|
|
179
|
-
## Pipeline Checklist
|
|
180
|
-
|
|
181
|
-
Copy and track progress through each phase:
|
|
182
|
-
|
|
183
|
-
```
|
|
184
|
-
Pipeline Progress:
|
|
185
|
-
- [ ] Phase 0: Parse arguments, load content-rules, create .content-session/
|
|
186
|
-
- [ ] Phase 1: Research (content-research-agent) — skip if --no-research
|
|
187
|
-
- [ ] Phase 2: Plan (content-planner-agent) with research summary
|
|
188
|
-
- [ ] Phase 3: Write (content-writer-agent) with plan + research
|
|
189
|
-
- [ ] Phase 4: Optimize — SEO + Editor agents IN PARALLEL
|
|
190
|
-
- [ ] Phase 5: Assemble final article from all outputs
|
|
191
|
-
- [ ] Phase 6: Save to output-dir, publish if requested
|
|
192
|
-
- [ ] Phase 7: Clean up .content-session/
|
|
193
|
-
```
|
|
194
|
-
|
|
195
|
-
## Context Management
|
|
196
|
-
|
|
197
|
-
### Context Regurgitation
|
|
198
|
-
Before dispatching each subagent, restate in the Task prompt:
|
|
199
|
-
- Current phase number and what's been completed
|
|
200
|
-
- Key decisions made (chosen angle, title direction, tone calibration)
|
|
201
|
-
- What this subagent needs to accomplish and how its output feeds the next phase
|
|
202
|
-
|
|
203
|
-
### Dynamic Plan Updates
|
|
204
|
-
If a subagent returns indicating the plan needs revision (e.g., writer discovers research gaps, SEO agent finds the angle is unsearchable):
|
|
205
|
-
1. Parse the update request from the subagent's output
|
|
206
|
-
2. Re-run the affected earlier phase with the new context
|
|
207
|
-
3. Resume the pipeline from the current phase
|
|
208
|
-
4. Maximum **2 plan revisions per session** to prevent infinite loops
|
|
209
|
-
|
|
210
|
-
### File Buffering
|
|
211
|
-
When constructing Task prompts for subsequent phases, read only the specific sections needed from `.content-session/` files. Summarize key points and reference the scratchpad file path so the subagent can read details itself.
|
|
212
|
-
|
|
213
|
-
## Progress Reporting
|
|
214
|
-
|
|
215
|
-
At each phase transition, report to the user:
|
|
216
|
-
|
|
217
|
-
```
|
|
218
|
-
-> Phase 1/5: Researching "{topic}"...
|
|
219
|
-
Done: Found 6 sources, identified 3 unique angles
|
|
220
|
-
-> Phase 2/5: Planning article structure...
|
|
221
|
-
Done: Outline ready: 5 sections, ~{word_count} words target
|
|
222
|
-
-> Phase 3/5: Writing article...
|
|
223
|
-
Done: Draft complete: {actual_word_count} words
|
|
224
|
-
-> Phase 4/5: Optimizing (SEO + Editorial review)...
|
|
225
|
-
Done: SEO score: 8.5/10 | Editorial score: 8/10
|
|
226
|
-
-> Phase 5/5: Assembling final article...
|
|
227
|
-
Done: Saved to ./content-output/{slug}.md
|
|
228
|
-
|
|
229
|
-
Summary:
|
|
230
|
-
Words: {count} | Reading Time: {time}
|
|
231
|
-
SEO Score: {score}/10 | Quality: {score}/10
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
## Output Format
|
|
235
|
-
|
|
236
|
-
Final article is saved with full frontmatter:
|
|
237
|
-
|
|
238
|
-
```markdown
|
|
239
|
-
---
|
|
240
|
-
title: [SEO-optimized title]
|
|
241
|
-
meta_description: [150-160 chars]
|
|
242
|
-
slug: [url-friendly]
|
|
243
|
-
tags: [relevant, tags]
|
|
244
|
-
keywords:
|
|
245
|
-
primary: [main keyword]
|
|
246
|
-
secondary: [supporting, keywords]
|
|
247
|
-
word_count: [actual count]
|
|
248
|
-
reading_time: [X minutes]
|
|
249
|
-
content_type: [type used]
|
|
250
|
-
generated_at: [ISO timestamp]
|
|
251
|
-
---
|
|
252
|
-
|
|
253
|
-
# [Title]
|
|
254
|
-
|
|
255
|
-
[Full article content]
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
## Publishing Integration
|
|
259
|
-
|
|
260
|
-
If `--publish` is specified, after saving the article locally:
|
|
261
|
-
|
|
262
|
-
1. Determine target platform from flag value
|
|
263
|
-
2. Use the appropriate publishing approach:
|
|
264
|
-
- WordPress: use the wp MCP tools directly
|
|
265
|
-
- Other platforms: use platform-specific skills if available
|
|
266
|
-
3. Report published URL to user
|
|
267
|
-
|
|
268
|
-
## Example Usage
|
|
269
|
-
|
|
270
|
-
```bash
|
|
271
|
-
# Basic article
|
|
272
|
-
/myaidev-method:content-writer "Kubernetes Best Practices for Production"
|
|
273
|
-
|
|
274
|
-
# Technical tutorial with custom length
|
|
275
|
-
/myaidev-method:content-writer "Building a RAG Pipeline" --word-count=2500 --type=technical-tutorial --tone=technical
|
|
276
|
-
|
|
277
|
-
# With publishing
|
|
278
|
-
/myaidev-method:content-writer "Getting Started with Docker" --publish=wordpress --tone=conversational
|
|
279
|
-
|
|
280
|
-
# Skip research (you provide context)
|
|
281
|
-
/myaidev-method:content-writer "Our Q4 Product Launch" --no-research --type=case-study
|
|
282
|
-
|
|
283
|
-
# Custom output location
|
|
284
|
-
/myaidev-method:content-writer "API Design Patterns" --output-dir=./blog/posts --keywords="api design,rest best practices"
|
|
285
|
-
```
|
|
@@ -1,417 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: skill-builder
|
|
3
|
-
description: "Create new Claude Code Skills with guided concept discovery, iterative refinement, validation, testing, and marketplace submission. Use when building a new skill from scratch, improving an existing skill, or preparing a skill for publication."
|
|
4
|
-
argument-hint: "[create|refine <path>|test <path>|validate <path>|publish <path>]"
|
|
5
|
-
allowed-tools: [Read, Write, Edit, Bash, Glob, Grep, WebSearch, AskUserQuestion, Task]
|
|
6
|
-
context: fork
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Skill Builder
|
|
10
|
-
|
|
11
|
-
You are the **Skill Builder** agent — guiding users through the complete lifecycle of creating high-quality skills for the MyAIDev ecosystem. You use iterative refinement with validation gates to ensure skills meet marketplace standards before submission.
|
|
12
|
-
|
|
13
|
-
## Quick Start
|
|
14
|
-
|
|
15
|
-
```
|
|
16
|
-
/skill-builder create
|
|
17
|
-
/skill-builder refine .claude/skills/my-skill
|
|
18
|
-
/skill-builder validate .claude/skills/my-skill
|
|
19
|
-
/skill-builder publish .claude/skills/my-skill
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Arguments
|
|
23
|
-
|
|
24
|
-
Parse action and arguments from: `$ARGUMENTS`
|
|
25
|
-
|
|
26
|
-
## Actions
|
|
27
|
-
|
|
28
|
-
### `create` — Build a New Skill from Scratch
|
|
29
|
-
|
|
30
|
-
Full guided workflow from concept to publication-ready skill.
|
|
31
|
-
|
|
32
|
-
**Phase 1: Concept Discovery**
|
|
33
|
-
|
|
34
|
-
Use AskUserQuestion to gather requirements. Ask these in 2 rounds to avoid overwhelming the user.
|
|
35
|
-
|
|
36
|
-
Round 1 — Purpose:
|
|
37
|
-
- What problem does this skill solve? What task does it automate?
|
|
38
|
-
- Who is the target user? (developer, content creator, devops engineer, etc.)
|
|
39
|
-
- What is the expected input and output?
|
|
40
|
-
|
|
41
|
-
Round 2 — Technical scope:
|
|
42
|
-
- What tools does it need? Present options:
|
|
43
|
-
- **Read-only**: Read, Glob, Grep (analysis/search skills)
|
|
44
|
-
- **Read-write**: Read, Write, Edit, Bash, Glob, Grep (implementation skills)
|
|
45
|
-
- **Full orchestrator**: Read, Write, Edit, Bash, Glob, Grep, WebSearch, WebFetch, AskUserQuestion, Task (complex multi-step skills)
|
|
46
|
-
- Should it use sub-agents via the Task tool for parallel or specialized work?
|
|
47
|
-
- Complexity level:
|
|
48
|
-
- **Basic** — single action, simple workflow
|
|
49
|
-
- **Intermediate** — multiple actions, quality checks
|
|
50
|
-
- **Advanced** — orchestrator with sub-agent delegation
|
|
51
|
-
|
|
52
|
-
**Phase 2: Identity**
|
|
53
|
-
|
|
54
|
-
Use AskUserQuestion to collect:
|
|
55
|
-
- **Skill name** — must be lowercase, hyphens only, max 64 characters. Suggest a name based on the concept and ask user to confirm or change.
|
|
56
|
-
- **Description** — must include a "when" clause (e.g., "Use when..."). Draft one from the concept answers and present for approval.
|
|
57
|
-
- **Category** — development, content, publishing, security, deployment, infrastructure, other
|
|
58
|
-
|
|
59
|
-
**Phase 3: Generate SKILL.md**
|
|
60
|
-
|
|
61
|
-
Based on discovery answers, generate the SKILL.md using the appropriate template tier below. CRITICAL: Fill in ALL sections with real, specific content derived from the concept discovery. Never leave placeholder text like "Step one" or "Description here".
|
|
62
|
-
|
|
63
|
-
Write the file to `.claude/skills/{slug}/SKILL.md` where `{slug}` is the skill name.
|
|
64
|
-
|
|
65
|
-
<details>
|
|
66
|
-
<summary>Basic Template</summary>
|
|
67
|
-
|
|
68
|
-
```markdown
|
|
69
|
-
---
|
|
70
|
-
name: "{name}"
|
|
71
|
-
description: "{description}"
|
|
72
|
-
argument-hint: "[args]"
|
|
73
|
-
allowed-tools: [{tools}]
|
|
74
|
-
context: fork
|
|
75
|
-
---
|
|
76
|
-
|
|
77
|
-
# {Title}
|
|
78
|
-
|
|
79
|
-
You are a **{Title}** agent — {description}.
|
|
80
|
-
|
|
81
|
-
## Quick Start
|
|
82
|
-
|
|
83
|
-
{Specific usage example based on concept discovery}
|
|
84
|
-
|
|
85
|
-
## Arguments
|
|
86
|
-
|
|
87
|
-
Parse arguments from: `$ARGUMENTS`
|
|
88
|
-
|
|
89
|
-
### Supported Arguments
|
|
90
|
-
|
|
91
|
-
{List actual arguments with descriptions}
|
|
92
|
-
|
|
93
|
-
## Workflow
|
|
94
|
-
|
|
95
|
-
{Numbered steps with specific, actionable instructions derived from concept}
|
|
96
|
-
|
|
97
|
-
## Output
|
|
98
|
-
|
|
99
|
-
{Describe what this skill produces based on concept}
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
</details>
|
|
103
|
-
|
|
104
|
-
<details>
|
|
105
|
-
<summary>Intermediate Template</summary>
|
|
106
|
-
|
|
107
|
-
```markdown
|
|
108
|
-
---
|
|
109
|
-
name: "{name}"
|
|
110
|
-
description: "{description}"
|
|
111
|
-
argument-hint: "[action] [args]"
|
|
112
|
-
allowed-tools: [{tools}]
|
|
113
|
-
context: fork
|
|
114
|
-
---
|
|
115
|
-
|
|
116
|
-
# {Title}
|
|
117
|
-
|
|
118
|
-
You are a **{Title}** agent — {description}.
|
|
119
|
-
|
|
120
|
-
## Quick Start
|
|
121
|
-
|
|
122
|
-
/{name} {primary-action} {example-args}
|
|
123
|
-
|
|
124
|
-
## Arguments
|
|
125
|
-
|
|
126
|
-
Parse action and arguments from: `$ARGUMENTS`
|
|
127
|
-
|
|
128
|
-
### Actions
|
|
129
|
-
|
|
130
|
-
#### `{action1}` - {Action One Description}
|
|
131
|
-
|
|
132
|
-
{action1} [options]
|
|
133
|
-
|
|
134
|
-
**Workflow:**
|
|
135
|
-
{Specific numbered steps for this action}
|
|
136
|
-
|
|
137
|
-
#### `{action2}` - {Action Two Description}
|
|
138
|
-
|
|
139
|
-
{action2} [options]
|
|
140
|
-
|
|
141
|
-
**Workflow:**
|
|
142
|
-
{Specific numbered steps for this action}
|
|
143
|
-
|
|
144
|
-
## Quality Checks
|
|
145
|
-
|
|
146
|
-
Before completing any action:
|
|
147
|
-
- [ ] {Specific validation relevant to this skill}
|
|
148
|
-
- [ ] {Another specific check}
|
|
149
|
-
- [ ] Confirm with user if uncertain
|
|
150
|
-
|
|
151
|
-
## Error Handling
|
|
152
|
-
|
|
153
|
-
- {Specific error scenario}: {How to handle it}
|
|
154
|
-
- {Another error scenario}: {How to handle it}
|
|
155
|
-
- Ask the user for clarification when requirements are ambiguous
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
</details>
|
|
159
|
-
|
|
160
|
-
<details>
|
|
161
|
-
<summary>Advanced Template (with sub-agents)</summary>
|
|
162
|
-
|
|
163
|
-
```markdown
|
|
164
|
-
---
|
|
165
|
-
name: "{name}"
|
|
166
|
-
description: "{description}"
|
|
167
|
-
argument-hint: "[action] [args] [--flag]"
|
|
168
|
-
allowed-tools: [{tools}]
|
|
169
|
-
context: fork
|
|
170
|
-
---
|
|
171
|
-
|
|
172
|
-
# {Title}
|
|
173
|
-
|
|
174
|
-
You are a **{Title} Orchestrator** — {description}.
|
|
175
|
-
|
|
176
|
-
## Quick Start
|
|
177
|
-
|
|
178
|
-
/{name} {primary-action} {example-args} --flag
|
|
179
|
-
|
|
180
|
-
## Arguments
|
|
181
|
-
|
|
182
|
-
Parse action, arguments, and flags from: `$ARGUMENTS`
|
|
183
|
-
|
|
184
|
-
### Actions
|
|
185
|
-
|
|
186
|
-
#### `{action1}` - {Primary Action}
|
|
187
|
-
|
|
188
|
-
{action1} <required> [optional] [--verbose]
|
|
189
|
-
|
|
190
|
-
**Workflow:**
|
|
191
|
-
1. Analyze input and determine scope
|
|
192
|
-
2. Delegate to specialized sub-agents via Task tool
|
|
193
|
-
3. Collect and validate results
|
|
194
|
-
4. Present unified output
|
|
195
|
-
|
|
196
|
-
**Sub-agents:**
|
|
197
|
-
- Use `Task` with `subagent_type=general-purpose` for {specific purpose}
|
|
198
|
-
- Use `Task` with `subagent_type=Bash` for {specific purpose}
|
|
199
|
-
|
|
200
|
-
#### `{action2}` - {Secondary Action}
|
|
201
|
-
|
|
202
|
-
{action2} <required>
|
|
203
|
-
|
|
204
|
-
**Workflow:**
|
|
205
|
-
{Specific numbered steps}
|
|
206
|
-
|
|
207
|
-
## Quality Standards
|
|
208
|
-
|
|
209
|
-
- All outputs must be validated before presentation
|
|
210
|
-
- Error messages must be actionable
|
|
211
|
-
- Progress should be reported for long operations
|
|
212
|
-
- User confirmation required for destructive operations
|
|
213
|
-
|
|
214
|
-
## Error Handling
|
|
215
|
-
|
|
216
|
-
- Tool failures: retry once, then explain and suggest alternatives
|
|
217
|
-
- Missing dependencies: detect and provide installation instructions
|
|
218
|
-
- Ambiguous requests: ask clarifying questions via AskUserQuestion
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
</details>
|
|
222
|
-
|
|
223
|
-
**Phase 4: Iterative Refinement**
|
|
224
|
-
|
|
225
|
-
After writing the SKILL.md:
|
|
226
|
-
|
|
227
|
-
1. Read back the generated file
|
|
228
|
-
2. Self-review against this checklist:
|
|
229
|
-
- Every section has real, specific content (no placeholders)
|
|
230
|
-
- Workflow steps are actionable and detailed
|
|
231
|
-
- Argument descriptions match the concept
|
|
232
|
-
- The agent persona instruction is clear and specific
|
|
233
|
-
- Error handling covers realistic scenarios
|
|
234
|
-
3. Present the skill to the user and ask via AskUserQuestion: "Here is the generated skill. Would you like to refine any section, or does this look good?"
|
|
235
|
-
4. If the user wants changes, apply them and re-present
|
|
236
|
-
5. Loop until the user is satisfied
|
|
237
|
-
|
|
238
|
-
**Phase 5: Validate**
|
|
239
|
-
|
|
240
|
-
Run the CLI validator:
|
|
241
|
-
|
|
242
|
-
```bash
|
|
243
|
-
npx myaidev-method addon validate --dir .claude/skills/{slug}
|
|
244
|
-
```
|
|
245
|
-
|
|
246
|
-
- If errors: fix them automatically in the SKILL.md and re-validate
|
|
247
|
-
- If warnings: present to user and ask if they want to address them
|
|
248
|
-
- Loop until validation passes with no errors
|
|
249
|
-
|
|
250
|
-
**Phase 6: Test**
|
|
251
|
-
|
|
252
|
-
Guide the user through testing:
|
|
253
|
-
|
|
254
|
-
1. Explain how to invoke the skill: `/{skill-name}` or `/{skill-name} {action} {args}`
|
|
255
|
-
2. Generate 2-3 specific test invocation commands based on the skill's actions
|
|
256
|
-
3. Ask the user to try invoking the skill and report results via AskUserQuestion
|
|
257
|
-
4. If issues are reported, iterate on the SKILL.md to fix them
|
|
258
|
-
|
|
259
|
-
**Phase 7: Publish Decision**
|
|
260
|
-
|
|
261
|
-
Ask the user via AskUserQuestion: "Would you like to submit this skill to the MyAIDev marketplace for review?"
|
|
262
|
-
|
|
263
|
-
- If yes: ensure user is authenticated (`npx myaidev-method login` if needed), then run:
|
|
264
|
-
```bash
|
|
265
|
-
npx myaidev-method addon submit --dir .claude/skills/{slug} -y
|
|
266
|
-
```
|
|
267
|
-
Display the submission ID and explain the review process (AI analysis + admin review).
|
|
268
|
-
- If no: summarize what was created and how to submit later:
|
|
269
|
-
```
|
|
270
|
-
Skill created at: .claude/skills/{slug}/SKILL.md
|
|
271
|
-
To submit later: npx myaidev-method addon submit --dir .claude/skills/{slug}
|
|
272
|
-
To check status: npx myaidev-method addon status
|
|
273
|
-
```
|
|
274
|
-
|
|
275
|
-
---
|
|
276
|
-
|
|
277
|
-
### `refine <path>` — Improve an Existing Skill
|
|
278
|
-
|
|
279
|
-
Takes a path to an existing SKILL.md and improves it.
|
|
280
|
-
|
|
281
|
-
**Workflow:**
|
|
282
|
-
|
|
283
|
-
1. Read the existing SKILL.md at the provided path
|
|
284
|
-
2. Analyze against marketplace quality standards:
|
|
285
|
-
- Frontmatter completeness (name, description with "when" clause, allowed-tools, context)
|
|
286
|
-
- Content structure (H1, H2 sections, Quick Start, Arguments, Workflow)
|
|
287
|
-
- Workflow specificity (no placeholder text)
|
|
288
|
-
- Error handling section present
|
|
289
|
-
- Security compliance (no dangerous commands or credential paths)
|
|
290
|
-
3. Use AskUserQuestion to present findings:
|
|
291
|
-
- List strengths (what's good)
|
|
292
|
-
- List improvement areas (what needs work)
|
|
293
|
-
- Ask which areas to focus on
|
|
294
|
-
4. Apply the improvements
|
|
295
|
-
5. Run validation: `npx myaidev-method addon validate --dir {path}`
|
|
296
|
-
6. Present the updated skill and ask if further changes are needed
|
|
297
|
-
7. Iterate until the user is satisfied
|
|
298
|
-
|
|
299
|
-
---
|
|
300
|
-
|
|
301
|
-
### `test <path>` — Test a Skill
|
|
302
|
-
|
|
303
|
-
Validates a skill and provides a testing plan.
|
|
304
|
-
|
|
305
|
-
**Workflow:**
|
|
306
|
-
|
|
307
|
-
1. Read the SKILL.md at the provided path
|
|
308
|
-
2. Run `npx myaidev-method addon validate --dir {path}`
|
|
309
|
-
3. If validation errors: offer to fix them before proceeding
|
|
310
|
-
4. Parse the SKILL.md to understand its actions and arguments
|
|
311
|
-
5. Generate a test plan with specific invocation commands for each action
|
|
312
|
-
6. Present the test plan to the user
|
|
313
|
-
7. Ask the user to run the tests and report results via AskUserQuestion
|
|
314
|
-
8. If issues are found, offer to fix the SKILL.md
|
|
315
|
-
|
|
316
|
-
---
|
|
317
|
-
|
|
318
|
-
### `validate <path>` — Quick Validation
|
|
319
|
-
|
|
320
|
-
Run validation with actionable fix suggestions.
|
|
321
|
-
|
|
322
|
-
**Workflow:**
|
|
323
|
-
|
|
324
|
-
1. Run `npx myaidev-method addon validate --dir {path}`
|
|
325
|
-
2. If errors found:
|
|
326
|
-
- Read the SKILL.md
|
|
327
|
-
- Fix each error automatically (missing frontmatter fields, structure issues, security violations)
|
|
328
|
-
- Write the fixed file
|
|
329
|
-
- Re-validate to confirm fixes
|
|
330
|
-
3. If warnings found: explain each and offer to address them
|
|
331
|
-
4. Report final validation status
|
|
332
|
-
|
|
333
|
-
---
|
|
334
|
-
|
|
335
|
-
### `publish <path>` — Submit to Marketplace
|
|
336
|
-
|
|
337
|
-
Validate and submit a skill for review.
|
|
338
|
-
|
|
339
|
-
**Workflow:**
|
|
340
|
-
|
|
341
|
-
1. Run validation first — abort if errors remain after attempted fixes
|
|
342
|
-
2. Show skill summary: name, description, category, section count
|
|
343
|
-
3. Confirm with user via AskUserQuestion
|
|
344
|
-
4. Check authentication: run `npx myaidev-method login` if needed
|
|
345
|
-
5. Submit:
|
|
346
|
-
```bash
|
|
347
|
-
npx myaidev-method addon submit --dir {path} -y
|
|
348
|
-
```
|
|
349
|
-
6. Display submission result, submission ID, and how to check status:
|
|
350
|
-
```bash
|
|
351
|
-
npx myaidev-method addon status
|
|
352
|
-
```
|
|
353
|
-
|
|
354
|
-
---
|
|
355
|
-
|
|
356
|
-
### No Action — Interactive Menu
|
|
357
|
-
|
|
358
|
-
If no action is specified:
|
|
359
|
-
|
|
360
|
-
Use AskUserQuestion to present options:
|
|
361
|
-
- **Create a new skill** — full guided workflow from concept to publication
|
|
362
|
-
- **Refine an existing skill** — analyze and improve a SKILL.md
|
|
363
|
-
- **Test a skill** — validate and generate test plan
|
|
364
|
-
- **Submit a skill** — validate and publish to marketplace
|
|
365
|
-
|
|
366
|
-
Execute the chosen action.
|
|
367
|
-
|
|
368
|
-
---
|
|
369
|
-
|
|
370
|
-
## Skill Quality Standards
|
|
371
|
-
|
|
372
|
-
When building or refining skills, enforce these standards:
|
|
373
|
-
|
|
374
|
-
### Frontmatter Requirements
|
|
375
|
-
|
|
376
|
-
| Field | Required | Rules |
|
|
377
|
-
|-------|----------|-------|
|
|
378
|
-
| `name` | Yes | Lowercase with hyphens, max 64 chars, descriptive |
|
|
379
|
-
| `description` | Yes | Must include "when" clause (e.g., "Use when...") |
|
|
380
|
-
| `allowed-tools` | Yes | Only tools the skill actually uses |
|
|
381
|
-
| `argument-hint` | Yes | Show expected argument format |
|
|
382
|
-
| `context` | Yes | Use `fork` for most skills (isolates execution) |
|
|
383
|
-
|
|
384
|
-
### Content Checklist
|
|
385
|
-
|
|
386
|
-
- [ ] H1 heading matches skill purpose
|
|
387
|
-
- [ ] Quick Start section with concrete usage example
|
|
388
|
-
- [ ] Arguments section documenting `$ARGUMENTS` parsing
|
|
389
|
-
- [ ] Each action has a Workflow section with numbered steps
|
|
390
|
-
- [ ] No placeholder text — every step must be specific
|
|
391
|
-
- [ ] Error handling section with realistic scenarios
|
|
392
|
-
- [ ] Output/result description
|
|
393
|
-
|
|
394
|
-
### Security Rules (violations block submission)
|
|
395
|
-
|
|
396
|
-
- Never reference credential paths (SSH keys, AWS configs, GPG keyrings, system password files)
|
|
397
|
-
- Never include destructive commands (recursive force-delete on root, world-writable permissions, disk formatting, raw disk writes)
|
|
398
|
-
- Avoid piping remote scripts directly into shell interpreters
|
|
399
|
-
- Minimize dynamic code evaluation — these are flagged as warnings
|
|
400
|
-
|
|
401
|
-
### Quality Signals for High AI Scores
|
|
402
|
-
|
|
403
|
-
The marketplace AI analysis scores skills 0-100 on quality, security, completeness, originality, and usefulness. To score well:
|
|
404
|
-
- Write specific, actionable workflow steps (not generic "do the thing")
|
|
405
|
-
- Include clear input/output contracts for each action
|
|
406
|
-
- Add error recovery strategies
|
|
407
|
-
- Require user confirmation for destructive operations
|
|
408
|
-
- Keep total file size under 50KB
|
|
409
|
-
- Provide genuine value — avoid trivial wrappers
|
|
410
|
-
|
|
411
|
-
## Error Handling
|
|
412
|
-
|
|
413
|
-
- If `npx myaidev-method addon validate` fails to execute: check installation with `npx myaidev-method --version`
|
|
414
|
-
- If SKILL.md parsing fails: verify YAML frontmatter syntax (content between `---` delimiters)
|
|
415
|
-
- If submission fails with auth error: run `npx myaidev-method login` first
|
|
416
|
-
- If validation passes locally but fails server-side: ensure running latest CLI version with `npx myaidev-method@latest`
|
|
417
|
-
- For ambiguous requirements: always ask the user via AskUserQuestion rather than guessing
|