type AgentIcon = | { type: "agent_icon"; shape: string; color: string } | { type: "emoji"; emoji: string } | { type: "url"; url: string } type AgentIntegration = { type: string name: string permissions?: Array> state?: Record } type AgentTrigger = { enabled: boolean state: Record integrationUrl?: string } type AgentConfiguration = { name?: string description?: string icon?: AgentIcon integrations?: Record triggers?: Record } type Agent = { agentUrl: string instructionsPageUrl: string configuration: AgentConfiguration } export type LoadAgent = (args: { url: string }) => Promise export type Module = { loadAgent: LoadAgent }