syntax = "proto3"; package serverinfo; option go_package = "github.com/yaoapp/tai/serverinfo/pb"; service ServerInfo { rpc GetInfo(GetInfoRequest) returns (GetInfoResponse); } message GetInfoRequest {} message SystemInfo { string os = 1; string arch = 2; string hostname = 3; int32 num_cpu = 4; int64 total_mem = 5; string shell = 6; // preferred shell: "sh", "pwsh", "powershell", "cmd.exe" string temp_dir = 7; // system temp directory } message GetInfoResponse { string version = 1; map ports = 2; // "grpc", "http", "vnc", "docker", "k8s" map capabilities = 3; // "docker", "k8s" SystemInfo system = 4; }