agentic/code/addons/aiwg-utils/skills/add-skill/SKILL.md
Scaffold a new SKILL.md inside an existing addon or framework
npx skillsauth add jmagly/aiwg add-skillInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Scaffold a new SKILL.md inside an existing addon or framework.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
| Pattern | Example | Action |
|---------|---------|--------|
| Named add | "add skill voice-apply --to voice-framework" | Scaffold directly |
| Description-driven | "create a skill that validates metadata" | Derive name=validate-metadata, prompt target |
| Interactive | "add skill --interactive --to aiwg-utils" | Guided design mode |
| Target omitted | "add skill my-skill" | Ask which addon or framework |
Extract from $ARGUMENTS:
<name> — kebab-case skill name (required)--to <target> — addon or framework directory name (required; skills cannot be added to extensions)--interactive — enable guided design questionsIf either <name> or --to is missing, ask before proceeding.
Note: Skills cannot be added to extensions. Extensions provide language/ecosystem-specific capabilities; skills require standalone, cross-cutting functionality.
Confirm the target addon or framework exists:
# Check addons
ls agentic/code/addons/<target>/
# Check frameworks
ls agentic/code/frameworks/<target>/
If target is an extension directory, explain the constraint and suggest using an addon instead.
Guide through skill design before generating:
references/?aiwg add-skill <name> --to <target>
The generated file needs these sections populated:
---
platforms: [all]
---
# Skill Name
[One-paragraph description of what the skill does and when it activates]
## Triggers
Alternate expressions and non-obvious activations:
- "<phrase>" → <what happens>
- "<phrase>" → <what happens>
## Trigger Patterns Reference
| Pattern | Example | Action |
|---------|---------|--------|
| <category> | "<example>" | <action> |
## Process
### 1. <Step Name>
[Description and any code blocks]
### 2. <Step Name>
[Description]
## Generated Structure (if applicable)
\`\`\`
<what files are created>
\`\`\`
## Output Format
\`\`\`
<what success output looks like>
\`\`\`
## Examples
### Example 1: <scenario>
**User**: "<trigger phrase>"
**Extraction**: <what was parsed>
**Action**: <what runs>
**Result**: <what happens>
## References
- @path/to/related/file — description
If the skill references supporting documentation:
mkdir -p <target>/skills/<name>/references/
# Create reference files as needed
The CLI tool updates <target>/manifest.json. Verify:
{
"skills": ["existing-skill", "<name>"]
}
<target>/skills/<name>/
├── SKILL.md # Main skill definition
└── references/ # Supporting documentation (optional)
Manifest updated: <target>/manifest.json
Skill Created: <name>
─────────────────────
Location: <target>/skills/<name>/
Created:
✓ SKILL.md
✓ references/ (placeholder)
Manifest updated: <target>/manifest.json
Next Steps:
1. Edit SKILL.md trigger phrases
2. Write execution process steps
3. Add reference materials (if needed)
4. Test with natural language: "<trigger phrase>"
User: "add skill lint-manifests --to aiwg-utils"
Action:
aiwg add-skill lint-manifests --to aiwg-utils
Result: agentic/code/addons/aiwg-utils/skills/lint-manifests/SKILL.md scaffolded with standard platform frontmatter and section stubs.
User: "create a skill voice-apply --to voice-framework --interactive"
Process: Guided questions establish trigger phrases ("apply voice", "write in X voice"), process steps (identify voice, load profile, transform), and reference materials needed (voice profile templates).
Result: agentic/code/addons/voice-framework/skills/voice-apply/SKILL.md plus references/ directory.
User: "scaffold skill requirement-tracer --to sdlc-complete"
Action:
aiwg add-skill requirement-tracer --to sdlc-complete
data-ai
Report which research-corpus radar sidecars are overdue for refresh. Computes staleness (days since last refresh vs the cadence window) for every radar, sorted most-overdue-first. Runs via `aiwg corpus radar-status`.
data-ai
Aggregate research-corpus radar sidecars into a corpus or per-cluster freshness report — totals, overdue count, per-cluster / per-GRADE / per-trajectory breakdowns, an overdue table, and per-radar rationale snippets. Runs via `aiwg corpus radar-report`.
testing
Scaffold radar/freshness sidecars for research-corpus REFs. Pulls title/authors from the citation sidecar and GRADE from the analysis doc, defaults the refresh cadence from GRADE and the cluster from a corpus-local map, and stamps documentation/radar/REF-XXX-radar.md. Runs via `aiwg corpus radar-init`.
data-ai
Compute an entity's publication trajectory — per-year paper counts, topic drift, hot-streak detection (≥3 consecutive A-grade years), and career phase. Runs via `aiwg corpus profile-temporal`.