Agent Skills manager for Claude Code, Kiro, Codex, Cursor and more

Your team's agent skills, in every repository.

Keep skills in one git registry. Every project installs the ones it needs, pinned to an exact version.

One skills registry feeding every repository of a team registry web/ api/ mobile/ billing/ search/ auth/ infra/ data/ docs/
brew install --cask polarity-dev/tap/mestiere

Get started Install mestiere

v1.0.0 · macOS and Linux · free and open source on GitHub

How it works

  1. Keep skills in a registry

    A registry is a plain git repository of Agent Skills, grouped in namespaces like frontend or backend. Review skills like any other code.

  2. Install them in each project

    mestiere add frontend copies the skills into .agents/skills/ and locks each one to a registry commit in skills.yaml.

  3. Every agent sees them

    Codex, Gemini CLI, Cursor and Copilot read .agents/skills/ directly; Claude Code and Kiro get links in their own folders. Teammates and CI run mestiere sync and get the same files.

Quick start

Install skills in a project

mestiere init --agents claude,kiro
mestiere registry add polarity git@github.com:polarity-dev/skills.git
mestiere add frontend backend/db-migrations
git add skills.yaml .gitignore
git commit -m "Add team skills"

A teammate who clones the repository runs mestiere sync.

Read the getting started guide

Publish skills in a registry

mkdir skills && cd skills && git init
mestiere registry init --name polarity
mestiere registry new-namespace frontend --description "Frontend practices"
mestiere registry new-skill frontend/forms --description "Build accessible forms"
mestiere registry lint

Push it, and any project can add it.

Learn how to author a registry

Why mestiere

Mestiere is Italian for craft: the know-how a workshop hands from one person to the next. mestiere does that for coding agents.

  • One source of truth

    Skills live in a git registry, public or private, reviewed like any other code.

  • Organized by namespace

    Install a whole namespace or a single skill. New skills in an installed namespace arrive on the next update.

  • Reproducible

    Every install is locked to a registry commit and a content hash. Teammates and CI get byte-identical skills.

  • Every agent at once

    Files live once in .agents/skills/, which Codex, Gemini CLI, Cursor and others read directly. Claude Code and Kiro get symlinks to it.

  • Out of your way

    Installed skills are ignored by git by default. Your own skills sit next to them untouched, and committing any skill is one command.

  • Safe by construction

    mestiere replaces a folder only when it can prove it's an unmodified copy of a published skill. See the safety model.

  • No lock-in

    Registries are plain git repositories. Installed skills are plain folders that follow the Agent Skills spec.

  • Your git, your auth

    mestiere runs the system git, so SSH keys, credential helpers and gh auth just work.

Or let your agent set it up

The Homebrew install also gives Claude Code and Kiro mestiere's own skills, for every project on your machine. Then ask your agent, from any repository:

Set up mestiere for this repo with our registry git@github.com:polarity-dev/skills.git

The agent runs mestiere init, shows you what the registry offers, installs the skills that fit the codebase and commits skills.yaml. Later prompts work the same way: "Are any of our skills outdated? Update them and summarize what changed".

Installed another way? Run mestiere add -g mestiere once. Agents that read the web can start from llms.txt.

More on agents

Frequently asked questions

What is mestiere?

mestiere is a command-line tool that installs Agent Skills from git repositories into your projects. It works like a package manager for skills: you declare what you want in skills.yaml, mestiere resolves it to exact registry commits, and everyone who runs mestiere sync gets the same files.

What are Agent Skills?

An Agent Skill is a folder with a SKILL.md file, plus any scripts, references and assets it needs. Coding agents such as Claude Code, Kiro, Codex and Cursor read the skill's description and load it when a task matches. The format is described at agentskills.io.

Which coding agents does mestiere support?

Every agent that reads Agent Skills. Installed files live in .agents/skills/, the shared folder that Codex, Gemini CLI, Cursor, GitHub Copilot and others read directly. Claude Code (.claude/skills/) and Kiro (.kiro/skills/) get links to it. See Agents.

Can I use a private skills repository?

Yes. mestiere runs your system git, so a registry works wherever git clone works: SSH keys, credential helpers and gh auth included. In CI, give the job credentials that can read the registry.

How do I share skills with my whole team?

Commit skills.yaml and .gitignore. Teammates and CI run mestiere sync, which installs exactly the locked versions. In CI, mestiere sync --frozen fails if the file is inconsistent. See CI.

Do I have to commit the installed skills?

No. Installed skills are ignored by git by default, because skills.yaml is enough to reproduce them. To commit a skill anyway, run mestiere track <skill>.

Will mestiere overwrite a skill I edited?

No. Before replacing or deleting a folder, mestiere checks that its content matches a version published in the registry. Edited skills make sync stop; keep your changes with mestiere eject <skill>. See the safety model.

Can my agent set up mestiere for me?

Yes. mestiere ships its own skills, and the Homebrew install gives them to Claude Code and Kiro for every project. Ask "Set up mestiere for this repo with our registry " and the agent runs init, proposes skills and commits skills.yaml. See Agents.

Can I install skills for every project on my machine?

Yes, with -g: mestiere add -g -r polarity frontend installs into ~/.agents/skills/, linked for your agents, with the manifest in ~/.config/mestiere/skills.yaml. Prefer project installs for skills the team relies on, because only a committed skills.yaml gives teammates and CI the same versions. See Global skills.

How do I update skills?

mestiere outdated lists skills whose content changed in the registry. mestiere update moves all of them to the latest version, or only the targets you name. See How updates work.

Does mestiere work on Windows?

Not yet. macOS and Linux on amd64 and arm64 are supported; Windows support is on the roadmap.

Give every repository the same skills

Browse the commands Install mestiere

mestiere runs in the terminal of your Mac or Linux machine. Send yourself the link and set it up in two minutes.

Star on GitHub Send to my computer