UNPKG

aiwg

Version:

Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platfo

75 lines (74 loc) 3.02 kB
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://aiwg.io/schemas/contributors/research.schema.json", "title": "Research Contributor", "description": "Frontmatter schema for `<framework>/research/contributor.md` files. Consumed by `best-practices-audit` (and any other `kind: research` aggregator) to expand the research fan-out plan with framework-specific focus areas, source preferences, and recency defaults. Runtime authority is the zod schema in src/contributors/validation.ts; this JSON Schema serves as published documentation.", "type": "object", "required": ["kind", "domain", "description", "detect", "focus_areas"], "additionalProperties": true, "properties": { "kind": { "const": "research", "description": "Discriminator. Must be the literal `research`." }, "domain": { "type": "string", "minLength": 1, "description": "Human-readable name of the domain this contributor researches (e.g. 'SDLC artifacts', 'Marketing campaigns')." }, "description": { "type": "string", "minLength": 1, "description": "One-line description of what this contributor researches." }, "detect": { "type": "object", "required": ["glob"], "additionalProperties": false, "description": "Declarative detection spec — the framework is in scope for research only when these globs match.", "properties": { "glob": { "type": "array", "minItems": 1, "items": { "type": "string" } }, "minCount": { "type": "integer", "minimum": 1 }, "conditions": { "type": "object", "additionalProperties": { "type": "string" } } } }, "focus_areas": { "type": "array", "minItems": 1, "items": { "type": "string" }, "description": "Focus areas this contributor's domain emphasizes during research (e.g. 'security', 'performance'). The audit's `--focus` flag intersects with this list." }, "sources": { "type": "object", "additionalProperties": false, "description": "Source class preferences applied during research fan-out. Used together with --sources / --exclude on the audit command.", "properties": { "preferred": { "type": "array", "items": { "type": "string" }, "description": "Preferred source classes (e.g. 'ietf', 'w3c', 'owasp', 'vendor-docs')." }, "exclude": { "type": "array", "items": { "type": "string" }, "description": "Explicitly excluded source classes (e.g. 'seo-spam', 'ai-content-farms')." } } }, "recency_default_months": { "type": "integer", "minimum": 1, "description": "Default recency window in months. Applied when the user does not specify --recency. Tighter for fast-moving domains (e.g. 6 for frontend frameworks); wider for compliance/legal (e.g. 36)." } } }