Files
codewhale/npm/deepseek-tui
Hunter Bown 9366a7c5f3 chore(release): bump version to 0.8.11
Final step in the v0.8.11 patch release. Bumps the workspace
`Cargo.toml`, all 9 internal path-dep version pins, and
`npm/deepseek-tui/package.json` to **0.8.11**. `Cargo.lock`
regenerated alongside.

The v0.8.11 CHANGELOG entry already landed on `main` via the
cache-maxing overhaul PR (#684). This commit only stamps the
version. Together they ship:

* **Cache-maxing for V4 1M context** — engine no longer rebuilds the
  system prompt on every turn (#684's `Session::last_system_prompt_hash`),
  the volatile working-set summary moved out of the system prompt
  into per-turn `<turn_meta>` on the latest user message, the tool
  array is anchored with `cache_control: ephemeral`, and the
  `messages_with_turn_metadata` injection skips tool-result
  messages so the assistant→tool_result invariant stays intact.
* **500K compaction floor** — automatic compaction refuses below
  500K tokens via `MINIMUM_AUTO_COMPACTION_TOKENS`. Manual
  `/compact` bypasses (explicit user agency).
* **Token-only compaction trigger** — dropped
  `CompactionConfig::message_threshold` and the message-count
  branch in `should_compact`; that 128K-era heuristic only fired
  on long sessions of small messages, exactly the case where
  rewriting the V4 prefix cache is most wasteful.
* **Legacy 128K naming** — `DEFAULT_CONTEXT_WINDOW_TOKENS` →
  `LEGACY_DEEPSEEK_CONTEXT_WINDOW_TOKENS`.
* **`npm install` resilience** — `install.js` now retries with
  exponential backoff, enforces per-attempt timeout + 30 s stall
  detector, honors `HTTPS_PROXY` / `HTTP_PROXY` / `NO_PROXY` (pure
  Node, no new dependencies), and prints download progress to
  stderr. Driven by a community report that `npm install` took 18
  minutes through a CN npm mirror; the GitHub Releases binary
  fetch was the bottleneck and CN mirrors don't proxy GitHub.

Verified locally:
* cargo fmt --all -- --check                            ✓
* cargo clippy --workspace --all-targets --all-features
                --locked -- -D warnings                 ✓
* cargo test --workspace --all-features --locked        ✓
* parity gates (snapshot, parity_protocol, parity_state) ✓
* bash scripts/release/check-versions.sh                ✓
  (workspace=0.8.11, npm=0.8.11, lockfile in sync)
* node scripts/release/npm-wrapper-smoke.js             ✓

Reminder for the maintainer at release time: the npm publish is
manual and requires 2FA OTP on every publish. After this PR
merges and the GitHub Release is fully drafted by `auto-tag.yml`,
publish from a developer machine:

    cd npm/deepseek-tui
    npm publish --access public

The `prepublishOnly` hook checks all eight binaries plus the
SHA256 manifest are present on the GitHub Release before letting
`npm publish` proceed, so this must happen *after* the GitHub
Release is finalized.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 23:01:16 -05:00
..

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 deepseekBinaryVersion in package.json.
  • Set DEEPSEEK_TUI_VERSION or DEEPSEEK_VERSION to override the release version.
  • Set DEEPSEEK_TUI_GITHUB_REPO or DEEPSEEK_GITHUB_REPO to override the source repo (defaults to Hmbown/DeepSeek-TUI).
  • Set DEEPSEEK_TUI_FORCE_DOWNLOAD=1 to force download even when the cached binary is already present.
  • Set DEEPSEEK_TUI_DISABLE_INSTALL=1 to skip install-time download.
  • Set DEEPSEEK_TUI_OPTIONAL_INSTALL=1 to make the postinstall step warn and exit 0 on download/extract errors instead of failing npm install (useful in CI matrices).

Release integrity

  • npm publish runs 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_URL to point the installer at a local or staged release-asset directory for smoke tests.