# @galaxy-stack/blackhole-cli 中文文档

规范地址：https://npmcn.com/package/%40galaxy-stack/blackhole-cli/

版本：3\.0\.12
npm 元数据更新时间：2026-11-13T04:01:14.036Z
中文译文更新时间：2026-11-15T21:41:07.979Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40galaxy-stack/blackhole-cli
原文对照：https://npmcn.com/package/%40galaxy-stack/blackhole-cli/?lang=original
项目主页：https://github.com/galaxy-blackhole/galaxy-code#readme
源码仓库：https://github.com/galaxy-blackhole/galaxy-code

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：3.1 MB，289 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.13
- 运行依赖：8 个
- 首次发布：2026-09-27T08:24:36.929Z
- 最新版本发布：2026-11-13T04:01:13.785Z
- 近 30 天下载量：2591（2026-10-16 至 2026-11-14，npm 官方下载统计）
- 已发布版本数：72（近 12 个月 72 个）

## 中文简介

Galaxy Code CLI 和 Galaxy 代理运行时间的终端 UI

## 安装

```sh
npm install @galaxy-stack/blackhole-cli
```

也可以使用：`pnpm add @galaxy-stack/blackhole-cli`、`yarn add @galaxy-stack/blackhole-cli`、`bun add @galaxy-stack/blackhole-cli`

## README

# 银河黑洞CLI

`blackhole` ——"银河""黑洞"的终端半个:一个可以运行在任意一种中的编码代理 库,加上Galaxy Blackhole网络图形界面的启动器。 已公布身份为 `@galaxy-stack/blackhole-cli`二进制是 `blackhole`。 。 。 .

`blackhole chat` 财务报告和审定财务报表 `blackhole web` 运行在 **银河系黑洞带** (单位:千美元)`blackhole-tauri`: 会话、模型、工具和网络图形界面是相同的应用程序 桌面外壳负载。 一发子弹 `run`, (中文(简体) ), `flow`, (中文(简体) ), `skills` 财务报告和审定财务报表 `memory` 命令仍在使用 `@galaxy-stack/ai-coder-core`;终端表面本身为回放19+墨水 7.

从这个包裹中分离出来的护航舰: `blackhole harness install` 下载到 `~/.galaxy/harness/blackhole-harness`解决者然后按顺序读出, `GBH_TAURI_ROOT`, (中文(简体) ), `$GBH_HOME/harness/blackhole-harness`, (中文(简体) ), `~/.galaxy/harness/blackhole-harness` (和任何 `--dir` 安装器,一个兄弟 `blackhole-harness` 退出, 最后是开发者路径 `~/Desktop/Project/galaxy/galaxy-blackhole/blackhole-harness`。促进需求 **22.6+ 节点** - 那个 用于剥取类型Script 类型的地板—— 其它没有: 发射器是一个节点程序,所以 `blackhole web` 和Node一起运行 而不是问Bun。 梯子是 `GBH_NODE` 最新数据 nvm 安装 `node` 临 时 议 程 `/usr/local/bin/node` → `/opt/homebrew/bin/node`; 当无时 达到22.6 命令名称 每个二进制拒绝 以及如何安装一个。 邦只是个 构建桌面检出( 它将客户端插件捆绑) 的工具, 绝不是启动依赖 .

## 安装

```sh
npm i -g @galaxy-stack/blackhole-cli@latest
blackhole harness install   # install the harness from npm into ~/.galaxy/harness
blackhole doctor            # check the API key and the connection
blackhole web               # open the Galaxy Blackhole web GUI
blackhole chat              # start working
```

需要22.13节节点.

一个全球安装装置携带的是CLI,而不是被牵引. 运行 `blackhole harness install` 一次;如果你 忘记, `chat` 财务报告和审定财务报表 `web` 注意丢失的绳子, 打印两条出路, 在终端 提议 `Cài harness ngay? [Y/n]` ——回答是安装它,您输入的命令继续 独自一人.

## 绳子

绳子`blackhole-harness`)是应用程序 `chat` 财务报告和审定财务报表 `web` 脚 这是一个单独的项目,所以 此软件包按要求安装, 而不是捆绑它 :

| 命令 | 它会做什么 |
| --- | --- |
| `blackhole harness install` | 将吊带安装到 `~/.galaxy/harness/blackhole-harness` ——npm包先是git,再是ZIP——并验证主机运行时间(`--force`, (中文(简体) ), `--dir`, (中文(简体) ), `--from`, (中文(简体) ), `--no-deps`(中文(简体) ) |
| `blackhole harness status` | 打印正在使用的带子,它来自何处,它的版本,节点/bun,其中 `node_modules` 持有内核( n)`apps/host` 或升起的,无论是主机运行时间(`@deepseek-ai/dsh/lib/bin.js`在那里,还有 `nguồn: npm @galaxy-blackhole/blackhole-harness@0.1.0` npm 安装 |
| `blackhole harness remove` | 删除 `~/.galaxy/harness` 问(`--yes` 跳过问题) |

`install` 首先从 npm 获取已公布的带: `npm i --omit=dev --prefix <tmp> @galaxy-blackhole/blackhole-harness@latest` 是一个已经携带内核及其 依赖性——测量为12/11/2026:684个包,16个直接依赖性——安装器移动 那棵树到检查根, 内核坐在那里 `node_modules/@deepseek-ai/dsh` (无) `apps/host/node_modules`,没有秒 `npm install`) (中文(简体) ). `GBH_HARNESS_PACKAGE` 重命名为 软件包和 `GBH_HARNESS_SPEC` 标出一个版本。 当 npm 丢失或失败时, 它会回到 `git clone --depth 1` (git on PATH; Git for Windows counts) 然后从 GitHub, 装有内置的 ZIP 读取器的解开件—— 没有 git, 没有 `unzip`,没有 `tar`。这些运行装置 发射装置需要的: `bun install` 在退出根和在 `apps/host` 当包是 可用,或在内 npm `apps/host` 当只有npm是.. `npm ci --omit=dev` 退出时 携带一个 `package-lock.json`, (中文(简体) ), `npm install --omit=dev` 否则,在 `ci` 拒绝无法遵守的锁文件 。 每一步在运行前都会被打印出来,还有一步 无法打印它自己的最后15行 . `--force` 再次下载, `--dir <path>` 挂断 其他地方(地点被记录,所以下一个 `chat` 发现它, `--from <url|npm>` 使用一个 `.zip` URL, 另一个 git 寄存器, 或单词 `npm` 强迫包裹 `--no-deps` 下载后停止( skipping npm, 它总是安装软件包的依赖性).

`install` 只有在检出可以启动时才完成: 它检查发射装置的运行时间 开始, `@deepseek-ai/dsh/lib/bin.js`在两种布局中—— `apps/host/node_modules/…` (单位:千美元) 仓库检查, `node_modules/…` npm 包 - 当文件丢失时 以退出代码1报告失败,而不是说"xong". `chat` 财务报告和审定财务报表 `web` 在产出任何东西之前做同样的检查, 所以一个半植入的树产生 一句话(缺少什么,以及 `blackhole harness install --force`)而不是从 在发射器内部.

`status` 总是说梯子上的哪个跑道回答:

| 来源 | 路径 |
| --- | --- |
| `GBH_TAURI_ROOT` | 由该变量命名的退出 |
| `$GBH_HOME/harness/blackhole-harness` | 一条绳子被绑在一条绳子上 |
| `~/.galaxy/harness/blackhole-harness` | 默认安装,或任何地方 `--dir` 记录 |
| `sibling của package` | (单位:千美元) `blackhole-harness` 此软件包旁边的退出 |
| `dev checkout` | `~/Desktop/Project/galaxy/galaxy-blackhole/blackhole-harness` |

当没有人回答时,CLI会打印出两种方式——安装它,或者点 `GBH_TAURI_ROOT` 在一次取出时——带有macOS/Linux和两个Windows shells的命令:

```text
Chưa có harness blackhole-harness. Chạy: blackhole harness install   (hoặc đặt GBH_TAURI_ROOT tới bản checkout)
  macOS/Linux (bash/zsh):  export GBH_TAURI_ROOT="$HOME/Desktop/Project/galaxy/galaxy-blackhole/blackhole-harness"
  Windows (PowerShell):    $env:GBH_TAURI_ROOT = "$HOME\Desktop\Project\galaxy\galaxy-blackhole\blackhole-harness"
  Windows (cmd):           set GBH_TAURI_ROOT=%USERPROFILE%\Desktop\Project\galaxy\galaxy-blackhole\blackhole-harness
```

在终点站 `chat` 财务报告和审定财务报表 `web` 询问 `Cài harness ngay? [Y/n]` - 脚本( 无) TTY)得到了上面的文本并退出了代码1,因为没有任何东西会在那里回答一个提示.

## 图标

```sh
blackhole chat                      Terminal UI on the Galaxy Blackhole harness (default)
blackhole chat --once "<text>"      One harness turn to stdout: prompt, answer, log
blackhole harness install           Download the harness into ~/.galaxy/harness (--force, --dir, --from, --no-deps)
blackhole harness status            Which harness is used, its source, version, node/bun, dependencies
blackhole harness remove            Delete ~/.galaxy/harness (asks first; --yes skips the question)
blackhole migrate [--from <dir>] [--to <dir>] [--dry-run]
                                    Copy sessions/storages/attachments from an older home
blackhole web [options]             Open the Galaxy Blackhole web GUI
blackhole doctor                    Check the API key and the connection
blackhole run "task" [--json]       One task; --json writes a single final result
blackhole flow <file.json>          Run sequential prompts in one session and log each step
blackhole skills [show <id>]        Discover or inspect skills
blackhole skills search <query>     Search a configured skill index
blackhole skills install <id>       Install a skill (--skill-version <range>)
blackhole skills update             Update installed skills
blackhole skills remove <id>        Remove an installed skill
blackhole mcp                       Connect configured servers and list tools
blackhole mcp login <server>        Browser login for an HTTP server with auth=oauth
blackhole mcp logout <server>       Forget stored OAuth tokens for a server
blackhole memory search <query>     Recall confirmed workspace notes
blackhole memory list               List notes, including candidates
blackhole memory consolidate        Prune superseded revisions and orphan vectors
blackhole memory remember <key> <text>  Store a user-confirmed note
blackhole memory confirm <key>      Confirm the current candidate
blackhole memory history <key>      Show revisions and provenance
blackhole memory forget <key>      Delete all revisions of a key
blackhole sessions                  List conversation sessions
blackhole logs [n]                  Show the last n runtime log entries (default 20)
blackhole setup                     Ask for the Galaxy API key (--reset to enter a new one)
blackhole config                    Check the shared credential document (config doctor)
blackhole config migrate            Consolidate provider keys into ~/.galaxy/credentials.yaml
blackhole config doctor             Check the shared credential document
blackhole config path               Print where credentials and backups live
blackhole update                    Update blackhole to the newest version on npm
```

每个命令都用 `--workspace <dir>`· ; `chat`, (中文(简体) ), `run` 财务报告和审定财务报表 `flow` 还接受 `--model`, (中文(简体) ), `--base-url`, (中文(简体) ), `--profile coding|assistant|research`, (中文(简体) ), `--session <id>`, (中文(简体) ), `--thinking <level>`, (中文(简体) ), `--approval full|balanced`, (中文(简体) ), `--state-dir <outside-workspace>`, (中文(简体) ), `--agent-config <json>`, (中文(简体) ), `--no-galaxy-mcp`, (中文(简体) ), `--skills-dir`, (中文(简体) ), `--skills-index` 和嵌入的旗帜. `blackhole chat --continue` 恢复该工作空间的最新会话.

## API 密钥

一个钥匙,一个地方: `~/.galaxy/credentials.yaml`输入一次 `blackhole setup`,或在 网页图形用户界面对话框,或在 VS 代码扩展名中 —— 所有三个都读取同一文档, 因此是密钥 进入任何地方 任何地方工作。 设置 `GBH_GALAXY_API_KEY` 环境环境工作 如果你不想放在磁盘上的话.

`blackhole doctor` 打印被遮住的密钥,说明哪个来源回答,然后检查 模型实际答复 :

| 退出 | 含义 | 怎么办 |
| --- | --- | --- |
| 0 个 | 键、模型和网络都很好 | 失败在别处(例如网页图形界面) |
| 1个 | 任何商店中没有密钥 | 运行 `blackhole setup`,或输入到网络对话框中 |
| 2个 | 提供者无法联系 | 代理或防火墙有碍; 没有密钥可以帮助 |
| 3个 | 密钥被拒绝( 401/403) | 再输入一次 |
| 页:1 | 另一个答案 | 身体被打印出来 |

`blackhole config path` 打印正在播放的文件。 没有第二个设置 文件 : `~/.galaxy/config.json` 不再读、写或比较它. 基准 URL 或 型号 id 是一个每个运行的旗帜(`--base-url`, (中文(简体) ), `--model`) 或绳索设置,永远不会 存储的密钥镜.

## 网络图形界面

`blackhole web` 靴子 靴子 **银河系黑洞带** (单位:千美元)`blackhole-harness`,同样的应用程序 桌面外壳负载) `127.0.0.1` 并打开它打印的经认证的 URL。 页面是 GBH接口,越南语,标签和侧边栏有"银河黑洞"标题.

端口为 **固定在55906号**因此,每个靴子的URL都是一样的,可以被书签:

| 想要吗 | 怎么样 |
| --- | --- |
| 默认 | `blackhole web` → `http://127.0.0.1:55906/?token=…` |
| 另一个固定端口 | `--port 56000` (战胜一切) |
| 您的外壳默认值 | `GBH_WEB_PORT=56000 blackhole web` (赢55906,输给 `--port`(中文(简体) ) |
| 随机自由端口 | `--port 0` ——操作系统选择,印刷的URL表示: |

忙着呢 `55906` 是一个 **错误, 不是倒计时**: 发射器打印 `cổng 55906 đang bận — dùng --port <cổng khác>, hoặc --port 0 để lấy cổng ngẫu nhiên.` 停止, 因为一个无人的 URL 印刷比明显的失败还要糟糕。 桌面应用拥有55907和共享的带主机 保留5439,因此CLI,app和共享主机可以并肩运行. `--dry-run` 打印准确 命令第一个.

图形用户界面甚至在您有密钥之前就开始了: 页面加载及其对话框要求一个, 而 a 发射装置问题被报告为警告而不是启动失败.

`blackhole doctor` 检查模型侧; `blackhole web doctor` 报告 发射器(退出、22.6+节点、全权证书、 `apps/host` 运行时间)本身.

## 窗口

Windows 10/11 (cmd, PowerShell, Git Bash/MINGW64) 支持此软件包拥有的路径 : `harness install|status|remove`, (中文(简体) ), `chat` 财务报告和审定财务报表 `web`。 。 。 .

什么已经奏效了,为什么:

-   **不需要解析工具 .** `harness install` 读取 GitHub `.zip` 带有内置提取器 (中央目录+zlib),所以一个没有git的机器, `unzip` 或者说 `tar` 仍然安装.
-   **npm从不产入一个裸名, 也从不穿出一个外壳.** 视窗 npm 是一个 `.cmd` 嘘 `spawn` 拒绝在没有操作的情况下运行, MSI安装的节点可以离开 闪出路径. `src/npm-cli.ts` 以此顺序解决 npm :
    1.  `GBH_NPM` (明确的路径);
    2.  `npm` 路径;
    3.  `npm.cmd` 旁边 `node.exe`· ;
    4.  **节点运行 npm 自己的 JS 条目** —— 说 `node <nodeDir>\node_modules\npm\bin\npm-cli.js` (窗户安装器, nvm-窗口)或 `node <nodeDir>\..\lib\node_modules\npm\bin\npm-cli.js` (nvm on macOS/Linux, Homebrew));
    5.  `/opt/homebrew/bin/npm`, (中文(简体) ), `/usr/local/bin/npm` (马克OS/Linux). A 类 `.cmd` shim被解开 `npm-cli.js` 幕后开始 `shell: false`; 仅 包裹被包裹着 `cmd.exe /d /s /c` 与每个引用的论据 路径, 如 `C:\Users\Nguyen Van A\...` 从不取决于 cmd 如何引用。 Bun是个 `.exe` 并直接产出.
-   **一个没有npm的机器被告诉了这样,在文字上它可以采取行动.** 信件列出每个路径 以手动命令结尾`npm i -g @galaxy-stack/blackhole-cli@latest`(三); `spawn npm ENOENT` 从不打印. `blackhole update` 警告当npm大于7, 第一个版本为: `--omit=dev`。 。 。 .
-   **`harness install` 证明它是可安装的 .** 在抚养步骤之后,它检查 `apps/host\node_modules\@deepseek-ai\dsh\lib\bin.js`; 缺少的文件是失败(出局 1) , npm 输出的后15行 `blackhole harness install --force`而不是一个 "xong",只是后来失败,在靴子. `harness install --no-deps` 跳过依赖步骤 0号出口,上面写着.
-   **节点和npm是一个要求.** 从 nodejs.org 安装22.6+节点,包括npm; 无 npm `harness install` 可以下载取出但不能启动.
-   **`~` 永远不是文字.** 每条路都是 `os.homedir()` + 键 `path.join`这样 `~/.galaxy/harness` 变成 `C:\Users\<you>\.galaxy\harness` 在视窗上.
-   **没有带子的外壳.** `chat`编号 :`web` 产卵 `node.exe <checkout>\apps\cli\src\main.ts`, (中文(简体) ), 并停止使用 `kill("SIGTERM")` (Windows上的终止程序).
-   **没有 `/bin/sh` 没有 `:`\- 分开走.** 使用路径检查 `where` 窗口; 行程面板 运行其命令通过 `cmd.exe /d /s /c` 改为 `/bin/sh -c`; 浏览器打开器使用 `cmd /c start` 与 `^` 逃脱.
-   **存档符号链接** 当 Windows 允许它时( 开发模式或高空外壳) 被重新创建 并用其他警告跳过 `tools/features`,发射器不需要启动.
-   **启动路径中没有 POSIX 符号链接 .** 没有CLI在路上创造出来的 `chat`编号 :`web` 是一个 符号链接.

已知的空白( 有文件记录, 这里没有固定) :

-   吊带存储器自己的 `bun install` 运行一个创建符号链接范围的邮站 (单位:千美元)`node_modules/@galaxy-blackhole/*`) (中文(简体) ). 在 Windows 上需要开发者模式或高空外壳; 没有邦, `harness install` 只有保证 `apps/host/node_modules` (通过npm),即 主机运行时间,但不是发射装置自己的工作空间工具. 没有 npm 安装无法 并说,而不是假装下载就够了.
-   构建桌面外壳( E)`apps/desktop` + Tauri)并安装 `bh` 发射器在外面 此软件包和未在Windows上测试的软件包.
-   交互式 `chat` 只在 macOS/Linux 上运行过; TUI 本身是支持 Windows, 但它在那里的密钥处理尚未核实 .

## 思考层面

理性努力属于系统与模型,而不是CLI: 提供者采取 `think` 字段为布尔或水平 `low`编号 :`medium`编号 :`high`编号 :`max`,则不同 系统暴露了不同的装置。 对于 `run` 财务报告和审定财务报表 `flow` cLI确定每个模型的列表 验证选择 :

-   `Mặc định` 不发送 `think` 字段,所以模型会保留自己的默认值.
-   报告没有思维的探测器隐藏控制;需要思考的模型(用于 实例 `kimi-k2.7-code`(减) `Tắt`;其能力未经核实的模型保持 并报告警告.
-   `--thinking` 接受 `auto|default|off|on|minimal|low|medium|high|xhigh|max`,验证 对照已解决的列表; 不支持的选择失败, 并列出该模型提供的内容.

拥有模型目录和努力清单; `blackhole chat` 显示模型事实 会议报告。 已删除的设置文件没有读取, 因此没有地方可以声明 每个模型列表 任何更多的 - `--thinking` 仍在对照已解决的清单进行验证 `run`编号 :`flow`。 。 。 .

里面的绳子TUI: `Ctrl+O` 切换工具细节和 `Ctrl+L` 显示或隐藏思维 记录 模型和努力拾取器尚未被接入TUI(见 (b) 限制(见下文).

## 终端用户界面

TUI使用终端的备用屏幕,并有被固定的页眉,下方输入和 可滚动中心. 当运行活动时,动画标签报告 连接,思考, 响应,运行工具或验证,旁边是活的工具行.

| 密钥 | 行动 |
| --- | --- |
| 输入 | 将请求发送到控制会话 |
| 英格兰 | 取消活动转弯( 吊带收到) `session.cancel`(中文(简体) ) |
| 缩写+C | 退出并恢复终端 |
| 页面上下页 | 翻转笔录 |
| Ctrl+O 数据 | 扩展/拼贴工具细节 |
| 缩写+L | 显示/隐藏推理文本 |
| QQ / , 家/ 端, Ctrl+A / Ctrl+E | 编辑输入而不移动记录 |
| 删除/ 后空格 | 删除以前的相册(包括越南口音和emoji) |
| Ctrl+U / Ctrl+W 数据 | 删除光标/ 上一个字前的输入 |

终端显示抓取会话、工作空间、主机日志路径和模型事实 绳索报告. `--harness-profile <name>` 选择抓取配置文件;该应用程序的默认值为 `blackhole`. (中文(简体) )`--profile coding|assistant|research` 仍然选择遗留代理配置文件 `run`编号 :`flow`. ) (中文(简体) )

### Harness TUI v1 — 还没有接通的

向绳子的移动完成 一个真正的转弯( 即时, 模型调用,工具行, 这些是真实的空白:

-   **核准**: 拉带会按自己的批准政策进行。 TUI还没有 提出或答复 `approval/request` 框架,所以需要明确答案的工具会 单单 只读问题和内置工具正常运行.
-   **模式和努力拾取者**数字 : `/model` 财务报告和审定财务报表 `/effort` 未提供;会话使用 带默认. `--model` 仅记录在笔录和元行中.
-   **会议续会**数字 : `--continue` 财务报告和审定财务报表 `--session` 仍然属于遗留的运行时间 UI会话开始新鲜, 每一个转弯都坚持在拉入 `~/.galaxy/blackhole`。 。 。 .
-   `/skills`, (中文(简体) ), `/compact`, (中文(简体) ), `/plan`, (中文(简体) ), `/diff` 财务报告和审定财务报表 `/update` 通过遗产可以继续使用 `run`编号 :`flow` 路径,不是在绳子TUI.

## 供应商

默认提供者是 **`auto`** ——"银河黑洞"解决了它自己的模式, `deepseek-v4.1-flash`,本地或云;你从不挑卖家. 带子的特征 模式路线; `blackhole chat` 打印会话报告的模型。 钥匙总是来自 `~/.galaxy/credentials.yaml` 或环境,以及 `run`编号 :`flow` 仍然接受 `--base-url` 财务报告和审定财务报表 `--model` 每次运行。 已退休的设置文件不读取或写入 .

## MCP 磁共振

明确的主机配置从 `~/.galaxy/agent.json` 或者说 `--agent-config`数字 :

```json
{
  "mcpServers": [
    { "name": "project", "transport": "stdio", "command": "my-mcp-server", "args": [], "timeoutMs": 30000 },
    { "name": "remote", "transport": "http", "url": "http://127.0.0.1:8080/mcp" }
  ]
}
```

Stdio 命令仅在配置的服务器连接时执行,工具名称是 名称空格。 远程 HTTP 服务器可以使用浏览器 OAuth: set `"auth": "oauth"` 连接 运行 `blackhole mcp login <server>`. CLI还运送第一当事方 `orbit` 财务报告和审定财务报表 `nebula` 服务器并默认使用; 跳过它们 `--no-galaxy-mcp`。 。 。 .

## 技能和记忆

技能发现于 `~/.agents/skills/<name>/SKILL.md` 财务报告和审定财务报表 `<workspace>/.agents/skills/<name>/SKILL.md`。主机状态默认为 `~/.galaxy/agent/` 并且必须 位于选定工作空间外; 覆盖到 `--state-dir`。 。 。 .

内存使用 SQLite WAL + FTS5 并带有修订检查,出处和超会话. 明确的CLI 笔记确认; 模型笔记保留候选人,直到 `blackhole memory confirm`。 。 。 .

## 运行时间日志

每个命令都写 JSON 行到 `<state-dir>/logs/cli-<date>.ndjson` (0600,在 5 MB 旋转, 保留最近部分)和 `blackhole logs [n]` 读回来 会话历史恢复与 `--session` 或者说 `--continue`;同一会话的同时作者被拒绝.

## 常见问题

### @galaxy-stack/blackhole-cli 是什么？

Galaxy Code CLI 和 Galaxy 代理运行时间的终端 UI

### 如何安装 @galaxy-stack/blackhole-cli？

在项目目录运行 npm install @galaxy-stack/blackhole-cli，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 blackhole，可以用 npx blackhole 直接运行。

### @galaxy-stack/blackhole-cli 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/galaxy-stack\_\_blackhole-cli 是否存在。

### @galaxy-stack/blackhole-cli 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @galaxy-stack/blackhole-cli 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22\.13。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @galaxy-stack/blackhole-cli 可以商用吗？

@galaxy-stack/blackhole-cli 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @galaxy-stack/blackhole-cli 的下载量有多少？

根据 npm 官方下载统计，@galaxy-stack/blackhole-cli 在 2026/10/16 – 2026/11/14 这 30 天内被下载 2,591 次，日均约 86 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @galaxy-stack/blackhole-cli 还在维护吗？

最新版本 3\.0\.12 发布于 2026/11/13（2 天前）；至今共发布 72 个版本，其中过去 12 个月发布了 72 个；首次发布于 2026/09/27。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

