Skip to content

Core Concepts ​

The .skillr/ Directory ​

Every project managed by Skillr has a .skillr/ directory at its root. This directory is the single source of truth for all AI skills in that project.

my-project/
  .skillr/
    skills/
      code-review.md
      testing-strategy.md
      api-design.md

Skills are stored as plain Markdown files with YAML frontmatter. They are human-readable, version-controllable, and portable across machines.

All provider-specific config files (.claude/CLAUDE.md, .cursor/rules/*.mdc, etc.) are derived outputs. You never edit them directly -- Skillr generates them from .skillr/skills/ when you run a sync.

Skills ​

A skill is a reusable AI prompt with structured metadata. It consists of two parts:

  1. Frontmatter -- YAML metadata (name, description, model, tags, tools, etc.)
  2. Body -- Markdown text that becomes the system prompt or instruction set
markdown
---
id: code-review
name: Code Review Standards
description: Enforces team code review conventions
tags: [quality, review]
model: claude-sonnet-4-6
max_tokens: 4096
---

You are a code reviewer. When reviewing pull requests, follow these standards:

- Check for proper error handling
- Verify test coverage for new code paths
- Flag security concerns as high priority

Skills are scoped to a project. Slugs (auto-generated from the name) must be unique within a project but can repeat across projects.

See Creating Skills and the Skill File Format for the full specification.

Agents ​

Agents are pre-defined roles that combine a base persona with custom per-project instructions and assigned skills. Skillr ships with 9 agents:

  • Orchestrator -- Coordinates multi-agent workflows
  • PM Agent -- Requirements, user stories, planning
  • Architect Agent -- System design, API contracts
  • QA Agent -- Testing, edge cases, code review
  • Design Agent -- UI/UX, accessibility, design systems
  • Code Review Agent -- Code quality, security, performance
  • Infrastructure Agent -- Docker, Kubernetes, DevOps
  • CI/CD Agent -- GitHub Actions, GitLab CI pipelines
  • Security Agent -- OWASP Top 10, vulnerability auditing

You enable agents per project, add custom instructions, and assign skills. The Agent Compose system merges everything into a single output that gets included in provider sync.

Provider Sync ​

Provider sync takes your skills and composed agents and writes them into the native config format that each AI coding assistant expects.

ProviderOutput PathFormat
Claude.claude/CLAUDE.mdAll skills under H2 headings
Cursor.cursor/rules/{slug}.mdcOne MDC file per skill
GitHub Copilot.github/copilot-instructions.mdAll skills concatenated
Windsurf.windsurf/rules/{slug}.mdOne file per skill
Cline.clinerulesSingle flat file
OpenAI.openai/instructions.mdAll skills concatenated

Sync is always explicit -- it never runs automatically when you save a skill. This gives you full control over when changes propagate to provider configs.

See Provider Sync for details on configuring and running syncs.

Versions ​

Every time you save a skill, Skillr creates a version snapshot. You can browse the full history, compare any two versions side-by-side with a diff viewer, and restore a previous version with one click.

See Version History.

Projects ​

A project maps to a directory on your filesystem. It holds:

  • A collection of skills (stored in .skillr/skills/)
  • Provider configuration (which providers are enabled)
  • Agent configuration (which agents are active, custom instructions, skill assignments)
  • Optional settings like git_auto_commit

Projects are created and configured in the Filament Admin panel. Day-to-day skill editing happens in the React SPA.

How the Pieces Fit Together ​

You edit skills in the React SPA (Monaco editor)
    |
    v
Skills are saved to the database AND written to .skillr/skills/*.md
    |
    v
You click "Sync" (or "Preview Sync" first)
    |
    v
ProviderSyncService reads all skills + composes all enabled agents
    |
    v
Each enabled provider driver writes its native config format
    |
    v
Your AI coding assistant picks up the updated config

Released under the MIT License.