Help create Claude Code Skills that comply with Testany standards.
Testany Skill Standards (Mandatory)
Naming and Structure Conventions
| Convention Item | Standard |
|---|---|
| Naming Language | English, kebab-case (e.g. prd-writer) |
| Directory Structure | Flat structure skills/xxx/ |
| Required Files | Only SKILL.md required |
| references Naming | English |
Review Standards
| Review Item | Requirement |
|---|---|
| Frontmatter | Must include trigger words |
| Line Limit | SKILL.md < 500 lines |
| Boundary Check | Must pass quick_validate.py + manual review |
| Language | Must be in Chinese (technical terms may remain in English) |
| Examples | Must have usage examples |
Directory Structure
skill-name/
├── SKILL.md (必需)
└── references/ (可选,按需加载的参考文档)
Do not create extra files such as README.md, CHANGELOG.md, etc.
Core Principles
Conciseness First
The context window is a shared resource. Only add information that Claude does not already know.
Default assumption: Claude is already very smart. Use concise examples instead of lengthy explanations.
Progressive Loading
- Metadata(name + description) - always in context
- SKILL.md body - loaded after triggering
- references/ - loaded on demand
Skill Creation Process
Step 1: Understand Requirements
Understand the skill's use cases through concrete examples:
- What functionality should this skill support?
- How will users use it?
- What phrases will trigger this skill?
Step 2: Plan Content
Analyze each example to determine the resources needed:
| Resource Type | Purpose | Example |
|---|---|---|
| references/ | Reference documents, loaded on demand | Templates, standards, API documentation |
| scripts/ | Executable scripts | Validation, initialization tools |
| assets/ | Output resources | Images, template files |
Step 3: Initialize Skill
scripts/init_skill.py <skill-name>
The script outputs by default to the skills/ directory, and will create:
- SKILL.md template
- Example directory structure (scripts/, references/, assets/)
Step 4: Write SKILL.md
Frontmatter (Required)
---
name: skill-name
description: 触发词1、触发词2。功能描述,说明什么时候使用这个 skill。
---
Important: description must include trigger words, which are the key to the skill being activated.: description must include trigger words, which are the key to the skill being activated.
Body
- Write in Chinese
- Concise and clear, < 500 lines
- Include usage examples
- When referencing references, explain when to read them
Step 5: Verify
scripts/quick_validate.py skills/<skill-name>
Checklist:
- Frontmatter format
- Line limit
- Trigger words present
Step 6: Manual Review
After verification passes, submit for manual review:
- Functional completeness
- Documentation clarity
- Example effectiveness
Reference example: prd-writer
prd-writer is a skill example that conforms to the Testany specification:
prd-writer/
├── SKILL.md (233 行)
└── references/
├── new-feature-ui.md
├── new-feature-backend.md
├── integration.md
├── refactoring.md
└── optimization.md
Frontmatter example:
---
name: prd-writer
description: 写 PRD、写产品需求文档、PRD 模板、新功能需求。帮助撰写高质量的产品需求文档,支持多种类型:新功能(有UI/无UI)、第三方集成、功能重构、性能/安全优化。
---
Note the trigger words at the beginning of description:写 PRD、写产品需求文档、PRD 模板、新功能需求
FAQ
Q: What is the difference between references and assets?
- references/: documents for Claude's reference, loaded into context
- assets/: output resources (images, templates), not loaded into context
Q: What should I do if SKILL.md is too long?
Split it into references/, reference it in SKILL.md, and explain when to read it.
Q: How do I test a skill?
- Run
quick_validate.pyto validate the format - Test the functionality in actual use
- Iterate and improve based on feedback