0xc000022070

Agentic Flake — Development skill for Claude Code

Development community

Composable agent skills and project-scoped environments for Nix.

How to install Agentic Flake

This entry records only its repository, not the path inside it, so there is no exact command to give. Open 0xc000022070/agentic-flake and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Agentic Flake does

Composable agent skills and project-scoped environments for Nix.

Alternatives in Development

  • Nonstop — Autonomous work mode for Claude Code 263 ★
  • Agent Skills Nix — Declarative management of Agent Skills on Nix 216 ★
  • Governance Review Agent — Chains adoption-report, drift detection scoped to at-risk teams, and stakeholder-brief into a periodic governa 194 ★

README

agentic-flake

The goal is to keep the API minimal and usable in two common places:

  • Home Manager, for user-level configuration
  • dev shells, for project-local configuration

Instead of building a large catalog or registry model first, the approach is simple:

  1. choose a source
  2. select the plugins you need
  3. done

quick start

nix flake init -t github:0xc000022070/agentic-flake
nix develop   # or `direnv allow`

This scaffolds a minimal dev shell with one catalog skill; edit the `skills` list from there.

Example:

(anthropics.skills {
  plugins = [
    "pdf"
    "pptx"
    "frontend-design"
  ];
})

skill repos outside the catalog

If a skill repository is not already packaged, add it as a non-flake input and point `mkSkill` at it. No rev, no hash — your lockfile pins it:

{
  inputs.android-skills = {
    url = "github:new-silvermoon/awesome-android-agent-skills";
    flake = false;
  };
}
(agentic-flake.lib.mkSkill {src = inputs.android-skills;} {
  plugins = ["android-emulator-skill"];
})

For umbrella repos (a single `SKILL.md` at the repo root), set `name` to control the skill id — store-path basenames are just `source`, so the derived default is rarely what you want:

(agentic-flake.lib.mkSkill {
  src = inputs.some-skill-repo;
  name = "my-skill";
} {
  plugins = ["my-skill"];
})

`mkSkill` also accepts local paths (`src = ./skills;`) and fetcher results (`pkgs.fetchFromGitHub`, `builtins.fetchGit`) if you prefer explicit pins inside the file. See [examples/4-external-repo](./examples/4-external-repo/) for a complete flake.

upgrading skills

  • Catalog skills (pkgs.agent-skills.*) are pinned by this flake's sources.json and refreshed by CI. Pull the latest pins with nix flake update agentic-flake.
  • Skills added as flake inputs are pinned by your own lockfile. Upgrade one with nix flake update .
  • Need a catalog repo newer than the current pin? Add