azure/create-package-skill
Interactive wizard that walks service teams through creating a package-specific skill for their Azure SDK package. Scans the package, detects customization patterns, scaffolds a SKILL.md with references, and validates with vally lint. The skill is placed inside the package''s .github/skills/ directory so find-package-skill discovers it automatically. WHEN: create package skill; add service skill; bootstrap skill for package; new package skill; skill for my SDK package; write skill for search; write skill for cosmos.
npx skills add https://github.com/Azure/azure-sdk-for-python --skill create-package-skill
> Minimal beats comprehensive. Human-written beats auto-generated. Scaffold and iterate.
> Skills encode tribal knowledge — the "I wish someone had told me" stuff that's hard to learn from just reading code. Focus on what's non-obvious and package-specific.
CONFIRM Protocol (asset-producing steps — creating files):
DECIDE Protocol (informational/correction steps — no files created):
One question at a time. Respect "skip" — never re-ask or defer.
Run each phase in order. Progressive loading: Read only the current phase file.
| Phase | Description | Instructions |
|---|---|---|
| Phase 0 | 🧭 Scan Package — detect architecture, customizations, key files | phases/00-scan-package.md |
| Phase 1 | 📝 Scaffold SKILL.md — generate skill with common pitfalls, architecture, workflow | phases/01-scaffold-skill.md |
| Phase 2 | 📚 Generate References — create architecture.md and customization.md | phases/02-generate-references.md |
| Phase 3 | ✅ Validate — run vally lint | phases/03-validate.md |
| Phase 4 | 📋 Finalize — confirm discoverable location, summarize | phases/04-finalize.md |
Content:
AGENTS.md or shared skills.Relationship to existing SDK tools:
azsdk_package_generate_code, azsdk_package_build_code, etc.) and the sdk-workflow shared skill — they do NOT replace them.npm run generate:client", not custom generation steps).Structure:
sdk/<service>/<package>/.github/skills/<skill-name>/name field in frontmatter (vally lint enforces this).Security:
generated/ directly — always route through the customization workflow or TypeSpec decorators.Our eval showed that skill structure matters more than volume:
| Pattern | Impact |
|---|---|
| "Common Pitfalls" section at the TOP | Agent reads pitfalls before analyzing errors → correct diagnosis |
| "Check X FIRST" directives | Changes agent default from "fix the error location" to "check the customization layer" |
| Error categorization tables | Gives agent a decision framework, not just procedures |
| generated/ vs src/ distinction | Agent knows which files are safe to edit and which will be overwritten |
Take azure/create-package-skill from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.