MCPcopy Index your code
hub / github.com/AI45Lab/Code / resume_session

Function resume_session

core/src/agent_api/agent_sessions.rs:152–176  ·  view source on GitHub ↗
(
    agent: &Agent,
    session_id: &str,
    options: SessionOptions,
)

Source from the content-addressed store, hash-verified

150}
151
152pub(super) fn resume_session(
153 agent: &Agent,
154 session_id: &str,
155 options: SessionOptions,
156) -> Result<AgentSession> {
157 bail_if_agent_closed(agent)?;
158
159 let store = options.session_store.clone().ok_or_else(|| {
160 crate::error::CodeError::Session(
161 "resume_session requires a session_store in SessionOptions".to_string(),
162 )
163 })?;
164
165 let data = session_persistence::load_session_data(&store, session_id)?;
166 let opts = session_persistence::apply_persisted_runtime_options(options, &data);
167 let opts = session_builder::prepare_session_options(agent, opts);
168 let session_id = data.id.clone();
169 let workspace = data.config.workspace.clone();
170 let llm_client =
171 session_config::resolve_session_llm_client(&agent.code_config, &opts, Some(&session_id))?;
172 let session = session_builder::build_agent_session(agent, workspace, llm_client, &opts)?;
173 session_persistence::restore_persisted_session_state(&session, &store, data)?;
174
175 Ok(session)
176}

Callers 1

resume_sessionMethod · 0.85

Calls 9

bail_if_agent_closedFunction · 0.85
load_session_dataFunction · 0.85
prepare_session_optionsFunction · 0.85
build_agent_sessionFunction · 0.85
SessionClass · 0.50
cloneMethod · 0.45

Tested by

no test coverage detected