@iqai/adk-cli
Version:
CLI tool for creating, running, and testing ADK-TS agents
67 lines • 2.62 kB
TypeScript
import { InMemorySessionService } from "@iqai/adk";
import type { CreateSessionRequest, EventsResponse, LoadedAgent, SessionResponse, SessionsResponse, StateResponse } from "../../common/types";
import { AgentManager } from "../providers/agent-manager.service";
import { HotReloadService } from "../reload/hot-reload.service";
export declare class SessionsService {
private readonly agentManager;
private readonly sessionService;
private readonly quiet;
private readonly hotReload?;
private logger;
constructor(agentManager: AgentManager, sessionService: InMemorySessionService, quiet: boolean, hotReload?: HotReloadService | undefined);
ensureAgentLoaded(agentPath: string): Promise<LoadedAgent | null>;
listSessions(agentPath: string): Promise<SessionsResponse>;
createSession(agentPath: string, request: CreateSessionRequest): Promise<SessionResponse | {
error: string;
}>;
deleteSession(agentPath: string, sessionId: string): Promise<{
success: boolean;
} | {
error: string;
}>;
switchSession(agentPath: string, sessionId: string): Promise<{
success: boolean;
} | {
error: string;
}>;
getSessionMessages(loadedAgent: LoadedAgent): Promise<{
id: number;
type: "user" | "assistant";
content: string;
timestamp: string;
}[]>;
/**
* Get all sessions for a loaded agent
*/
getAgentSessions(loadedAgent: LoadedAgent): Promise<SessionsResponse>;
/**
* Create a new session for a loaded agent
*/
createAgentSession(loadedAgent: LoadedAgent, request?: CreateSessionRequest): Promise<SessionResponse>;
private getAgentPathFromUserId;
/**
* Delete a session for a loaded agent
*/
deleteAgentSession(loadedAgent: LoadedAgent, sessionId: string): Promise<void>;
/**
* Get events for a specific session
*/
getSessionEvents(loadedAgent: LoadedAgent, sessionId: string): Promise<EventsResponse>;
/**
* Switch the loaded agent to use a different session
*/
switchAgentSession(loadedAgent: LoadedAgent, sessionId: string): Promise<void>;
/**
* Get state for specific session
*/
getSessionState(loadedAgent: LoadedAgent, sessionId: string): Promise<StateResponse>;
/**
* Update session state
*/
updateSessionState(loadedAgent: LoadedAgent, sessionId: string, path: string, value: unknown): Promise<void>;
/**
* Helper method to set nested values using dot notation
*/
private setNestedValue;
}
//# sourceMappingURL=sessions.service.d.ts.map