
Letswork
io.github.saicharanrajoju由 GitHub 帳號 saicharanrajoju 發布v3.0.0更新於 Oct 24, 2026
Real-time collaborative coding via MCP — two developers, one codebase
概覽
LetsWork 讓兩位開發者透過 Claude Code 共用同一個專案,並以 Cloudflare 通道提供檔案鎖與主機審核的編輯流程。
- 可以做什麼
- 列出並讀取專案檔案,同時顯示檔案鎖定狀態
- 提交檔案寫入,鎖定與解鎖檔案以獨佔編輯
- 查看工作階段資訊、連線使用者、作用中的鎖與通知
- 訪客端:設定顯示名稱並檢視自己待審核的變更
- 主機端:檢視含差異的待審核變更,核准或拒絕,強制釋放卡住的鎖
- 適用情境
- 適合兩位開發者從不同機器結對處理同一個程式碼庫、各自使用自己的 Claude Code,且專案擁有者希望訪客的每次寫入都先經自己審核才寫入磁碟的情況。
- 執行需求
- 需在 macOS 或 Windows(WSL)本機安裝:Python 3.10+、letswork 套件、Node.js 與 Claude Code,主機另需 cloudflared。主機啟動工作階段後,把一次性的加入連結與權杖傳給訪客。未宣告需要帳號或 API 金鑰。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Letswork,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
LetsWork
Real-time collaborative coding via Claude Code — two developers, one codebase, each using their own Claude subscription.
One developer hosts the session. The other joins from anywhere. Both get a live Claude Code window connected to the same project — with file locking and an approval system to prevent conflicts.
How It Works
- Host runs
letswork startinside their project folder - A secure HTTPS tunnel is created automatically via Cloudflare
- A one-time URL + guest token is generated and printed
- Host shares the join command with the guest
- Guest runs
letswork join <url> --token <token>on their machine - Both developers now have Claude Code connected to the same codebase
Requirements
macOS — Host Setup
The host is the developer who owns the project. You start the session and share the join command.
Step 1 — Install dependencies
Step 2 — Install Claude Code
Step 3 — Start the session
Navigate to your project folder and run:
You will be asked for your display name, then a session box appears:
Copy the full letswork join ... command and send it to your collaborator.
Two new terminal windows open automatically:
- Claude Code — already connected to LetsWork
- A chat window to communicate with your collaborator
Step 4 — Approve guest changes
When the guest edits a file, you'll see a notification in Claude Code. Ask Claude:
Then approve or reject:
Step 5 — Stop the session
Press Ctrl+C in the terminal where you ran letswork start.
macOS — Guest Setup
The guest connects to the host's project. You need the join command from the host.
Step 1 — Install dependencies
Step 2 — Install Claude Code
Step 3 — Join the session
Run the command the host sent you:
You'll be asked for your display name. Then two windows open:
- Claude Code — connected to the host's project
- A chat window to communicate with the host
Step 4 — Edit files
Ask Claude to read and edit files normally. When you write a file, it goes into an approval queue — the host reviews it before it's written to disk. You'll get a notification when it's approved or rejected.
Windows — Guest Setup (WSL)
LetsWork runs inside WSL (Windows Subsystem for Linux). The guest experience is the same as macOS once WSL is set up.
Step 1 — Enable WSL and install Ubuntu
Open PowerShell as Administrator and run:
Restart your computer when prompted. Ubuntu will install automatically.
Open Ubuntu from the Start menu and set up your Linux username and password.
Step 2 — Install dependencies inside Ubuntu
Open Ubuntu and run these one by one:
Step 3 — Install Claude Code inside Ubuntu
Step 4 — Join the session
Run the command the host sent you, inside Ubuntu:
You'll be asked for your display name. Claude Code launches directly in the same terminal window.
Note for Windows users: Claude Code runs in the WSL terminal — not as a separate window. Everything else works identically to macOS.
MCP Tools Available
Both host and guest have access to these tools inside Claude Code:
Approval Flow
Guest file writes do not go directly to disk — they go through the host's approval queue:
- Guest asks Claude to edit a file →
write_filesubmits the change - Host sees:
📝 guest submitted change to server.py (ID: a1b2c3) - Host asks Claude:
get_pending_changes— sees a full diff - Host approves:
approve_change a1b2c3→ file is written to disk - Or rejects:
reject_change a1b2c3→ guest is notified
Security
- Random Cloudflare subdomain — URL is unguessable
- Cryptographic token — second auth layer on top of the URL
- All traffic encrypted via HTTPS
- Path traversal prevention — guest cannot access files outside the project root
- File locks auto-expire after 30 minutes
- No accounts, no signup, no persistent credentials — session ends when host stops
Constraints
- Maximum 2 users per session (Host + 1 Guest)
- Text files only — binary files not supported
- 1MB file size limit per read/write operation
- Guest has no shell access — file operations only
cloudflaredmust be installed on the host machine (guest does not need it on macOS, but WSL guests do)
CLI Reference
Architecture
The guest connects through a stdio proxy rather than directly over HTTP — this avoids Cloudflare SSE reliability issues and gives stable MCP connectivity.
License
MIT — see LICENSE
Built with the Model Context Protocol.
來源:README.md,提交 2361029
工具
0版本歷史
1- v3.0.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分