一键导入
validation-workflow
GitHub Actions CI for validating skill plugins. Use when setting up CI/CD for a skills marketplace or enforcing plugin quality.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
GitHub Actions CI for validating skill plugins. Use when setting up CI/CD for a skills marketplace or enforcing plugin quality.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Search team knowledge before starting work. Use when starting experiments, debugging unfamiliar errors, or before implementing features with unknowns.
Best practices for writing effective skill documentation. Use when creating new skills, improving skill discoverability, or documenting failed attempts.
Save session learnings as a new skill plugin. Use after experiments, debugging sessions, or when you want to preserve team knowledge.
| name | validation-workflow |
| description | GitHub Actions CI for validating skill plugins. Use when setting up CI/CD for a skills marketplace or enforcing plugin quality. |
| user-invocable | false |
CI/CD pipeline for validating skills and auto-generating marketplace.
| Item | Details |
|---|---|
| Date | 2025-12-29 |
| Objective | Automate skill validation and marketplace generation |
| Outcome | Consistent quality, auto-updated discoverability |
CI runs python3 scripts/validate_plugins.py skills/ plugins/ on every PR touching skills/**, plugins/**, templates/**, or scripts/validate_plugins.py.
What it checks (scripts/validate_plugins.py):
.claude-plugin/plugin.json exists with name, version, description^[a-z0-9-]+$---)Run locally before committing:
python3 scripts/validate_plugins.py skills/
On push to main (paths: skills/**, plugins/**), CI runs:
python3 scripts/generate_marketplace.py .claude-plugin/marketplace.json skills/ plugins/
Result is committed with [skip ci] to prevent infinite loops.
Copy from this plugin's scripts/ directory:
validate_plugins.py — PR validationgenerate_marketplace.py — Marketplace generation| Attempt | Why Failed | Lesson |
|---|---|---|
| No validation on PRs | Bad plugins entered registry | Validate before merge |
| Manual marketplace.json edits | Out of sync with actual plugins | Auto-generate on merge |
| Optional failures section | Most valuable info missing | Make it required in validation |
| Single validation script | Hard to debug which check failed | Separate steps in workflow |
| Inline grep validation | Missed edge cases, hard to maintain | Use dedicated validate_plugins.py |
# Validation rules (from validate_plugins.py)
validation:
required_plugin_fields:
- name
- version
- description
min_description_length: 20
description_must_contain: "Use when:"
required_skill_sections:
- "## Failed Attempts"
- "## When to Use"
# Workflow triggers
triggers:
validate_on: pull_request (paths: skills/**, plugins/**, templates/**, scripts/validate_plugins.py)
generate_on: push to main (paths: skills/**, plugins/**)
# Commit message patterns
commits:
marketplace_update: "chore: update marketplace.json [skip ci]"
skip_ci_pattern: "[skip ci]" # Prevent infinite loops