Self-hosted SSH + SFTP + RDP in a browser — MobaXterm replacement
Vantz Stockwell
80463235b0
fix(rdp): VERSION echo + guacd host networking for overlay reach
...
- Echo VERSION_X_Y_Z args back to guacd in CONNECT handshake
- Set guacd to network_mode: host so it can reach RDP targets on
NetBird/Tailscale overlay networks (100.64.x.x)
- App container uses host.docker.internal to reach guacd on host
- Add diagnostic logging for guacd→browser instruction relay
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 05:23:02 -04:00
backend
fix(rdp): VERSION echo + guacd host networking for overlay reach
2026-03-14 05:23:02 -04:00
docs /superpowers
fix: plan — async host key verification via ssh2 verify callback
2026-03-12 17:02:20 -04:00
frontend
fix(rdp): replace class extends with direct instance method override on Guacamole.Tunnel
2026-03-14 04:51:03 -04:00
images
feat: convert Settings to right sidebar panel, remove light mode
2026-03-13 10:25:24 -04:00
.env.example
feat: project scaffold — Docker, NestJS, Nuxt 3, Prisma config
2026-03-12 17:05:37 -04:00
.gitignore
fix: inline modals in index.vue, proper DTO for profile update
2026-03-13 09:09:05 -04:00
docker-compose.yml
fix(rdp): VERSION echo + guacd host networking for overlay reach
2026-03-14 05:23:02 -04:00
Dockerfile
fix: correct dist path (dist/src/main.js), static path, explicit schema for migrate
2026-03-13 08:23:52 -04:00
README.md
feat: project scaffold — Docker, NestJS, Nuxt 3, Prisma config
2026-03-12 17:05:37 -04:00
Remote-Spec.md
docs: Wraith spec + implementation plan
2026-03-12 16:59:34 -04:00
Wraith
Self-hosted MobaXterm replacement — SSH + SFTP + RDP in a browser.
Stack
Backend: NestJS 10, Prisma 6, PostgreSQL 16, ssh2, guacd
Frontend: Nuxt 3 (SPA), PrimeVue 4, Tailwind CSS, xterm.js 5
Quick Start
cp .env.example .env
# Edit .env with real secrets
docker compose up -d
Default credentials: admin@wraith.local / wraith
Development
# Backend
cd backend && npm install && npm run dev
# Frontend
cd frontend && npm install && npm run dev