这个项目能做什么

本项目对Anthropic官方Claude Desktop Linux .deb包进行重新打包,增加安全加固层,并提供Fedora/RHEL和Arch版本(以及加固版.deb)。该项目为非官方社区维护,与Anthropic无隶属关系,也未获其认可。应用程序负载为Anthropic官方Linux构建版本,未经修改;本项目的贡献在于安全包装器和打包工作。 新增功能: - 强制bubblewrap沙箱:系统目录(/usr、/etc、/sys)设为只读,设备访问限制为GPU(/dev/dri)、KVM(/dev/kvm)和声音(/dev/snd),并实现PID/UTS/cgroup隔离。$HOME默认允许访问,但凭证和密钥位置(~/.ssh、~/.gnupg、~/.aws、~/.config/gcloud、~/.azure、~/.kube、~/.docker、~/.pki、keyrings、浏览器配置文件)被空tmpfs覆盖。逃生舱口:CLAUDE_NO_SANDBOX=1。 - 提供Fedora/RHEL和Arch打包,因为官方构建仅支持Debian/Ubuntu。 - 供应链加固:官方.deb通过SHA256固定,发布版附带GPG签名的SHA256SUMS,CI操作固定SHA,默认使用只读令牌。 - 捆绑Claude Code CLI(claude命令)和claude-desktop-hardened --doctor诊断命令。 安装选项包括Fedora COPR(dnf copr enable techtoboggan/claude-desktop-hardened)、来自Releases的Arch .pkg.tar.zst(AUR发布暂停)、来自Releases的加固版.deb、快速安装脚本,或使用build.sh从源码构建(需要Node.js 18-23、npm、root权限)。支持的发行版涵盖RPM(Fedora 43/44、RHEL、CentOS、Rocky、AlmaLinux、Nobara)、DEB(Debian、Ubuntu、Pop!_OS、Linux Mint)和Arch(Arch、Manjaro、EndeavourOS、CachyOS);仅支持x86_64。 安装后,--doctor检查Electron、chrome-sandbox权限、bubblewrap、显示服务器、Computer Use工具、MCP配置、Claude Code CLI、Node.js和keyring。可选的Computer Use工具在Wayland(grim、slurp、wl-clipboard、ydotool、wlr-randr)和X11(wmctrl、xdotool、scrot、xclip、xrandr)下有所不同。Wayland全局快捷键依赖GlobalShortcutsPortal标志(KDE Plasma、Hyprland)或手动组合器绑定。MCP服务器在~/.config/Claude/claude_desktop_config.json中配置。 可通过标准ANTHROPIC_*环境变量为Code/Cowork代理会话使用自定义模型后端,提供LiteLLM、LM Studio、Ollama(通过LiteLLM)、OpenRouter、vLLM、Anthropic BYOK和Bedrock/Vertex的配置方案。注意事项:沙箱掩蔽基于文件的云凭证目录,因此首选环境变量。 安全模型文档记录了沙箱内的完全网络访问(api.anthropic.com所需)、凭证掩蔽而非转录清理,以及用于非沙箱回退路径上Electron多进程沙箱的setuid chrome-sandbox。供应链完整性涵盖版本固定文件(CLAUDE_VERSION、TOOL_VERSIONS)、CI shell lint、包冒烟测试、源码完整性扫描、依赖扫描、自动轮询Anthropic的apt索引,以及生成带签名校验和的RPM/DEB/Arch包并发布到COPR的发布流水线。 构建脚本下载并验证官方.deb的SHA256,提取它,逐字暂存负载而不修补app.asar或注入代码,重用官方图标,捆绑固定的Claude Code CLI,生成bubblewrap启动器,并为RPM/DEB/Arch打包。打包规范通过packaging/generate-specs.py从单一元数据源生成。构建脚本和存根采用MIT/Apache 2.0双重许可;Claude Desktop应用程序本身受Anthropic消费者条款约束。