核心用法
Perry 是一款面向远程开发的 Docker 工作空间管理工具,通过 Tailscale 网络构建安全的开发环境。用户通过本地运行的 perry agent 创建隔离的 Docker 容器,每个工作空间自动在 tailnet 上注册,支持多设备访问。
主要操作流包括:
1. 安装并启动 agent 守护进程
2. 使用 perry start 创建工作空间(可选从 Git 仓库克隆)
3. 通过 perry shell 进入交互式 Shell,或 SSH/HTTP 远程访问
4. 内置 Claude Code(在容器内运行)和 OpenCode(通过 :4096 端口 HTTP 访问)
显著优点
- 网络隔离安全:基于 Tailscale 的零信任网络,无需暴露公网端口
- 多代理预装:同时支持 Claude Code 和 OpenCode 两种 AI 编码助手
- 跨设备访问:同一 tailnet 内任意设备可通过 CLI、Web UI 或 SSH 连接
- Git 集成:支持启动时自动克隆仓库,简化项目初始化
- 密钥继承:通过
perry sync自动同步主机 SSH 授权密钥
潜在缺点与局限性
- 依赖 Tailscale:必须拥有并运行 Tailscale 网络,增加基础设施依赖
- 单用户设计:用户名固定为
workspace,缺乏多用户隔离机制 - 端口固定限制:OpenCode 默认 4096 端口,冲突时需手动调整
- 启动延迟:Docker 容器初始化需要一定时间,非瞬时可用
- 生态早期:GitHub 星标和社区规模较小,长期维护存疑
适合人群
- 已使用 Tailscale 的开发者
- 需要在多设备间同步开发环境的远程工作者
- 希望同时试用 Claude Code 和 OpenCode 的 AI 辅助编程用户
- 偏好容器化隔离而非本地环境污染的整洁主义者
常规风险
- 安装脚本直接管道执行 (
curl | bash),存在供应链攻击面 - 工作空间继承主机 SSH 密钥,容器逃逸可能导致密钥泄露
- 基于 Tailscale 的网络安全假设:tailnet 被攻破则所有工作空间暴露
- 开源项目由个人维护 (
gricha),无企业背书,需关注更新持续性