安装 ank

两件独立的事:二进制文件,也就是工具本身;以及 skills,教你的 agent 如何使用它。先选适合你机器的那一行,再运行第二行。

1二进制文件

  • npm

    任何装了 node 的机器。防火墙拦截单独的可执行文件、却放行包仓库时,走这条路。

    npm install -g @haksolot/ank
    
  • curl | sh

    Linux 和 macOS。下载压缩包及其 .sha256,两者不一致时在解压前就拒绝。

    curl -fsSL https://raw.githubusercontent.com/haksolot/ank/main/install.sh | sh
    
  • PowerShell

    Windows,支持 Windows PowerShell 5.1 和 PowerShell 7。同样的校验,并且能替换正在运行的 ank.exe。

    irm https://raw.githubusercontent.com/haksolot/ank/main/install.ps1 | iex
    

2Skills

一条命令适用于所有智能体。它会检测你在用的智能体(Claude Code、Codex、Cursor、OpenCode 以及另外三十多种),并把每一个都链接到六个 skills 的同一份副本。

npx skills add haksolot/ank

你需要什么

两样东西;只有从源码构建时才需要第三样。

git 2.34 或更高
不是为了方便:claim 存放在 git ref 里,ank 启动时会检查版本。
sh
三个系统上的 verifier 都在 sh -c 下运行。Windows 上它随 Git for Windows 一起安装,所以有了 git 就有了它。
Rust 1.95 或更高
仅在从源码构建时需要,另外还要一个 C 编译器。

确认它能应答

无论走哪条路,都问问这个二进制文件它是什么。

~
ank --version
ank 0.8.0 (8310e75, skill 0d916cc3d9a5)

ank update --check
running  0.8.0
latest   0.8.0
up to date

三个组成部分,每一个都回答你迟早会问的一个问题:

版本号0.8.0
你装的是什么。版本刻意停在 0.x:循环和退出码已有规范,存储格式还没有。
Commit8310e75
它是从哪个提交构建的。当你第一次怀疑手上的二进制比你正在读的行为更旧时,这一项就派上用场了。
Skill 修订号skill 0d916cc3d9a5
与它一起构建的 skill。加载了 skill 的 agent 可以把这个字符串和工具打印的进行比对,自己发现指令比二进制更旧。

更新

ank update --check 读取最新版本,但不安装任何东西。ank update 通过当初安装当前二进制文件的同一途径来安装,并会先打印那条命令。它从不改动 skills:当 skills 的修订版本变化时,它会提示你,由你自己重新安装。除此之外没有别的动词会为此访问网络。

平台

Linux、macOS 和 Windows。哪条路径覆盖哪种机器,一目了然:

各平台的安装路径
平台npmcurl | shPowerShell
Linux x64
Linux arm64
macOS,Apple 芯片
macOS,Intel
Windows x64

npm 包没有对应二进制的平台上,wrapper 以退出码 9 结束并提示 cargo install。没有任何 release 提供的平台上,curl | sh 会点名拒绝,并列出现有的目标。两者都不会默默失败。

三条路都不合适时

Releases 页面提供两个安装脚本下载的压缩包,每个目标一个,旁边附 .sha256:手动解压一个,正是安装脚本替你做的事。另外,源码树也可以直接构建:

cargo install --git https://github.com/haksolot/ank ank-cli

Releases 页面

没有任何包管理器分发 ank。Homebrew、Scoop、apt、winget 和 AUR 都曾有过渠道或尝试,最后全部撤回。只有三条路径,都由仓库提供、源自已发布的 release。

Skills

六个纯 markdown 文件。第一个是 agent 默认加载的,单独就能用;其余五个各负责一项活动,在工作需要时才加载。

ank
契约:ank 为什么是这个样子,按使用时机分组的命令,以及不容商量的规则。
ank-plan
通过提问,把一个目标拆成 ADR、spec 和任务。
ank-drift
对照代码审计已有的决策。
ank-loop
自主处理 backlog。
ank-tdd
以测试先行推进实现。
ank-diagnose
把缺陷一路追溯到根因。

其他安装方式

每种方式都指向 git 里同样的六个文件,没有哪一种保存着需要人工同步的副本。

  • Claude Code

    作为插件:只有六个 skills,别无其他。没有 agent、没有 hook、没有服务器,你不调用 ank,它就什么都不运行。

    /plugin marketplace add haksolot/ank
    /plugin install ank@ank
    
  • pi

    npm 包把 skill 和二进制放在一起。pi 只加载资源,不会把 ank 放进你的 PATH:二进制还需另外安装。

    pi install npm:@haksolot/ank
    
  • 手动

    把 skill/SKILL.md 复制到你的 harness 加载的位置。每个 skill 都是一个没有任何生成内容的文件:你什么也不会丢。

完整的安装指南

安装 ank

两条命令。支持 Linux、macOS 和 Windows,需要 git 2.34 或更高版本。

npm install -g @haksolot/ank
npx skills add haksolot/ank