Zakira.Imprint
Distribute AI Skills via NuGet packages. Ship SKILL.md files for GitHub Copilot, Claude, Cursor, Roo Code, OpenCode, Windsurf, and other AI assistants as easily as shipping a library.
What is Imprint?
Imprint enables distributing AI Skills (like SKILLS.md files) via NuGet packages. Think of it like how Roslyn Analyzers are distributed - you install a package, build your project, and the AI skills are automatically deployed to your AI assistants.
How It Works
- Package authors create NuGet packages containing skill files and optional MCP server configurations
- Developers install these packages via
dotnet add package - On build, skills are automatically copied to each AI agent’s native directory
- AI assistants immediately have access to the new capabilities
dotnet add package Contoso.Skills.AzureSecurity
dotnet build
# Skills are now available in GitHub Copilot, Claude, Cursor, Roo Code, OpenCode, and Windsurf!
Key Features
Multi-Agent Support
Imprint automatically detects and targets multiple AI assistants simultaneously:
| Agent | Skills Directory | MCP Config |
|---|---|---|
| GitHub Copilot | .github/skills/ | .vscode/mcp.json |
| Claude | .claude/skills/ | .claude/mcp.json |
| Cursor | .cursor/rules/ | .cursor/mcp.json |
| Roo Code | .roo/rules/ | .roo/mcp.json |
| OpenCode | .opencode/skills/ | opencode.json |
| Windsurf | .windsurf/rules/ | .windsurf/mcp.json |
Zero Configuration
Auto-detection means you don’t need to configure anything. Imprint scans your project for agent directories and targets all detected agents automatically.
MCP Server Distribution
Packages can include Model Context Protocol (MCP) server configurations that are automatically merged into your AI assistant’s config:
{
"servers": {
"azure-mcp-server": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@azure/mcp-server"]
}
}
}
Opt-In / Opt-Out Control
Full control over which skills are installed:
Package authors can make skills opt-in by default:
<PropertyGroup>
<ImprintEnabledByDefault>false</ImprintEnabledByDefault>
</PropertyGroup>
Consumers can enable or disable any package’s skills:
<PackageReference Include="SomePackage" Version="1.0.0">
<ImprintEnabled>false</ImprintEnabled> <!-- Disable this package's skills -->
</PackageReference>
Consumer settings always take priority over package defaults. See the Configuration Reference for details.
Two Package Patterns
Skills-Only Packages
Distribute AI guidance without any runtime code. Perfect for:
- Organization coding standards
- Security best practices
- Framework guidelines
Code + Skills Packages
Ship a library AND AI skills together. When developers install your library, they get both the code and the AI guidance on how to use it.
Quick Example
Creating a Skill Package
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<IncludeBuildOutput>false</IncludeBuildOutput>
<DevelopmentDependency>true</DevelopmentDependency>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Zakira.Imprint.Sdk" Version="1.0.0-preview">
<PrivateAssets>compile</PrivateAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Imprint Include="skills\**\*" />
</ItemGroup>
</Project>
The Skill File
<!-- skills/security/SKILL.md -->
# Security Best Practices
When writing authentication code:
- Always use parameterized queries
- Never store passwords in plain text
- Use HTTPS for all API calls
- Validate all user input
Consuming the Package
dotnet add package MyOrg.Skills.Security
dotnet build
After build, the skill is available at:
.github/skills/security/SKILL.md(Copilot).claude/skills/security/SKILL.md(Claude).cursor/rules/security/SKILL.md(Cursor).roo/rules/security/SKILL.md(Roo Code).opencode/skills/security/SKILL.md(OpenCode).windsurf/rules/security/SKILL.md(Windsurf)
Use Cases
Organization Standards: Package your coding standards, architectural patterns, and best practices as skills that AI assistants can reference.
Framework Guidance: Ship your SDK or library with AI skills that teach developers how to use it correctly.
Team Knowledge: Capture tribal knowledge and domain expertise as distributable AI skills.
Getting Help
- Getting Started Guide - First steps with Imprint
- Concepts - Understand how Imprint works
- Guides - Step-by-step tutorials
- Reference - Complete configuration reference
- Troubleshooting - Common issues and solutions
Quick Reference
| Topic | Description |
|---|---|
| Opt-In/Opt-Out | Control which skills are enabled per-package |
| Agent Detection | Configure which AI agents receive skills |
| Skill Prefixing | Avoid naming conflicts between packages |
| MCP Configuration | Distribute MCP server configs with packages |
| Package Patterns | Skills-only vs Code+Skills packages |
License
Zakira.Imprint is distributed under the MIT License.