syntax = "proto3"; package xray.app.proxyman.command; option csharp_namespace = "Xray.App.Proxyman.Command"; option go_package = "github.com/xtls/xray-core/app/proxyman/command"; option java_package = "com.xray.app.proxyman.command"; option java_multiple_files = true; import "common/protocol/user.proto"; import "common/serial/typed_message.proto"; import "core/config.proto"; message AddUserOperation { xray.common.protocol.User user = 1; } message RemoveUserOperation { string email = 1; } message AddInboundRequest { core.InboundHandlerConfig inbound = 1; } message AddInboundResponse {} message RemoveInboundRequest { string tag = 1; } message RemoveInboundResponse {} message AlterInboundRequest { string tag = 1; xray.common.serial.TypedMessage operation = 2; } message AlterInboundResponse {} message AddOutboundRequest { core.OutboundHandlerConfig outbound = 1; } message AddOutboundResponse {} message RemoveOutboundRequest { string tag = 1; } message RemoveOutboundResponse {} message AlterOutboundRequest { string tag = 1; xray.common.serial.TypedMessage operation = 2; } message AlterOutboundResponse {} service HandlerService { rpc AddInbound(AddInboundRequest) returns (AddInboundResponse) {} rpc RemoveInbound(RemoveInboundRequest) returns (RemoveInboundResponse) {} rpc AlterInbound(AlterInboundRequest) returns (AlterInboundResponse) {} rpc AddOutbound(AddOutboundRequest) returns (AddOutboundResponse) {} rpc RemoveOutbound(RemoveOutboundRequest) returns (RemoveOutboundResponse) {} rpc AlterOutbound(AlterOutboundRequest) returns (AlterOutboundResponse) {} } message Config {}