Download codex-rs/config/src/thread_config/proto/codex.thread_config.v1.rs from SaylorTwift/codex: direct link, hf CLI and curl.
- Browser
- Download file 16.7 kB
-
https://huggingface.co/SaylorTwift/codex/resolve/main/codex-rs/config/src/thread_config/proto/codex.thread_config.v1.rs
- Command line
-
hf download hf://SaylorTwift/codex/codex-rs/config/src/thread_config/proto/codex.thread_config.v1.rs
-
curl -L -o codex.thread_config.v1.rs https://huggingface.co/SaylorTwift/codex/resolve/main/codex-rs/config/src/thread_config/proto/codex.thread_config.v1.rs
16.7 kB
| // This file is @generated by prost-build. | |
| pub struct LoadThreadConfigRequest { | |
| pub thread_id: ::core::option::Option<::prost::alloc::string::String>, | |
| pub cwd: ::core::option::Option<::prost::alloc::string::String>, | |
| } | |
| pub struct LoadThreadConfigResponse { | |
| pub sources: ::prost::alloc::vec::Vec<ThreadConfigSource>, | |
| } | |
| pub struct ThreadConfigSource { | |
| pub source: ::core::option::Option<thread_config_source::Source>, | |
| } | |
| /// Nested message and enum types in `ThreadConfigSource`. | |
| pub mod thread_config_source { | |
| pub enum Source { | |
| Session(super::SessionThreadConfig), | |
| User(super::UserThreadConfig), | |
| } | |
| } | |
| pub struct SessionThreadConfig { | |
| pub model_provider: ::core::option::Option<::prost::alloc::string::String>, | |
| pub model_providers: ::prost::alloc::vec::Vec<ModelProvider>, | |
| pub features: ::std::collections::HashMap<::prost::alloc::string::String, bool>, | |
| } | |
| pub struct UserThreadConfig {} | |
| pub struct ModelProvider { | |
| pub id: ::prost::alloc::string::String, | |
| pub name: ::prost::alloc::string::String, | |
| pub base_url: ::core::option::Option<::prost::alloc::string::String>, | |
| pub env_key: ::core::option::Option<::prost::alloc::string::String>, | |
| pub env_key_instructions: ::core::option::Option<::prost::alloc::string::String>, | |
| pub experimental_bearer_token: ::core::option::Option<::prost::alloc::string::String>, | |
| pub auth: ::core::option::Option<ModelProviderAuthInfo>, | |
| pub wire_api: i32, | |
| pub query_params: ::core::option::Option<StringMap>, | |
| pub http_headers: ::core::option::Option<StringMap>, | |
| pub env_http_headers: ::core::option::Option<StringMap>, | |
| pub request_max_retries: ::core::option::Option<u64>, | |
| pub stream_max_retries: ::core::option::Option<u64>, | |
| pub stream_idle_timeout_ms: ::core::option::Option<u64>, | |
| pub websocket_connect_timeout_ms: ::core::option::Option<u64>, | |
| pub requires_openai_auth: bool, | |
| pub supports_websockets: bool, | |
| pub supports_standalone_web_search: bool, | |
| } | |
| pub struct StringMap { | |
| pub values: | |
| ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>, | |
| } | |
| pub struct ModelProviderAuthInfo { | |
| pub command: ::prost::alloc::string::String, | |
| pub args: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, | |
| pub timeout_ms: u64, | |
| pub refresh_interval_ms: u64, | |
| pub cwd: ::prost::alloc::string::String, | |
| } | |
| pub enum WireApi { | |
| Unspecified = 0, | |
| Responses = 1, | |
| } | |
| impl WireApi { | |
| /// String value of the enum field names used in the ProtoBuf definition. | |
| /// | |
| /// The values are not transformed in any way and thus are considered stable | |
| /// (if the ProtoBuf definition does not change) and safe for programmatic use. | |
| pub fn as_str_name(&self) -> &'static str { | |
| match self { | |
| Self::Unspecified => "WIRE_API_UNSPECIFIED", | |
| Self::Responses => "WIRE_API_RESPONSES", | |
| } | |
| } | |
| /// Creates an enum from field names used in the ProtoBuf definition. | |
| pub fn from_str_name(value: &str) -> ::core::option::Option<Self> { | |
| match value { | |
| "WIRE_API_UNSPECIFIED" => Some(Self::Unspecified), | |
| "WIRE_API_RESPONSES" => Some(Self::Responses), | |
| _ => None, | |
| } | |
| } | |
| } | |
| /// Generated client implementations. | |
| pub mod thread_config_loader_client { | |
| use tonic::codegen::http::Uri; | |
| use tonic::codegen::*; | |
| pub struct ThreadConfigLoaderClient<T> { | |
| inner: tonic::client::Grpc<T>, | |
| } | |
| impl ThreadConfigLoaderClient<tonic::transport::Channel> { | |
| /// Attempt to create a new client by connecting to a given endpoint. | |
| pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error> | |
| where | |
| D: TryInto<tonic::transport::Endpoint>, | |
| D::Error: Into<StdError>, | |
| { | |
| let conn = tonic::transport::Endpoint::new(dst)?.connect().await?; | |
| Ok(Self::new(conn)) | |
| } | |
| } | |
| impl<T> ThreadConfigLoaderClient<T> | |
| where | |
| T: tonic::client::GrpcService<tonic::body::Body>, | |
| T::Error: Into<StdError>, | |
| T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static, | |
| <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send, | |
| { | |
| pub fn new(inner: T) -> Self { | |
| let inner = tonic::client::Grpc::new(inner); | |
| Self { inner } | |
| } | |
| pub fn with_origin(inner: T, origin: Uri) -> Self { | |
| let inner = tonic::client::Grpc::with_origin(inner, origin); | |
| Self { inner } | |
| } | |
| pub fn with_interceptor<F>( | |
| inner: T, | |
| interceptor: F, | |
| ) -> ThreadConfigLoaderClient<InterceptedService<T, F>> | |
| where | |
| F: tonic::service::Interceptor, | |
| T::ResponseBody: Default, | |
| T: tonic::codegen::Service< | |
| http::Request<tonic::body::Body>, | |
| Response = http::Response< | |
| <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody, | |
| >, | |
| >, | |
| <T as tonic::codegen::Service<http::Request<tonic::body::Body>>>::Error: | |
| Into<StdError> + std::marker::Send + std::marker::Sync, | |
| { | |
| ThreadConfigLoaderClient::new(InterceptedService::new(inner, interceptor)) | |
| } | |
| /// Compress requests with the given encoding. | |
| /// | |
| /// This requires the server to support it otherwise it might respond with an | |
| /// error. | |
| pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self { | |
| self.inner = self.inner.send_compressed(encoding); | |
| self | |
| } | |
| /// Enable decompressing responses. | |
| pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self { | |
| self.inner = self.inner.accept_compressed(encoding); | |
| self | |
| } | |
| /// Limits the maximum size of a decoded message. | |
| /// | |
| /// Default: `4MB` | |
| pub fn max_decoding_message_size(mut self, limit: usize) -> Self { | |
| self.inner = self.inner.max_decoding_message_size(limit); | |
| self | |
| } | |
| /// Limits the maximum size of an encoded message. | |
| /// | |
| /// Default: `usize::MAX` | |
| pub fn max_encoding_message_size(mut self, limit: usize) -> Self { | |
| self.inner = self.inner.max_encoding_message_size(limit); | |
| self | |
| } | |
| pub async fn load( | |
| &mut self, | |
| request: impl tonic::IntoRequest<super::LoadThreadConfigRequest>, | |
| ) -> std::result::Result<tonic::Response<super::LoadThreadConfigResponse>, tonic::Status> | |
| { | |
| self.inner.ready().await.map_err(|e| { | |
| tonic::Status::unknown(format!("Service was not ready: {}", e.into())) | |
| })?; | |
| let codec = tonic_prost::ProstCodec::default(); | |
| let path = http::uri::PathAndQuery::from_static( | |
| "/codex.thread_config.v1.ThreadConfigLoader/Load", | |
| ); | |
| let mut req = request.into_request(); | |
| req.extensions_mut().insert(GrpcMethod::new( | |
| "codex.thread_config.v1.ThreadConfigLoader", | |
| "Load", | |
| )); | |
| self.inner.unary(req, path, codec).await | |
| } | |
| } | |
| } | |
| /// Generated server implementations. | |
| pub mod thread_config_loader_server { | |
| use tonic::codegen::*; | |
| /// Generated trait containing gRPC methods that should be implemented for use with ThreadConfigLoaderServer. | |
| pub trait ThreadConfigLoader: std::marker::Send + std::marker::Sync + 'static { | |
| async fn load( | |
| &self, | |
| request: tonic::Request<super::LoadThreadConfigRequest>, | |
| ) -> std::result::Result<tonic::Response<super::LoadThreadConfigResponse>, tonic::Status>; | |
| } | |
| pub struct ThreadConfigLoaderServer<T> { | |
| inner: Arc<T>, | |
| accept_compression_encodings: EnabledCompressionEncodings, | |
| send_compression_encodings: EnabledCompressionEncodings, | |
| max_decoding_message_size: Option<usize>, | |
| max_encoding_message_size: Option<usize>, | |
| } | |
| impl<T> ThreadConfigLoaderServer<T> { | |
| pub fn new(inner: T) -> Self { | |
| Self::from_arc(Arc::new(inner)) | |
| } | |
| pub fn from_arc(inner: Arc<T>) -> Self { | |
| Self { | |
| inner, | |
| accept_compression_encodings: Default::default(), | |
| send_compression_encodings: Default::default(), | |
| max_decoding_message_size: None, | |
| max_encoding_message_size: None, | |
| } | |
| } | |
| pub fn with_interceptor<F>(inner: T, interceptor: F) -> InterceptedService<Self, F> | |
| where | |
| F: tonic::service::Interceptor, | |
| { | |
| InterceptedService::new(Self::new(inner), interceptor) | |
| } | |
| /// Enable decompressing requests with the given encoding. | |
| pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self { | |
| self.accept_compression_encodings.enable(encoding); | |
| self | |
| } | |
| /// Compress responses with the given encoding, if the client supports it. | |
| pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self { | |
| self.send_compression_encodings.enable(encoding); | |
| self | |
| } | |
| /// Limits the maximum size of a decoded message. | |
| /// | |
| /// Default: `4MB` | |
| pub fn max_decoding_message_size(mut self, limit: usize) -> Self { | |
| self.max_decoding_message_size = Some(limit); | |
| self | |
| } | |
| /// Limits the maximum size of an encoded message. | |
| /// | |
| /// Default: `usize::MAX` | |
| pub fn max_encoding_message_size(mut self, limit: usize) -> Self { | |
| self.max_encoding_message_size = Some(limit); | |
| self | |
| } | |
| } | |
| impl<T, B> tonic::codegen::Service<http::Request<B>> for ThreadConfigLoaderServer<T> | |
| where | |
| T: ThreadConfigLoader, | |
| B: Body + std::marker::Send + 'static, | |
| B::Error: Into<StdError> + std::marker::Send + 'static, | |
| { | |
| type Response = http::Response<tonic::body::Body>; | |
| type Error = std::convert::Infallible; | |
| type Future = BoxFuture<Self::Response, Self::Error>; | |
| fn poll_ready( | |
| &mut self, | |
| _cx: &mut Context<'_>, | |
| ) -> Poll<std::result::Result<(), Self::Error>> { | |
| Poll::Ready(Ok(())) | |
| } | |
| fn call(&mut self, req: http::Request<B>) -> Self::Future { | |
| match req.uri().path() { | |
| "/codex.thread_config.v1.ThreadConfigLoader/Load" => { | |
| struct LoadSvc<T: ThreadConfigLoader>(pub Arc<T>); | |
| impl<T: ThreadConfigLoader> | |
| tonic::server::UnaryService<super::LoadThreadConfigRequest> for LoadSvc<T> | |
| { | |
| type Response = super::LoadThreadConfigResponse; | |
| type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>; | |
| fn call( | |
| &mut self, | |
| request: tonic::Request<super::LoadThreadConfigRequest>, | |
| ) -> Self::Future { | |
| let inner = Arc::clone(&self.0); | |
| let fut = async move { | |
| <T as ThreadConfigLoader>::load(&inner, request).await | |
| }; | |
| Box::pin(fut) | |
| } | |
| } | |
| let accept_compression_encodings = self.accept_compression_encodings; | |
| let send_compression_encodings = self.send_compression_encodings; | |
| let max_decoding_message_size = self.max_decoding_message_size; | |
| let max_encoding_message_size = self.max_encoding_message_size; | |
| let inner = self.inner.clone(); | |
| let fut = async move { | |
| let method = LoadSvc(inner); | |
| let codec = tonic_prost::ProstCodec::default(); | |
| let mut grpc = tonic::server::Grpc::new(codec) | |
| .apply_compression_config( | |
| accept_compression_encodings, | |
| send_compression_encodings, | |
| ) | |
| .apply_max_message_size_config( | |
| max_decoding_message_size, | |
| max_encoding_message_size, | |
| ); | |
| let res = grpc.unary(method, req).await; | |
| Ok(res) | |
| }; | |
| Box::pin(fut) | |
| } | |
| _ => Box::pin(async move { | |
| let mut response = http::Response::new(tonic::body::Body::default()); | |
| let headers = response.headers_mut(); | |
| headers.insert( | |
| tonic::Status::GRPC_STATUS, | |
| (tonic::Code::Unimplemented as i32).into(), | |
| ); | |
| headers.insert( | |
| http::header::CONTENT_TYPE, | |
| tonic::metadata::GRPC_CONTENT_TYPE, | |
| ); | |
| Ok(response) | |
| }), | |
| } | |
| } | |
| } | |
| impl<T> Clone for ThreadConfigLoaderServer<T> { | |
| fn clone(&self) -> Self { | |
| let inner = self.inner.clone(); | |
| Self { | |
| inner, | |
| accept_compression_encodings: self.accept_compression_encodings, | |
| send_compression_encodings: self.send_compression_encodings, | |
| max_decoding_message_size: self.max_decoding_message_size, | |
| max_encoding_message_size: self.max_encoding_message_size, | |
| } | |
| } | |
| } | |
| /// Generated gRPC service name | |
| pub const SERVICE_NAME: &str = "codex.thread_config.v1.ThreadConfigLoader"; | |
| impl<T> tonic::server::NamedService for ThreadConfigLoaderServer<T> { | |
| const NAME: &'static str = SERVICE_NAME; | |
| } | |
| } | |