mirror of
https://github.com/coder/code-server.git
synced 2026-02-19 18:01:15 +08:00
VSCode Cloud IDE
Browser-based VSCode with Claude Code & Node.js
Cloud IDE with persistent extensions, settings, and tools. Runs as non-root user.
Features
- Claude Code & Node.js 20 pre-installed
- Non-root execution - runs as
coderuser (UID 1000) - Extensions persist across redeployments
- Volume permissions auto-fixed on startup
Quick Start
# Claude Code with auto-accept (for automation)
claude --dangerously-skip-permissions
# Interactive mode
claude
# Node.js ready
node --version
npm --version
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
PASSWORD |
Yes | - | Login password |
CODER_HOME |
No | /home/coder |
Volume mount path |
CODER_UID |
No | 1000 |
User ID for coder |
CODER_GID |
No | 1000 |
Group ID for coder |
How It Works
- Starts as root - fixes volume permissions
- Switches to coder - uses
gosufor clean handoff - Runs code-server - as non-root user
This means:
- ✅ No root permission warnings in code-server
- ✅ Existing volumes with root-owned files work fine
- ✅ Claude
--dangerously-skip-permissionsworks
Claude Code Authentication
After running claude for the first time:
- Follow the authentication prompts
- Your credentials are stored in
~/.claude/ - They persist across redeployments (on volume)
Custom Startup Scripts
Add to $CODER_HOME/entrypoint.d/:
#!/bin/bash
git config --global user.name "Your Name"
Make executable: chmod +x script.sh
Update Behavior
| Component | Behavior |
|---|---|
| Volume tools | You control - install to ~/.local/node/ or ~/.claude/local/ |
| Image tools | Auto-update on redeploy (fallback) |
| Extensions | Persist on volume |
| Claude auth | Persists on volume |
Logs show [volume] or [image] next to each tool.
Troubleshooting
| Issue | Solution |
|---|---|
| Permission denied | Check CODER_UID matches your volume owner |
| Claude not found | Run which claude to check PATH |
| Extensions missing | Verify volume mounted at CODER_HOME |
Credits
- code-server by Coder
- Claude Code by Anthropic
License: MIT
Languages
TypeScript
81.4%
Shell
14.5%
HTML
1%
CSS
0.8%
HCL
0.7%
Other
1.6%