Letswork Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Letswork Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<!-- mcp-name: io.github.saicharanrajoju/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.
letswork start inside their project folderletswork join <url> --token <token> on their machine| Requirement | macOS | Windows (WSL) |
|---|---|---|
| Python 3.10+ | brew install python | Comes with Ubuntu WSL |
| cloudflared | brew install cloudflared | See WSL section below |
| Claude Code | npm install -g @anthropic-ai/claude-code | npm install -g @anthropic-ai/claude-code (inside WSL) |
| Node.js | brew install node | sudo apt install nodejs npm (inside WSL) |
The host is the developer who owns the project. You start the session and share the join command.
brew install cloudflared
pip install letsworknpm install -g @anthropic-ai/claude-codeNavigate to your project folder and run:
cd /path/to/your/project
letswork startYou will be asked for your display name, then a session box appears:
╔══════════════════════════════════════════════════════════════════════╗
║ 🤝 LetsWork Session Active ║
║ ║
║ Send this command to your collaborator: ║
║ letswork join https://abc123.trycloudflare.com --token a1b2c3d4 ║
║ ║
║ Press Ctrl+C to stop. ║
╚══════════════════════════════════════════════════════════════════════╝Copy the full `letswork join ...` command and send it to your collaborator.
Two new terminal windows open automatically:
When the guest edits a file, you'll see a notification in Claude Code. Ask Claude:
get_pending_changesThen approve or reject:
approve_change <id>
reject_change <id>Press Ctrl+C in the terminal where you ran letswork start.
The guest connects to the host's project. You need the join command from the host.
brew install cloudflared
pip install letsworknpm install -g @anthropic-ai/claude-codeRun the command the host sent you:
letswork join https://abc123.trycloudflare.com --token a1b2c3d4You'll be asked for your display name. Then two windows open:
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.
LetsWork runs inside WSL (Windows Subsystem for Linux). The guest experience is the same as macOS once WSL is set up.
Open PowerShell as Administrator and run:
wsl --installRestart your computer when prompted. Ubuntu will install automatically.
Open Ubuntu from the Start menu and set up your Linux username and password.
Open Ubuntu and run these one by one:
# 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 letsworknpm install -g @anthropic-ai/claude-codeRun the command the host sent you, inside Ubuntu:
letswork join https://abc123.trycloudflare.com --token a1b2c3d4You'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.
Both host and guest have access to these tools inside Claude Code:
| Tool | Who Can Use | Description |
|---|---|---|
list_files | Both | List files and directories with lock status |
read_file | Both | Read file contents (1MB limit, text files only) |
write_file | Both | Submit a file change (guest changes need host approval) |
lock_file | Both | Lock a file for exclusive editing |
unlock_file | Both | Release your own file lock |
get_status | Both | Show session info, connected users, and active locks |
get_notifications | Both | Quick summary of what needs attention |
ping | Both | Verify connection to the host MCP server |
set_display_name | Guest only | Set your display name for the session |
my_pending_changes | Guest only | View your submitted changes awaiting approval |
get_pending_changes | Host only | View all changes awaiting approval with diffs |
approve_change | Host only | Approve a pending change and write it to disk |
reject_change | Host only | Reject a pending change |
force_unlock | Host only | Force-release a stuck file lock |
Guest file writes do not go directly to disk — they go through the host's approval queue:
write_file submits the change📝 guest submitted change to server.py (ID: a1b2c3)get_pending_changes — sees a full diffapprove_change a1b2c3 → file is written to diskreject_change a1b2c3 → guest is notifiedcloudflared must be installed on the host machine (guest does not need it on macOS, but WSL guests do)letswork start [--port PORT] [--debug] # Start a session (default port: 8000)
letswork join <URL> --token <TOKEN> # Join a session as guestHost Machine:
[Project Files] ← [MCP Server :8000] ← [Cloudflare Tunnel] ← HTTPS URL
↑
Guest connects here
via stdio proxy + secret tokenThe guest connects through a stdio proxy rather than directly over HTTP — this avoids Cloudflare SSE reliability issues and gives stable MCP connectivity.
MIT — see LICENSE
Built with the Model Context Protocol.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.