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 letswork2단계 — Claude Code 설치
npm install -g @anthropic-ai/claude-code3단계 — 세션 시작
프로젝트 폴더로 이동한 후 다음을 실행하세요:
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 letswork2단계 — Claude Code 설치
npm install -g @anthropic-ai/claude-code3단계 — 세션 참여
호스트가 보낸 명령어를 실행하세요:
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 letswork3단계 — Ubuntu 내부에 Claude Code 설치
npm install -g @anthropic-ai/claude-code4단계 — 세션 참여
Ubuntu 내부에서 호스트가 보낸 명령어를 실행하세요:
letswork join https://abc123.trycloudflare.com --token a1b2c3d4표시 이름을 묻는 메시지가 나타납니다. Claude Code가 동일한 터미널 창에서 바로 실행됩니다.
Windows 사용자 참고: Claude Code는 WSL 터미널에서 실행됩니다 — 별도의 창이 아닙니다. 그 외 모든 것은 macOS와 동일하게 작동합니다.
사용 가능한 MCP 도구
호스트와 게스트 모두 Claude Code 내에서 다음 도구에 접근할 수 있습니다:
도구 | 사용 가능 대상 | 설명 |
| 모두 | 잠금 상태와 함께 파일 및 디렉터리 목록 표시 |
| 모두 | 파일 내용 읽기(1MB 제한, 텍스트 파일만) |
| 모두 | 파일 변경 제출(게스트 변경은 호스트 승인 필요) |
| 모두 | 독점 편집을 위해 파일 잠금 |
| 모두 | 자신의 파일 잠금 해제 |
| 모두 | 세션 정보, 연결된 사용자 및 활성 잠금 표시 |
| 모두 | 주의가 필요한 사항에 대한 빠른 요약 |
| 모두 | 호스트 MCP 서버 연결 확인 |
| 게스트만 | 세션의 표시 이름 설정 |
| 게스트만 | 승인 대기 중인 제출된 변경 사항 보기 |
| 호스트만 | diff와 함께 승인 대기 중인 모든 변경 사항 보기 |
| 호스트만 | 대기 중인 변경을 승인하고 디스크에 저장 |
| 호스트만 | 대기 중인 변경 거부 |
| 호스트만 | 멈춘 파일 잠금 강제 해제 |
승인 흐름
게스트의 파일 쓰기는 디스크에 직접 저장되지 않습니다 — 호스트의 승인 대기열을 거칩니다:
게스트가 Claude에게 파일 편집을 요청합니다 →
write_file이 변경 사항을 제출합니다호스트가 확인합니다:
📝 guest submitted change to server.py (ID: a1b2c3)호스트가 Claude에게 요청합니다:
get_pending_changes— 전체 diff를 확인합니다호스트가 승인합니다:
approve_change a1b2c3→ 파일이 디스크에 저장됩니다또는 거부합니다:
reject_change a1b2c3→ 게스트에게 알림이 전송됩니다
보안
무작위 Cloudflare 하위 도메인 — URL을 추측할 수 없음
암호화 토큰 — URL 위의 두 번째 인증 계층
모든 트래픽은 HTTPS로 암호화됨
경로 탐색 방지 — 게스트는 프로젝트 루트 외부의 파일에 접근할 수 없음
파일 잠금은 30분 후 자동 만료됨
계정 없음, 가입 없음, 영구 자격 증명 없음 — 호스트가 중지하면 세션이 종료됨
제약 사항
세션당 최대 2명의 사용자(호스트 + 게스트 1명)
텍스트 파일만 지원 — 바이너리 파일은 지원되지 않음
읽기/쓰기 작업당 1MB 파일 크기 제한
게스트는 셸 접근 권한이 없음 — 파일 작업만 가능
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게스트는 HTTP를 통한 직접 연결 대신 stdio 프록시를 통해 연결합니다 — 이렇게 하면 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