Netclode

在自有服务器的隔离微虚拟机中运行云端编程代理,并通过原生苹果客户端随时接入。

Star 数
★ 256
最近更新
1 个月前
主语言
Swift

30 秒速览

可在哪里用
通用 · 跨平台Codex · Claude Code · OpenAI API · Claude API
开始前需要
Linux VPS with nested virtualization supportAnsiblek3sKata ContainersCloud HypervisorJuiceFSS3-compatible storageRedisTailscaleDockerGoNode.jsSwiftUI clientShell / 命令行网络访问本地文件系统
典型场景
希望从 iPhone 或 Mac 远程处理代码、同时不把执行环境托管给第三方云端编程平台的个人开发者。
主要局限
需要自行运维支持嵌套虚拟化的 Linux VPS、k3s、Kata Containers、Cloud Hypervisor、Redis、JuiceFS、S3 和 Tailscale,基础设施复杂度较高。

这个 Agent 能做什么,适合哪些场景?

Netclode 是一套自托管云端编程代理系统,为每个会话分配由 Kata Containers 和 Cloud Hypervisor 隔离的微虚拟机。Go 控制平面运行在 k3s 上,从预启动池分配沙箱,并通过 Connect RPC 将提示发送给沙箱内的 TypeScript/Node.js SDK 运行器。它支持 Claude Code、OpenCode、Copilot 和 Codex SDK,并可连接 Anthropic、OpenAI、Mistral、Ollama 等提供方。Redis Streams 保存可重连的会话事件,JuiceFS 将工作区、工具、Docker 镜像和 SDK 会话持久化到 S3,以支持暂停、恢复、快照和回滚。用户可通过 SwiftUI 编写的 iOS/macOS 客户端或 Go 调试 CLI 操作会话,并能查看差异、打开实时终端及经 Tailscale 访问端口预览。部署边界是支持嵌套虚拟化的 Linux VPS,使用 Ansible、k3s、Tailscale、S3 和相关凭据自行运维。

客户端通过 Tailscale Ingress 和 Connect RPC 连接 Go 控制平面;控制平面从 agent-sandbox 预热池分配 Kata VM,并把提示转发给其中的 Claude Code、OpenCode、Copilot 或 Codex SDK。代理可在拥有 root 权限和 Docker 的沙箱中读取及修改工作区、安装工具、运行命令,并调用所配置的远程模型 API或本机 Ollama。响应经流式连接返回,Redis Streams 持久化事件,使客户端断线后能够继续接收。暂停时系统删除虚拟机,但通过 JuiceFS 将工作区、已安装工具、Docker 镜像和 SDK 会话保留在 S3;恢复时重新挂载同一存储。系统会在每轮之后自动建立快照,可同时回滚工作区和聊天记录。GitHub 集成能够克隆私有仓库、推送提交和创建 PR;GitHub Bot 可响应 PR 或 issue 中的 @mention,并自动审查 Dependabot 或 Renovate 的依赖更新 PR。secret-proxy 在沙箱外为允许的主机注入 API 密钥,因此真实密钥无需进入沙箱。

  1. 希望从 iPhone 或 Mac 远程处理代码、同时不把执行环境托管给第三方云端编程平台的个人开发者。
  2. 需要让编程代理以 root 权限运行 Docker、安装任意工具,又希望用独立微虚拟机限制会话影响范围的团队。
  3. 拥有本地 GPU,希望通过 Ollama 执行本地推理、避免模型请求离开自有机器的用户。
  4. 需要长期保留多个项目会话,但希望暂停时只承担 S3 存储占用而不持续运行虚拟机的开发者。
  5. 希望通过 GitHub issue 或 PR 的 @mention 启动沙箱任务,或自动审查 Dependabot、Renovate 更新的仓库维护者。
  6. 需要通过 Tailscale 访问沙箱 Web 预览、内部基础设施和实时终端的私有网络用户。

如何安装或部署这个 Agent?

部署文档只给出了流程,没有提供可直接复制的完整命令。已说明的步骤是:准备支持嵌套虚拟化的 Linux VPS;运行仓库中的 Ansible playbook 配置服务器;设置模型 API 密钥、S3 凭据和 Tailscale OAuth;部署 infra/k8s 下的 Kubernetes 清单;最后通过 Tailscale 连接。实际部署还涉及 k3s、Kata Containers、Cloud Hypervisor、Redis、JuiceFS 与 S3。来源未给出 VPS 规格、具体 playbook 命令、清单应用命令、环境变量名或 iOS/macOS 客户端安装方式,因此仅凭所给材料无法写出完整且可复制的首次安装命令。

如何使用这个 Agent?

完成部署并通过 Tailscale 接入后,可从原生 iOS/macOS 应用创建或恢复会话;控制平面会从预热池分配沙箱,然后把提示交给所选 SDK。用户可在应用中查看流式回复和多仓库 Git diff、进入实时 shell、使用语音输入,并将沙箱端口暴露到 tailnet。会话可暂停以删除 VM、保留 JuiceFS/S3 数据,之后恢复到同一工作区和 SDK 会话;也可利用每轮快照回滚工作区与对话。GitHub 场景可在 PR 或 issue 中 @mention 机器人,触发沙箱并让结果以评论返回。仓库还包含 Go 调试 CLI,但来源没有提供 CLI 的构建命令、登录步骤或首次调用语法。

这个 Agent 有哪些优点和局限?

优点
  • 每个会话使用 Kata Containers 与 Cloud Hypervisor 微虚拟机隔离,因此沙箱内可以开放 root、Docker 和工具安装能力。
  • 支持 Claude Code、OpenCode、Copilot、Codex 以及多个远程模型提供方,并可用 Ollama 在本机 GPU 上推理。
  • 预启动沙箱池减少冷启动等待;Redis Streams 支持断线重连后的事件续接。
  • JuiceFS 到 S3 的持久化允许删除暂停会话的 VM,同时保留工作区、工具、Docker 镜像和 SDK 会话。
  • 按轮次生成会话快照,能够同时回滚代码工作区与聊天状态。
  • API 密钥由沙箱外的 secret-proxy 按允许的主机注入,减少密钥直接暴露给代理进程的风险。
局限
  • 需要自行运维支持嵌套虚拟化的 Linux VPS、k3s、Kata Containers、Cloud Hypervisor、Redis、JuiceFS、S3 和 Tailscale,基础设施复杂度较高。
  • 必须配置模型 API 密钥、S3 凭据和 Tailscale OAuth;使用 GitHub 私有仓库及机器人功能还依赖 GitHub App 集成。
  • 主要图形客户端是采用 SwiftUI 和 iOS 26 的 iOS/macOS 应用,来源未说明 Web、Windows 或 Android 客户端。
  • 快速开始仅列出高层步骤,缺少可直接执行的 playbook、Kubernetes 和客户端安装命令。
  • 许可证标记为未知,组织在采用、修改或再分发前需要先确认授权条件。
  • 宣称暂停会话几乎只产生存储成本,但来源未提供容量规划、性能基准、故障恢复指标或实际成本数据。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 Star 最近更新 主语言 完整支持的平台
Netclode 当前 52 · 缺口较多 ★ 256 1 个月前 Swift Codex · Claude Code · OpenAI API · Claude API
Skybridge MCP Apps 框架 64 · 存在缺口 ★ 2.1k 1 天前 TypeScript ChatGPT · Claude.ai
Omnigent 62 · 存在缺口 ★ 10k 今天 Python ChatGPT · Codex · Claude Code · Claude.ai · OpenAI API · Claude API
vibepanel 多代理开发控制台 85 · 表现良好 ★ 29 5 天前 Go Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
52/ 100 五分制 2.6 / 5
信任安全 13/29
可靠稳定 6/14
适用触发 12/18
规范维护 8/18
有效结果 9/13
证据核验 4/8
查看各维度的扣分理由
信任安全13 / 29 · 2.2/5

README 清楚展示客户端、控制平面、Redis、沙箱、S3、GitHub 与模型服务之间的数据流,并描述按仓库临时生成 GitHub 令牌、在沙箱外注入 API 密钥以及逐轮快照回滚;工作流权限也限定为 contents:read 和 packages:write。扣分在于产品明确提供沙箱内 root、Docker、“full yolo mode”、基础设施访问和自动依赖 PR 审查,却未展示逐项确认、出站访问默认策略或外部写操作的批准机制。“Secrets can't be stolen”是未经所给实现材料证明的绝对表述。依赖采用锁文件和 CI 测试,但 Actions 仅固定主版本且 lint 使用 latest。来源仅能从第一人称说明和博客链接弱归属,发布者身份及许可证均不明确。

可靠稳定6 / 14 · 2.1/5

README 的架构、技术栈和目录说明与 Agent/CLI 工作流中的 Node、Go、容器构建及测试流程基本一致,因此具有普通程度的内部一致性。依赖安装使用 npm ci、Go 模块和明确运行时版本,支持可获得性;但完整部署依赖 k3s、Kata、Cloud Hypervisor、JuiceFS、S3、Tailscale 和嵌套虚拟化,所给材料没有兼容矩阵或依赖故障策略。没有提供面向用户的错误信息、诊断示例或失败恢复消息,因此 failure_messages 为 0。

适用触发12 / 18 · 3.3/5

材料明确面向希望从手机或 Mac 使用自托管云编码代理的用户,并覆盖交互会话、终端、预览、GitHub 提及、依赖更新审查和本地推理等场景。它列出支持的 SDK、模型提供商、平台和主要基础设施边界,GitHub Bot 的触发方式及 CI 路径过滤也较具体。扣分在于没有细化各 SDK/提供商的功能差异、策略边界、误触发处理或不同部署规模的配置方案;环境要求较重,并依赖嵌套虚拟化、Tailscale、S3 等特定组件。

规范维护8 / 18 · 2.2/5

README 的信息架构优秀,包含架构图、栈表、项目树和按主题组织的文档索引,可给 information_architecture 满分。安装部分只有五步概览,详细部署文档未包含在所给证据中,无法评估实际可操作性。命名整体一致,且有演示素材,但没有 FAQ、完整示例会话或故障排查内容。仅零散提到嵌套虚拟化和 iOS 26 等限制。未提供许可证,未见发行版本或变更日志;镜像支持 SHA 标签但同时发布 latest。维护责任只能从第一人称项目描述推断,缺少明确维护政策、支持渠道和更新承诺。

有效结果9 / 13 · 3.5/5

原生客户端、流式响应、会话恢复、差异视图、实时终端、端口预览和 GitHub 集成表明输出可直接进入开发工作流;将微虚拟机隔离、移动客户端、本地推理和持久会话组合起来也体现了明显增量价值。暂停时仅保留对象存储的设计说明了成本意识。扣分在于效果与“instant”“practically nothing”等收益主要由 README 和演示声明支撑,未提供量化基准、资源需求、成本模型或与替代方案的可核查比较。

证据核验4 / 8 · 2.5/5

大多数能力声明能对应到具体组件、目录、协议或工作流步骤;README 与 CI 对 Node/Go Agent、认证代理、容器构建和多平台 CLI 存在一定交叉印证。扣分在于所给源文件只有一个产品说明和两个局部工作流,无法交叉验证密钥代理、网络控制、回滚、GitHub 写操作等关键实现。事实、设计目标和宣传性推断没有始终明确分开,尤其是密钥“无法被盗”、即时启动和近乎零暂停成本等绝对或近绝对说法。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • “full yolo mode”允许沙箱内 root、Docker 和任意安装;在部署前应核查 Kata 隔离、宿主机挂载、特权配置、设备透传及容器逃逸防护。
  • 不要仅凭“Secrets can't be stolen”处理高价值凭据;应审查代理的主机白名单、请求绑定、日志脱敏、令牌生命周期以及通过获准主机转发或提示注入泄露的可能性。
  • GitHub Bot 可响应提及、推送提交、创建 PR 并自动审查依赖更新;应确认权限范围、分支保护、人工批准、Webhook 验证和抗提示注入措施。
  • 部署依赖嵌套虚拟化、k3s、Kata、Cloud Hypervisor、JuiceFS、S3、Redis 和 Tailscale;在生产采用前需独立验证兼容性、升级路径、备份和灾难恢复。
  • 未提供许可证;在复制、修改、部署或再分发前应先澄清使用权。
证据充分度: 评估于 2026年9月17日 审查版本 cf1a0e5e4cd9
查看完整评分方法 →

常见问题

暂停会话后会丢失哪些内容?
虚拟机会被删除,但工作区、已安装工具、Docker 镜像和 SDK 会话通过 JuiceFS 保存在 S3;恢复时重新挂载这些数据。
代理需要多大的系统权限?
沙箱内支持 root 权限、Docker 和任意工具安装。隔离边界由每会话 Kata VM 与 Cloud Hypervisor 提供,但主机基础设施仍需由部署者管理。
模型密钥会进入代理沙箱吗?
设计上不会。secret-proxy 在沙箱外仅为允许的主机动态注入真实 API 密钥。
可以完全在本地运行模型吗?
可以选择 Ollama 并使用自有 GPU进行本地推理;系统也支持 Anthropic、OpenAI、Mistral 等远程提供方。
采用前最需要确认什么?
应确认服务器支持嵌套虚拟化,团队能够运维所列基础设施,并核实未知许可证的实际授权条件;来源没有提供硬件规模、性能或成本基准。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents