Releases: TokenFlux/tf-cli
Release list
v0.9.0
tf v0.9.0
本版由 GitHub Actions 构建,产物与校验和见下。
新增
- 交互登录和网页导入可选择默认 TokenFlux 网关或输入自定义地址;显式
--host跳过选择,已有自建网关账户优先沿用原地址,成功导入后才保存。 - Windows 原生控制台支持登录、方向键选择、中文及补充字符过滤、隐藏输入、行编辑与取消。建议使用 Windows Terminal 的 Git Bash;npm/pnpm 客户端需要 Git Bash 在 PATH 中。
install.sh支持 Windows x64 Git Bash,下载并校验 ZIP 后安装tf.exe;uninstall.sh同步支持 Windows 二进制与更新备份,默认保留凭据。- 新增独立的
install.ps1/uninstall.ps1,支持 Windows PowerShell 5.1 和 PowerShell 7,不依赖 Git Bash 或外部下载、解压工具。校验失败及程序被占用时保留旧版本,卸载默认保留凭据,-Purge不遍历目录链接。
修复
- Windows 客户端退出后恢复控制台输入输出模式,将控制台中断状态转换为退出码 130。
- Windows npm/pnpm 启动器通过配套 shell shim 启动,保留空参数、空格、引号和特殊字符,不将参数作为命令字符串执行。
- 修复 Windows
go install来源识别;自更新替换失败时尝试恢复原可执行文件。
安全
- Windows 配置目录、凭据和事务日志使用受保护的 DACL,仅允许当前用户、Administrators 和 SYSTEM 访问,不再把
chmod 0600当作 Windows 的访问控制。
安装
npm(跨平台,需 Node.js 18+)
npm install -g @tokenflux/tf升级请运行 npm install -g @tokenflux/tf@latest(tf update 不会直接修改 npm 托管的文件)。
Windows PowerShell(独立脚本,无 Git Bash / Node 依赖)
irm https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.ps1 | iex支持 Windows PowerShell 5.1 与 PowerShell 7,安装到 %USERPROFILE%\.local\bin\tf.exe,校验 SHA-256 后替换程序。无需管理员权限;按脚本提示配置 PATH。
macOS / Linux / Windows Git Bash(独立脚本,无 Node 依赖)
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh默认安装到 ~/.local/bin/tf,Windows x64 安装为 tf.exe(可通过 TF_INSTALL_DIR 自定义)。Windows 请在 Git Bash 中执行;脚本需要 curl、unzip 和 cygpath。升级直接运行 tf update。
手动下载
| 系统 | 文件 |
|---|---|
| macOS(Apple Silicon) | tf_0.9.0_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.9.0_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.9.0_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.9.0_linux_arm64.tar.gz |
| Windows x64 | tf_0.9.0_windows_amd64.zip |
macOS 与 Linux 产物解压后将 tf 放入 PATH 即可。
Windows 产物解压后将 tf.exe 放入 PATH。建议在 Windows Terminal 的 Git Bash 中运行;经典 mintty 使用 winpty tf.exe。通过 npm/pnpm 安装的客户端需要 Git Bash 在 PATH 中。
卸载
Windows PowerShell
irm https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.ps1 | iex默认保留凭据;下载脚本后使用 -Purge 可同时清理配置与缓存,自定义安装目录使用 -InstallDir 或 TF_INSTALL_DIR。
npm
npm uninstall -g @tokenflux/tf独立脚本
仅删除 tf 二进制,保留配置、凭据与缓存:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh同时清理配置、凭据与缓存目录:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh -s -- --purge若安装时指定了 TF_INSTALL_DIR,可在管道右侧传入对应环境变量:curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | TF_INSTALL_DIR=/原安装目录 sh。
校验
sha256sum -c SHA256SUMS --ignore-missing引用版本:提交 900b7c8 / Go 1.27.0
Full Changelog: v0.8.0...v0.9.0
v0.8.0
tf v0.8.0
本版由 GitHub Actions 构建,产物与校验和见下。
破坏性变更
TF_API_KEY改为仅供本次启动使用,不再覆盖已保存账户的凭据。默认连接默认网关,自建网关需显式传入--host;指定-k时优先使用对应的本地 Key。tf status和tf keys仍查询已保存的账户。- 指定名称登录时,覆盖已有不同 Key 也需要确认,默认取消。非交互覆盖请使用
tf login <name> --force。
改进
- 容器和 CI 可直接通过
TF_API_KEY启动,无需先保存本地凭据;运行时 Key、模型目录和槽位不落盘。 tf status对没有总限额的 Key 显示账户可用额度,不再显示0/0;区分额度耗尽、真正不限额和数据缺失。tf status的“今日”一行显示实际扣费和计费单位,使用usage.today.actual_cost,最多保留四位小数;不以倍率前的费用代替实际扣费。- 模型编辑器切换 Key 前先列出将被清空的槽位并确认,默认取消。
- 窄终端中的选择器按可用行列数布局,长文本显示省略号,选中后仍使用完整模型 ID;中文和带颜色文本的宽度计算与截断保持一致。
修复
- 切换 Key 或主模型时重新校验辅助槽,避免主会话、后台任务串用旧 Key 的模型;同名模型优先保留当前绑定账户。
-k、-e、--host与-m只影响本次启动,自动补齐槽位也不会修改已保存的绑定。- 副模型选择器和模型编辑器中的 Ctrl-C 终止命令并返回 130,不再继续启动客户端;Esc 保留返回或跳过当前步骤的行为。
- 修复中文分组过滤无匹配项、退格截断多字节字符的问题。
- 带分组前缀的模型切换思考强度时保留分组,不再误报变体不存在或匹配到其他分组。
- 重复
--set会校验全部赋值后一次保存,不再只保留最后一项;重复赋值同一槽或任一赋值无效时明确报错,不部分保存。 - 并发修改配置时拒绝旧快照覆盖,避免登录恢复刚被退出命令删除的 Key;双文件事务支持进程中断后的恢复。
安全
- 网关认证请求禁止跨主机、跨端口及 HTTPS 降级重定向,避免
x-api-key被转发到其他 origin。 tf status不再将环境变量中的 Key 发送到所有已保存网关。- 代理诊断不再输出 URL 中的用户名、密码和查询参数。
- 网页导入覆盖已有 Key 时,终端确认默认选择拒绝;配置事务恢复日志权限固定为
0600,完成后删除。
安装
npm(跨平台,需 Node.js 18+)
npm install -g @tokenflux/tf升级请运行 npm install -g @tokenflux/tf@latest(tf update 不会直接修改 npm 托管的文件)。
macOS / Linux(独立脚本,无 Node 依赖)
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh默认安装到 ~/.local/bin/tf(可通过 TF_INSTALL_DIR 自定义)。升级直接运行 tf update。
手动下载
| 系统 | 文件 |
|---|---|
| macOS(Apple Silicon) | tf_0.8.0_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.8.0_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.8.0_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.8.0_linux_arm64.tar.gz |
| Windows x64 | tf_0.8.0_windows_amd64.zip |
macOS 与 Linux 产物解压后将 tf 放入 PATH 即可。
Windows 产物解压后将 tf.exe 放入 PATH。当前仅支持非交互模式,请使用 --no-input 配合 -m、-k 参数明确指定。
卸载
npm
npm uninstall -g @tokenflux/tf独立脚本
仅删除 tf 二进制,保留配置、凭据与缓存:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh同时清理配置、凭据与缓存目录:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh -s -- --purge若安装时指定了 TF_INSTALL_DIR,可在管道右侧传入对应环境变量:curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | TF_INSTALL_DIR=/原安装目录 sh。
校验
sha256sum -c SHA256SUMS --ignore-missing引用版本:提交 2a9e901 / Go 1.27.0
Full Changelog: v0.7.0...v0.8.0
v0.7.0
tf v0.7.0
本版由 GitHub Actions 构建,产物与校验和见下。
新增
- 新增 Pi coding agent 支持(命令
tf pi,进程名pi):- 接入协议覆盖
openai_responses(映射openai-responses)、anthropic_messages(映射anthropic-messages)与openai_chat_completions(映射openai-completions),通常优先 Responses,Claude 模型在允许时优先原生 Anthropic,Chat 作为兼容回退;绝不伪装 Claude Code,claude_code_only分组仍不可用于 Pi。 - 启动采用纯进程环境与扩展方案:通过
--extension加载权限0600的临时 JavaScript Extension 动态注册随机名 provider,退出后自动删除;网关 API Key 仅保留在进程环境变量中,不进入 argv、临时文件或~/.pi/agent/auth.json、~/.pi/agent/models.json等持久配置,Pi 原有的 settings、扩展、技能与会话仍正常加载。 - 模型槽定义仅需
default主模型槽;网关/v1/models仅提供模型 ID 时采用保守自定义模型缺省(128K context、16K output、text-only);tf pi -e high映射到pi --thinking high,仅在传入独立 effort 时声明 reasoning。 - harness 缺失时引导安装选项支持
npm install -g --ignore-scripts @earendil-works/pi-coding-agent与pnpm add -g --ignore-scripts @earendil-works/pi-coding-agent。
- 接入协议覆盖
- 新增可重复执行的卸载脚本
uninstall.sh,用于删除由install.sh安装在TF_INSTALL_DIR(默认~/.local/bin)的tf二进制;默认保留当前生效的配置、凭据与缓存,支持通过--purge显式清理。
安装
npm(跨平台,需 Node.js 18+)
npm install -g @tokenflux/tf升级请运行 npm install -g @tokenflux/tf@latest(tf update 不会直接修改 npm 托管的文件)。
macOS / Linux(独立脚本,无 Node 依赖)
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh默认安装到 ~/.local/bin/tf(可通过 TF_INSTALL_DIR 自定义)。升级直接运行 tf update。
手动下载
| 系统 | 文件 |
|---|---|
| macOS(Apple Silicon) | tf_0.7.0_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.7.0_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.7.0_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.7.0_linux_arm64.tar.gz |
| Windows x64 | tf_0.7.0_windows_amd64.zip |
macOS 与 Linux 产物解压后将 tf 放入 PATH 即可。
Windows 产物解压后将 tf.exe 放入 PATH。当前仅支持非交互模式,请使用 --no-input 配合 -m、-k 参数明确指定。
卸载
npm
npm uninstall -g @tokenflux/tf独立脚本
仅删除 tf 二进制,保留配置、凭据与缓存:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh同时清理配置、凭据与缓存目录:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh -s -- --purge若安装时指定了 TF_INSTALL_DIR,可在管道右侧传入对应环境变量:curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | TF_INSTALL_DIR=/原安装目录 sh。
校验
sha256sum -c SHA256SUMS --ignore-missing引用版本:提交 768d9a5 / Go 1.27.0
Full Changelog: v0.6.0...v0.7.0
v0.6.0
tf v0.6.0
本版由 GitHub Actions 构建,产物与校验和见下。
改进
- 对
claude、codex、opencode这类透传命令,harness 名后的-h/--help改为透传给底层工具(如tf opencode --help查看 OpenCode 帮助);查看 tf 包装层对此 harness 的帮助改用tf --help opencode。 tf keys --refresh与启动筛选无可用 Key 时的自动自愈路径采用统一的先拉取各 Key/v1/models、再以最新模型分组前缀探测协议的刷新顺序;网络请求失败时继续沿用已有缓存。- npm 发布脚本为发布后的 dist-tags 校验增加有界重试(0、1、2、4、8、15、30 秒),解决成功发布后因注册表短时读取到旧 tag 导致流程误判失败的问题。
- 自更新版本比较遵循 SemVer 预发布版本优先级规则,npm 安装的 0.5.3-bootstrap.0 能正确识别正式版 0.5.3 为新版本并给出包管理器升级命令,不再误报已是最新或执行自替换。
安装
npm(跨平台,需 Node.js 18+)
npm install -g @tokenflux/tf升级请运行 npm install -g @tokenflux/tf@latest(tf update 不会直接修改 npm 托管的文件)。
macOS / Linux(独立脚本,无 Node 依赖)
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh默认安装到 ~/.local/bin/tf(可通过 TF_INSTALL_DIR 自定义)。升级直接运行 tf update。
手动下载
| 系统 | 文件 |
|---|---|
| macOS(Apple Silicon) | tf_0.6.0_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.6.0_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.6.0_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.6.0_linux_arm64.tar.gz |
| Windows x64 | tf_0.6.0_windows_amd64.zip |
macOS 与 Linux 产物解压后将 tf 放入 PATH 即可。
Windows 产物解压后将 tf.exe 放入 PATH。当前仅支持非交互模式,请使用 --no-input 配合 -m、-k 参数明确指定。
卸载
npm
npm uninstall -g @tokenflux/tf独立脚本
仅删除 tf 二进制,保留配置、凭据与缓存:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh同时清理配置、凭据与缓存目录:
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | sh -s -- --purge若安装时指定了 TF_INSTALL_DIR,可在管道右侧传入对应环境变量:curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/uninstall.sh | TF_INSTALL_DIR=/原安装目录 sh。
校验
sha256sum -c SHA256SUMS --ignore-missing引用版本:提交 47d06b6 / Go 1.27.0
Full Changelog: v0.5.3...v0.6.0
v0.5.3
tf v0.5.3
本版由 GitHub Actions 构建,产物与校验和见下。
新增
- 新增 npm 分发方式:发布主包
@tokenflux/tf(暴露tf命令)及 5 个平台二进制可选依赖包(@tokenflux/tf-darwin-arm64、@tokenflux/tf-darwin-x64、@tokenflux/tf-linux-arm64、@tokenflux/tf-linux-x64、@tokenflux/tf-win32-x64)。支持npm install -g @tokenflux/tf全局安装与npx @tokenflux/tf/pnpx @tokenflux/tf单次调用。 - 主包采用平台二进制分发架构,仅需 Node >=18 启动轻量 JS launcher,无 postinstall 外部下载脚本且无运行时 JS 依赖;自动透传 stdio、信号与退出码。
改进
tf update自动识别node_modules下的安装路径,检测到更新时提示运行npm install -g @tokenflux/tf@latest,避免自更新机制直接覆盖包管理器文件。- npm 发布脚本在远端 package 文档尚未完成传播时改用 dist-tags 识别已存在版本,自动跳过不可变的已发布版本并校验目标 tag,同时对预发布版本临时占据
latest输出明确提示。
下载
一行装(自动挑架构,装到 ~/.local/bin,不需要 sudo):
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh
已经装过的话直接 tf update。
手动下载:
| 系统 | 文件 |
|---|---|
| macOS(Apple 芯片) | tf_0.5.3_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.5.3_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.5.3_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.5.3_linux_arm64.tar.gz |
| Windows | tf_0.5.3_windows_amd64.zip |
解开就是单个可执行文件,没有依赖,放进 PATH 即可。
Windows 目前只能非交互使用:选择器与登录提问需要终端交互,
Windows 上尚未实现,请用 --no-input 配合 -m、-k 明确指定。
校验
sha256sum -c SHA256SUMS --ignore-missing
引用版本:提交 59ef0c8 / Go 1.27.0
Full Changelog: v0.5.2...v0.5.3
v0.5.2
tf v0.5.2
本版由 GitHub Actions 构建,产物与校验和见下。
破坏性变更
- 项目仓库与 Go module 从
github.com/tokenflux/tkr改为github.com/tokenflux/tf-cli。源码安装请改用go install github.com/tokenflux/tf-cli/cmd/tf@latest;命令名、二进制名、配置目录和TF_*环境变量保持不变。
新增
tf login --from-web现在支持 TokenFlux 网页通过本机回环地址导入 Key,并在终端确认后复用现有网关校验和凭据保存流程。- 新增网页前端接入协议文档,说明端口发现、CORS/LNA/PNA、请求字段、响应状态和安全边界。
改进
- 同步实施计划、项目状态与测试数字;明确网页导入的“过渡版”是阶段名,不对应 SemVer
v0.5.0。 tf login未指定方式时默认高亮网页导入,并在监听就绪后打开 Keys 页面;粘贴选项、管道输入及--with-key/--from-web直达方式保留。- 网页导入未显式指定本地名称时,可在网关校验后选择按模型自动命名、采用合法的网页 Key 名称或自订名称;自动候选会避开已有名称。
- 统一中英文登录文案、网关展示术语与模型数单复数;帮助用法占位符保持语言中性的 ASCII。
tf keys现在显示网页导入的 Origin、分组和远端 Key 名,JSON 输出同步提供来源字段。- harness 安装完成后不再写入无人消费且可能随外部升级失真的
installs记录;实际安装状态继续以 PATH 探测为准,旧字段会在下次保存配置时清理。 - v0 继续保留
tf config的cache_dir输出以兼容机器调用,但不再把该路径描述为现有存储层,也不会静默迁移或删除旧缓存文件。
修复
- 手动触发发版时明确检出输入 tag,避免用 main HEAD 构建旧 tag 的产物。
- 删除 CI 中重复的五目标交叉编译,并把发版检查移到构建矩阵之前。
- GitHub Actions 升级到 Node 24 运行时版本,Go 缓存改用现有的
go.mod作为依赖键,消除零依赖项目缺少go.sum的恢复告警。 - 归档不再作为现行依据的早期分组识别、模型选择、下一批功能、产品决策、后端认证讨论稿及时间戳 TODO;仍有效的开放项已迁入 PLAN / STATUS。
- 修正文档中的缓存存储、参数透传、探针名、默认登录名称、XDG 卸载路径和网页前端落地状态。
安全
- 网页导入只监听
127.0.0.1:43110-43119,严格校验 Origin、限制请求体并拒绝未知 JSON 字段;Key 不回显到 HTTP 响应。 - 网页导入始终要求交互式终端确认,
--json和--no-input不能绕过确认。 - 网页导入链接新增短期 session secret;前端可通过绑定实际端口与随机 challenge 的 HMAC 验证 CLI,并用可选导入证明让终端显示相同状态。普通端口扫描和无证明导入保持兼容,但页面与终端必须显示未验证警告。
/import在读取请求体前占用单一事务,并将 body 读取限制为 10 秒,避免并发慢请求持续占用处理协程;会话关闭超时后会强制关闭活动连接。- 收紧 challenge、网关 hostname 和终端展示元数据校验;前端示例会在 Keys 路由初始化时清除有效或畸形的
#tfcli=...fragment,并明确导入证明不提供防重放语义。
下载
一行装(自动挑架构,装到 ~/.local/bin,不需要 sudo):
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh
已经装过的话直接 tf update。
手动下载:
| 系统 | 文件 |
|---|---|
| macOS(Apple 芯片) | tf_0.5.2_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.5.2_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.5.2_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.5.2_linux_arm64.tar.gz |
| Windows | tf_0.5.2_windows_amd64.zip |
解开就是单个可执行文件,没有依赖,放进 PATH 即可。
Windows 目前只能非交互使用:选择器与登录提问需要终端交互,
Windows 上尚未实现,请用 --no-input 配合 -m、-k 明确指定。
校验
sha256sum -c SHA256SUMS --ignore-missing
引用版本:提交 f337ee0 / Go 1.27.0
Full Changelog: v0.5.1...v0.5.2
v0.5.1
tf v0.5.1
本版由 GitHub Actions 构建,产物与校验和见下。
改进
- 重写 README:安装、快速上手、模型槽、多 Key、状态诊断和注入机制现在按
实际使用顺序组织,并明确 Linux、macOS 与 Windows 的支持边界。 - 统一登录、退出、补全、模型选择、状态检查及环境冲突提示的中文措辞;
英文文案、命令参数和运行行为不变。 - 发布页现在同时包含手写变更记录和 GitHub 自动生成的完整变更链接,
并列出各平台产物、校验方法、构建提交与 Go 版本。
下载
一行装(自动挑架构,装到 ~/.local/bin,不需要 sudo):
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh
已经装过的话直接 tf update。
手动下载:
| 系统 | 文件 |
|---|---|
| macOS(Apple 芯片) | tf_0.5.1_darwin_arm64.tar.gz |
| macOS(Intel) | tf_0.5.1_darwin_amd64.tar.gz |
| Linux x86_64 | tf_0.5.1_linux_amd64.tar.gz |
| Linux ARM64 | tf_0.5.1_linux_arm64.tar.gz |
| Windows | tf_0.5.1_windows_amd64.zip |
解开就是单个可执行文件,没有依赖,放进 PATH 即可。
Windows 目前只能非交互使用:选择器与登录提问需要终端交互,
Windows 上尚未实现,请用 --no-input 配合 -m、-k 明确指定。
校验
sha256sum -c SHA256SUMS --ignore-missing
引用版本:提交 6362ef1 / Go 1.27.0
Full Changelog: v0.5.0...v0.5.1
v0.5.0
tf v0.5.0
本版由 GitHub Actions 构建,产物与校验和见下。
新增
tf status:一条命令看清当前状态 —— 哪几把 Key、各自还剩多少额度、
三个 harness 装没装、有没有东西会盖掉 tf 的注入。- 额度显示接入网关的
/v1/usage。撞 429 时终于能分清是限流还是额度用完 ——
两者状态码相同,而 harness 只会把 429 原样丢给你。
改进
- 启动前会检查
~/.claude/settings.json里是否有env覆盖了本次注入。
那里的值优先级高于 tf 注入的环境变量,撞上时横幅写的模型是假的。
警告排在横幅之前,且只报真正相撞的键。 - 输错选项编号会重问,不再直接退出(上限三次)。
修复
- 额度用尽会让协议探测全部误判为「可用」。额度检查发生在准入检查之前,
配额一空每个入口都返回 429,而分类器把它当成了通过。后果是
claude_code_only分组的模型会出现在 codex 的候选里,选中就撞 403。 - 兜底的编号选择器读的是 stdin,被管道占住时(
echo $KEY | tf login)
直接拿到 EOF。改读/dev/tty。 - 答应装 Tab 补全但写盘失败时,仍会被记成「已经问过」,从此不再提起。
- 连不上网关时报的是
TF_NOT_LOGGED_IN,会把人引向重新登录 ——
而重新登录解决不了网络不通。改成TF_NETWORK。 - 没有 npm 的机器上,安装建议依然是
npm install -g ...。现在会先说
「本机没有 npm」。bash 补全的提示同理,不再无条件建议brew。 - zsh 补全的候选目录漏了 Linux 的标准位置
/usr/share/zsh/site-functions。
下载
一行装(自动挑架构,装到 ~/.local/bin,不需要 sudo):
curl -fsSL https://raw.githubusercontent.com/tokenflux/tf-cli/main/install.sh | sh
已经装过的话直接 tf update。
手动下载:
| 系统 | 文件 |
|---|---|
| macOS(Apple 芯片) | tf_<版本>_darwin_arm64.tar.gz |
| macOS(Intel) | tf_<版本>_darwin_amd64.tar.gz |
| Linux x86_64 | tf_<版本>_linux_amd64.tar.gz |
| Linux ARM64 | tf_<版本>_linux_arm64.tar.gz |
| Windows | tf_<版本>_windows_amd64.zip |
解开就是单个可执行文件,没有依赖,放进 PATH 即可。
Windows 目前只能非交互使用:选择器与登录提问需要终端交互,
Windows 上尚未实现,请用 --no-input 配合 -m、-k 明确指定。
校验
sha256sum -c SHA256SUMS --ignore-missing
引用版本:提交 d8aaf93 / Go 1.27.0
Full Changelog: v0.4.0...v0.5.0