Portable Expertisefor Any AI Agent.
Give agents modular, reusable capabilities using the open Agent Skills standard. Write a SKILL.md once and use it everywhere. Skills from Cursor, GitHub Copilot, and VS Code work out of the box with LM-Kit.NET.
--- name: code-reviewer description: Review code for quality, security, and best practices license: Apache-2.0 metadata: author: lm-kit version: "1.0" tags: [code, review, security] --- # Code Review Skill When reviewing code, follow these guidelines: ## Security - Check OWASP Top 10 vulnerabilities - Validate all input boundaries ## Quality - Follow patterns in references/style-guide.md - Verify error handling completeness
Portable Expertise for Any Agent
Agent Skills are self-contained folders containing instructions, scripts, and resources that agents discover and load dynamically. Each skill is defined by a SKILL.md file with YAML frontmatter for metadata and Markdown for instructions. Skills can include reference files, templates, and scripts that agents use to perform specialized tasks.
Skills use progressive disclosure to keep context windows efficient. At startup, agents load only the skill name and description from the YAML frontmatter. Full Markdown instructions and associated resources load only when a skill activates, minimizing token usage across large registries.
LM-Kit.NET implements the agentskills.io specification, ensuring your skills are compatible across any platform that supports the standard. Write a SKILL.md once and use it everywhere.
YAML + Markdown Format
Each skill is a SKILL.md file. YAML frontmatter holds metadata (name, description, tags). Markdown body contains the agent instructions.
Progressive Disclosure
At startup, only skill name and description load. Full instructions and resources activate on demand, keeping context windows efficient.
Local or Remote
Load skills from local directories, URLs, ZIP archives, or GitHub repositories. Fetch community skills and update them dynamically.
Hot Reload
SkillWatcher monitors your skill directories. Edit a SKILL.md and changes reflect instantly without restarting the agent.
How Skills Work
The complete skill lifecycle, from discovery through hot-reload during development.
SkillRegistry
Central registry for skill discovery, matching, and lifecycle management. Load from directories or remote URLs.
SkillParser
Parse SKILL.md files with YAML frontmatter and Markdown instructions following the agentskills.io spec.
SkillWatcher
Hot-reload skills during development. Changes to SKILL.md files are detected and reloaded automatically.
SkillRemoteLoader
Load skills from URLs, ZIP archives, or GitHub repositories. Fetch community skills directly.
Skills in Action
Load, build, and register skills with just a few lines of C#.
using LMKit.Agents.Skills; // Load all SKILL.md files from a directory var registry = new SkillRegistry(); registry.LoadFromDirectory("./skills"); // List available skills foreach (var skill in registry.Skills) { Console.WriteLine($"{skill.Name}: {skill.Description}"); } // Find a specific skill var codeReview = registry.FindByName("code-reviewer"); Console.WriteLine($"Found: {codeReview.Name}");
using LMKit.Agents.Skills; // Build a skill programmatically var skill = new SkillBuilder() .WithName("api-tester") .WithDescription("Test REST APIs and validate responses") .WithInstruction(@" When testing APIs: 1. Validate request parameters 2. Check response status codes 3. Verify response body schema ") .WithResource("references/openapi-spec.json") .Build();
using LMKit.Model; using LMKit.Agents; using LMKit.Agents.Skills; using LM model = LM.LoadFromModelID("qwen3:8b"); var registry = new SkillRegistry(); registry.LoadFromDirectory("./skills"); // Create agent with skills var agent = Agent.CreateBuilder(model) .WithSkills(registry) .WithPlanning(PlanningStrategy.ReAct) .Build(); // Agent activates skills based on the task var result = await agent.ExecuteAsync( "Review this pull request for security issues"); // Activates "code-reviewer" skill automatically
Key API Classes
The building blocks for skill-powered agents in LM-Kit.NET.
AgentSkill
Modular capability with instructions, metadata, and optional resources.
SkillActivator
Handles activation and context injection for conversations.
SkillBuilder
Fluent builder for creating skills programmatically in code.
SkillContext
Encapsulates activation info, user context, and available resources.
SkillResource
Scripts, templates, and reference files loaded lazily on demand.
SkillTool
ITool implementation exposing skills to models with progressive disclosure.
Demo Applications
Explore ready-to-run examples that showcase Agent Skills in real scenarios.
Skill-Based Assistant
SkillsLoad SKILL.md files, register skills with SkillRegistry, switch between Code Reviewer, Technical Writer, and Data Analyst skills at runtime.
Tool Calling Assistant
ToolsDynamic function invocation with [LMFunction] attribute alongside skill-based capabilities.
Research Assistant
AgentSupervisor pattern using skills to define research methodologies and output formats.
Persistent Memory Assistant
MemoryCombine skills with persistent memory for long-running assistant workflows.
How-To Guides
Step-by-step tutorials to get started with skills and agents.
Glossary
Key concepts for understanding agent skills and orchestration.
Give Your Agents Superpowers with Skills
Start building skill-powered agents today with LM-Kit.NET. Load community skills, create your own, and compose modular AI workflows.