{"version":3,"file":"index.mjs","names":[],"sources":["../../src/agent-manager/agent-manager-client.ts","../../src/agent-manager/agent-manager.ts"],"sourcesContent":["/* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD */\n/* SPDX-License-Identifier: Apache-2.0 */\n\nimport {\n  callServiceFunction,\n  closeService,\n  isServiceAvailable,\n  openService,\n  resolveHost,\n  type ServiceClientOptions,\n  type ServiceHandle,\n} from '../common/service-rpc.ts';\nimport type { AgentAttributes } from './agent-manager-types.ts';\n\nexport const AGENT_MANAGER_SERVICE_NAME = 'AgentManager';\n\nexport const AGENT_MANAGER_FUNCTIONS = {\n  SetAgentInfo: 'SetAgentInfo',\n  SetChatMode: 'SetChatMode',\n  SetTargetAgent: 'SetTargetAgent',\n  GetTargetAgent: 'GetTargetAgent',\n  GetAgentNames: 'GetAgentNames',\n  GetAgentAttributes: 'GetAgentAttributes',\n  GetChatMode: 'GetChatMode',\n  GetActiveAgent: 'GetActiveAgent',\n  TriggerGeneralAction: 'TriggerGeneralAction',\n  Suspend: 'Suspend',\n  Resume: 'Resume',\n  InterruptSpeaking: 'InterruptSpeaking',\n} as const;\n\nexport type AgentManagerClientOptions = ServiceClientOptions;\nexport { type ServiceHandle as AgentManagerHandle };\n\nexport function isAgentManagerAvailable(options?: AgentManagerClientOptions): boolean {\n  return isServiceAvailable(AGENT_MANAGER_SERVICE_NAME, options);\n}\n\nexport function openAgentManager(options?: AgentManagerClientOptions): ServiceHandle {\n  return openService(AGENT_MANAGER_SERVICE_NAME, options);\n}\n\nexport function closeAgentManager(\n  handle: ServiceHandle,\n  options?: AgentManagerClientOptions,\n): void {\n  closeService(handle, options);\n}\n\nexport function setAgentInfo(\n  handle: ServiceHandle,\n  name: string,\n  info: Record<string, unknown>,\n  options?: AgentManagerClientOptions,\n): void {\n  callServiceFunction<void>(resolveHost(options), handle, AGENT_MANAGER_FUNCTIONS.SetAgentInfo, {\n    Name: name,\n    Info: info,\n  });\n}\n\nexport function setChatMode(\n  handle: ServiceHandle,\n  mode: string,\n  options?: AgentManagerClientOptions,\n): void {\n  callServiceFunction<void>(resolveHost(options), handle, AGENT_MANAGER_FUNCTIONS.SetChatMode, {\n    Mode: mode,\n  });\n}\n\nexport function setTargetAgent(\n  handle: ServiceHandle,\n  name: string,\n  options?: AgentManagerClientOptions,\n): void {\n  callServiceFunction<void>(resolveHost(options), handle, AGENT_MANAGER_FUNCTIONS.SetTargetAgent, {\n    Name: name,\n  });\n}\n\nexport function getTargetAgent(handle: ServiceHandle, options?: AgentManagerClientOptions): string {\n  return callServiceFunction<string>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.GetTargetAgent,\n    {},\n  );\n}\n\nexport function getAgentNames(\n  handle: ServiceHandle,\n  options?: AgentManagerClientOptions,\n): string[] {\n  return callServiceFunction<string[]>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.GetAgentNames,\n    {},\n  );\n}\n\nexport function getAgentAttributes(\n  handle: ServiceHandle,\n  name: string,\n  options?: AgentManagerClientOptions,\n): AgentAttributes {\n  return callServiceFunction<AgentAttributes>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.GetAgentAttributes,\n    { Name: name },\n  );\n}\n\nexport function getChatMode(handle: ServiceHandle, options?: AgentManagerClientOptions): string {\n  return callServiceFunction<string>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.GetChatMode,\n    {},\n  );\n}\n\nexport function getActiveAgent(handle: ServiceHandle, options?: AgentManagerClientOptions): string {\n  return callServiceFunction<string>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.GetActiveAgent,\n    {},\n  );\n}\n\nexport function triggerGeneralAction(\n  handle: ServiceHandle,\n  action: string,\n  options?: AgentManagerClientOptions,\n): void {\n  callServiceFunction<void>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.TriggerGeneralAction,\n    { Action: action },\n  );\n}\n\nexport function suspend(handle: ServiceHandle, options?: AgentManagerClientOptions): void {\n  callServiceFunction<void>(resolveHost(options), handle, AGENT_MANAGER_FUNCTIONS.Suspend, {});\n}\n\nexport function resume(handle: ServiceHandle, options?: AgentManagerClientOptions): void {\n  callServiceFunction<void>(resolveHost(options), handle, AGENT_MANAGER_FUNCTIONS.Resume, {});\n}\n\nexport function interruptSpeaking(\n  handle: ServiceHandle,\n  options?: AgentManagerClientOptions,\n): void {\n  callServiceFunction<void>(\n    resolveHost(options),\n    handle,\n    AGENT_MANAGER_FUNCTIONS.InterruptSpeaking,\n    {},\n  );\n}\n","/* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD */\n/* SPDX-License-Identifier: Apache-2.0 */\n\nimport {\n  closeAgentManager,\n  getActiveAgent,\n  getAgentAttributes,\n  getAgentNames,\n  getChatMode,\n  getTargetAgent,\n  interruptSpeaking,\n  isAgentManagerAvailable,\n  openAgentManager,\n  resume,\n  setAgentInfo,\n  setChatMode,\n  setTargetAgent,\n  suspend,\n  triggerGeneralAction,\n  type AgentManagerClientOptions,\n  type AgentManagerHandle,\n} from './agent-manager-client.ts';\nimport type { AgentAttributes } from './agent-manager-types.ts';\n\nexport type AgentManagerModuleOptions = AgentManagerClientOptions;\n\ntype State = { handle: AgentManagerHandle | null; options: AgentManagerModuleOptions };\nconst state: State = { handle: null, options: {} };\n\nfunction handle(): AgentManagerHandle {\n  if (state.handle !== null) return state.handle;\n  if (!isAgentManagerAvailable(state.options))\n    throw new Error('AgentManager service is not available');\n  state.handle = openAgentManager(state.options);\n  return state.handle;\n}\n\nexport function configure(options: AgentManagerModuleOptions): void {\n  if (state.handle !== null) closeAgentManager(state.handle, state.options);\n  state.handle = null;\n  state.options = options;\n}\n\nconst agentManager = {\n  available(): boolean {\n    return isAgentManagerAvailable(state.options);\n  },\n  close(): void {\n    if (state.handle === null) return;\n    closeAgentManager(state.handle, state.options);\n    state.handle = null;\n  },\n  setAgentInfo(name: string, info: Record<string, unknown>): void {\n    setAgentInfo(handle(), name, info, state.options);\n  },\n  setChatMode(mode: string): void {\n    setChatMode(handle(), mode, state.options);\n  },\n  setTargetAgent(name: string): void {\n    setTargetAgent(handle(), name, state.options);\n  },\n  getTargetAgent(): string {\n    return getTargetAgent(handle(), state.options);\n  },\n  getAgentNames(): string[] {\n    return getAgentNames(handle(), state.options);\n  },\n  getAgentAttributes(name: string): AgentAttributes {\n    return getAgentAttributes(handle(), name, state.options);\n  },\n  getChatMode(): string {\n    return getChatMode(handle(), state.options);\n  },\n  getActiveAgent(): string {\n    return getActiveAgent(handle(), state.options);\n  },\n  triggerGeneralAction(action: string): void {\n    triggerGeneralAction(handle(), action, state.options);\n  },\n  suspend(): void {\n    suspend(handle(), state.options);\n  },\n  resume(): void {\n    resume(handle(), state.options);\n  },\n  interruptSpeaking(): void {\n    interruptSpeaking(handle(), state.options);\n  },\n};\n\nexport default agentManager;\n"],"mappings":"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"}