Manage artifact metadata, versioning, ownership, and history tracking.
Manages artifact metadata, tracks versions and ownership, and records history for SDLC and marketing artifacts.
/plugin marketplace add jmagly/aiwg/plugin install utils@aiwgThis skill inherits all available tools. When active, it can use any tool Claude has access to.
scripts/artifact_metadata.pyManage artifact metadata, versioning, ownership, and history tracking.
This skill provides consistent metadata management for all SDLC and marketing artifacts. It tracks ownership, versioning, review history, and status across the artifact lifecycle.
When triggered, this skill:
Locates or creates metadata:
metadata.json alongside artifactUpdates metadata fields:
Tracks history:
Validates relationships:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": ["artifact_id", "name", "type", "version", "status", "owner"],
"properties": {
"artifact_id": {
"type": "string",
"description": "Unique identifier (e.g., SAD-001, UC-003)"
},
"name": {
"type": "string",
"description": "Human-readable artifact name"
},
"type": {
"type": "string",
"enum": ["requirements", "architecture", "test", "security", "deployment", "marketing", "report"]
},
"version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+$",
"description": "Semantic version"
},
"status": {
"type": "string",
"enum": ["draft", "review", "approved", "baselined", "deprecated"]
},
"owner": {
"type": "string",
"description": "Primary owner (agent name or user)"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"baselined": {
"type": "string",
"format": "date-time"
},
"reviewers": {
"type": "array",
"items": {"type": "string"}
},
"history": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {"type": "string"},
"date": {"type": "string", "format": "date-time"},
"author": {"type": "string"},
"summary": {"type": "string"}
}
}
},
"reviews": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reviewer": {"type": "string"},
"date": {"type": "string", "format": "date-time"},
"outcome": {"type": "string", "enum": ["approved", "conditional", "rejected"]},
"comments": {"type": "string"}
}
}
},
"traceability": {
"type": "object",
"properties": {
"requirements": {"type": "array", "items": {"type": "string"}},
"parent": {"type": "string"},
"children": {"type": "array", "items": {"type": "string"}}
}
},
"tags": {
"type": "array",
"items": {"type": "string"}
}
}
}
User: "Create metadata for the SAD"
Skill creates:
.aiwg/architecture/sad/metadata.json
{
"artifact_id": "SAD-001",
"name": "Software Architecture Document",
"type": "architecture",
"version": "0.1.0",
"status": "draft",
"owner": "architecture-designer",
"created": "2025-12-08T14:30:00Z",
"modified": "2025-12-08T14:30:00Z",
"reviewers": [],
"history": [],
"reviews": []
}
User: "Version the SAD to 1.0.0 with summary 'Initial baseline'"
Skill updates:
- version: "1.0.0"
- status: "baselined"
- baselined: "2025-12-08T16:45:00Z"
- history: [adds entry with version, date, summary]
User: "Record security-architect review as approved"
Skill updates:
- reviews: [adds review record]
- reviewers: [adds "security-architect" if not present]
- modified: [updates timestamp]
User: "Who owns the test plan?"
Skill responds:
"Test Plan (TP-001) is owned by test-architect.
Status: review
Version: 0.3.0
Last modified: 2025-12-07
Reviewers: security-auditor, requirements-analyst"
draft → review → approved → baselined
↑ ↓
└── rejected (returns to draft)
baselined → deprecated (end of life)
| From | To | Triggered By |
|---|---|---|
| draft | review | Submit for review |
| review | approved | All reviewers approve |
| review | draft | Any reviewer rejects |
| approved | baselined | Formal baseline action |
| baselined | deprecated | Superseded or retired |
| Change Type | Version Bump |
|---|---|
| Typo fix | patch (0.0.x) |
| Section update | minor (0.x.0) |
| Structure change | major (x.0.0) |
| Initial baseline | 1.0.0 |
| Type | ID Prefix | Location |
|---|---|---|
| requirements | UC-, REQ-, NFR- | .aiwg/requirements/ |
| architecture | SAD-, ADR-, API- | .aiwg/architecture/ |
| test | TP-, TC-, TS- | .aiwg/testing/ |
| security | TM-, SEC- | .aiwg/security/ |
| deployment | DP-, RN- | .aiwg/deployment/ |
| marketing | CB-, CA- | .aiwg/marketing/ |
| report | RPT- | .aiwg/reports/ |
# Create metadata for artifact
python artifact_metadata.py --create --artifact ".aiwg/architecture/sad.md" --type architecture
# Update version
python artifact_metadata.py --version "1.0.0" --artifact ".aiwg/architecture/sad.md" --summary "Initial baseline"
# Record review
python artifact_metadata.py --review --artifact ".aiwg/architecture/sad.md" \
--reviewer "security-architect" --outcome "approved" --comments "LGTM"
# Query metadata
python artifact_metadata.py --query --artifact ".aiwg/architecture/sad.md"
# List all artifacts by status
python artifact_metadata.py --list --status "review"
# Validate all metadata
python artifact_metadata.py --validate-all
This skill integrates with:
artifact-orchestration: Sets initial metadata when creating artifactsgate-evaluation: Checks artifact status for gate criteriatraceability-check: Uses traceability links in metadatatemplate-engine: Copies metadata template on instantiation{artifact-dir}/metadata.json{artifact-dir}/{artifact-name}.metadata.json.aiwg/reports/artifact-index.jsonschemas/artifact-metadata.schema.jsonSearch, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.