Triggered by a Telegram report from a Chinese user trying to deploy DeepSeek TUI on a HarmonyOS ARM64 thin-and-light: `npm i -g deepseek-tui` exited with `Unsupported architecture: arm64 on platform linux` because v0.8.7 only published x64 Linux artifacts. They worked around it with `cargo install`, but the README never documented that path for ARM users. This PR closes that gap on three layers: - **Release workflow** — add `aarch64-unknown-linux-gnu` to the build matrix using GitHub's `ubuntu-24.04-arm` runner. v0.8.8 will publish `deepseek-linux-arm64` and `deepseek-tui-linux-arm64` alongside the existing x64/macOS/Windows assets, plus add the row to the Release body's manual-download table. - **npm wrapper** — uncomment the linux/arm64 row in `ASSET_MATRIX`, rewrite the `Unsupported architecture/platform` error to print the full `cargo install deepseek-tui-cli deepseek-tui --locked` recipe and link to docs/INSTALL.md, and add `DEEPSEEK_TUI_OPTIONAL_INSTALL=1` so CI matrices that include unsupported platforms can keep running without a binary. - **Docs** — new docs/INSTALL.md covering every supported platform, prebuilt vs. cargo install vs. manual download, cross-compiling x64 -> ARM64 with `cross` or `gcc-aarch64-linux-gnu`, China mirror setup, and a troubleshooting section for the common arm64, MISSING_COMPANION_BINARY, and self-update arch-mapping (#503) errors. README and README.zh-CN now have an explicit Linux ARM64 quickstart pointing at `cargo install` for v0.8.7 today and `npm i -g` for v0.8.8+; the v0.8.7 known-issue block is updated to mention both #503 and the missing arm64 prebuilt. https://claude.ai/code/session_01Fg1FKMtDxVnC4pp6bNBRCS
deepseek-tui
Install and run the deepseek and deepseek-tui binaries from GitHub release artifacts.
Install
npm install -g deepseek-tui
# or
pnpm add -g deepseek-tui
For project-local usage:
npm install deepseek-tui
npx deepseek-tui --help
postinstall downloads platform binaries into bin/downloads/ and exposes
deepseek and deepseek-tui commands.
First run
deepseek login --api-key "YOUR_DEEPSEEK_API_KEY"
deepseek doctor
deepseek
The deepseek facade and deepseek-tui binary share ~/.deepseek/config.toml
for DeepSeek auth and default model settings. Common TUI commands are available
directly through the facade, including deepseek doctor, deepseek models,
deepseek sessions, and deepseek resume --last.
The app talks to DeepSeek's documented OpenAI-compatible Chat Completions API.
Set DEEPSEEK_BASE_URL only if you need the China endpoint or DeepSeek beta
features such as strict tool mode, chat prefix completion, or FIM completion.
NVIDIA NIM-hosted DeepSeek V4 Pro is also supported:
deepseek auth set --provider nvidia-nim --api-key "YOUR_NVIDIA_API_KEY"
deepseek --provider nvidia-nim
For a single process, set DEEPSEEK_PROVIDER=nvidia-nim and NVIDIA_API_KEY
or NVIDIA_NIM_API_KEY (with DEEPSEEK_API_KEY as a compatibility fallback).
The NIM default model is deepseek-ai/deepseek-v4-pro and the default base URL
is https://integrate.api.nvidia.com/v1. With --provider nvidia-nim,
--model deepseek-v4-flash maps to deepseek-ai/deepseek-v4-flash.
Supported platforms
Prebuilt binaries for the GitHub release are downloaded automatically:
- Linux x64
- Linux arm64 (v0.8.8+)
- macOS x64 / arm64
- Windows x64
Other platform/architecture combinations (musl, riscv64, FreeBSD, …) aren't
shipped as prebuilts. The postinstall will exit with a clear error pointing
you at cargo install deepseek-tui-cli deepseek-tui --locked and the full
docs/INSTALL.md
build-from-source guide.
Configuration
- Default binary version comes from
deepseekBinaryVersioninpackage.json. - Set
DEEPSEEK_TUI_VERSIONorDEEPSEEK_VERSIONto override the release version. - Set
DEEPSEEK_TUI_GITHUB_REPOorDEEPSEEK_GITHUB_REPOto override the source repo (defaults toHmbown/DeepSeek-TUI). - Set
DEEPSEEK_TUI_FORCE_DOWNLOAD=1to force download even when the cached binary is already present. - Set
DEEPSEEK_TUI_DISABLE_INSTALL=1to skip install-time download. - Set
DEEPSEEK_TUI_OPTIONAL_INSTALL=1to make thepostinstallstep warn and exit0on download/extract errors instead of failingnpm install(useful in CI matrices).
Release integrity
npm publishruns a release-asset check to ensure all required binary assets exist for the target GitHub release before publishing.- Install-time downloads are verified against the release checksum manifest before the wrapper marks them executable.
- Set
DEEPSEEK_TUI_RELEASE_BASE_URLto point the installer at a local or staged release-asset directory for smoke tests.