KS CLI

使用 ks-cli 安装和管理 KSpeeder,加速 Docker 镜像、开发依赖、运行时和文件下载。

ks-cli 是 KSpeeder 的命令行工具。你可以用它安装和管理 KSpeeder,也可以保留原始镜像名,加速 DockerHub 和 GHCR 镜像拉取。把 npm、Go、pip 等工具命令放到 ks-cli 后面,还可以加速日常依赖下载。

支持的加速源

安装 ks-cli

如果你还没有安装 KSpeeder,推荐直接使用一键安装脚本。脚本会安装 ks-cli,然后继续安装或更新 KSpeeder。

sh -c "$(curl -fsSL https://kspeeder.com/bin/install-kspeeder.sh)"

Windows PowerShell:

iwr https://kspeeder.com/bin/install-kspeeder.ps1 -UseBasicParsing | iex

如果你只需要 CLI 本体,可以只安装 ks-cli:

sh -c "$(curl -fsSL https://kspeeder.com/bin/install-ks-cli.sh)"

Windows PowerShell:

iwr https://kspeeder.com/bin/install-ks-cli.ps1 -UseBasicParsing | iex

只安装 CLI 时,macOS / Linux 默认安装到 ~/.local/bin/ks-cli,Windows 默认安装到 %LOCALAPPDATA%\KSpeeder\bin\ks-cli.exe。如果当前终端提示找不到 ks-cli,请把对应目录加入 PATH,或使用完整路径运行。

安装完成后执行:

ks-cli version

无配置使用 kspeeder 加速

ks-cli docker ... 适合不想修改 Docker daemon 配置,或者只想临时加速一次拉取的场景。它会检查 KSpeeder 是否可用:如果已有常驻服务,会直接使用;如果没有检测到已安装服务,会为本次命令临时启动 KSpeeder,命令结束后自动关闭。

DockerHub

ks-cli docker pull alpine:latest

GHCR

ks-cli docker pull ghcr.io/n8n-io/n8n:latest

GHCR 镜像和 GitHub 专属下载加速需要 KSpeeder Plus。

指定平台:

ks-cli docker pull --platform linux/amd64 alpine:latest

ks-cli 会自动把 DockerHub 镜像映射到 KSpeeder 的 DockerHub 加速地址,把 GHCR 镜像映射到 KSpeeder 的 GHCR 加速地址。拉取完成后,它会把镜像重新打回原始名称,所以后续 docker run alpine:latest 仍然可以正常使用。

Docker Compose

拉取 compose 文件中的服务镜像:

ks-cli docker compose pull

启动 compose 项目前预拉取镜像:

ks-cli docker compose up -d

使用 compose 文件和项目名:

ks-cli docker compose -f docker-compose.yml -p myapp up -d

只处理指定服务:

ks-cli docker compose up -d web

执行 compose up 时,ks-cli 会先读取 docker compose config --format json,找出需要的服务镜像,通过 KSpeeder 预拉取并打回原始镜像名,然后再执行原始的 docker compose up。如果你指定了某个服务,默认会同时处理它依赖的服务;加上 --no-deps 后只处理你指定的服务。

开发工具

先安装目标工具和 KSpeeder 服务。ks-cli 只为本次进程注入加速配置,不修改工具的全局配置。

npm

安装依赖:

ks-cli npm install react

Python

使用 pip 安装包,或用 uv 同步项目依赖:

pip

ks-cli pip install idna==3.10

uv

ks-cli uv sync

Go modules

下载项目依赖:

ks-cli go mod download

Homebrew API

加速 Homebrew 的 API 和软件包元数据请求,不包含所有 bottle 或源码下载:

ks-cli brew info jq

mise

安装 Node.js 和 Go 工具链:

ks-cli mise install node@24 go@1.27

需要 mise 2026.4.23 或更新版本。当前加速范围包括 Node、Go SDK 和通过 GitHub Release 下载的运行时包;Git、插件及其他来源的请求不在此范围。

文件下载

download 默认自动选择直连或加速路径。GitHub Release、Raw 文件和源码包可使用原始下载地址:

GitHub Release

ks-cli download https://github.com/jqlang/jq/releases/download/jq-1.8.1/jq-linux-amd64

GitHub Raw

ks-cli download https://raw.githubusercontent.com/github/gitignore/main/Go.gitignore

指定保存路径时,把 -O 放在 URL 前:

ks-cli download -O Go.gitignore https://raw.githubusercontent.com/github/gitignore/main/Go.gitignore

GitHub 源码包

ks-cli download https://github.com/github/gitignore/archive/refs/heads/main.zip

命令总览

查看当前版本支持的命令和参数:

ks-cli --help

安装和更新 KSpeeder

安装 KSpeeder 服务:

ks-cli service install --mode auto

使用默认配置并跳过确认:

ks-cli service install --mode auto --yes

自定义端口和缓存目录:

ks-cli service install --mode auto --listen :5443 --admin :5003 --cache-path /path/to/cache

auto 优先使用原生系统服务。当前系统没有受支持的服务管理器时,会改用 Docker Compose。也可以指定 Docker Compose 安装:

ks-cli service install --mode docker --yes

升级已安装的服务:

ks-cli service upgrade

升级会保留部署模式、端口、缓存路径和数据。OpenWrt / iStoreOS 的安装、升级和卸载由 opkg / iStore 管理;ks-cli 可检查状态和启停已安装服务。

卸载 KSpeeder:

ks-cli service uninstall

默认卸载会保留数据。如果确认要一起删除缓存、配置目录和 Docker volume:

ks-cli service uninstall --yes --purge-data

服务管理

安装完成后,可以用下面的命令查看和控制服务:

ks-cli service status
ks-cli service start
ks-cli service stop
ks-cli service restart

健康检查和管理面板

查看 KSpeeder 状态:

ks-cli status

检查服务,或检查某个工具的加速条件:

ks-cli doctor
ks-cli doctor npm

doctor 不会安装或升级组件。对 npm、Go、pip、uv、brew 和 mise,可在执行前查看计划:

ks-cli --explain mise install node@24

这条命令不会运行目标工具或启动服务。如果提示服务能力不兼容,请升级 KSpeeder。OpenWrt / iStoreOS 使用 opkg / iStore,其他平台运行 ks-cli service upgrade。

打开管理面板:

ks-cli admin

默认地址是 http://127.0.0.1:5003。如果 KSpeeder 安装在另一台机器上,请在浏览器中打开 http://<安装IP>:5003。

清理 KSpeeder 缓存:

ks-cli cache clean

执行前会要求确认,确认后会调用管理面板接口清理服务端缓存。

登录账号

查看当前登录状态:

ks-cli auth status

微信扫码登录:

ks-cli auth login

退出登录:

ks-cli auth logout

如果你的管理面板不在本机默认地址,可以指定 --admin-url:

ks-cli auth login --admin-url http://<安装IP>:5003

登录命令还支持等待时间和轮询间隔:

ks-cli auth login --timeout 2m --interval 2s

如果当前终端不方便显示二维码,可以输出二维码内容:

ks-cli auth login --no-qr

当前限制

  • Docker 镜像支持 DockerHub 和 GHCR;其他 registry 会提示不支持。
  • 镜像必须是标签引用,例如 alpine:latest;digest 引用暂不支持。
  • docker pull --all-tags 暂不支持。
  • docker compose pull 支持服务名和 -f、-p 等 compose 全局参数;暂不支持 pull 子命令自己的参数。
  • docker compose up --pull always 会让 Docker 在预拉取后再次拉取,暂不支持;可以使用默认行为、--pull missing 或 --pull never。
  • docker build --pull 和 docker buildx build --pull 暂不通过 ks-cli 加速。
  • download 的 GitHub 文件加速不包含 git clone。