chore: update meta files for multi-machine architecture session

This commit is contained in:
Hibryda 2026-03-06 18:46:03 +01:00
parent 04a7a4bb94
commit 250ea17d3e
6 changed files with 29 additions and 1 deletions

View file

@ -20,3 +20,4 @@ Project documentation lives here.
| [phases.md](phases.md) | v2 implementation phases (1-7) with checklists |
| [findings.md](findings.md) | Research findings (Agent SDK, Tauri, xterm.js, performance) |
| [progress.md](progress.md) | Session-by-session progress log |
| [multi-machine.md](multi-machine.md) | Multi-machine support architecture (WebSocket, relay binary) |

View file

@ -251,3 +251,15 @@ bterminal-v2/
- Rust 1.77+ (for building from source)
- WebKit2GTK 4.1+ (Tauri runtime)
- Linux x86_64 (primary target)
---
## Future: Multi-Machine Support [status: designed]
Architecture designed in [multi-machine.md](multi-machine.md). Extends BTerminal to manage agents and terminals on remote machines over WebSocket.
### Implementation Phases (A-D)
- [ ] **Phase A:** Extract `bterminal-core` crate (PtyManager + SidecarManager shared code)
- [ ] **Phase B:** Build `bterminal-relay` binary (WebSocket server, token auth, CLI flags)
- [ ] **Phase C:** Add `RemoteManager` to controller (remote.rs, WebSocket client connections)
- [ ] **Phase D:** Frontend integration (bridge adapters with remoteMachineId routing, machine management UI)

View file

@ -252,8 +252,20 @@ Design: No separate sidecar process per subagent. Parent's sidecar handles all;
#### TAURI_SIGNING_PRIVATE_KEY
- [x] Set via `gh secret set` on DexterFromLab/BTerminal GitHub repo
### Session: 2026-03-06 (continued) — Multi-Machine Architecture Design
#### Multi-Machine Support Architecture
- [x] Designed full multi-machine architecture in docs/multi-machine.md (303 lines)
- [x] Three-layer model: BTerminal (controller) + bterminal-relay (remote binary) + unified frontend
- [x] WebSocket NDJSON protocol: RelayCommand/RelayEvent envelope wrapping existing sidecar format
- [x] Authentication: pre-shared token + TLS, rate limiting, lockout
- [x] Autonomous relay model: agents keep running when controller disconnects
- [x] Reconnection with exponential backoff (1s-30s), state_sync on reconnect
- [x] 4-phase implementation plan: A (extract bterminal-core crate), B (relay binary), C (RemoteManager), D (frontend)
- [x] Updated TODO.md and docs/task_plan.md to reference the design
### Next Steps
- [ ] Deno sidecar: test with real claude CLI, benchmark startup time vs Node.js
- [ ] E2E testing with Playwright/WebDriver (when display server available)
- [ ] Multi-machine support (remote agents via WebSocket)
- [ ] Multi-machine Phase A: extract bterminal-core crate
- [ ] Test agent teams with CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1