pub struct RunAgentClientConfig {
pub agent_id: String,
pub entrypoint_tag: String,
pub local: Option<bool>,
pub host: Option<String>,
pub port: Option<u16>,
pub api_key: Option<String>,
pub base_url: Option<String>,
pub extra_params: Option<HashMap<String, Value>>,
pub enable_registry: Option<bool>,
pub user_id: Option<String>,
pub persistent_memory: Option<bool>,
}Expand description
Configuration for creating a RunAgent client
All fields except agent_id and entrypoint_tag are optional.
§Direct Construction
use runagent::{RunAgentClient, RunAgentClientConfig};
#[tokio::main]
async fn main() -> runagent::RunAgentResult<()> {
let client = RunAgentClient::new(RunAgentClientConfig {
agent_id: "agent-id".to_string(),
entrypoint_tag: "entrypoint".to_string(),
local: None,
host: None,
port: None,
api_key: Some("key".to_string()),
base_url: Some("http://localhost:8333/".to_string()),
extra_params: None,
enable_registry: None,
user_id: None,
persistent_memory: None,
}).await?;
Ok(())
}§Builder Pattern (Alternative)
use runagent::{RunAgentClient, RunAgentClientConfig};
use std::env;
#[tokio::main]
async fn main() -> runagent::RunAgentResult<()> {
let client = RunAgentClient::new(
RunAgentClientConfig::new("agent-id", "entrypoint")
.with_api_key(env::var("RUNAGENT_API_KEY").unwrap_or_else(|_| "key".to_string()))
.with_base_url("http://localhost:8333/")
).await?;
Ok(())
}Fields§
§agent_id: StringAgent ID (required)
entrypoint_tag: StringEntrypoint tag (required)
local: Option<bool>Whether this is a local agent (default: false)
host: Option<String>Host for local agents (optional, will lookup from DB if not provided and local=true)
port: Option<u16>Port for local agents (optional, will lookup from DB if not provided and local=true)
api_key: Option<String>API key for remote agents (optional, can also use RUNAGENT_API_KEY env var)
base_url: Option<String>Base URL for remote agents (optional, defaults to https://backend.run-agent.ai)
extra_params: Option<HashMap<String, Value>>Extra parameters for future use
enable_registry: Option<bool>Enable database registry lookup (default: true for local agents)
user_id: Option<String>User ID for persistent memory
persistent_memory: Option<bool>Enable persistent memory for this user
Implementations§
Source§impl RunAgentClientConfig
impl RunAgentClientConfig
Sourcepub fn new(
agent_id: impl Into<String>,
entrypoint_tag: impl Into<String>,
) -> Self
pub fn new( agent_id: impl Into<String>, entrypoint_tag: impl Into<String>, ) -> Self
Create a new config with required fields
Sourcepub fn with_local(self, local: bool) -> Self
pub fn with_local(self, local: bool) -> Self
Set local flag
Sourcepub fn with_address(self, host: impl Into<String>, port: u16) -> Self
pub fn with_address(self, host: impl Into<String>, port: u16) -> Self
Set host and port for local agents
Sourcepub fn with_api_key(self, api_key: impl Into<String>) -> Self
pub fn with_api_key(self, api_key: impl Into<String>) -> Self
Set API key
Sourcepub fn with_base_url(self, base_url: impl Into<String>) -> Self
pub fn with_base_url(self, base_url: impl Into<String>) -> Self
Set base URL
Sourcepub fn with_extra_params(self, extra_params: HashMap<String, Value>) -> Self
pub fn with_extra_params(self, extra_params: HashMap<String, Value>) -> Self
Set extra parameters
Sourcepub fn with_enable_registry(self, enable: bool) -> Self
pub fn with_enable_registry(self, enable: bool) -> Self
Enable or disable registry lookup
Sourcepub fn with_user_id(self, user_id: impl Into<String>) -> Self
pub fn with_user_id(self, user_id: impl Into<String>) -> Self
Set user ID for persistent memory
Sourcepub fn with_persistent_memory(self, persistent: bool) -> Self
pub fn with_persistent_memory(self, persistent: bool) -> Self
Enable or disable persistent memory for this user
Trait Implementations§
Source§impl Clone for RunAgentClientConfig
impl Clone for RunAgentClientConfig
Source§fn clone(&self) -> RunAgentClientConfig
fn clone(&self) -> RunAgentClientConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RunAgentClientConfig
impl Debug for RunAgentClientConfig
Auto Trait Implementations§
impl Freeze for RunAgentClientConfig
impl RefUnwindSafe for RunAgentClientConfig
impl Send for RunAgentClientConfig
impl Sync for RunAgentClientConfig
impl Unpin for RunAgentClientConfig
impl UnwindSafe for RunAgentClientConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more