MCP HubMCP Hub
返回技能列表

when-creating-skill-template-use-skill-builder

DNYoussef
更新于 Today
216 次查看
0
在 GitHub 上查看
其他skill-creationtemplatesyamldocumentation

关于

This Claude Skill helps developers create new Claude Code Skills with proper YAML frontmatter and directory structure. It generates all required files including documentation and ensures skills follow best practices. Use this template generator when building reusable skills to maintain specification compliance and progressive disclosure.

快速安装

Claude Code

推荐
插件命令推荐
/plugin add https://github.com/DNYoussef/ai-chrome-extension
Git 克隆备选方式
git clone https://github.com/DNYoussef/ai-chrome-extension.git ~/.claude/skills/when-creating-skill-template-use-skill-builder

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

Skill Builder - Claude Code Skill Template Generator

Overview

Creates new Claude Code Skills with proper structure, YAML frontmatter, progressive disclosure, and complete documentation. Ensures skills follow best practices and specification requirements.

When to Use

  • Creating new reusable skills
  • Need skill template/boilerplate
  • Building skill library
  • Standardizing skill format

Phase 1: Design Skill Structure (5 min)

Objective

Define skill components and metadata

Agent: Base-Template-Generator

Step 1.1: Gather Requirements

const skillRequirements = {
  name: 'when-[condition]-use-[skill-name]',
  category: 'utilities|development|testing|machine-learning',
  description: 'Clear one-sentence purpose',
  agents: ['agent1', 'agent2'],
  phases: [
    { name: 'Phase 1', duration: '5min', objective: '...' },
    // ...
  ],
  triggers: ['When X happens', 'When Y is needed'],
  outputs: ['file1.json', 'report.md']
};

await memory.store('skill-builder/requirements', skillRequirements);

Step 1.2: Define YAML Frontmatter

---
name: when-[trigger]-use-[skill-name]
version: 1.0.0
description: Single sentence describing purpose
category: utilities
tags: [tag1, tag2, tag3]
agents: [agent1, agent2]
difficulty: beginner|intermediate|advanced
estimated_duration: 15-30min
success_criteria:
  - Criterion 1
  - Criterion 2
validation_method: test_type
dependencies:
  - claude-flow@alpha
  - other-dependency
prerequisites:
  - Required condition 1
outputs:
  - output-file-1
  - output-file-2
triggers:
  - Trigger condition 1
  - Trigger condition 2
---

Step 1.3: Plan Phase Structure

const phaseStructure = skillRequirements.phases.map((phase, i) => ({
  number: i + 1,
  title: phase.name,
  objective: phase.objective,
  duration: phase.duration,
  agent: phase.agent,
  steps: phase.steps,
  validation: phase.validation,
  memoryPattern: phase.memoryPattern,
  scriptTemplate: phase.scriptTemplate
}));

await memory.store('skill-builder/phase-structure', phaseStructure);

Validation Criteria

  • Name follows convention
  • All metadata defined
  • Phases planned
  • Agents identified

Phase 2: Generate Template (5 min)

Objective

Create skill file structure and boilerplate

Agent: Base-Template-Generator

Step 2.1: Create SKILL.md

---
[YAML frontmatter from Phase 1]
---

# ${skillName} - ${shortDescription}

## Overview
${detailedDescription}

## When to Use
${triggers.map(t => `- ${t}`).join('\n')}

## Phase 1: ${phase1.title}

### Objective
${phase1.objective}

### Agent: ${phase1.agent}

**Step 1.1: ${step1.title}**
\`\`\`javascript
${step1.code}
\`\`\`

**Step 1.2: ${step2.title}**
[Implementation details]

### Validation Criteria
${validation.map(v => `- [ ] ${v}`).join('\n')}

### Hooks Integration
\`\`\`bash
npx claude-flow@alpha hooks pre-task --description "${phase1.description}"
\`\`\`

## [Repeat for all phases]

## Success Metrics
${successCriteria}

## Memory Schema
\`\`\`javascript
${memorySchema}
\`\`\`

## Skill Completion
${completionCriteria}

Step 2.2: Create README.md

# ${skillName} - Quick Start Guide

## Purpose
${purpose}

## When to Use
${triggers}

## Quick Start
\`\`\`bash
npx claude-flow@alpha skill-run ${skillName}
\`\`\`

## ${phases.length}-Phase Process
${phases.map((p, i) => `${i+1}. **${p.title}** (${p.duration}) - ${p.objective}`).join('\n')}

## Expected Output
${outputExample}

## Success Criteria
${successCriteria}

For detailed documentation, see SKILL.md

Step 2.3: Create PROCESS.md

# ${skillName} - Detailed Workflow

## Process Overview
${processOverview}

## Phase Breakdown
${phases.map(phase => `
### Phase ${phase.number}: ${phase.title}

**Objective**: ${phase.objective}
**Agent**: ${phase.agent}
**Duration**: ${phase.duration}

**Steps**:
${phase.steps.map((step, i) => `${i+1}. ${step}`).join('\n')}

**Outputs**: ${phase.outputs.join(', ')}
**Validation**: ${phase.validation}
`).join('\n---\n')}

## Workflow Diagram
[See process-diagram.gv]

## Integration Patterns
${integrationExamples}

Step 2.4: Create process-diagram.gv

digraph ${SkillName} {
    rankdir=TB;
    node [shape=box, style=filled, fillcolor=lightblue];

    start [label="Input", shape=ellipse, fillcolor=lightgreen];
    ${phases.map((p, i) => `
    phase${i+1} [label="Phase ${i+1}: ${p.title}\\n(${p.duration})\\nAgent: ${p.agent}", fillcolor=lightcoral];
    output${i+1} [label="${p.outputs.join('\\n')}", shape=parallelogram];
    `).join('\n')}
    end [label="Output", shape=ellipse, fillcolor=lightgreen];

    start -> phase1;
    ${phases.map((p, i) => `
    phase${i+1} -> output${i+1};
    output${i+1} -> phase${i+2 <= phases.length ? i+2 : 'end'};
    `).join('\n')}
}

Validation Criteria

  • All 4 files created
  • YAML valid
  • Content complete
  • Diagram syntax correct

Phase 3: Implement Functionality (8 min)

Objective

Add implementation details and code examples

Agent: Coder

Step 3.1: Add Code Examples

// For each phase, add:
// - Implementation code snippets
// - Memory operations
// - Hook integrations
// - Script templates

const phaseImplementation = {
  codeExample: `
async function execute${phase.title}() {
  // Implementation
  await memory.store('${skillName}/${phase.key}', data);
  return result;
}
  `,
  hooks: `
npx claude-flow@alpha hooks pre-task --description "${phase.description}"
npx claude-flow@alpha hooks post-task --task-id "${phase.key}"
  `,
  scriptTemplate: `
#!/bin/bash
# ${phase.title}.sh
${phase.script}
  `
};

Step 3.2: Add Memory Patterns

const memorySchema = {
  [`${skillName}/`]: {
    [`session-\${id}/`]: {
      ...phases.reduce((acc, phase) => ({
        ...acc,
        [phase.key]: { /* phase data */ }
      }), {})
    }
  }
};

Step 3.3: Add Integration Examples

// How to use with other skills
const integrationExamples = {
  withSPARC: `${skillName} → SPARC workflow`,
  withCascade: `cascade: [${skillName}, next-skill]`,
  standalone: `npx claude-flow@alpha skill-run ${skillName}`
};

Validation Criteria

  • Code examples complete
  • Memory schema defined
  • Hooks integrated
  • Script templates added

Phase 4: Test Skill (5 min)

Objective

Validate skill executes correctly

Agent: Coder

Step 4.1: Syntax Validation

# Validate YAML
npx js-yaml SKILL.md

# Validate GraphViz
dot -Tsvg process-diagram.gv -o /dev/null

# Check file completeness
test -f SKILL.md && test -f README.md && test -f PROCESS.md && test -f process-diagram.gv

Step 4.2: Execution Test

# Try to run the skill
npx claude-flow@alpha skill-run ${skillName} --dry-run

# Check for errors
if [ $? -eq 0 ]; then
  echo "✅ Skill validation passed"
else
  echo "❌ Skill validation failed"
fi

Step 4.3: Documentation Review

const documentationChecklist = {
  hasYAMLFrontmatter: true,
  hasOverview: true,
  hasPhases: phases.length > 0,
  hasValidation: true,
  hasMemorySchema: true,
  hasSuccessMetrics: true,
  hasIntegrationExamples: true
};

const allChecksPassed = Object.values(documentationChecklist).every(v => v === true);

Validation Criteria

  • YAML valid
  • GraphViz valid
  • All files present
  • Dry-run successful

Phase 5: Document Usage (2 min)

Objective

Create usage guide and examples

Agent: Base-Template-Generator

Step 5.1: Add Usage Examples

## Usage Examples

### Basic Usage
\`\`\`bash
npx claude-flow@alpha skill-run ${skillName} \\
  --input "input.json" \\
  --output "output.json"
\`\`\`

### With Parameters
\`\`\`bash
npx claude-flow@alpha skill-run ${skillName} \\
  --param1 "value1" \\
  --param2 "value2"
\`\`\`

### Programmatic Usage
\`\`\`javascript
const result = await runSkill('${skillName}', {
  input: data,
  options: { ... }
});
\`\`\`

Step 5.2: Add Troubleshooting

## Troubleshooting

### Issue: ${commonIssue1}
**Solution**: ${solution1}

### Issue: ${commonIssue2}
**Solution**: ${solution2}

Step 5.3: Generate Completion Report

const completionReport = {
  skillName: skillRequirements.name,
  filesCreated: [
    'SKILL.md',
    'README.md',
    'PROCESS.md',
    'process-diagram.gv'
  ],
  linesOfCode: calculateLOC(),
  estimatedDuration: skillRequirements.estimatedDuration,
  agentsRequired: skillRequirements.agents.length,
  phasesImplemented: phases.length,
  validationStatus: 'PASSED',
  readyForUse: true
};

await memory.store('skill-builder/completion', completionReport);

Validation Criteria

  • Usage examples added
  • Troubleshooting guide complete
  • Completion report generated
  • Ready for use

Success Metrics

  • All 4 files created
  • YAML validation passes
  • Skill executes without errors
  • Documentation complete
  • Ready for integration

Memory Schema

{
  "skill-builder/": {
    "session-${id}/": {
      "requirements": {},
      "phase-structure": [],
      "generated-files": [],
      "validation-results": {},
      "completion": {}
    }
  }
}

Common Patterns

Quick Skill Template

npx claude-flow@alpha skill-run skill-builder \
  --name "my-new-skill" \
  --category "utilities" \
  --agents "coder,tester" \
  --phases "3"

From Existing Workflow

# Convert workflow to skill
npx claude-flow@alpha skill-builder \
  --from-workflow "workflow.json" \
  --output-dir ".claude/skills/utilities/"

Skill Completion

Outputs:

  1. SKILL.md: Complete skill specification
  2. README.md: Quick start guide
  3. PROCESS.md: Detailed workflow
  4. process-diagram.gv: Visual process diagram

Skill complete when all files created and validation passes.

GitHub 仓库

DNYoussef/ai-chrome-extension
路径: .claude/skills/utilities/when-creating-skill-template-use-skill-builder

相关推荐技能

when-creating-presentations-use-pptx-generation

其他

这个Claude Skill为企业级PowerPoint演示文稿生成提供完整解决方案。它通过证据驱动的提示词、工作流强制和约束设计,确保生成符合专业标准的PPT文件。开发者可在需要创建董事会演示、报告或数据可视化时使用,自动输出包含幻灯片备注和可访问性报告的高质量演示文稿。

查看技能

micro-skill-creator

micro-skill-creator能快速创建单一功能的原子化技能,专为构建可组合工作流组件设计。它采用基于证据的提示技术和专家代理模式,确保每个微技能都通过系统性测试验证。开发者可用它生成高度专注、可独立部署的技能模块,提升复杂AI系统的模块化和可靠性。

查看技能

when-documenting-code-use-doc-generator

这个Claude Skill能自动为代码库生成全面的文档,包括API文档、README文件和架构图。它通过分析代码结构来创建准确的文档,适用于需要快速生成或完善项目文档的场景。开发者只需用简单的触发词如"生成文档"或"创建API文档"即可启动自动化文档流程。

查看技能

Report Writer

其他

Report Writer能够将研究数据和内容快速转换为专业报告,支持技术、商业和学术三种风格。它提供结构化输出,可自动生成目录并适配不同受众的需求。开发者可利用此工具高效生成格式规范、内容清晰的Markdown报告文档。

查看技能