donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
57 lines • 2.71 kB
TypeScript
import type { Request, Response } from 'express';
import type { AgentsManager } from '../managers/AgentsManager';
/**
* API controller for managing the mapping between Donobu agents and GPT configurations.
*
* The AgentsApi provides endpoints for associating Donobu agents (like 'flow-runner')
* with specific GPT configurations. This mapping system allows flows to use different
* AI models and configurations based on their requirements. The API maintains a
* many-to-one relationship where multiple agents can reference the same GPT configuration,
* but each agent can only have one active configuration at a time.
*
* **Agent Types:**
* - `flow-runner`: The primary agent used for autonomous flow execution
*
* **Key Features:**
* - Validates GPT configuration existence before assignment
* - Supports null assignments to unlink agents from configurations
* - Provides both individual and bulk retrieval of agent mappings
* - Maintains referential integrity with the GPT configurations system
*/
export declare class AgentsApi {
private readonly agentsManager;
constructor(agentsManager: AgentsManager);
/**
* Sets the GPT configuration for a specific Donobu agent.
*
* This endpoint allows updating the GPT configuration associated with a particular
* agent. The operation validates that:
* 1. The agent name is a valid Donobu agent type
* 2. The GPT configuration exists (if non-null)
* 3. The assignment can be persisted successfully
*
* Setting a null configuration effectively unlinks the agent from any GPT configuration,
* which may prevent the agent from being used in autonomous flows.
*
* @throws {InvalidParamValueException} When the agent name is not a valid DonobuAgent
*/
set(req: Request, res: Response): Promise<void>;
/**
* Retrieves the GPT configuration name for a specific agent.
*
* Returns the currently assigned GPT configuration for the specified agent.
* If no configuration is assigned, returns null. The response includes
* validation to ensure the referenced configuration still exists.
*/
get(req: Request, res: Response): Promise<void>;
/**
* Retrieves all agent-to-GPT-configuration mappings.
*
* Returns a complete mapping of all Donobu agents to their assigned GPT configurations.
* This endpoint is useful for administrative interfaces and system configuration
* overviews. The response includes all defined agents, even those without
* assigned configurations (which will have null values).
*/
getAll(_req: Request, res: Response): Promise<void>;
}
//# sourceMappingURL=AgentsApi.d.ts.map