agent-loop-ext
Crash-resilient external agent loop with state persistence and CI/CD integration
Validate AIWG extension definitions against the metadata schema and report errors with field names, line numbers, and remediation hints
$ npx -y skills add jmagly/aiwg --skill validate-metadata --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/validate-metadataContext preview
The summary Claude sees to decide when to auto-load this skill.
Validate AIWG extension definitions against the metadata schema and report errors with field names, line numbers, and remediation hints
namespace: aiwg name: validate-metadata platforms: [all] description: Validate AIWG extension definitions against the metadata schema and report errors with field names, line numbers, and remediation hints
You validate all AIWG extension definitions (agents, skills, commands, behaviors) against the metadata schema. You report errors with field names, line numbers, and remediation hints — and return a clean pass/fail summary.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
| Pattern | Example | Action | |---------|---------|--------| | Validate request | "validate metadata" | Run `aiwg validate-metadata` | | Check request | "check metadata" | Run `aiwg validate-metadata` | | Validate extensions | "validate extensions" | Run `aiwg validate-metadata` | | Quality check | "metadata quality" | Run `aiwg validate-metadata` | | Single file | "validate this agent file" | Run `aiwg validate-metadata <path>` | | Directory-scoped | "validate just security skills" | Run `aiwg validate-metadata --recursive agentic/code/frameworks/security-engineering/skills` | | CI mode | "validate metadata for CI" | Run `aiwg validate-metadata --ci --format json --strict` |
When triggered:
1. **Extract intent**:
2. **Run the appropriate command**:
# Default: validate all extensions aiwg validate-metadata # Recursive validation of a directory aiwg validate-metadata --recursive agentic/code/frameworks/security-engineering/skills # Strict CI output aiwg validate-metadata --ci --format json --strict # Validate a single file aiwg validate-metadata agentic/code/addons/aiwg-utils/skills/my-skill/SKILL.md
3. **Report the result** — list all errors with field, location, and fix hint; summarize pass/fail count.
| Check | Description | |-------|-------------| | Required fields | `id`, `name`, `description`, `platforms` present | | ID format | Lowercase, hyphen-separated, no spaces | | Version format | CalVer (`YYYY.M.PATCH`) for versioned extensions | | Trigger phrases | At least one trigger phrase defined per skill | | Tool declarations | Tools listed in `allowedTools` are valid AIWG tools | | Platform list | All platforms are valid (`claude-code`, `hermes`, `openclaw`, etc.) | | Handler path | `handler` field points to an existing file (for commands) | | Duplicate IDs | No two extensions share the same ID |
Errors are reported in this format:
ERROR skills/my-skill/SKILL.md:12 missing required field: `id`
Fix: Add `id: my-skill` to the YAML frontmatter
WARN agents/my-agent/AGENT.md:3 version format invalid: `1.0.0`
Fix: Use CalVer format: `2026.4.0`
PASS commands/my-command/COMMAND.md**User**: "Run metadata validation before I tag the release"
**Extraction**: Full validation, no scope restriction
**Action**:
aiwg validate-metadata
**Response**: "Validated 47 extension definitions. 45 passed. 2 errors found:
**User**: "Check only the security-engineering skills metadata"
**Extraction**: Directory-scoped to security-engineering skills
**Action**:
aiwg validate-metadata --recursive agentic/code/frameworks/security-engineering/skills
**Response**: "Validated 38 skill definitions. All passed."
**User**: "Is this agent definition valid?" (with path provided)
**Extraction**: Single file path
**Action**:
aiwg validate-metadata agentic/code/addons/aiwg-utils/skills/new-skill/SKILL.md
**Response**: "1 error: missing required field `id` in frontmatter (line 3). Add `id: new-skill` to fix."
**Action**:
aiwg validate-metadata --ci --format json --strict
**Output**:
{
"total": 47,
"passed": 45,
"failed": 2,
"errors": [
{ "file": "skills/soul-blend/SKILL.md", "line": 4, "field": "platforms", "message": "platforms list is empty" }
]
}Reusable project context and specialist workflows for the AI tools you already use. Plan software, coordinate specialist reviews, prepare campaigns, investigate incidents, organize research, curate media, and maintain operational knowledge.
Repo: jmagly/aiwg
Crash-resilient external agent loop with state persistence and CI/CD integration
Detect requests for iterative autonomous agent loops and route to the appropriate loop executor
Automatically execute tests when code-generating agents modify source files, enforcing the execute-before-return pattern
Enable agent loops to learn from similar past tasks and share patterns across loops
Query and manage the executable feedback debug memory
Execute tests on generated code and iterate until passing