
Harneo 发布:把 Claude Code 技能库一键安装到任意仓库
来源标题:Harneo – a library for Claude Code skills, installed into any repo
Harneo 是一个管理 Claude Code 技能配置的工具,可将技能、命令、子代理、设置和 MCP 服务器集中保存在项目之外的库中,再按配置档案安装到任意项目。目前版本为 v0.2,采用 MIT 许可证,安装过程支持预览、备份和回滚。Linux 用户可下载 AppImage 或 .deb,macOS 和 Windows 需从源码构建。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
Claude Code 的 harness 管理器。把你信任的所有 skill、command、subagent、设置和 MCP server 都保存在一个库中,从中组合出 profile,再把合适的 profile 安装到任意项目里:安装前可预览、有备份、可回退。安装 · 工作原理 · CLI · 参与贡献
如果你在多个项目中使用 Claude Code,那么你的 harness(.claude/ 下的 skill、command、subagent、hook、settings.json、MCP server、CLAUDE.md)最终会被你手动从一个仓库复制到另一个仓库。副本会逐渐产生差异,没人记得某个 skill 来自哪里,有风险的 skill 会混进来,而要改造一个已有项目,就意味着覆盖掉你本来想保留的文件。
Harneo 把库放在你的项目之外,再把它分发进去:
Harneo 目前是 v0.2,处于早期阶段,迭代很快。它是一个以 MIT 许可证公开分享的个人工具。
在 Linux 上,从最新 release 下载桌面应用(AppImage 或 .deb)。在 macOS 和 Windows 上,以及在任何操作系统上使用 CLI,都需要从源码构建 Harneo:一个 setup 脚本加两条构建命令,见下文。
Linux:预构建包
每个 release 都附带以 AppImage 和 .deb 形式提供的桌面应用(由 CI 根据 release tag 构建,见 ADR-003),以及 SHA256SUMS。这些包未签名:请用 SHA256SUMS 校验下载文件。
sha256sum -c SHA256SUMS --ignore-missing
# 任意发行版:AppImage(部分发行版需要先安装 libfuse2 / fuse2)
chmod +x Harneo_*_amd64.AppImage
./Harneo_*_amd64.AppImage
# Debian / Ubuntu:.deb(会引入 WebKitGTK 4.1)
sudo apt install ./Harneo_*_amd64.deb
这些包只包含桌面应用。如需 harneo CLI,请按下文从源码构建。
每个操作系统都遵循同样的五步:安装前置依赖、克隆、运行 setup 脚本、构建、把两个二进制文件放进 PATH。setup 脚本会显示它将运行的每一条命令,并在运行任何命令前征求确认;--check(Windows 上为 -Check)只报告缺少什么,不做任何安装。
两个产物都会输出到 target/release/(Windows 上带 .exe)。不会构建安装程序。
- 前置依赖。需要 git,以及
setup.sh支持的发行版:Arch(pacman)、Debian 或 Ubuntu(apt)、Fedora(dnf)。其他发行版也可以,只要你自行安装 Tauri 2 的 Linux 依赖包;BUILDING.md 按发行版列出了这些包。
git clone https://github.com/ibrahimkobeissy/harneo.git
cd harneo
./scripts/setup.sh # 经确认后安装 Rust、Node 22+、WebKitGTK 4.1 及相关依赖
npm ci
npm run tauri build -- --no-bundle # 应用
cargo build --release -p harneo-cli # CLI
如果 setup.sh 刚刚通过 rustup 安装了 Rust,请先打开一个新 shell(或运行 . "$HOME/.cargo/env")再构建。
install -m 755 target/release/harneo-app target/release/harneo ~/.local/bin/
harneo --version
harneo-app &
可选:若想让 Harneo 出现在应用启动器中,创建 ~/.local/share/applications/harneo.desktop:
[Desktop Entry]
Type=Application
Name=Harneo
Comment=Harness manager for Claude Code
Exec=harneo-app
Icon=/path/to/harneo/src-tauri/icons/icon.png
Categories=Development;
macOS
- 前置依赖。
xcode-select --install # 编译器和 git
然后安装 Homebrew;setup.sh 会用它安装其余内容。
git clone https://github.com/ibrahimkobeissy/harneo.git
cd harneo
./scripts/setup.sh # 经确认后通过 Homebrew 安装 rustup 和 node@22
Homebrew 安装的 node@22 和 rustup 是 keg-only 的:在把它们加入 PATH 之前不会生效。遇到这种情况,setup.sh 会打印需要添加的具体那一行,大致如下。加上它,然后打开一个新 shell:
echo 'export PATH="$(brew --prefix rustup)/bin:$(brew --prefix node@22)/bin:$HOME/.cargo/bin:$PATH"' >> ~/.zshrc
exec zsh
然后构建:
npm ci
npm run tauri build -- --no-bundle # 应用
cargo build --release -p harneo-cli # CLI
- 安装到 PATH。
mkdir -p ~/.local/bin
install -m 755 target/release/harneo-app target/release/harneo ~/.local/bin/
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc # 如果 ~/.local/bin 还不在你的 PATH 中
harneo --version
harneo-app &
--no-bundle 构建的是普通二进制文件,而不是 .app,因此 Harneo 需从终端启动,也不会出现在 Launchpad 中。如果你想要 .app,请参阅 BUILDING.md 中的 Bundles 一节。
- 前置依赖。Windows 10 或 11,带 winget(当前版本已自带)和 Git for Windows(
winget install --id Git.Git -e)。setup.ps1会安装其余内容:rustup、Node.js LTS、带 C++ 工作负载的 Visual Studio 2022 Build Tools,以及 WebView2 运行时。
2–4. 克隆、设置、构建。在 PowerShell 中:
git clone https://github.com/ibrahimkobeissy/harneo.git
cd harneo
powershell -ExecutionPolicy Bypass -File scripts\setup.ps1 # 经确认后安装缺少的内容
关闭并重新打开 PowerShell,让新工具进入 PATH,然后:
cd harneo
npm ci
npm run tauri build -- --no-bundle # 应用
cargo build --release -p harneo-cli # CLI
- 安装到 PATH。
$bin = "$env:LOCALAPPDATA\Programs\Harneo"
New-Item -ItemType Directory -Force $bin | Out-Null
Copy-Item target\release\harneo-app.exe, target\release\harneo.exe $bin
[Environment]::SetEnvironmentVariable('Path', "$([Environment]::GetEnvironmentVariable('Path','User'));$bin", 'User')
打开一个新终端,然后运行 harneo --version 和 harneo-app。要固定到开始菜单,右键点击该文件夹中的 harneo-app.exe → 固定到「开始」屏幕。
在仓库中,完成 setup 脚本和 npm ci 之后:
npm run tauri dev # 应用,带热重载
cargo run -p harneo-cli -- --help # CLI
更新
git pull
npm ci
npm run tauri build -- --no-bundle
cargo build --release -p harneo-cli
然后像第 5 步那样,用新二进制文件覆盖旧的。你的库会保留:它位于你的数据文件夹中,而不是二进制文件旁边。
删除这两个二进制文件;如果你还想删除库,再删除数据文件夹(harneo paths 会打印它的位置):
Harneo 不会在你指定的项目之外写入任何其他内容。项目会保留某个 profile 写入其中的文件;若要恢复原始文件,请先在应用中从该项目移除对应 profile。
有东西缺失。./scripts/setup.sh --check(或 scripts\setup.ps1 -Check)会列出缺失项,且不安装任何东西。
(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。