fix(agent/windows): named pipe Tailscale + hideWindow + logs

- Use Windows named pipe \.\pipe\studioe5-tailscaled instead of Unix socket
- Apply hideWindow to all child processes (tailscale, podman, docker, browser)
- Redirect agent logs to <data-dir>/agent.log and tailscaled logs to tailscaled.log
- Fix double tailscale/ tailscale dir path in startTailscaleAndReport
- Remove --operator=root on Windows
- Bump agent version to 0.3.1
This commit is contained in:
EduBox Dev
2026-06-23 18:18:26 +00:00
parent 03b2f1267d
commit d090f67bff
10 changed files with 121 additions and 37 deletions
+18
View File
@@ -0,0 +1,18 @@
//go:build windows
package main
import (
"os/exec"
"syscall"
)
// hideWindow configures a command so that it does not open a console window
// when it starts. This is essential for the agent running on student Windows
// machines, otherwise every docker/podman/tailscale command flashes a window.
func hideWindow(cmd *exec.Cmd) {
if cmd.SysProcAttr == nil {
cmd.SysProcAttr = &syscall.SysProcAttr{}
}
cmd.SysProcAttr.HideWindow = true
}