Initial project snapshot

This commit is contained in:
2026-04-28 22:29:50 +03:00
commit 8ba0561f4f
365 changed files with 91832 additions and 0 deletions
@@ -0,0 +1,53 @@
SYSTEM OVERVIEW
Client -> Proxy (custom protocol)
Proxy -> RDP servers (FreeRDP)
CORE FEATURES
- Persistent sessions
- Reconnect / takeover
- No direct client-server access
- Multi-session
- Clipboard + file transfer
- Quality profiles
SESSION RULES
- Session lives on server
- Client disconnect does NOT terminate session
- Reattach allowed from any trusted device
- Single active controller per session
COMPONENTS
- API Gateway (Go)
- Auth Service
- Resource Service
- Session Broker
- Session Gateway (WebSocket)
- RDP Worker (C++ + FreeRDP)
DATABASE ENTITIES
- users
- devices
- resources
- sessions
- secrets
- audit logs
PROTOCOL
- REST for control
- WebSocket for session stream
SECURITY
- MFA
- encrypted secrets
- no direct RDP exposure
- trusted devices
RENDERING
- region updates (NOT full screenshots)
- adaptive quality
- bandwidth profiles
GOAL
User works as if sitting at remote machine.
@@ -0,0 +1,29 @@
You are building a production-grade remote access system.
Architecture:
- Go backend
- C++ RDP worker (FreeRDP)
- WebSocket session streaming
- PostgreSQL + Redis
Core rules:
- Sessions are persistent
- Client disconnect does NOT kill session
- Reconnect must work
- No direct RDP exposure
Tasks:
1. Create backend structure in Go
2. Implement auth (JWT + refresh)
3. Implement session broker
4. Implement WebSocket gateway
5. Define protocol messages
6. Prepare worker interface (C++ stub)
Focus:
- Stability
- Security
- Performance
Do NOT simplify architecture.
@@ -0,0 +1,18 @@
WHAT TO DO
1. Create empty repo
2. Copy docs from archive into /docs
3. Open Codex
4. Paste prompt from:
03_codex_prompts/00_master_prompt.md
Then iterate:
- backend
- protocol
- workers
- clients
IMPORTANT:
Do NOT start with UI.
Start with backend + session model.
@@ -0,0 +1,23 @@
TECH STACK (FINAL)
Backend:
- Go (API, Auth, Broker, Gateway)
RDP Worker:
- C++ + FreeRDP
Clients:
- Windows: C# (WPF)
- Linux: C++ (Qt 6)
Admin panel:
- TypeScript + React
Infra:
- PostgreSQL
- Redis
- Docker
Key principle:
One protocol, multiple native clients.
+9
View File
@@ -0,0 +1,9 @@
START HERE
1. Read 05_decisions/technology_stack_review_2026.md
2. Read 02_specs/technical_specification.md
3. Then open 03_codex_prompts/00_master_prompt.md
This package contains full technical specification and Codex prompts
for building a secure RDP proxy system with custom protocol.