io.github.saicharanrajoju/letswork
LetsWork
通过 Claude Code 进行实时协作编码 — 两名开发者,一个代码库,各自使用自己的 Claude 订阅。
一名开发者主持会话。另一名开发者可从任何地方加入。双方都会获得连接到同一项目的实时 Claude Code 窗口 — 带有文件锁定和审批系统,以防止冲突。
工作原理
主持人 在其项目文件夹中运行
letswork start通过 Cloudflare 自动创建安全的 HTTPS 隧道
生成并打印一次性 URL + 访客令牌
主持人将加入命令分享给访客
访客 在自己的机器上运行
letswork join <url> --token <token>现在两位开发者都有了连接到同一个代码库的 Claude Code
Related MCP server: pairwave
环境要求
要求 | macOS | Windows (WSL) |
Python 3.10+ |
| Ubuntu WSL 自带 |
cloudflared |
| 请参阅下方 WSL 部分 |
Claude Code |
|
|
Node.js |
|
|
macOS — 主持人设置
主持人是拥有该项目的开发者。您启动会话并分享加入命令。
第 1 步 — 安装依赖
brew install cloudflared
pip install letswork第 2 步 — 安装 Claude Code
npm install -g @anthropic-ai/claude-code第 3 步 — 启动会话
导航到您的项目文件夹并运行:
cd /path/to/your/project
letswork start系统会要求您输入显示名称,然后会出现一个会话框:
╔══════════════════════════════════════════════════════════════════════╗
║ 🤝 LetsWork Session Active ║
║ ║
║ Send this command to your collaborator: ║
║ letswork join https://abc123.trycloudflare.com --token a1b2c3d4 ║
║ ║
║ Press Ctrl+C to stop. ║
╚══════════════════════════════════════════════════════════════════════╝复制完整的 letswork join ... 命令并发送给您的协作者。
将自动打开两个新的终端窗口:
Claude Code — 已连接到 LetsWork
用于与协作者沟通的聊天窗口
第 4 步 — 批准访客更改
当访客编辑文件时,您会在 Claude Code 中看到通知。请对 Claude 说:
get_pending_changes然后批准或拒绝:
approve_change <id>
reject_change <id>第 5 步 — 停止会话
在您运行 letswork start 的终端中按 Ctrl+C。
macOS — 访客设置
访客连接到主持人的项目。您需要主持人提供的加入命令。
第 1 步 — 安装依赖
brew install cloudflared
pip install letswork第 2 步 — 安装 Claude Code
npm install -g @anthropic-ai/claude-code第 3 步 — 加入会话
运行主持人发给您的命令:
letswork join https://abc123.trycloudflare.com --token a1b2c3d4系统会要求您输入显示名称。然后会打开两个窗口:
Claude Code — 连接到主持人的项目
用于与主持人沟通的聊天窗口
第 4 步 — 编辑文件
像平常一样让 Claude 读取和编辑文件。当您写入文件时,它会进入审批队列 — 主持人会在文件写入磁盘之前进行审核。当它被批准或拒绝时,您会收到通知。
Windows — 访客设置(WSL)
LetsWork 在 WSL(Windows Subsystem for Linux)内运行。一旦 WSL 设置完成,访客体验与 macOS 相同。
第 1 步 — 启用 WSL 并安装 Ubuntu
打开 PowerShell(以管理员身份) 并运行:
wsl --install出现提示时重启计算机。Ubuntu 将自动安装。
从开始菜单打开 Ubuntu,并设置您的 Linux 用户名和密码。
第 2 步 — 在 Ubuntu 内安装依赖
打开 Ubuntu,并逐一运行以下命令:
# Update packages
sudo apt update && sudo apt upgrade -y
# Install Python
sudo apt install python3 python3-pip -y
# Install Node.js and npm
sudo apt install nodejs npm -y
# Install cloudflared
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o cloudflared
chmod +x cloudflared
sudo mv cloudflared /usr/local/bin/
# Install letswork
pip3 install letswork第 3 步 — 在 Ubuntu 内安装 Claude Code
npm install -g @anthropic-ai/claude-code第 4 步 — 加入会话
在 Ubuntu 内运行主持人发给您的命令:
letswork join https://abc123.trycloudflare.com --token a1b2c3d4系统会要求您输入显示名称。Claude Code 将直接在同一个终端窗口中启动。
Windows 用户注意事项: Claude Code 在 WSL 终端中运行 — 而不是作为单独的窗口。其他所有操作都与 macOS 完全相同。
可用的 MCP 工具
主持人和访客都可以在 Claude Code 中使用以下工具:
工具 | 可用者 | 说明 |
| 双方 | 列出文件和目录及其锁定状态 |
| 双方 | 读取文件内容(限制 1MB,仅限文本文件) |
| 双方 | 提交文件更改(访客的更改需要主持人批准) |
| 双方 | 锁定文件以进行独占编辑 |
| 双方 | 释放您自己的文件锁 |
| 双方 | 显示会话信息、已连接用户和活动锁 |
| 双方 | 快速汇总需要关注的事项 |
| 双方 | 验证与主持人 MCP 服务器的连接 |
| 仅访客 | 设置您在会话中的显示名称 |
| 仅访客 | 查看您提交的待批准的更改 |
| 仅主持人 | 查看所有待批准的更改及差异 |
| 仅主持人 | 批准待批准的更改并将其写入磁盘 |
| 仅主持人 | 拒绝待批准的更改 |
| 仅主持人 | 强制释放卡住的文件锁 |
审批流程
访客的文件写入不会直接写入磁盘 — 而是进入主持人的审批队列:
访客让 Claude 编辑文件 →
write_file提交更改主持人看到:
📝 guest submitted change to server.py (ID: a1b2c3)主持人让 Claude:
get_pending_changes— 查看完整差异主持人批准:
approve_change a1b2c3→ 文件写入磁盘或拒绝:
reject_change a1b2c3→ 通知访客
安全性
随机 Cloudflare 子域 — URL 不可猜测
加密令牌 — 在 URL 之上提供第二层身份验证
所有流量均通过 HTTPS 加密
路径遍历防护 — 访客无法访问项目根目录之外的文件
文件锁在 30 分钟后自动过期
无需账户、无需注册、无持久凭证 — 主持人停止时会话即结束
限制
每个会话最多 2 名用户(1 名主持人 + 1 名访客)
仅支持文本文件 — 不支持二进制文件
每次读/写操作的文件大小限制为 1MB
访客没有 shell 访问权限 — 只能进行文件操作
cloudflared必须安装在主持人机器上(访客在 macOS 上不需要,但 WSL 访客需要)
CLI 参考
letswork start [--port PORT] [--debug] # Start a session (default port: 8000)
letswork join <URL> --token <TOKEN> # Join a session as guest架构
Host Machine:
[Project Files] ← [MCP Server :8000] ← [Cloudflare Tunnel] ← HTTPS URL
↑
Guest connects here
via stdio proxy + secret token访客通过 stdio 代理连接,而不是直接通过 HTTP — 这避免了 Cloudflare SSE 的可靠性问题,并提供稳定的 MCP 连接。
许可证
MIT — 请参阅 LICENSE
使用 Model Context Protocol 构建。
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
The team layer for AI coding agents: shared contracts, collision alerts, E2EE sessions.
- AxisOAuthdev.useaxis
Coding agents from Claude Code, Cursor and Codex claim jobs and lock files on one shared board.
Build and supervise fleets of agents from Claude Code, Codex or Cursor. Connects over OAuth.
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceShare context, detect file conflicts, and send messages across parallel Claude Code sessions83MIT
- FlicenseNot gradedqualityCmaintenanceEnables two Claude Code sessions to connect over an end-to-end encrypted channel for collaborative AI-assisted development, with MCP tools for messaging, code sharing, and turn-taking.-
- AlicenseNot gradedqualityDmaintenanceCross-session coordination server for Claude Code that manages file claims, build locks, shared knowledge, and provides a real-time dashboard to prevent conflicts across multiple sessions.MIT
- AlicenseNot gradedqualityBmaintenanceEnables teams to share context and messages between Claude Code sessions via a relay, allowing collaborative work on the same project.8MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/saicharanrajoju/letswork-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server