文档
推荐给好友,福利领不停!好友同步开通最高 1000 万词元额度 · 后续消费分佣最高 30%。
+50万 Token生成链接

安装、PATH 与卸载

TUI 安装路径、环境变量不生效、command not found、升级和卸载的完整排查。

先确认你是哪种安装方式

CrabCode TUI 有多条公开安装路径。排查 PATH 和卸载时,先按实际安装方式确认程序目录。

安装方式常见入口程序目录用户数据目录
安装脚本curl -fsSL https://updates.acosmi.com/crabcode/install.sh | sh 或 release 里的 install.sh${CRABCODE_HOME:-$HOME/.crabcode}/bin~/.crabcode
下载页直链块/downloads 国际区 macOS / Linux 多步命令~/.local/share/crabcode~/.crabcode
Windows 国内镜像脚本/downloads 中国区 Windows PowerShell 命令,或 install-win.ps1%CRABCODE_HOME%;未设置时 %LOCALAPPDATA%\CrabCode%USERPROFILE%\.crabcode
Windows 国际直链块/downloads 国际区 Windows PowerShell 命令%LOCALAPPDATA%\crabcode\crabcode-<version>-win-x64%USERPROFILE%\.crabcode

表里的用户数据目录按未设置 CRABCODE_CONFIG_DIR / CRABCODE_HOME 的默认场景列出。用户数据目录保存登录、配置、会话、记忆和调试日志。只想卸载程序时,不要删除整个 ~/.crabcode%USERPROFILE%\.crabcode

安装后打不开

先判断是“程序没装好”还是“PATH 没生效”。

bash
command -v crabcode
crabcode --version
command -v crabcode
crabcode --version

如果 command -v crabcode 没输出,但安装目录里能看到二进制,就是 PATH 没进当前 shell。

bash
ls -la "$HOME/.crabcode/bin/crabcode" "$HOME/.local/share/crabcode/crabcode" 2>/dev/null
ls -la "$HOME/.crabcode/bin/crabcode" "$HOME/.local/share/crabcode/crabcode" 2>/dev/null

按你的实际安装目录手动加入 PATH:

bash
# install.sh 默认路径
export PATH="$HOME/.crabcode/bin:$PATH"

# 下载页国际区直链路径
export PATH="$HOME/.local/share/crabcode:$PATH"
# install.sh 默认路径
export PATH="$HOME/.crabcode/bin:$PATH"

# 下载页国际区直链路径
export PATH="$HOME/.local/share/crabcode:$PATH"

确认能打开后,再把其中一行写入 shell 配置。

Shell配置文件写法
zsh~/.zshrcexport PATH="$HOME/.crabcode/bin:$PATH"
bash~/.bashrc~/.bash_profileexport PATH="$HOME/.crabcode/bin:$PATH"
fish~/.config/fish/config.fishset -gx PATH $HOME/.crabcode/bin $PATH

写完后重新打开终端,或运行:

bash
source ~/.zshrc
source ~/.zshrc

如果你用的是下载页国际区直链路径,把上面的 ~/.crabcode/bin 换成 ~/.local/share/crabcode

Windows PATH 排查

Windows 有两种公开安装路径:国内镜像脚本把安装根目录写进用户级 Path,国际直链块把版本化目录写进用户级 Path。新开一个 PowerShell 后检查:

powershell
Get-Command crabcode
crabcode --version
Get-Command crabcode
crabcode --version

如果找不到命令,检查用户 Path:

powershell
[Environment]::GetEnvironmentVariable("Path", "User")
[Environment]::GetEnvironmentVariable("Path", "User")

先定位本机真实程序目录:

powershell
# 国内镜像脚本 / install-win.ps1
$CnBin = if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }

# 国际直链块,把 <version> 换成下载页命令中的版本号
$IntlBin = "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64"

@($CnBin, $IntlBin) | ForEach-Object {
  if (Test-Path (Join-Path $_ "crabcode.exe")) { $_ }
}
# 国内镜像脚本 / install-win.ps1
$CnBin = if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }

# 国际直链块,把 <version> 换成下载页命令中的版本号
$IntlBin = "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64"

@($CnBin, $IntlBin) | ForEach-Object {
  if (Test-Path (Join-Path $_ "crabcode.exe")) { $_ }
}

把存在的那个目录加入用户 Path 后,关闭并重新打开 PowerShell:

powershell
# 国内镜像脚本 / install-win.ps1
$Bin = if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }

# 国际直链块则改用下面这一行
# $Bin = "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64"

$UserPath = [Environment]::GetEnvironmentVariable("Path", "User")
[Environment]::SetEnvironmentVariable("Path", "$UserPath;$Bin", "User")
# 国内镜像脚本 / install-win.ps1
$Bin = if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }

# 国际直链块则改用下面这一行
# $Bin = "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64"

$UserPath = [Environment]::GetEnvironmentVariable("Path", "User")
[Environment]::SetEnvironmentVariable("Path", "$UserPath;$Bin", "User")

CRABCODE_HOMECRABCODE_CONFIG_DIR

CRABCODE_HOME 改的是 CrabCode 的 home base,也会影响安装脚本的程序落点。Unix install.sh 默认把程序放到:

bash
${CRABCODE_HOME:-$HOME/.crabcode}/bin
${CRABCODE_HOME:-$HOME/.crabcode}/bin

Windows 国内镜像脚本默认把程序放到:

powershell
if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }
if ($env:CRABCODE_HOME) { $env:CRABCODE_HOME } else { "$env:LOCALAPPDATA\CrabCode" }

CRABCODE_CONFIG_DIR 改的是配置目录真源,不是程序目录。它适合隔离账号、配置、会话和记忆。不要用它来修 PATH。

优先级:

  1. CRABCODE_CONFIG_DIR:显式配置目录,最高优先。
  2. CRABCODE_HOME:home base,配置默认落到 <CRABCODE_HOME>/.crabcode
  3. 未设置时:真实 home 下的 ~/.crabcode

升级

推荐重跑同一种安装方式。

bash
# 镜像安装脚本,国内网络更稳
curl -fsSL https://updates.acosmi.com/crabcode/install.sh | sh
# 镜像安装脚本,国内网络更稳
curl -fsSL https://updates.acosmi.com/crabcode/install.sh | sh

Windows 国内镜像脚本:

powershell
powershell -NoProfile -ExecutionPolicy Bypass -Command "iex (irm 'https://updates.acosmi.com/crabcode/install-win.ps1')"
powershell -NoProfile -ExecutionPolicy Bypass -Command "iex (irm 'https://updates.acosmi.com/crabcode/install-win.ps1')"

如果用 /downloads 的国际区直链块,重新复制当前页面上的整段命令。升级只替换程序文件,不会清理 ~/.crabcode / %USERPROFILE%\.crabcode 里的配置、登录、历史和记忆。

卸载程序但保留数据

macOS / Linux:

bash
# install.sh 默认程序目录
rm -rf "$HOME/.crabcode/bin"

# 下载页国际区直链程序目录
rm -rf "$HOME/.local/share/crabcode"
# install.sh 默认程序目录
rm -rf "$HOME/.crabcode/bin"

# 下载页国际区直链程序目录
rm -rf "$HOME/.local/share/crabcode"

然后从 ~/.zshrc~/.bashrc~/.bash_profile~/.config/fish/config.fish 里删除对应 PATH 行。

Windows:

powershell
# 国内镜像脚本 / install-win.ps1
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\CrabCode"

# 如果安装前设置过 CRABCODE_HOME,删这个自定义程序目录
if ($env:CRABCODE_HOME) { Remove-Item -Recurse -Force "$env:CRABCODE_HOME" }

# 国际直链块
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\crabcode"
# 国内镜像脚本 / install-win.ps1
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\CrabCode"

# 如果安装前设置过 CRABCODE_HOME,删这个自定义程序目录
if ($env:CRABCODE_HOME) { Remove-Item -Recurse -Force "$env:CRABCODE_HOME" }

# 国际直链块
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\crabcode"

再在“环境变量”里删除用户 Path 中的旧 %LOCALAPPDATA%\CrabCode%CRABCODE_HOME%crabcode-<version>-win-x64 目录,或用 PowerShell 重写用户 Path:

powershell
$Remove = @("$env:LOCALAPPDATA\CrabCode", "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64")
if ($env:CRABCODE_HOME) { $Remove += $env:CRABCODE_HOME }
$NextPath = ([Environment]::GetEnvironmentVariable("Path", "User") -split ';') |
  Where-Object { $_ -and ($Remove -notcontains $_) }
[Environment]::SetEnvironmentVariable("Path", ($NextPath -join ';'), "User")
$Remove = @("$env:LOCALAPPDATA\CrabCode", "$env:LOCALAPPDATA\crabcode\crabcode-<version>-win-x64")
if ($env:CRABCODE_HOME) { $Remove += $env:CRABCODE_HOME }
$NextPath = ([Environment]::GetEnvironmentVariable("Path", "User") -split ';') |
  Where-Object { $_ -and ($Remove -notcontains $_) }
[Environment]::SetEnvironmentVariable("Path", ($NextPath -join ';'), "User")

彻底清理个人数据

只有在你确认不需要本机登录、历史会话、记忆、插件和配置时,才清理用户数据目录。

bash
rm -rf "$HOME/.crabcode"
rm -f "$HOME/.crabcode.json"
rm -rf "$HOME/.crabcode"
rm -f "$HOME/.crabcode.json"

Windows:

powershell
Remove-Item -Recurse -Force "$env:USERPROFILE\.crabcode"
Remove-Item -Force "$env:USERPROFILE\.crabcode.json"
Remove-Item -Recurse -Force "$env:USERPROFILE\.crabcode"
Remove-Item -Force "$env:USERPROFILE\.crabcode.json"

如果设置过 CRABCODE_CONFIG_DIR,还要清理那个自定义目录。

快速定位表

现象先查处理
crabcode: command not foundcommand -v crabcode、安装目录是否存在把实际程序目录加到 PATH,重开终端
新终端找不到,当前终端能跑shell 配置是否写错文件zsh 写 ~/.zshrc,bash 写 ~/.bashrc~/.bash_profile
Windows 安装后找不到用户 Path 是否包含真实程序目录国内镜像查 %LOCALAPPDATA%\CrabCode%CRABCODE_HOME%,国际直链查版本化目录
升级后仍是旧版PATH 里旧目录排在前面删除旧 Path 项,确认 command -v crabcode 指向新目录
想只卸载程序程序目录和数据目录是否混淆只删程序目录,不删 ~/.crabcode
想重置所有状态是否备份过会话和配置删除程序目录 + ~/.crabcode + ~/.crabcode.json

相关