Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Skill Validator Laravel Package

stolt/skill-validator

Parse and validate SKILL.md files (or raw content) against the SKILL.md format specification. Validates single files, entire directories (recursively), or existing SkillMd instances, returning a SkillMd on success or detailed errors on failure.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Standardization of AI Skill Documentation: Enables enforcement of a consistent SKILL.md format across AI agent frameworks, reducing fragmentation in skill definitions and improving developer experience.
  • Automated Quality Gates: Integrates seamlessly into CI/CD pipelines to validate skills before deployment, catching structural issues (e.g., missing fields, invalid YAML) early and reducing runtime failures.
  • Developer Tooling Ecosystem: Powers CLI tools, IDE plugins, or internal developer portals to provide real-time feedback on skill validity, accelerating onboarding and reducing technical debt.
  • Skill Marketplace/Registry: Validates submissions to centralized repositories (e.g., "Skills Directory") to ensure compliance with metadata standards, improving trust and usability for end-users.
  • Build vs. Buy Decision: Eliminates the need to reinvent validation logic for SKILL.md files, leveraging a maintained library with explicit rules (e.g., hyphenated names, required fields) and reducing long-term maintenance costs.
  • Use Cases:
    • AI Agent Frameworks: Validate skills before runtime (e.g., LangChain, CrewAI, or custom agent platforms).
    • Internal Platforms: Enforce skill documentation standards for engineering teams building AI-powered tools.
    • Education/Onboarding: Validate example skills in tutorials, workshops, or documentation repositories.
    • Skill Discovery: Index and validate skills in a searchable directory or marketplace.

When to Consider This Package

  • Adopt if:

    • Your product relies on SKILL.md files for defining AI agent skills or similar structured documentation.
    • You need automated validation of YAML frontmatter and Markdown content against a standardized spec (e.g., Skills Directory).
    • You’re building a skill registry, marketplace, or tooling for AI developers (e.g., validation in CI/CD, developer portals).
    • Your team lacks the bandwidth to maintain custom validation logic for parsing YAML, enforcing field rules, or handling Markdown.
    • You require round-trip validation (e.g., parse → modify → re-validate SkillMd objects) for dynamic skill generation or editing.
    • You’re using PHP/Laravel and can leverage server-side validation (e.g., in APIs, CLI tools, or background jobs).
  • Look elsewhere if:

    • Your skill format differs significantly from SKILL.md (e.g., JSON, custom DSLs, or non-textual definitions).
    • You need real-time validation in a frontend UI (this package is server-side only and requires PHP 8.2+).
    • Your use case involves schema evolution (e.g., backward-compatible changes to the spec)—this package enforces strict rules and may not accommodate flexible validation.
    • Your skills are non-textual (e.g., binary plugins, non-Markdown instructions, or visual workflows).
    • You’re constrained by older PHP versions (<8.2) or non-PHP tech stacks (e.g., Node.js, Python).
    • You require partial validation (e.g., allowing skills to pass even if some optional fields are missing) rather than strict compliance.

How to Pitch It (Stakeholders)

For Executives:

*"This package automates quality control for AI skills, ensuring every skill in our ecosystem adheres to a standardized format before deployment. It acts like a linter for documentation—catching errors like missing fields, invalid YAML, or malformed Markdown before engineers ship broken skills. This reduces technical debt, speeds up CI/CD pipelines, and ensures professional-grade skill documentation across our platform.

Key Outcomes:

  • Fewer runtime errors from poorly formatted skills.
  • Faster onboarding for contributors with automated validation.
  • Consistent, high-quality skill definitions for our marketplace or internal tools.

For example, if we’re building a marketplace for AI agents, this validator would instantly flag invalid submissions, saving hours of manual review. It’s a low-cost, high-impact way to improve the reliability of our skill ecosystem."*


For Engineering Teams:

*"This is a drop-in validator for SKILL.md files that handles the heavy lifting of parsing YAML frontmatter and Markdown, then enforcing rules like:

  • Required fields: name, description, and other mandatory metadata.
  • Syntax validation: Hyphenated names, boolean flags, and structured lists (e.g., tags as arrays).
  • Markdown compliance: Ensures instructions are valid Markdown after the YAML frontmatter.

Why use it?

  • Save time: No need to write custom parsers or regex for YAML/Markdown validation.
  • Integrate easily: Works with files, directories, or raw strings. Outputs structured errors for logging/CLI tools.
  • Extensible: Built on stolt/skill-md, so you can modify validated SkillMd objects and re-validate them (e.g., after edits).
  • Battle-tested: Validates against the Skills Directory spec, a de facto standard for AI skills.

Example Use Cases:

  • Add a pre-commit hook to validate skills before PRs merge.
  • Use validateFromDirectory to scan a /skills folder in CI/CD.
  • Power a CLI tool to list/analyze skills with metadata (e.g., php artisan list:skills).
  • Validate user-uploaded skills in a marketplace API.

Trade-offs:

  • PHP-only: Runs anywhere PHP 8.2+ is available (e.g., Laravel, CLI scripts, APIs).
  • Strict validation: Skills must pass all rules to be considered valid (no partial matches).
  • Limited to SKILL.md: Not suitable for non-Markdown or custom formats.

Getting Started:

composer require stolt/skill-validator

Then integrate into your workflow:

$validator = new \Stolt\Ai\Skill\Validator();
$results = $validator->validateFromDirectory('/path/to/skills');
```*

---
### **For Product Managers**:
*"This package addresses a **hidden friction point** in AI skill development: inconsistent documentation. By standardizing `SKILL.md` files, we can:
1. **Reduce developer frustration** with clear error messages during skill creation.
2. **Improve skill discoverability** in marketplaces with validated metadata.
3. **Lower support costs** by catching issues early (e.g., missing `description` fields).

**Prioritization**:
- **High**: If we’re building a skill marketplace, registry, or tooling for AI developers.
- **Medium**: If we need to enforce documentation standards for internal teams.
- **Low**: If skills are defined in non-textual formats or validated elsewhere.

**Next Steps**:
- Evaluate if `SKILL.md` aligns with our skill format.
- Assess integration points (e.g., CI/CD, CLI, API).
- Prototype validation for a subset of skills to measure impact."*
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
craftcms/url-validator
directorytree/privacy-filter-classifier
directorytree/privacy-filter
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity
testo/bridge-symfony