@nextcli/cli

中文文档
0.1.1发布于 2026/11/02Apache-2.0TypeScriptES Module零依赖构建来源已验证

NextCLI CLI

中文使用文档
文档目录9 节
  1. 安装
  2. 使用
  3. 无头模式
  4. 会话管理
  5. 命令行选项
  6. 环境变量
  7. 命令
  8. 会话列表( cn ls )
  9. TTY-less支持

NextCLI CLI

NextCLI命令行cn)是一个可定制的命令行编码代理。

NextCLI CLI Demo

安装

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/nextcli-dev/nextcli/main/extensions/cli/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/nextcli-dev/nextcli/main/extensions/cli/scripts/install.ps1 | iex

如果你有Node.js 20+,也可以使用npm安装:

npm i -g @nextcli/cli

使用

cn

无头模式

无头模式(-p flag)在没有交互式终端UI的情况下运行,使其适合:

  • 脚本和自动化
  • CI / CD管道
  • 码头工人的容器
  • VS Code扩展集成
  • 没有TTY的环境
# Basic usage
cn -p "Generate a conventional commit name for the current git changes."

# With piped input
echo "Review this code" | cn -p

# JSON output for scripting
cn -p "Analyze the code" --format json

# Silent mode (strips thinking tags)
cn -p "Write a README" --silent

TTY-less环境:无头模式被设计为在没有终端(TTY)的环境中工作,例如当从VS Code扩展使用终端命令调用时。当以无头模式运行时,CLI不会尝试读取stdin或初始化交互式UI。

命令安全在无头模式: headless模式直接执行Bash命令。两种命令仍然被拒绝:

  • 会破坏系统、主目录或磁盘的命令(rm -rf /, rm -rf ~, find / -delete, wipefs -a)永远不要跑,在任何模式下。
  • 广泛删除顶级目录,例如 /tmp命令行无法解析的路径,如 rm -rf $DIR我需要一个人。交互式CLI首先询问;无头模式拒绝它们。

这些检查读取命令文本,所以它们是最好的选择:命令总是可以隐藏它删除的内容。对于不受信任的提示或存储库,请运行 cn -p 在容器或沙盒中,并限制Bash ~/.continue/permissions.yaml.

会话管理

命令行会自动保存每次终端会话的聊天记录。你可以从中断的地方继续:

# Resume the last session in this terminal
cn --resume

# List recent sessions and choose one to resume
cn ls

# List sessions in JSON format (for scripting)
cn ls --json

命令行选项

  • -p:无头运行模式(无TUI)
  • --config <path>:指定代理配置路径
  • --resume:恢复该终端的上次会话
  • <prompt>:可选的起始提示符

环境变量

  • CONTINUE_CLI_DISABLE_COMMIT_SIGNATURE:禁止在生成的提交消息中添加Continue commit签名
  • FORCE_NO_TTY:强制ty -less模式,防止stdin读取(用于测试和自动化)

命令

  • cn:启动交互式聊天会话
  • cn ls:用TUI选择器列出最近的会话,选择一个恢复
  • cn login:继续验证
  • cn logout:退出当前会话
  • cn remote:启动远程实例
  • cn serve:开启HTTP服务器模式

会话列表(cn ls)

显示最近的会议,受屏幕高度限制,以确保它适合您的终端。

  • --json:脚本的JSON格式输出(总是显示10个会话)

TTY-less支持

CLI完全支持在没有TTY(终端)的环境下运行:

# From Docker without TTY allocation
docker run --rm my-image cn -p "Generate docs"

# From CI/CD pipeline
cn -p "Review changes" --format json

# From the VS Code extension terminal tool
cn -p "Analyze code" --silent

CLI自动检测TTY-less环境并调整其行为:

  • 当提供提示符时跳过stdin读取
  • 禁用交互式UI组件
  • 确保干净的标准输出/标准错误输出

有关详细信息,请参见 spec/tty-less-support.md.

版本与发布记录

@nextcli/cli 共发布 3 个版本,首次发布于 2026/11/02;过去 12 个月发布了 3 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.1.1latest2026/11/021 天前
0.1.02026/11/021 天前
0.0.0-stage2026/11/021 天前

关于 @nextcli/cli 的常见问题

@nextcli/cli 是什么?

NextCLI CLI

如何安装 @nextcli/cli?

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

@nextcli/cli 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@nextcli/cli 支持 ESM 还是 CommonJS?

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

@nextcli/cli 需要什么版本的 Node.js?

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

@nextcli/cli 可以商用吗?

@nextcli/cli 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@nextcli/cli 还在维护吗?

最新版本 0.1.1 发布于 2026/11/02(1 天前);至今共发布 3 个版本,其中过去 12 个月发布了 3 个;首次发布于 2026/11/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。