新功能 GitHub 与 Cloudflare 面板、令牌节省器和用量仪表盘

你的代码。你的密钥。
你来批准。

VOID Workshop 是一款基于 Claude Agent SDK 的免费开源 Linux 桌面编程智能体。它在动手前先做计划,每次写入前展示 diff,每条命令前先征求同意,并在达到你设定的预算时停下。可使用你的 Claude 订阅、API 密钥或本地 Ollama 模型,还能用 VOID Portal 在手机上操控它。

智能体主导,人来批准

用日常语言描述你的需求。智能体负责跑腿,每一处更改都由你做主。

选择项目智能体只能看到该文件夹,以及你明确添加的目录。
描述任务用日常语言即可。后续消息会延续同一会话。
审阅计划先进行只读探索。在你批准前不会修改任何内容。
逐项批准每次写入都有 diff;每条命令都列出命令、文件夹和理由。
检查并保留逐个文件接受或拒绝,运行测试,在你决定时提交。

清楚看到将要改变什么

每次编辑在写入前都以统一 diff 呈现。如果你在考虑期间文件在磁盘上发生了变化,该编辑会被拒绝,你自己的工作绝不会被悄悄覆盖。

  • 提议 → 已应用 → 已测试 → 已提交:每个文件的状态一目了然。
  • 逐文件接受 / 拒绝,拒绝时恢复原始内容。
  • 本地 Git 检查点,绝不触碰你的分支或暂存区。
  • 只有你点击 Commit 才会提交。从不推送。
审批对话框,显示拟议文件更改的统一 diff

一个窗口,应有尽有

规划、构建、审查和发布都不必离开应用,还能清楚看到令牌花在了哪里。

模式选择器:编辑前询问、自动编辑、Auto 和计划模式

四种模式

编辑前询问、自动编辑、沙箱内的 Auto,或计划模式:先只读探索,再给出计划供你批准。Shift+Tab 切换,任务进行中也可以。

GitHub 面板显示一个拉取请求及其讨论

GitHub 面板

用设备码或令牌登录,然后浏览拉取请求、议题、工作流运行和发布,阅读讨论并发表评论。令牌保存在你的密钥环中。

Cloudflare 面板列出 Workers 和 Pages 项目

Cloudflare 面板

粘贴一个 API 令牌,即可只读查看你的 Workers、Pages 项目、R2 存储桶、D1 数据库和 KV 命名空间。

令牌用量仪表盘,显示最近 30 天的每日用量

令牌节省器与仪表盘

默认开启:长会话在 120k 令牌时压缩,并精简命令输出。仪表盘按模型显示最近 30 天的用量,以及消耗主要来自哪里。

以“模型不可信”为前提打造

模型输出和仓库内容都被视为不可信输入。审批只是第一道防线,而非唯一一道。

⌘

每个操作都需批准

确切的命令、工作目录、智能体给出的理由,以及命令会做什么(读取、写入、网络、git、安装)。批准从不被记住。

⛨

Bubblewrap 沙箱

智能体的命令只能在项目内写入,除非你允许特定域名,否则无法访问网络。

✕

硬性拦截

sudo、大范围的 rm -rf、推送、改写历史、发布、上传、SSH、访问密钥环以及试图修改应用自身配置的操作,一律直接拒绝。

⌖

路径规范化

..、符号链接和 ~ 都无法逃出项目。SSH 密钥、云凭据、浏览器配置文件和密钥环始终禁止访问。

⚿

机密始终保密

.env、私钥和凭据文件需要明确批准。日志、历史和界面中都会做脱敏处理。

⏻

绝不以 root 运行,无遥测

拒绝以 root 身份运行。没有作者服务器、代理或分析:数据只会发往你选择的模型提供商,以及(使用 VOID Portal 时)你自己部署的中继。

用订阅或用密钥。数字如实呈现。

使用你的 Claude 订阅,或存放在桌面密钥环中的 Anthropic Console API 密钥,一键切换。VOID Workshop 在发出任何请求前都会先确认凭据来源。

  • 单任务和每日上限(默认:1 美元和 3 美元),另有轮次和输出 token 上限。
  • 额度用尽即停止,绝不购买额度或切换计费方式。
  • 模型列表来自 Models API,按你的密钥获取;没有任何硬编码。
  • 可配合 Console 工作区的花费上限,实现硬性封顶。
是估算,不是余额。费用数字根据 Agent SDK 报告的 token 用量估算。重试、缓存、价格变动以及你组织内的其他用量都会影响实际账单,而且没有任何 API 能让应用读取你的剩余额度。VOID Workshop 会在状态栏中注明这一点,并提供 Console Billing 的链接。
Nebula 主题下的内置代码编辑器,语法颜色源自主题

真正的编辑器,用你的配色

在内置的 CodeMirror 编辑器中打开任意项目文件,自己快速修改,其余交给智能体。语法高亮由你的主题生成,因此每个主题(包括你自制的)都有相配的颜色。

  • 标签页、搜索和保存,当智能体或其他程序修改了磁盘上的文件时会发出提醒。
  • 多光标,切换项目时保留撤销历史。
  • 敏感文件会先询问,再打开或保存。

VOID Portal:把手机变成遥控器

Android 配套应用。随时随地启动任务和排队,批准更改和命令(可直接在通知中操作),切换模型、模式和账户,并在任务完成、需要你处理或电脑离线时收到提醒。

手机 ──wss──► 你的中继 ◄──wss── 电脑
└──── 端到端加密,AES-256-GCM ────┘

VOID Portal 主屏幕:电脑在线、进行中的任务和一个待批准请求
电脑状态、任务、待你处理的事项
在手机上查看 diff 并批准文件更改
查看完整 diff 后批准
VOID Portal 中的任务对话
跟进并回复任务
VOID Portal 设置和主题选择器
电脑设置和主题

五分钟部署你自己的中继

没有共享中继:每个人都在免费的 Cloudflare 账户上部署自己的中继,你的流量绝不会经过别人的服务器。免费的 Workers 套餐对个人来说绰绰有余。

Cloudflare 账户免费注册并选择一个 workers.dev 子域名。
部署 Workerwrangler deploy(在 remote/relay 中运行)。
检查冒烟测试会对你的中继运行 18 项检查。
让 Workshop 指向它Settings → VOID Portal (phone) → Relay。
配对手机点击配对手机,然后在应用中扫描二维码。
# 在你克隆的仓库中
$ cd remote/relay
$ npm install
$ npx wrangler login     # 在浏览器中授权 wrangler,只需一次
$ npx wrangler deploy    # → https://void-relay.<your-subdomain>.workers.dev
$ node test/smoke.mjs wss://void-relay.<your-subdomain>.workers.dev

# 可选:VOID Portal 应用内更新(或删除 wrangler.toml 中的 [[r2_buckets]] 块)
$ npx wrangler r2 bucket create void-portal-updates

然后将 wss://void-relay.<your-subdomain>.workers.dev 填入 Settings → VOID Portal (phone) → Relay。弄丢了配对码或手机?在同一位置取消配对该设备,它的密钥就会失效。完整指南见 remote/README.md(英文)。

打造属于你的风格

七款内置主题、带对比度警告的实时配色编辑器,以及 JSON 导入/导出,方便分享主题。

点击一个主题,即可在本页试用。

设置对话框中的主题编辑器

在 Linux 上安装

几分钟内从源代码构建,仅为当前用户安装。无需 root,不改动系统文件。

# 1. 依赖项(Node.js ≥ 22.13,Rust ≥ 1.80)
#    Arch Linux
$ sudo pacman -S --needed base-devel nodejs npm rust git webkit2gtk-4.1 gtk3 libsoup3 \
    librsvg libayatana-appindicator openssl libsecret bubblewrap socat ripgrep
#    Debian / Ubuntu 24.04+(另需从 nodejs.org / rustup.rs 安装 Node.js 22 和 Rust)
$ sudo apt install build-essential git libwebkit2gtk-4.1-dev libgtk-3-dev libsoup-3.0-dev \
    librsvg2-dev libayatana-appindicator3-dev libssl-dev libsecret-1-dev bubblewrap socat ripgrep

# 2. 构建并安装到 ~/.local
$ git clone https://github.com/M4S4T0-V01D/void-workshop.git
$ cd void-workshop
$ ./scripts/build.sh
$ ./scripts/install.sh

# 3. 启动,然后在 Settings → Sign-in & API key 中:用 Claude 登录、粘贴密钥或选择 Ollama
$ void-workshop
VOID Portalcd remote/android && ./gradlew :app:assembleRelease(JDK 17),在手机上安装 APK,然后与你的中继配对
更新git pull && ./scripts/build.sh && ./scripts/install.sh
卸载./scripts/uninstall.sh(加上 --purge 可删除历史、设置和已保存的密钥)
指南Claude 订阅 · API 密钥设置 · Ollama · 计费与上限 · 安全模型(英文)

常见问题

简短回答。仓库中的指南有详细说明。

它是免费的吗?

VOID Workshop 和 VOID Portal 都是免费开源软件(MIT)。你只需为所用的模型付费:你的 Claude 订阅、你自己 Console 账户上的 Anthropic API 用量,或使用本地 Ollama 模型则完全免费。中继在 Cloudflare 免费套餐内即可运行。

我的代码或密钥会被发送到别处吗?

只会发往你选择的模型提供商。没有遥测,也没有作者服务器。密钥保存在你的桌面密钥环中,VOID Portal 的流量通过你自己部署的中继端到端加密。

它和 Claude Code 有什么不同?

它在一个围绕审阅打造的桌面窗口中运行同样的 Claude Agent SDK:每次写入前展示 diff,每条命令都需批准,逐文件接受和拒绝,沙箱,花费上限,以及手机遥控。

支持哪些系统?

Linux(在 Arch 上开发,也可在 Debian/Ubuntu 及其他带 WebKitGTK 4.1 的发行版上运行)。VOID Portal 需要 Android 8 或更高版本。

我能用别人的中继吗?

别这样做:部署你自己的。只需几分钟,免费,而且流量和可用性都掌握在你自己手中。

应用能用我的语言吗?

可以。VOID Workshop 和 VOID Portal 支持与本站相同的 13 种语言。两者首次启动时都会询问;之后可在电脑上的 设置 → 外观与语言、手机上的 设置 → 语言 中更改。翻译位于 src/i18n/locales 和 remote/android/app/src/main/assets/i18n,欢迎改进。