From 4d54050f072d37572162e10b897488e873b7b2e6 Mon Sep 17 00:00:00 2001 From: Yann Hodique Date: Wed, 9 Sep 2026 23:41:48 +0200 Subject: [PATCH] feat(herdr-skills): package herdr's agent skill as a skill bundle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Herdr ships an agent skill at skills/herdr/ that teaches an agent to drive Herdr from inside a Herdr-managed pane — inspect workspaces, tabs, panes and neighbouring agents, and split panes without stealing focus. https://herdr.dev/docs/agent-skill/ Upstream ships no .claude-plugin/plugin.json, so this follows the tuicr-skills shape: fromClaudePlugin stays false and the builder discovers skills/*/SKILL.md and synthesizes the manifest. The source pin is a commit, since the skill moves independently of herdr's release cadence. Fixes tb-x2s --- packages/herdr-skills/data.json | 12 ++++++++++++ packages/herdr-skills/default.nix | 17 +++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 packages/herdr-skills/data.json create mode 100644 packages/herdr-skills/default.nix diff --git a/packages/herdr-skills/data.json b/packages/herdr-skills/data.json new file mode 100644 index 0000000..0af077c --- /dev/null +++ b/packages/herdr-skills/data.json @@ -0,0 +1,12 @@ +{ + "_meta": { + "default": "0.9.0", + "releases": "https://github.com/herdrdev/herdr/releases" + }, + "0.9.0": { + "owner": "herdrdev", + "repo": "herdr", + "rev": "b99002ac99b09e00b4ca692436cb15a6b0d676f1", + "sha256": "sha256-SUYF4bbaYwNgoe498VoCUzuLPcjBLQXR0o0DWjjoSnI=" + } +} diff --git a/packages/herdr-skills/default.nix b/packages/herdr-skills/default.nix new file mode 100644 index 0000000..c61bd0f --- /dev/null +++ b/packages/herdr-skills/default.nix @@ -0,0 +1,17 @@ +{ pkgs, lib, toolbox, toolboxLib }: + +# Herdr's agent skill (`skills/herdr/`), packaged as a Claude Code plugin +# directory. It teaches an agent to drive Herdr from inside a Herdr-managed +# pane — inspecting workspaces, tabs, panes and neighbouring agents, and +# splitting panes without stealing focus. See https://herdr.dev/docs/agent-skill/ +# +# Upstream ships no `.claude-plugin/plugin.json`, so `fromClaudePlugin` stays +# false: the builder discovers `skills/*/SKILL.md` and synthesizes the manifest. +# +# The pin is a commit, not a tag: the skill is a file in the herdr repo, so it +# moves independently of herdr's own release cadence. +toolboxLib.buildSkillBundle { + inherit pkgs; + name = "herdr-skills"; + dataPath = ./data.json; +}