Login flow

This commit is contained in:
Illia Polosukhin
2026-02-03 09:20:26 -08:00
parent dedda9c51d
commit 2df4a4f5f0
9 changed files with 737 additions and 20 deletions
+13 -2
View File
@@ -5,6 +5,7 @@
mod nearai;
mod provider;
mod reasoning;
pub mod session;
pub use nearai::NearAiProvider;
pub use provider::{
@@ -12,6 +13,7 @@ pub use provider::{
ToolCompletionRequest, ToolCompletionResponse, ToolDefinition, ToolResult,
};
pub use reasoning::{ActionPlan, Reasoning, ReasoningContext, ToolSelection};
pub use session::{SessionConfig, SessionManager, create_session_manager};
use std::sync::Arc;
@@ -19,6 +21,15 @@ use crate::config::LlmConfig;
use crate::error::LlmError;
/// Create an LLM provider based on configuration.
pub fn create_llm_provider(config: &LlmConfig) -> Result<Arc<dyn LlmProvider>, LlmError> {
Ok(Arc::new(NearAiProvider::new(config.nearai.clone())))
///
/// Requires a session manager for authentication. Use `create_session_manager`
/// to create one from the config.
pub fn create_llm_provider(
config: &LlmConfig,
session: Arc<SessionManager>,
) -> Result<Arc<dyn LlmProvider>, LlmError> {
Ok(Arc::new(NearAiProvider::new(
config.nearai.clone(),
session,
)))
}