Expand description
§aigent
A Rust library for managing AI agent skill definitions (SKILL.md files).
Implements the Anthropic agent skill specification with validation, prompt generation, and skill building capabilities.
§Quick Start
use std::path::Path;
// Validate a skill directory
let diags = aigent::validate(Path::new("my-skill"));
let has_errors = diags.iter().any(|d| d.is_error());
// Read skill properties
let props = aigent::read_properties(Path::new("my-skill")).unwrap();
println!("{}", props.name);Re-exports§
pub use assembler::assemble_plugin;pub use assembler::AssembleOptions;pub use assembler::AssembleResult;pub use assembler::AssembleWarning;pub use conflict::detect_conflicts;pub use conflict::detect_conflicts_with_threshold;pub use fixer::apply_fixes;pub use formatter::diff_skill;pub use formatter::format_content;pub use formatter::format_skill;pub use formatter::FormatResult;pub use linter::lint;pub use parser::find_skill_md;pub use parser::parse_frontmatter;pub use parser::parse_optional_frontmatter;pub use parser::read_body;pub use parser::read_properties;pub use parser::CLAUDE_CODE_KEYS;pub use parser::KNOWN_KEYS;pub use plugin::validate_agent;pub use plugin::validate_command;pub use plugin::validate_cross_component;pub use plugin::validate_hooks;pub use plugin::validate_manifest;pub use plugin::PluginManifest;pub use prompt::collect_skills;pub use prompt::collect_skills_verbose;pub use prompt::estimate_tokens;pub use prompt::format_budget;pub use prompt::format_entries;pub use prompt::to_prompt;pub use prompt::to_prompt_format;pub use prompt::PromptFormat;pub use prompt::SkillEntry;pub use scorer::score;pub use scorer::ScoreResult;pub use structure::validate_structure;pub use test_runner::format_text as format_test_suite;pub use test_runner::generate_fixture;pub use test_runner::run_test_suite;pub use test_runner::MatchStrength;pub use test_runner::TestSuiteResult;pub use tester::test_skill;pub use tester::TestResult;pub use validator::discover_skills;pub use validator::discover_skills_verbose;pub use validator::known_keys_for;pub use validator::validate;pub use validator::validate_metadata;pub use validator::validate_metadata_with_target;pub use validator::validate_with_target;pub use validator::DiscoveryWarning;
Modules§
- assembler
- Skill-to-plugin assembly: packages skills into Claude Code plugins. Skill-to-plugin assembly: packages skill directories into a Claude Code plugin.
- builder
- Skill builder: deterministic and LLM-enhanced skill generation.
- conflict
- Cross-skill conflict detection for skill collections. Cross-skill conflict detection for skill collections.
- diagnostics
- Structured diagnostics for validation, linting, and error reporting. Structured diagnostics for validation, linting, and error reporting.
- errors
- Error types for skill operations.
- fixer
- Auto-fix application for fixable diagnostics. Auto-fix application for fixable diagnostics.
- formatter
- SKILL.md formatting: canonical key ordering and markdown cleanup. SKILL.md formatting: canonical key ordering, consistent quoting, and markdown cleanup.
- linter
- Semantic lint checks for skill quality improvement. Semantic lint checks for SKILL.md quality improvement.
- models
- Data model for SKILL.md frontmatter properties.
- parser
- SKILL.md frontmatter parser.
- plugin
- Plugin ecosystem validation: manifest, hooks, agents, commands. Plugin ecosystem validation: hooks, agents, commands, manifest, and cross-component consistency.
- prompt
- Multi-format prompt generation for LLM injection.
- scorer
- Quality scoring for skill best-practices compliance. Quality scoring for SKILL.md files.
- structure
- Directory structure validation for skill packages. Directory structure validation for skill packages.
- test_
runner - Fixture-based skill testing: run test suites defined in
tests.yml. Fixture-based skill testing: run test suites defined intests.yml. - tester
- Skill tester and previewer for evaluation-driven development. Skill tester and previewer for evaluation-driven development.
- validator
- Skill directory and metadata validator.
Structs§
- Build
Result - Result of skill generation.
- Clarity
Assessment - Clarity assessment result.
- Diagnostic
- A structured diagnostic message from validation or linting.
- Skill
Properties - Parsed properties from a SKILL.md frontmatter.
- Skill
Spec - User input for skill generation.
Enums§
- Aigent
Error - Errors that can occur during skill operations.
- Severity
- Severity of a diagnostic message.
- Skill
Template - Skill template variant for
initandbuild. - Validation
Target - Validation target profile for controlling which fields are considered known.
Traits§
- LlmProvider
- Trait for LLM text generation providers.
Functions§
- assess_
clarity - Evaluate if a purpose description is clear enough for autonomous generation.
- build_
skill - Build a complete skill from a specification.
- derive_
name - Derive a kebab-case skill name from a natural language description.
- init_
skill - Initialize a skill directory with a template SKILL.md.
- interactive_
build - Run an interactive build session, prompting for confirmation at each step.
- is_
regular_ file - Returns
trueif the path is a regular file (not a symlink).
Type Aliases§
- Result
- Convenience alias for
Result<T, AigentError>.