fix: scope agent skill installation

refs #2022
This commit is contained in:
Ogulcan Celik 2026-07-29 21:21:22 +03:00
parent 514e4465ee
commit f6060cf682
13 changed files with 38 additions and 22 deletions

View File

@ -12,6 +12,7 @@ on:
- "flake.lock" - "flake.lock"
- "flake.nix" - "flake.nix"
- "nix/**" - "nix/**"
- "skills/**"
- "vendor/**" - "vendor/**"
push: push:
branches: [master] branches: [master]
@ -24,6 +25,7 @@ on:
- "flake.lock" - "flake.lock"
- "flake.nix" - "flake.nix"
- "nix/**" - "nix/**"
- "skills/**"
- "vendor/**" - "vendor/**"
permissions: permissions:

View File

@ -13,6 +13,7 @@ include = [
"src/**/*", "src/**/*",
"assets/sounds/*", "assets/sounds/*",
"docs/next/api/herdr-api.schema.json", "docs/next/api/herdr-api.schema.json",
"skills/herdr/SKILL.md",
"README.md", "README.md",
"LICENSE", "LICENSE",
"Cargo.toml", "Cargo.toml",

View File

@ -7,6 +7,7 @@
- Relicensed Herdr from AGPL-3.0-or-later to Apache-2.0. - Relicensed Herdr from AGPL-3.0-or-later to Apache-2.0.
### Fixed ### Fixed
- Installing the Herdr agent skill with the `skills` CLI no longer copies the entire repository. (#2022)
- Agent prompts now wait briefly after sending text before pressing Enter, preventing prompts from remaining in agent composers without starting a turn. (#1878) - Agent prompts now wait briefly after sending text before pressing Enter, preventing prompts from remaining in agent composers without starting a turn. (#1878)
- Empty clipboard writes from pane applications no longer erase existing clipboard contents or show a copied confirmation. (#1893) - Empty clipboard writes from pane applications no longer erase existing clipboard contents or show a copied confirmation. (#1893)
- Plain mouse movement no longer triggers continuous full renders while preserving Herdr menu hover and pane application mouse tracking. (#1865) - Plain mouse movement no longer triggers continuous full renders while preserving Herdr menu hover and pane application mouse tracking. (#1865)

View File

@ -3,7 +3,7 @@ title: Agent skill file
description: Install Herdr instructions for Claude Code or another coding agent. description: Install Herdr instructions for Claude Code or another coding agent.
--- ---
Herdr ships a reusable agent skill file at [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md). Herdr ships a reusable agent skill file at [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md).
Install that file into any coding agent that supports reusable skills or custom instructions. The skill teaches the agent how to control Herdr from inside a Herdr pane. Install that file into any coding agent that supports reusable skills or custom instructions. The skill teaches the agent how to control Herdr from inside a Herdr pane.
@ -31,12 +31,14 @@ Install the skill with `npx skills`:
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
If you installed the skill while it lived at the repository root, rerun this add command once instead of using `skills update`. The add command replaces the oversized copy and records the new location.
The `-g` flag installs it globally for supported agents. Omit `-g` to install it into the current project. The `-g` flag installs it globally for supported agents. Omit `-g` to install it into the current project.
Use the repository copy as the manual fallback and source of truth: Use the repository copy as the manual fallback and source of truth:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
For agents with a skill system, install that file as a skill named `herdr`. For agents without a skill system, paste the file into the agent's project or user instructions. For agents with a skill system, install that file as a skill named `herdr`. For agents without a skill system, paste the file into the agent's project or user instructions.
@ -62,4 +64,4 @@ The full command guide lives in the skill file itself. It covers pane IDs, `pane
Read the source file here: Read the source file here:
[Open `SKILL.md` on GitHub →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [Open `SKILL.md` on GitHub →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)

View File

@ -3,7 +3,7 @@ title: エージェントスキルファイル
description: Claude Code などのコーディングエージェントに Herdr の使い方をインストールします。 description: Claude Code などのコーディングエージェントに Herdr の使い方をインストールします。
--- ---
Herdr は再利用可能なエージェントスキルファイルを [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) として提供しています。 Herdr は再利用可能なエージェントスキルファイルを [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md) として提供しています。
このファイルを、再利用可能なスキルやカスタム指示に対応した任意のコーディングエージェントにインストールしてください。このスキルは、Herdr のペイン内から Herdr を制御する方法をエージェントに教えます。 このファイルを、再利用可能なスキルやカスタム指示に対応した任意のコーディングエージェントにインストールしてください。このスキルは、Herdr のペイン内から Herdr を制御する方法をエージェントに教えます。
@ -31,12 +31,14 @@ Herdr は別の用途向けに [`herdr.dev/agent-guide.md`](https://herdr.dev/ag
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
スキルがリポジトリのルートにあったときにインストールした場合は、`skills update` ではなく、この add コマンドを一度再実行してください。大きすぎる既存のコピーが置き換えられ、新しい場所が記録されます。
`-g` フラグは、対応エージェントにグローバルインストールします。現在のプロジェクトにインストールする場合は `-g` を省略してください。 `-g` フラグは、対応エージェントにグローバルインストールします。現在のプロジェクトにインストールする場合は `-g` を省略してください。
手動でのフォールバックおよび信頼できるソースとしては、リポジトリのコピーを使ってください: 手動でのフォールバックおよび信頼できるソースとしては、リポジトリのコピーを使ってください:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
スキルシステムを持つエージェントには、このファイルを `herdr` という名前のスキルとしてインストールしてください。スキルシステムを持たないエージェントには、ファイルの内容をプロジェクト指示またはユーザー指示に貼り付けてください。 スキルシステムを持つエージェントには、このファイルを `herdr` という名前のスキルとしてインストールしてください。スキルシステムを持たないエージェントには、ファイルの内容をプロジェクト指示またはユーザー指示に貼り付けてください。
@ -62,4 +64,4 @@ claude
ソースファイルはこちら: ソースファイルはこちら:
[GitHub で `SKILL.md` を開く →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [GitHub で `SKILL.md` を開く →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)

View File

@ -3,7 +3,7 @@ title: 智能体技能文件
description: 为 Claude Code 或其他编程智能体安装 Herdr 使用说明。 description: 为 Claude Code 或其他编程智能体安装 Herdr 使用说明。
--- ---
Herdr 提供了一个可复用的智能体技能文件: [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md)。 Herdr 提供了一个可复用的智能体技能文件: [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)。
把这个文件安装到任何支持可复用技能或自定义指令的编程智能体中。这份技能教智能体如何在 Herdr 窗格内部控制 Herdr。 把这个文件安装到任何支持可复用技能或自定义指令的编程智能体中。这份技能教智能体如何在 Herdr 窗格内部控制 Herdr。
@ -31,12 +31,14 @@ Herdr 还提供了另一份用途不同的指南: [`herdr.dev/agent-guide.md`](h
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
如果你是在该技能仍位于仓库根目录时安装的,请重新运行一次此 add 命令,而不要使用 `skills update`。add 命令会替换原先过大的副本并记录新位置。
`-g` 参数为受支持的智能体全局安装。省略 `-g` 则安装到当前项目。 `-g` 参数为受支持的智能体全局安装。省略 `-g` 则安装到当前项目。
以仓库中的副本作为手动兜底和事实来源: 以仓库中的副本作为手动兜底和事实来源:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
对于有技能系统的智能体,把这个文件安装为名为 `herdr` 的技能。对于没有技能系统的智能体,把文件内容粘贴到智能体的项目指令或用户指令中。 对于有技能系统的智能体,把这个文件安装为名为 `herdr` 的技能。对于没有技能系统的智能体,把文件内容粘贴到智能体的项目指令或用户指令中。
@ -62,4 +64,4 @@ claude
在这里阅读源文件: 在这里阅读源文件:
[在 GitHub 上打开 `SKILL.md` →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [在 GitHub 上打开 `SKILL.md` →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)

View File

@ -48,7 +48,7 @@ rustPlatform.buildRustPackage {
../build.rs ../build.rs
../Cargo.lock ../Cargo.lock
../Cargo.toml ../Cargo.toml
../SKILL.md ../skills/herdr/SKILL.md
] ]
); );
}; };

View File

@ -426,7 +426,7 @@ pane_history = false
"##; "##;
// Bundled at build time so the printed skill always matches this binary's release. // Bundled at build time so the printed skill always matches this binary's release.
const SKILL: &str = include_str!("../SKILL.md"); const SKILL: &str = include_str!("../skills/herdr/SKILL.md");
fn should_block_nested(config: &config::Config) -> bool { fn should_block_nested(config: &config::Config) -> bool {
should_block_nested_for_env(config, std::env::var(HERDR_ENV_VAR).ok().as_deref()) should_block_nested_for_env(config, std::env::var(HERDR_ENV_VAR).ok().as_deref())

View File

@ -2,7 +2,7 @@
You are reading this because a human asked you to help them understand, set up, or troubleshoot Herdr. This file gives you the concept model, the setup path, and the diagnosis recipes so you can guide them accurately. Canonical documentation lives at https://herdr.dev/docs/ — link the human there for depth, and verify any command you are unsure about against those pages instead of guessing. You are reading this because a human asked you to help them understand, set up, or troubleshoot Herdr. This file gives you the concept model, the setup path, and the diagnosis recipes so you can guide them accurately. Canonical documentation lives at https://herdr.dev/docs/ — link the human there for depth, and verify any command you are unsure about against those pages instead of guessing.
If you are running *inside* a Herdr pane (the environment variable `HERDR_ENV=1` is set), Herdr also ships a skill file that teaches you to control Herdr yourself through the `herdr` CLI: https://raw.githubusercontent.com/ogulcancelik/herdr/master/SKILL.md. That file is about you operating Herdr; this file is about you teaching a human. If you are running *inside* a Herdr pane (the environment variable `HERDR_ENV=1` is set), Herdr also ships a skill file that teaches you to control Herdr yourself through the `herdr` CLI: https://raw.githubusercontent.com/ogulcancelik/herdr/master/skills/herdr/SKILL.md. That file is about you operating Herdr; this file is about you teaching a human.
## What Herdr is ## What Herdr is
@ -65,7 +65,7 @@ Important framing for new users: Herdr does not require learning keybindings. Th
## Install the Herdr skill into yourself ## Install the Herdr skill into yourself
Herdr ships `SKILL.md` (https://raw.githubusercontent.com/ogulcancelik/herdr/master/SKILL.md), an instruction file that teaches a coding agent to control Herdr from inside a pane — splitting panes, running commands without stealing focus, reading output, waiting on other agents. Herdr ships `skills/herdr/SKILL.md` (https://raw.githubusercontent.com/ogulcancelik/herdr/master/skills/herdr/SKILL.md), an instruction file that teaches a coding agent to control Herdr from inside a pane — splitting panes, running commands without stealing focus, reading output, waiting on other agents.
Once the human is set up, offer to install it into your own harness so future sessions know Herdr natively. For agents supported by the open skills CLI, use `npx skills add ogulcancelik/herdr --skill herdr -g`. Agents without a skill system can paste the GitHub copy above into global custom instructions. Ask the human before writing to their config locations, and use the GitHub copy above as the source of truth. Once the human is set up, offer to install it into your own harness so future sessions know Herdr natively. For agents supported by the open skills CLI, use `npx skills add ogulcancelik/herdr --skill herdr -g`. Agents without a skill system can paste the GitHub copy above into global custom instructions. Ask the human before writing to their config locations, and use the GitHub copy above as the source of truth.

View File

@ -3,7 +3,7 @@ title: Agent skill file
description: Install Herdr instructions for Claude Code or another coding agent. description: Install Herdr instructions for Claude Code or another coding agent.
--- ---
Herdr ships a reusable agent skill file at [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md). Herdr ships a reusable agent skill file at [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md).
Install that file into any coding agent that supports reusable skills or custom instructions. The skill teaches the agent how to control Herdr from inside a Herdr pane. Install that file into any coding agent that supports reusable skills or custom instructions. The skill teaches the agent how to control Herdr from inside a Herdr pane.
@ -31,12 +31,14 @@ Install the skill with `npx skills`:
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
If you installed the skill while it lived at the repository root, rerun this add command once instead of using `skills update`. The add command replaces the oversized copy and records the new location.
The `-g` flag installs it globally for supported agents. Omit `-g` to install it into the current project. The `-g` flag installs it globally for supported agents. Omit `-g` to install it into the current project.
Use the repository copy as the manual fallback and source of truth: Use the repository copy as the manual fallback and source of truth:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
For agents with a skill system, install that file as a skill named `herdr`. For agents without a skill system, paste the file into the agent's project or user instructions. For agents with a skill system, install that file as a skill named `herdr`. For agents without a skill system, paste the file into the agent's project or user instructions.
@ -62,4 +64,4 @@ The full command guide lives in the skill file itself. It covers pane IDs, `pane
Read the source file here: Read the source file here:
[Open `SKILL.md` on GitHub →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [Open `SKILL.md` on GitHub →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)

View File

@ -3,7 +3,7 @@ title: エージェントスキルファイル
description: Claude Code などのコーディングエージェントに Herdr の使い方をインストールします。 description: Claude Code などのコーディングエージェントに Herdr の使い方をインストールします。
--- ---
Herdr は再利用可能なエージェントスキルファイルを [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) として提供しています。 Herdr は再利用可能なエージェントスキルファイルを [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md) として提供しています。
このファイルを、再利用可能なスキルやカスタム指示に対応した任意のコーディングエージェントにインストールしてください。このスキルは、Herdr のペイン内から Herdr を制御する方法をエージェントに教えます。 このファイルを、再利用可能なスキルやカスタム指示に対応した任意のコーディングエージェントにインストールしてください。このスキルは、Herdr のペイン内から Herdr を制御する方法をエージェントに教えます。
@ -31,12 +31,14 @@ Herdr は別の用途向けに [`herdr.dev/agent-guide.md`](https://herdr.dev/ag
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
スキルがリポジトリのルートにあったときにインストールした場合は、`skills update` ではなく、この add コマンドを一度再実行してください。大きすぎる既存のコピーが置き換えられ、新しい場所が記録されます。
`-g` フラグは、対応エージェントにグローバルインストールします。現在のプロジェクトにインストールする場合は `-g` を省略してください。 `-g` フラグは、対応エージェントにグローバルインストールします。現在のプロジェクトにインストールする場合は `-g` を省略してください。
手動でのフォールバックおよび信頼できるソースとしては、リポジトリのコピーを使ってください: 手動でのフォールバックおよび信頼できるソースとしては、リポジトリのコピーを使ってください:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
スキルシステムを持つエージェントには、このファイルを `herdr` という名前のスキルとしてインストールしてください。スキルシステムを持たないエージェントには、ファイルの内容をプロジェクト指示またはユーザー指示に貼り付けてください。 スキルシステムを持つエージェントには、このファイルを `herdr` という名前のスキルとしてインストールしてください。スキルシステムを持たないエージェントには、ファイルの内容をプロジェクト指示またはユーザー指示に貼り付けてください。
@ -62,4 +64,4 @@ claude
ソースファイルはこちら: ソースファイルはこちら:
[GitHub で `SKILL.md` を開く →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [GitHub で `SKILL.md` を開く →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)

View File

@ -3,7 +3,7 @@ title: 智能体技能文件
description: 为 Claude Code 或其他编程智能体安装 Herdr 使用说明。 description: 为 Claude Code 或其他编程智能体安装 Herdr 使用说明。
--- ---
Herdr 提供了一个可复用的智能体技能文件: [`SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md)。 Herdr 提供了一个可复用的智能体技能文件: [`skills/herdr/SKILL.md`](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)。
把这个文件安装到任何支持可复用技能或自定义指令的编程智能体中。这份技能教智能体如何在 Herdr 窗格内部控制 Herdr。 把这个文件安装到任何支持可复用技能或自定义指令的编程智能体中。这份技能教智能体如何在 Herdr 窗格内部控制 Herdr。
@ -31,12 +31,14 @@ Herdr 还提供了另一份用途不同的指南: [`herdr.dev/agent-guide.md`](h
npx skills add ogulcancelik/herdr --skill herdr -g npx skills add ogulcancelik/herdr --skill herdr -g
``` ```
如果你是在该技能仍位于仓库根目录时安装的,请重新运行一次此 add 命令,而不要使用 `skills update`。add 命令会替换原先过大的副本并记录新位置。
`-g` 参数为受支持的智能体全局安装。省略 `-g` 则安装到当前项目。 `-g` 参数为受支持的智能体全局安装。省略 `-g` 则安装到当前项目。
以仓库中的副本作为手动兜底和事实来源: 以仓库中的副本作为手动兜底和事实来源:
```text ```text
https://github.com/ogulcancelik/herdr/blob/master/SKILL.md https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md
``` ```
对于有技能系统的智能体,把这个文件安装为名为 `herdr` 的技能。对于没有技能系统的智能体,把文件内容粘贴到智能体的项目指令或用户指令中。 对于有技能系统的智能体,把这个文件安装为名为 `herdr` 的技能。对于没有技能系统的智能体,把文件内容粘贴到智能体的项目指令或用户指令中。
@ -62,4 +64,4 @@ claude
在这里阅读源文件: 在这里阅读源文件:
[在 GitHub 上打开 `SKILL.md` →](https://github.com/ogulcancelik/herdr/blob/master/SKILL.md) [在 GitHub 上打开 `SKILL.md` →](https://github.com/ogulcancelik/herdr/blob/master/skills/herdr/SKILL.md)