| title | Meta Agent v2.0 — Frequently Asked Questions | |
|---|---|---|
| description | 50+ questions and answers about Meta Agent v2.0, covering setup, usage, configuration, troubleshooting, and advanced topics. | |
| file_type | documentation | |
| category | documentation | |
| status | active | |
| language | en | |
| owners |
|
Answers to common questions about Meta Agent v2.0.
Meta Agent v2.0 is an intelligent documentation metadata validator for LightSpeed projects. It automatically detects your repository type (WordPress plugin, theme, or control-plane) and applies context-specific validation rules to ensure consistent, high-quality documentation frontmatter.
Problems it solves:
- Inconsistent frontmatter across repos
- Manual metadata configuration per repository
- Difficult to maintain documentation standards at scale
- Hard to catch metadata errors before merge
Benefits:
- ✅ Automatic repo type detection (no config needed)
- ✅ Consistent metadata standards across all repos
- ✅ Early error detection (pre-commit hooks)
- ✅ CI/CD integration for automated validation
- ✅ Clear error messages with actionable fixes
| Feature | v1.0 | v2.0 |
|---|---|---|
| Repo types | 1 (generic) | 4 (plugin, theme, control-plane, generic) |
| Auto-detection | ❌ No | ✅ Yes |
| Schemas | Basic | Comprehensive (4 context-specific) |
| Pre-commit hooks | ❌ No | ✅ Yes |
| CI/CD integration | ❌ No | ✅ Yes |
| Tests | 20 | 116 |
| Documentation | Minimal | Comprehensive (guides, troubleshooting, FAQ) |
- ✅ WordPress Block Plugins (block.json)
- ✅ WordPress Block Themes (theme.json + style.css)
- ✅ Control-Plane Repositories (.github governance)
- ✅ Generic Documentation (any Markdown)
Yes! Meta Agent v2.0 is backward compatible. It validates frontmatter but doesn't modify document content. If your files don't have frontmatter yet, you can add it gradually.
Yes. If you're using v1.0:
- Backup your current configuration
- Install v2.0 alongside v1.0
- Test with
npm run validate -- file.md - Migrate files gradually
- Enable pre-commit hooks when ready
Yes. You can:
- Fork the schemas and modify them
- Add optional fields for your use case
- Create organization-specific variants
See IMPLEMENTATION_GUIDE.md for customization instructions.
- Copy the agent folder to your repo:
cp -r meta-agent .github/agents/ - Install dependencies:
cd .github/agents/meta-agent && npm install - Run tests to verify:
npm test - See IMPLEMENTATION_GUIDE.md for detailed setup
- Node.js: v16.0.0 or higher (v18+ recommended)
- npm: v8.0.0 or higher
- Git: v2.30.0 or higher
- Disk space: ~50MB for node_modules
Yes. Copy the agent to .github/agents/meta-agent at the monorepo root. It will validate files across all packages.
No. Meta Agent v2.0 works completely offline. It uses local JSON schemas for validation.
cd .github/agents/meta-agent
git pull origin main # Or download latest release
npm install
npm testYes. Meta Agent v2.0 is platform-agnostic and runs on Windows, macOS, and Linux.
cd .github/agents/meta-agent
npm run validate -- path/to/file.md# All files in a folder
npm run validate -- "docs/**/*.md"
# All changed files
npm run validate:changed
# Specific pattern
npm run validate -- "README*.md"✅ README.md
├─ Repo type: control-plane
├─ Schema: control-plane.frontmatter.schema.json
└─ Status: VALID (all 7 required fields present)
❌ CONTRIBUTING.md
├─ Repo type: control-plane
├─ Schema: control-plane.frontmatter.schema.json
└─ Errors:
• Field 'category' is required
• Field 'owners' is not valid (must be array)
Yes:
npm run validate -- file.md --json- Single file: <100ms
- 10 files: ~500ms
- 100 files: 2–5 seconds
Yes:
npm run validate:changedThis is useful for PRs to avoid validating the entire repo.
A pre-commit hook automatically validates files before you commit them. If validation fails, the commit is blocked until you fix the issues.
chmod +x scripts/hooks/meta-agent-validate.sh
cp scripts/hooks/meta-agent-validate.sh .git/hooks/pre-commitThen test it:
git add file.md
git commit -m "test" # Hook runs and validates fileYes, use --no-verify:
git commit --no-verify -m "Skip validation"cp scripts/hooks/meta-agent-validate.sh .git/hooks/pre-commit
chmod +x .git/hooks/pre-commitBy default, it validates all staged files. You can configure it to check only changed files for faster commits.
Yes. The hook just validates frontmatter. It works alongside linters and formatters.
Create .github/workflows/meta-agent-validation.yml with:
name: Meta Agent Validation
on:
pull_request:
paths:
- '**.md'
- '.github/agents/meta-agent/**'
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '18'
- run: cd .github/agents/meta-agent && npm ci
- run: cd .github/agents/meta-agent && npm run validate:changedYes. In repository settings:
- Go to Settings → Branches → Branch protection rules
- Check "Require status checks to pass before merging"
- Select "Meta Agent Validation" workflow
Use npm run validate:changed instead of npm run validate to check only modified files. This is 10x faster for large repos.
Yes. Modify the workflow to specify file patterns:
- run: cd .github/agents/meta-agent && npm run validate -- "docs/**/*.md"Yes. Results appear as a check on your PR with ✅ (pass) or ❌ (fail) status.
Frontmatter is YAML metadata at the top of a Markdown file:
---
title: My Document
description: A test
status: active
language: en
---
# Content starts hereIt depends on your repository type:
| Field | Block Plugin | Block Theme | Control-Plane | Generic Docs |
|---|---|---|---|---|
title |
✅ | ✅ | ✅ | ✅ |
description |
✅ | ✅ | ✅ | ✅ |
status |
✅ | ✅ | ✅ | ✅ |
language |
✅ | ✅ | ✅ | ✅ |
file_type |
— | — | ✅ | — |
category |
— | — | ✅ | — |
owners |
— | — | ✅ | — |
draft— Work in progressreview— Under reviewactive— Published and currentarchived— Old, no longer maintained
Currently, only en (UK English) is supported. This ensures consistent documentation language across the organisation.
Just add them to the frontmatter. Meta Agent will validate and include them:
---
title: My Document
description: A test
status: active
language: en
author: John Doe # Optional
tags: # Optional
- tutorial
- beginner
---Yes, use > for line wrapping:
description: >
This is a long description that spans
multiple lines but will be joined into
a single line in the output.Or | to preserve line breaks:
description: |
Line 1
Line 2
Line 3Each schema is tailored to a repository type:
- Block Plugin: Includes plugin-specific fields
- Block Theme: Includes theme-specific fields
- Control-Plane: Includes governance fields
- Generic: General-purpose documentation fields
It checks for these markers in order:
- Block Plugin:
block.jsonexists OR.phpfile has "Block Name" header - Block Theme:
theme.jsonexists ANDstyle.cssexists - Control-Plane:
.github/agents/,.github/workflows/, orAGENTS.mdexists - Generic: Default (used if no markers found)
Create the appropriate marker file:
# For block plugin
touch block.json
# For block theme
touch theme.json
touch style.css
# For control-plane (already exists)
mkdir -p .github/agentsIt defaults to "generic documentation" schema. All generic docs require title, description, status, and language fields.
You can manually specify the schema in the frontmatter:
---
title: My Document
description: A test
status: active
language: en
_schema_override: block-plugin # Force block-plugin schema
---Check:
- Field name spelling (case-sensitive)
- YAML indentation (use spaces, not tabs)
- Field is at top level (not nested inside another field)
Possible causes:
- Different Node.js version in CI (use
actions/setup-node@v3to set v18) - Uncommitted changes not synced
- CI uses different file encoding
Solution:
# Run same validation as CI locally
npm run validate:changedThe hook is quiet by default. To debug:
# Test hook directly
.git/hooks/pre-commit --debugSee Performance Issues in the Troubleshooting guide.
Yes. Fork the schema files and customize them:
{
"properties": {
"title": { "type": "string", "minLength": 3, "maxLength": 200 },
"custom_field": { "type": "string", "description": "My custom field" }
}
}Yes, from JavaScript:
const MetaAgent = require('./index.js');
const agent = new MetaAgent();
const result = agent.validateFile('README.md');
if (result.valid) {
console.log('✅ Valid!');
} else {
console.log('❌ Errors:', result.errors);
}Yes! Open an issue or PR in the repository. We welcome:
- Schema improvements
- New repo types
- Performance optimizations
- Documentation enhancements
Meta Agent v2.0 is maintained by the LightSpeed team. We:
- Release updates monthly
- Accept community contributions
- Provide support via GitHub issues
- Maintain backward compatibility
- Critical bugs: Fixed within 48 hours
- Minor issues: Fixed within 1 week
- Feature requests: Reviewed monthly
Yes! Planned features for v2.1:
- Visual frontmatter editor (web UI)
- Auto-formatting tool
- Bulk validation dashboard
- Custom schema builder UI
Yes. Meta Agent provides migration helpers:
npm run migrate:from-old-format < old-metadata.json > new-frontmatter.ymlKey selling points:
- Saves time: Automatic validation catches errors before review
- Consistent: One standard across all repos
- Clear: Easy-to-understand error messages
- Flexible: Works with existing workflows
- Zero breaking changes: Existing docs still work
Common concerns & responses:
- "Too strict" → Schemas are based on real needs, can be customized
- "Too complex" → Takes 5 minutes to set up, then transparent
- "Another tool?" → Integrates with existing tools, not a replacement
Create a GitHub issue with:
- Steps to reproduce
- Expected vs actual behavior
- System info (Node, OS, npm versions)
- Error output
Open a GitHub issue with "Feature request:" in the title. Include:
- What you want to do
- Why you need it
- How it would help your workflow
- Check this FAQ — Most common questions answered here
- Check TROUBLESHOOTING.md — For errors and debugging
- Check IMPLEMENTATION_GUIDE.md — For setup & usage
- Open an issue — For questions not covered above
- Ask in Slack — #meta-agent channel
- Watch the GitHub repository for releases
- Subscribe to team announcements
- Check the CHANGELOG.md for version history
- 📖 IMPLEMENTATION_GUIDE.md — Setup & usage
- 🔧 TROUBLESHOOTING.md — Common issues & fixes
- 📋 README.md — Architecture & overview
- 💬 GitHub Issues — Report bugs
- 💭 GitHub Discussions — Ask questions
Meta Agent v2.0 — Questions? We've got answers! 🚀
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile