agent-skills-nix CLI
A Nix and Home Manager module: skill sources are pinned in a flake and chosen SKILL.md folders are laid out into agent directories
- 274 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- Syncs files into the agent's skills directory, globally through symlinks or locally by copying
- Installs skills from external repositories whose content you choose and pin yourself
Install
- Works in
Manual install
nix run .#skills-install-localInstalls skills into a project. Run it in your own flake where sources, skills and targets are defined.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Syncs files into the agent's skills directory, globally through symlinks or locally by copying
- Installs skills from external repositories whose content you choose and pin yourself
This is third-party code. Review the repository files before installing.
What it does
agent-skills-nix describes a set of skills declaratively in a Nix configuration. Sources point to skill directories in flake inputs, local paths or an optional registry. The tool finds every folder with a SKILL.md, builds a catalog and installs only the skills you list in skills.enable or turn on entirely with skills.enableAll. Nothing is installed by default: targets and skills are chosen explicitly. Installation goes through Home Manager (programs.agent-skills.enable) or inside a project with nix run .#skills-install-local. For Claude Code, skills sync to ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/skills. A shared variant for agents that read .agents/skills is enabled with the agents target. Global targets use symlinks, local targets copy the directory. The assembled set can also be exported as a self-contained Agent Plugin, still experimental. The repository includes examples: a quickstart, a devShell, local install, a source registry and library functions.
Who it is for. For Nix and NixOS users who want to keep skills for Claude Code and other agents in one reproducible configuration.
Good fit when
- You manage your home environment with Home Manager and want skills installed along with the rest of the configuration
- You need to pin versions of skills taken from a repository, for example anthropics/skills, through flake.lock
- Skills should install automatically when entering a project devShell
- You want to bundle chosen skills into a portable Agent Plugin
Not a fit when
- You do not use Nix: installation works only through flakes and Home Manager
- You need to install a single skill once: copying the folder by hand is simpler
- You want help with skill content: the tool only lays out ready-made SKILL.md folders
- The target directory already holds your files: read the section on destination ownership first
Example request
Add agent-skills-nix to my Home Manager flake and enable the frontend-design and skill-creator skills from anthropics/skills for Claude CodeLimitations
Works only with Nix and flakes. The root flake has an empty catalog and no enabled targets, so commands such as nix run .#skills-install-local run in your own configured flake rather than in a clone of the repository. Agent Plugin export is marked experimental. For a non-empty skills directory, first read the destination ownership rules in the installation docs. The tool does not vet the skills themselves: the safety of their content stays with you.
How to disable. Remove programs.agent-skills.enable or the relevant entries from skills.enable and targets, then apply your Home Manager configuration again. For a local install, delete the copied skill directories from .claude/skills.
FAQ
How do I install Claude Code skills through Nix?
Add the agent-skills input and a skill source to your flake, include homeManagerModules.default and set programs.agent-skills with skills.enable and targets.claude.enable = true. After you apply Home Manager the skills land in ~/.claude/skills.
Does agent-skills-nix install anything by default?
No. You must choose both skills and targets explicitly.
Can I install skills into a single project only?
Yes, with nix run .#skills-install-local in your flake. Local targets copy the directory into the project, for example .claude/skills.
What does the Agent Plugin mode do?
It exports the chosen skills as a portable, skills-only plugin. The feature is marked experimental.
How does a global install differ from a local one?
Global targets use symlinks, local targets copy the directory. The shared agents target puts skills into .agents/skills for agents that read that folder.
Discussion
No questions or reviews yet.
Related
CLI toolsAgent Skill Manager
agent-skill-manager
A universal skill manager for coding agents: finds and installs skills, scanning them for shell calls, network access and credential leaks first
Docker Skills
docker-skills
Official Docker skills for agents: Dockerfile and builds, Compose, Sandboxes, Docker Agent and a skill that confirms irreversible actions
Microsoft Agent Skills
Agent Skills
Official Microsoft skills that ground coding agents in Azure SDKs and Foundry for Python, .NET, TypeScript, Java and Rust
An MCP server for NixOS resources: search packages and options so the agent does not invent names and settings
KubeShark skill: the agent finds the failure mode first, then writes manifests, Helm and Kustomize to official practice with a rollback plan
A set of skills for agent work with AWS: common cloud service tasks packaged as ready instructions for a coding agent
README in short
The page shows a short Home Manager quickstart and walks through five steps: sources, discovery, selection, bundling and installation to targets. Tables lead to guides on configuration, installation, the source registry and plugin export, plus examples. The end describes the project layout and checks with nix flake check.