@iqai/adk-cli
Version:
CLI tool for creating, running, and testing ADK-TS agents
54 lines • 2.09 kB
TypeScript
import { InMemorySessionService } from "@iqai/adk";
import type { Agent, LoadedAgent } from "../../common/types";
export declare class AgentManager {
private sessionService;
private agents;
private loadedAgents;
private builtAgents;
private initialStateHashes;
private scanner;
private loader;
private logger;
constructor(sessionService: InMemorySessionService, quiet?: boolean);
getAgents(): Map<string, Agent>;
getLoadedAgents(): Map<string, LoadedAgent>;
scanAgents(agentsDir: string): void;
/**
* Start an agent, optionally restoring a previous session.
* @param agentPath - The path to the agent
* @param preservedSessionId - Optional session ID to restore (used during hot reload)
* @param forceFullReload - Force cache invalidation and session reset (used when initial state changes)
*/
startAgent(agentPath: string, preservedSessionId?: string, forceFullReload?: boolean): Promise<{
session: string | undefined;
} | undefined>;
private validateAndGetAgent;
private loadAgentModule;
stopAgent(agentPath: string): Promise<void>;
sendMessageToAgent(agentPath: string, message: string, attachments?: Array<{
name: string;
mimeType: string;
data: string;
}>): Promise<string>;
/**
* Get initial state for an agent path
* Public method that can be called by other services
*/
getInitialStateForAgent(agentPath: string): import("./agent-loader.types").SessionState | undefined;
/**
* Extract initial state from an agent result
*/
private extractInitialState;
/**
* Get session info for all loaded agents before stopping
* Used for preserving sessions during hot reload
*/
getLoadedAgentSessions(): Map<string, string>;
/**
* Check if initial state has changed for any loaded agent
* Returns true if any agent's initial state hash has changed
*/
hasInitialStateChanged(): Promise<boolean>;
stopAllAgents(): void;
}
//# sourceMappingURL=agent-manager.service.d.ts.map