You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
graph LR
subgraph HOST ["Host (LIGHTHOUSE)"]
W[sts2-mcp-wrapper/<br/>widgets + .env]
S[STS2MCP/<br/>mod source]
U[update_vm_ip.py]
end
subgraph VM1 ["win11-base VM"]
G[STS2 Game + MCP Mod<br/>:15526 API]
end
subgraph VM2 ["openclaw-dev-02 VM"]
O[OpenClaw Agent<br/>STS2MCP bridge]
end
W -- "API calls" --> G
S -- "SCP deploy" --> G
O -- "bridge" --> G
Loading
Deploy Flow
flowchart TD
A[Identify Need] --> B{Client or Mod?}
B -->|Client Widget| C[Edit widget code locally]
C --> D[Test against live API]
D --> E{Working?}
E -->|No| C
E -->|Yes| F[Lint with ruff]
F --> G[Stage & Commit to sts2-mcp-wrapper]
B -->|Mod Patch| H[Edit McpMod.StateBuilder.cs]
H --> I[dotnet build locally]
I --> J{Build OK?}
J -->|No| H
J -->|Yes| K[Commit & Push to fork/main]
K --> L[SSH: SCP DLL to win11-base VM]
L --> M[SSH: Restart game via scheduled task]
M --> N[Test via API from host]
N --> O{Working?}
O -->|No| H
O -->|Yes| P{Upstream?}
P -->|Stage| Q[Create branch off origin/main\nPush to fork - no PR yet]
P -->|Submit| R[Create PR against\nGennadiyev/STS2MCP]
P -->|Later| G
Q --> G
R --> S[Monitor PR feedback]
S --> T{Changes requested?}
T -->|Yes| U[Update branch\nForce-push]
U --> S
T -->|Merged| V[Done]
Loading
Screenshot Loop (Visual Verification)
Use the screenshot-action-screenshot cycle to verify UI interactions:
# 1. Capture — runs in interactive session via scheduled task (uses SetForegroundWindow)
ssh hostname@<VM_IP>"schtasks /run /tn TakeScreenshot"&& sleep 3
scp hostname@<VM_IP>:C:/Users/hostname/screenshot.png ./screenshot.png
# 2. Analyze screenshot to understand current UI state# 3. Perform action via API# 4. Re-capture — verify result
ssh hostname@<VM_IP>"schtasks /run /tn TakeScreenshot"&& sleep 3
scp hostname@<VM_IP>:C:/Users/hostname/screenshot.png ./screenshot.png
# 5. Iterate if needed