beeai-framework 0.1.16 → 0.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/a2a/agents/agent.cjs +296 -0
- package/dist/adapters/a2a/agents/agent.cjs.map +1 -0
- package/dist/adapters/a2a/agents/agent.d.cts +55 -0
- package/dist/adapters/a2a/agents/agent.d.ts +55 -0
- package/dist/adapters/a2a/agents/agent.js +294 -0
- package/dist/adapters/a2a/agents/agent.js.map +1 -0
- package/dist/adapters/a2a/agents/events.cjs +4 -0
- package/dist/adapters/a2a/agents/events.cjs.map +1 -0
- package/dist/adapters/a2a/agents/events.d.cts +23 -0
- package/dist/adapters/a2a/agents/events.d.ts +23 -0
- package/dist/adapters/a2a/agents/events.js +3 -0
- package/dist/adapters/a2a/agents/events.js.map +1 -0
- package/dist/adapters/a2a/agents/types.cjs +4 -0
- package/dist/adapters/a2a/agents/types.cjs.map +1 -0
- package/dist/adapters/a2a/agents/types.d.cts +45 -0
- package/dist/adapters/a2a/agents/types.d.ts +45 -0
- package/dist/adapters/a2a/agents/types.js +3 -0
- package/dist/adapters/a2a/agents/types.js.map +1 -0
- package/dist/adapters/a2a/agents/utils.cjs +41 -0
- package/dist/adapters/a2a/agents/utils.cjs.map +1 -0
- package/dist/adapters/a2a/agents/utils.d.cts +15 -0
- package/dist/adapters/a2a/agents/utils.d.ts +15 -0
- package/dist/adapters/a2a/agents/utils.js +39 -0
- package/dist/adapters/a2a/agents/utils.js.map +1 -0
- package/dist/adapters/a2a/serve/agent_executor.cjs +233 -0
- package/dist/adapters/a2a/serve/agent_executor.cjs.map +1 -0
- package/dist/adapters/a2a/serve/agent_executor.d.cts +55 -0
- package/dist/adapters/a2a/serve/agent_executor.d.ts +55 -0
- package/dist/adapters/a2a/serve/agent_executor.js +229 -0
- package/dist/adapters/a2a/serve/agent_executor.js.map +1 -0
- package/dist/adapters/a2a/serve/server.cjs +112 -0
- package/dist/adapters/a2a/serve/server.cjs.map +1 -0
- package/dist/adapters/a2a/serve/server.d.cts +56 -0
- package/dist/adapters/a2a/serve/server.d.ts +56 -0
- package/dist/adapters/a2a/serve/server.js +105 -0
- package/dist/adapters/a2a/serve/server.js.map +1 -0
- package/dist/adapters/acp/agents/agent.cjs.map +1 -1
- package/dist/adapters/acp/agents/agent.d.cts +3 -14
- package/dist/adapters/acp/agents/agent.d.ts +3 -14
- package/dist/adapters/acp/agents/agent.js.map +1 -1
- package/dist/adapters/acp/agents/events.d.cts +2 -13
- package/dist/adapters/acp/agents/events.d.ts +2 -13
- package/dist/adapters/acp/agents/types.d.cts +1 -12
- package/dist/adapters/acp/agents/types.d.ts +1 -12
- package/dist/adapters/amazon-bedrock/backend/chat.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/chat.d.cts +3 -14
- package/dist/adapters/amazon-bedrock/backend/chat.d.ts +3 -14
- package/dist/adapters/amazon-bedrock/backend/chat.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/client.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/client.d.cts +1 -12
- package/dist/adapters/amazon-bedrock/backend/client.d.ts +1 -12
- package/dist/adapters/amazon-bedrock/backend/client.js.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.cjs.map +1 -1
- package/dist/adapters/amazon-bedrock/backend/embedding.d.cts +3 -14
- package/dist/adapters/amazon-bedrock/backend/embedding.d.ts +3 -14
- package/dist/adapters/amazon-bedrock/backend/embedding.js.map +1 -1
- package/dist/adapters/anthropic/backend/chat.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/chat.d.cts +3 -14
- package/dist/adapters/anthropic/backend/chat.d.ts +3 -14
- package/dist/adapters/anthropic/backend/chat.js.map +1 -1
- package/dist/adapters/anthropic/backend/client.cjs +1 -4
- package/dist/adapters/anthropic/backend/client.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/client.d.cts +1 -12
- package/dist/adapters/anthropic/backend/client.d.ts +1 -12
- package/dist/adapters/anthropic/backend/client.js +3 -6
- package/dist/adapters/anthropic/backend/client.js.map +1 -1
- package/dist/adapters/anthropic/backend/embedding.cjs.map +1 -1
- package/dist/adapters/anthropic/backend/embedding.d.cts +3 -14
- package/dist/adapters/anthropic/backend/embedding.d.ts +3 -14
- package/dist/adapters/anthropic/backend/embedding.js.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/chat.d.cts +3 -14
- package/dist/adapters/azure-openai/backend/chat.d.ts +3 -14
- package/dist/adapters/azure-openai/backend/chat.js.map +1 -1
- package/dist/adapters/azure-openai/backend/client.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/client.d.cts +1 -12
- package/dist/adapters/azure-openai/backend/client.d.ts +1 -12
- package/dist/adapters/azure-openai/backend/client.js.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/azure-openai/backend/embedding.d.cts +3 -14
- package/dist/adapters/azure-openai/backend/embedding.d.ts +3 -14
- package/dist/adapters/azure-openai/backend/embedding.js.map +1 -1
- package/dist/adapters/beeai_platform/agents/agent.cjs.map +1 -1
- package/dist/adapters/beeai_platform/agents/agent.d.cts +2 -2
- package/dist/adapters/beeai_platform/agents/agent.d.ts +2 -2
- package/dist/adapters/beeai_platform/agents/agent.js.map +1 -1
- package/dist/adapters/beeai_platform/agents/events.d.cts +2 -13
- package/dist/adapters/beeai_platform/agents/events.d.ts +2 -13
- package/dist/adapters/beeai_platform/agents/types.d.cts +1 -12
- package/dist/adapters/beeai_platform/agents/types.d.ts +1 -12
- package/dist/adapters/dummy/backend/chat.cjs +9 -9
- package/dist/adapters/dummy/backend/chat.cjs.map +1 -1
- package/dist/adapters/dummy/backend/chat.d.cts +2 -2
- package/dist/adapters/dummy/backend/chat.d.ts +2 -2
- package/dist/adapters/dummy/backend/chat.js +9 -9
- package/dist/adapters/dummy/backend/chat.js.map +1 -1
- package/dist/adapters/dummy/backend/embedding.cjs +9 -9
- package/dist/adapters/dummy/backend/embedding.cjs.map +1 -1
- package/dist/adapters/dummy/backend/embedding.d.cts +3 -14
- package/dist/adapters/dummy/backend/embedding.d.ts +3 -14
- package/dist/adapters/dummy/backend/embedding.js +9 -9
- package/dist/adapters/dummy/backend/embedding.js.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/chat.d.cts +3 -14
- package/dist/adapters/google-vertex/backend/chat.d.ts +3 -14
- package/dist/adapters/google-vertex/backend/chat.js.map +1 -1
- package/dist/adapters/google-vertex/backend/client.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/client.d.cts +1 -12
- package/dist/adapters/google-vertex/backend/client.d.ts +1 -12
- package/dist/adapters/google-vertex/backend/client.js.map +1 -1
- package/dist/adapters/google-vertex/backend/embedding.cjs.map +1 -1
- package/dist/adapters/google-vertex/backend/embedding.d.cts +3 -14
- package/dist/adapters/google-vertex/backend/embedding.d.ts +3 -14
- package/dist/adapters/google-vertex/backend/embedding.js.map +1 -1
- package/dist/adapters/groq/backend/chat.cjs.map +1 -1
- package/dist/adapters/groq/backend/chat.d.cts +3 -14
- package/dist/adapters/groq/backend/chat.d.ts +3 -14
- package/dist/adapters/groq/backend/chat.js.map +1 -1
- package/dist/adapters/groq/backend/client.cjs.map +1 -1
- package/dist/adapters/groq/backend/client.d.cts +1 -12
- package/dist/adapters/groq/backend/client.d.ts +1 -12
- package/dist/adapters/groq/backend/client.js.map +1 -1
- package/dist/adapters/groq/backend/embedding.cjs.map +1 -1
- package/dist/adapters/groq/backend/embedding.d.cts +3 -14
- package/dist/adapters/groq/backend/embedding.d.ts +3 -14
- package/dist/adapters/groq/backend/embedding.js.map +1 -1
- package/dist/adapters/langchain/backend/chat.cjs.map +1 -1
- package/dist/adapters/langchain/backend/chat.d.cts +2 -2
- package/dist/adapters/langchain/backend/chat.d.ts +2 -2
- package/dist/adapters/langchain/backend/chat.js.map +1 -1
- package/dist/adapters/langchain/backend/embedding.cjs.map +1 -1
- package/dist/adapters/langchain/backend/embedding.d.cts +3 -14
- package/dist/adapters/langchain/backend/embedding.d.ts +3 -14
- package/dist/adapters/langchain/backend/embedding.js.map +1 -1
- package/dist/adapters/langchain/tools.cjs.map +1 -1
- package/dist/adapters/langchain/tools.d.cts +1 -1
- package/dist/adapters/langchain/tools.d.ts +1 -1
- package/dist/adapters/langchain/tools.js.map +1 -1
- package/dist/adapters/mcp/serve/http_server.cjs.map +1 -1
- package/dist/adapters/mcp/serve/http_server.d.cts +1 -12
- package/dist/adapters/mcp/serve/http_server.d.ts +1 -12
- package/dist/adapters/mcp/serve/http_server.js.map +1 -1
- package/dist/adapters/mcp/serve/in_memory_store.cjs.map +1 -1
- package/dist/adapters/mcp/serve/in_memory_store.d.cts +1 -12
- package/dist/adapters/mcp/serve/in_memory_store.d.ts +1 -12
- package/dist/adapters/mcp/serve/in_memory_store.js.map +1 -1
- package/dist/adapters/mcp/serve/server.cjs.map +1 -1
- package/dist/adapters/mcp/serve/server.d.cts +3 -14
- package/dist/adapters/mcp/serve/server.d.ts +3 -14
- package/dist/adapters/mcp/serve/server.js.map +1 -1
- package/dist/adapters/ollama/backend/chat.cjs.map +1 -1
- package/dist/adapters/ollama/backend/chat.d.cts +3 -14
- package/dist/adapters/ollama/backend/chat.d.ts +3 -14
- package/dist/adapters/ollama/backend/chat.js.map +1 -1
- package/dist/adapters/ollama/backend/client.cjs +12 -3
- package/dist/adapters/ollama/backend/client.cjs.map +1 -1
- package/dist/adapters/ollama/backend/client.d.cts +4 -13
- package/dist/adapters/ollama/backend/client.d.ts +4 -13
- package/dist/adapters/ollama/backend/client.js +13 -4
- package/dist/adapters/ollama/backend/client.js.map +1 -1
- package/dist/adapters/ollama/backend/embedding.cjs.map +1 -1
- package/dist/adapters/ollama/backend/embedding.d.cts +3 -14
- package/dist/adapters/ollama/backend/embedding.d.ts +3 -14
- package/dist/adapters/ollama/backend/embedding.js.map +1 -1
- package/dist/adapters/openai/backend/chat.cjs.map +1 -1
- package/dist/adapters/openai/backend/chat.d.cts +3 -14
- package/dist/adapters/openai/backend/chat.d.ts +3 -14
- package/dist/adapters/openai/backend/chat.js.map +1 -1
- package/dist/adapters/openai/backend/client.cjs +1 -4
- package/dist/adapters/openai/backend/client.cjs.map +1 -1
- package/dist/adapters/openai/backend/client.d.cts +1 -12
- package/dist/adapters/openai/backend/client.d.ts +1 -12
- package/dist/adapters/openai/backend/client.js +3 -6
- package/dist/adapters/openai/backend/client.js.map +1 -1
- package/dist/adapters/openai/backend/embedding.cjs.map +1 -1
- package/dist/adapters/openai/backend/embedding.d.cts +3 -14
- package/dist/adapters/openai/backend/embedding.d.ts +3 -14
- package/dist/adapters/openai/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/chat.cjs +2 -2
- package/dist/adapters/vercel/backend/chat.cjs.map +1 -1
- package/dist/adapters/vercel/backend/chat.d.cts +2 -2
- package/dist/adapters/vercel/backend/chat.d.ts +2 -2
- package/dist/adapters/vercel/backend/chat.js +2 -2
- package/dist/adapters/vercel/backend/chat.js.map +1 -1
- package/dist/adapters/vercel/backend/embedding.cjs.map +1 -1
- package/dist/adapters/vercel/backend/embedding.d.cts +3 -14
- package/dist/adapters/vercel/backend/embedding.d.ts +3 -14
- package/dist/adapters/vercel/backend/embedding.js.map +1 -1
- package/dist/adapters/vercel/backend/utils.cjs +11 -2
- package/dist/adapters/vercel/backend/utils.cjs.map +1 -1
- package/dist/adapters/vercel/backend/utils.d.cts +3 -13
- package/dist/adapters/vercel/backend/utils.d.ts +3 -13
- package/dist/adapters/vercel/backend/utils.js +11 -3
- package/dist/adapters/vercel/backend/utils.js.map +1 -1
- package/dist/adapters/watsonx/backend/chat.cjs +13 -13
- package/dist/adapters/watsonx/backend/chat.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/chat.d.cts +2 -2
- package/dist/adapters/watsonx/backend/chat.d.ts +2 -2
- package/dist/adapters/watsonx/backend/chat.js +13 -13
- package/dist/adapters/watsonx/backend/chat.js.map +1 -1
- package/dist/adapters/watsonx/backend/client.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/client.d.cts +1 -12
- package/dist/adapters/watsonx/backend/client.d.ts +1 -12
- package/dist/adapters/watsonx/backend/client.js.map +1 -1
- package/dist/adapters/watsonx/backend/embedding.cjs.map +1 -1
- package/dist/adapters/watsonx/backend/embedding.d.cts +3 -14
- package/dist/adapters/watsonx/backend/embedding.d.ts +3 -14
- package/dist/adapters/watsonx/backend/embedding.js.map +1 -1
- package/dist/adapters/xai/backend/chat.cjs +24 -0
- package/dist/adapters/xai/backend/chat.cjs.map +1 -0
- package/dist/adapters/xai/backend/chat.d.cts +39 -0
- package/dist/adapters/xai/backend/chat.d.ts +39 -0
- package/dist/adapters/xai/backend/chat.js +22 -0
- package/dist/adapters/xai/backend/chat.js.map +1 -0
- package/dist/adapters/xai/backend/client.cjs +26 -0
- package/dist/adapters/xai/backend/client.cjs.map +1 -0
- package/dist/adapters/xai/backend/client.d.cts +17 -0
- package/dist/adapters/xai/backend/client.d.ts +17 -0
- package/dist/adapters/xai/backend/client.js +24 -0
- package/dist/adapters/xai/backend/client.js.map +1 -0
- package/dist/{agent-Ca5UE2P1.d.cts → agent-Bhm6xSfI.d.cts} +3 -3
- package/dist/{agent-CgsoqVL5.d.ts → agent-CmCmnEDX.d.ts} +3 -3
- package/dist/agents/base.cjs.map +1 -1
- package/dist/agents/base.d.cts +2 -2
- package/dist/agents/base.d.ts +2 -2
- package/dist/agents/base.js.map +1 -1
- package/dist/agents/experimental/replan/agent.cjs +8 -8
- package/dist/agents/experimental/replan/agent.cjs.map +1 -1
- package/dist/agents/experimental/replan/agent.d.cts +4 -15
- package/dist/agents/experimental/replan/agent.d.ts +4 -15
- package/dist/agents/experimental/replan/agent.js +8 -8
- package/dist/agents/experimental/replan/agent.js.map +1 -1
- package/dist/agents/experimental/replan/prompts.cjs.map +1 -1
- package/dist/agents/experimental/replan/prompts.d.cts +1 -1
- package/dist/agents/experimental/replan/prompts.d.ts +1 -1
- package/dist/agents/experimental/replan/prompts.js.map +1 -1
- package/dist/agents/experimental/streamlit/agent.cjs +9 -9
- package/dist/agents/experimental/streamlit/agent.cjs.map +1 -1
- package/dist/agents/experimental/streamlit/agent.d.cts +4 -15
- package/dist/agents/experimental/streamlit/agent.d.ts +4 -15
- package/dist/agents/experimental/streamlit/agent.js +9 -9
- package/dist/agents/experimental/streamlit/agent.js.map +1 -1
- package/dist/agents/experimental/streamlit/prompts.cjs.map +1 -1
- package/dist/agents/experimental/streamlit/prompts.d.cts +1 -12
- package/dist/agents/experimental/streamlit/prompts.d.ts +1 -12
- package/dist/agents/experimental/streamlit/prompts.js.map +1 -1
- package/dist/agents/react/agent.cjs +8 -8
- package/dist/agents/react/agent.cjs.map +1 -1
- package/dist/agents/react/agent.d.cts +4 -4
- package/dist/agents/react/agent.d.ts +4 -4
- package/dist/agents/react/agent.js +8 -8
- package/dist/agents/react/agent.js.map +1 -1
- package/dist/agents/react/prompts.cjs.map +1 -1
- package/dist/agents/react/prompts.d.cts +1 -12
- package/dist/agents/react/prompts.d.ts +1 -12
- package/dist/agents/react/prompts.js.map +1 -1
- package/dist/agents/react/runners/base.cjs +2 -2
- package/dist/agents/react/runners/base.cjs.map +1 -1
- package/dist/agents/react/runners/base.d.cts +4 -4
- package/dist/agents/react/runners/base.d.ts +4 -4
- package/dist/agents/react/runners/base.js +2 -2
- package/dist/agents/react/runners/base.js.map +1 -1
- package/dist/agents/react/runners/deep-think/prompts.cjs.map +1 -1
- package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -12
- package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -12
- package/dist/agents/react/runners/deep-think/prompts.js.map +1 -1
- package/dist/agents/react/runners/deep-think/runner.cjs.map +1 -1
- package/dist/agents/react/runners/deep-think/runner.d.cts +4 -4
- package/dist/agents/react/runners/deep-think/runner.d.ts +4 -4
- package/dist/agents/react/runners/deep-think/runner.js.map +1 -1
- package/dist/agents/react/runners/default/runner.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.d.cts +4 -4
- package/dist/agents/react/runners/default/runner.d.ts +4 -4
- package/dist/agents/react/runners/default/runner.js.map +1 -1
- package/dist/agents/react/runners/default/runner.spec.cjs.map +1 -1
- package/dist/agents/react/runners/default/runner.spec.js.map +1 -1
- package/dist/agents/react/runners/granite/prompts.cjs.map +1 -1
- package/dist/agents/react/runners/granite/prompts.d.cts +1 -12
- package/dist/agents/react/runners/granite/prompts.d.ts +1 -12
- package/dist/agents/react/runners/granite/prompts.js.map +1 -1
- package/dist/agents/react/runners/granite/runner.cjs.map +1 -1
- package/dist/agents/react/runners/granite/runner.d.cts +4 -4
- package/dist/agents/react/runners/granite/runner.d.ts +4 -4
- package/dist/agents/react/runners/granite/runner.js.map +1 -1
- package/dist/agents/react/types.d.cts +3 -14
- package/dist/agents/react/types.d.ts +3 -14
- package/dist/agents/toolCalling/agent.cjs +8 -8
- package/dist/agents/toolCalling/agent.cjs.map +1 -1
- package/dist/agents/toolCalling/agent.d.cts +4 -15
- package/dist/agents/toolCalling/agent.d.ts +4 -15
- package/dist/agents/toolCalling/agent.js +8 -8
- package/dist/agents/toolCalling/agent.js.map +1 -1
- package/dist/agents/toolCalling/prompts.cjs.map +1 -1
- package/dist/agents/toolCalling/prompts.d.cts +1 -12
- package/dist/agents/toolCalling/prompts.d.ts +1 -12
- package/dist/agents/toolCalling/prompts.js.map +1 -1
- package/dist/agents/toolCalling/types.d.cts +2 -13
- package/dist/agents/toolCalling/types.d.ts +2 -13
- package/dist/agents/types.d.cts +2 -2
- package/dist/agents/types.d.ts +2 -2
- package/dist/backend/backend.cjs.map +1 -1
- package/dist/backend/backend.d.cts +3 -14
- package/dist/backend/backend.d.ts +3 -14
- package/dist/backend/backend.js.map +1 -1
- package/dist/backend/chat.cjs.map +1 -1
- package/dist/backend/chat.d.cts +2 -2
- package/dist/backend/chat.d.ts +2 -2
- package/dist/backend/chat.js.map +1 -1
- package/dist/backend/client.cjs.map +1 -1
- package/dist/backend/client.d.cts +1 -12
- package/dist/backend/client.d.ts +1 -12
- package/dist/backend/client.js.map +1 -1
- package/dist/backend/constants.cjs +8 -0
- package/dist/backend/constants.cjs.map +1 -1
- package/dist/backend/constants.d.cts +6 -12
- package/dist/backend/constants.d.ts +6 -12
- package/dist/backend/constants.js +8 -0
- package/dist/backend/constants.js.map +1 -1
- package/dist/backend/core.d.cts +2 -2
- package/dist/backend/core.d.ts +2 -2
- package/dist/backend/embedding.cjs.map +1 -1
- package/dist/backend/embedding.d.cts +2 -2
- package/dist/backend/embedding.d.ts +2 -2
- package/dist/backend/embedding.js.map +1 -1
- package/dist/backend/errors.cjs.map +1 -1
- package/dist/backend/errors.d.cts +1 -12
- package/dist/backend/errors.d.ts +1 -12
- package/dist/backend/errors.js.map +1 -1
- package/dist/backend/message.cjs.map +1 -1
- package/dist/backend/message.d.cts +2 -13
- package/dist/backend/message.d.ts +2 -13
- package/dist/backend/message.js.map +1 -1
- package/dist/backend/utils.cjs.map +1 -1
- package/dist/backend/utils.d.cts +2 -2
- package/dist/backend/utils.d.ts +2 -2
- package/dist/backend/utils.js.map +1 -1
- package/dist/{base-szR2Izbt.d.cts → base-BP7v-NSL.d.cts} +3 -14
- package/dist/{base-BOCDDBvG.d.ts → base-BsY2baWy.d.ts} +3 -14
- package/dist/cache/base.cjs.map +1 -1
- package/dist/cache/base.d.cts +1 -12
- package/dist/cache/base.d.ts +1 -12
- package/dist/cache/base.js.map +1 -1
- package/dist/cache/decoratorCache.cjs +2 -2
- package/dist/cache/decoratorCache.cjs.map +1 -1
- package/dist/cache/decoratorCache.d.cts +1 -12
- package/dist/cache/decoratorCache.d.ts +1 -12
- package/dist/cache/decoratorCache.js +2 -2
- package/dist/cache/decoratorCache.js.map +1 -1
- package/dist/cache/fileCache.cjs.map +1 -1
- package/dist/cache/fileCache.d.cts +1 -12
- package/dist/cache/fileCache.d.ts +1 -12
- package/dist/cache/fileCache.js.map +1 -1
- package/dist/cache/nullCache.cjs.map +1 -1
- package/dist/cache/nullCache.d.cts +1 -12
- package/dist/cache/nullCache.d.ts +1 -12
- package/dist/cache/nullCache.js.map +1 -1
- package/dist/cache/slidingCache.cjs.map +1 -1
- package/dist/cache/slidingCache.d.cts +1 -12
- package/dist/cache/slidingCache.d.ts +1 -12
- package/dist/cache/slidingCache.js.map +1 -1
- package/dist/cache/unconstrainedCache.cjs.map +1 -1
- package/dist/cache/unconstrainedCache.d.cts +1 -12
- package/dist/cache/unconstrainedCache.d.ts +1 -12
- package/dist/cache/unconstrainedCache.js.map +1 -1
- package/dist/{chat-DvMzAHj6.d.cts → chat-CR4yfOR9.d.cts} +3 -14
- package/dist/{chat-BdN8hGWn.d.ts → chat-W9j8T6UU.d.ts} +3 -14
- package/dist/context.cjs +3 -4
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts +2 -13
- package/dist/context.d.ts +2 -13
- package/dist/context.js +3 -4
- package/dist/context.js.map +1 -1
- package/dist/emitter/emitter.cjs.map +1 -1
- package/dist/emitter/emitter.d.cts +1 -1
- package/dist/emitter/emitter.d.ts +1 -1
- package/dist/emitter/emitter.js.map +1 -1
- package/dist/emitter/errors.cjs.map +1 -1
- package/dist/emitter/errors.d.cts +1 -12
- package/dist/emitter/errors.d.ts +1 -12
- package/dist/emitter/errors.js.map +1 -1
- package/dist/emitter/types.d.cts +1 -1
- package/dist/emitter/types.d.ts +1 -1
- package/dist/emitter/utils.cjs.map +1 -1
- package/dist/emitter/utils.d.cts +1 -12
- package/dist/emitter/utils.d.ts +1 -12
- package/dist/emitter/utils.js.map +1 -1
- package/dist/{emitter-C3dO-s2P.d.ts → emitter-C9nwGLt6.d.ts} +3 -25
- package/dist/{emitter-D5Mu0EEH.d.cts → emitter-DWEsd-ud.d.cts} +3 -25
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.cts +1 -12
- package/dist/errors.d.ts +1 -12
- package/dist/errors.js.map +1 -1
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/internals/env.cjs.map +1 -1
- package/dist/internals/env.d.cts +1 -12
- package/dist/internals/env.d.ts +1 -12
- package/dist/internals/env.js.map +1 -1
- package/dist/internals/fetcher.cjs +8 -8
- package/dist/internals/fetcher.cjs.map +1 -1
- package/dist/internals/fetcher.d.cts +2 -13
- package/dist/internals/fetcher.d.ts +2 -13
- package/dist/internals/fetcher.js +8 -8
- package/dist/internals/fetcher.js.map +1 -1
- package/dist/internals/helpers/array.cjs.map +1 -1
- package/dist/internals/helpers/array.d.cts +1 -12
- package/dist/internals/helpers/array.d.ts +1 -12
- package/dist/internals/helpers/array.js.map +1 -1
- package/dist/internals/helpers/cancellation.cjs.map +1 -1
- package/dist/internals/helpers/cancellation.d.cts +1 -12
- package/dist/internals/helpers/cancellation.d.ts +1 -12
- package/dist/internals/helpers/cancellation.js.map +1 -1
- package/dist/internals/helpers/counter.cjs.map +1 -1
- package/dist/internals/helpers/counter.d.cts +1 -12
- package/dist/internals/helpers/counter.d.ts +1 -12
- package/dist/internals/helpers/counter.js.map +1 -1
- package/dist/internals/helpers/general.cjs.map +1 -1
- package/dist/internals/helpers/general.d.cts +1 -12
- package/dist/internals/helpers/general.d.ts +1 -12
- package/dist/internals/helpers/general.js.map +1 -1
- package/dist/internals/helpers/guards.cjs.map +1 -1
- package/dist/internals/helpers/guards.d.cts +1 -12
- package/dist/internals/helpers/guards.d.ts +1 -12
- package/dist/internals/helpers/guards.js.map +1 -1
- package/dist/internals/helpers/hash.cjs.map +1 -1
- package/dist/internals/helpers/hash.d.cts +1 -12
- package/dist/internals/helpers/hash.d.ts +1 -12
- package/dist/internals/helpers/hash.js.map +1 -1
- package/dist/internals/helpers/map.cjs.map +1 -1
- package/dist/internals/helpers/map.d.cts +1 -12
- package/dist/internals/helpers/map.d.ts +1 -12
- package/dist/internals/helpers/map.js.map +1 -1
- package/dist/internals/helpers/math.cjs.map +1 -1
- package/dist/internals/helpers/math.d.cts +1 -12
- package/dist/internals/helpers/math.d.ts +1 -12
- package/dist/internals/helpers/math.js.map +1 -1
- package/dist/internals/helpers/number.cjs.map +1 -1
- package/dist/internals/helpers/number.d.cts +1 -12
- package/dist/internals/helpers/number.d.ts +1 -12
- package/dist/internals/helpers/number.js.map +1 -1
- package/dist/internals/helpers/object.cjs.map +1 -1
- package/dist/internals/helpers/object.d.cts +1 -12
- package/dist/internals/helpers/object.d.ts +1 -12
- package/dist/internals/helpers/object.js.map +1 -1
- package/dist/internals/helpers/paginate.cjs.map +1 -1
- package/dist/internals/helpers/paginate.d.cts +1 -12
- package/dist/internals/helpers/paginate.d.ts +1 -12
- package/dist/internals/helpers/paginate.js.map +1 -1
- package/dist/internals/helpers/promise.cjs +1 -3
- package/dist/internals/helpers/promise.cjs.map +1 -1
- package/dist/internals/helpers/promise.d.cts +1 -12
- package/dist/internals/helpers/promise.d.ts +1 -12
- package/dist/internals/helpers/promise.js +1 -3
- package/dist/internals/helpers/promise.js.map +1 -1
- package/dist/internals/helpers/prototype.cjs.map +1 -1
- package/dist/internals/helpers/prototype.d.cts +1 -12
- package/dist/internals/helpers/prototype.d.ts +1 -12
- package/dist/internals/helpers/prototype.js.map +1 -1
- package/dist/internals/helpers/retry.cjs.map +1 -1
- package/dist/internals/helpers/retry.d.cts +1 -12
- package/dist/internals/helpers/retry.d.ts +1 -12
- package/dist/internals/helpers/retry.js.map +1 -1
- package/dist/internals/helpers/retryable.cjs.map +1 -1
- package/dist/internals/helpers/retryable.d.cts +1 -12
- package/dist/internals/helpers/retryable.d.ts +1 -12
- package/dist/internals/helpers/retryable.js.map +1 -1
- package/dist/internals/helpers/schema.cjs.map +1 -1
- package/dist/internals/helpers/schema.d.cts +1 -12
- package/dist/internals/helpers/schema.d.ts +1 -12
- package/dist/internals/helpers/schema.js.map +1 -1
- package/dist/internals/helpers/stream.cjs.map +1 -1
- package/dist/internals/helpers/stream.d.cts +1 -12
- package/dist/internals/helpers/stream.d.ts +1 -12
- package/dist/internals/helpers/stream.js.map +1 -1
- package/dist/internals/helpers/string.cjs.map +1 -1
- package/dist/internals/helpers/string.d.cts +1 -12
- package/dist/internals/helpers/string.d.ts +1 -12
- package/dist/internals/helpers/string.js.map +1 -1
- package/dist/internals/helpers/weakRef.cjs.map +1 -1
- package/dist/internals/helpers/weakRef.d.cts +1 -12
- package/dist/internals/helpers/weakRef.d.ts +1 -12
- package/dist/internals/helpers/weakRef.js.map +1 -1
- package/dist/internals/serializable.cjs.map +1 -1
- package/dist/internals/serializable.d.cts +1 -12
- package/dist/internals/serializable.d.ts +1 -12
- package/dist/internals/serializable.js.map +1 -1
- package/dist/internals/types.cjs.map +1 -1
- package/dist/internals/types.d.cts +1 -12
- package/dist/internals/types.d.ts +1 -12
- package/dist/internals/types.js.map +1 -1
- package/dist/logger/logger.cjs.map +1 -1
- package/dist/logger/logger.js.map +1 -1
- package/dist/logger/pretty.cjs.map +1 -1
- package/dist/logger/pretty.js.map +1 -1
- package/dist/memory/base.cjs.map +1 -1
- package/dist/memory/base.js.map +1 -1
- package/dist/memory/slidingMemory.cjs.map +1 -1
- package/dist/memory/slidingMemory.js.map +1 -1
- package/dist/memory/summarizeMemory.cjs.map +1 -1
- package/dist/memory/summarizeMemory.d.cts +2 -2
- package/dist/memory/summarizeMemory.d.ts +2 -2
- package/dist/memory/summarizeMemory.js.map +1 -1
- package/dist/memory/tokenMemory.cjs.map +1 -1
- package/dist/memory/tokenMemory.js.map +1 -1
- package/dist/memory/unconstrainedMemory.cjs.map +1 -1
- package/dist/memory/unconstrainedMemory.js.map +1 -1
- package/dist/parsers/errors.cjs.map +1 -1
- package/dist/parsers/errors.d.cts +1 -12
- package/dist/parsers/errors.d.ts +1 -12
- package/dist/parsers/errors.js.map +1 -1
- package/dist/parsers/field.cjs +2 -2
- package/dist/parsers/field.cjs.map +1 -1
- package/dist/parsers/field.js +2 -2
- package/dist/parsers/field.js.map +1 -1
- package/dist/parsers/linePrefix.cjs +15 -15
- package/dist/parsers/linePrefix.cjs.map +1 -1
- package/dist/parsers/linePrefix.d.cts +2 -13
- package/dist/parsers/linePrefix.d.ts +2 -13
- package/dist/parsers/linePrefix.js +15 -15
- package/dist/parsers/linePrefix.js.map +1 -1
- package/dist/serializer/error.cjs.map +1 -1
- package/dist/serializer/error.d.cts +1 -12
- package/dist/serializer/error.d.ts +1 -12
- package/dist/serializer/error.js.map +1 -1
- package/dist/serializer/serializer.cjs.map +1 -1
- package/dist/serializer/serializer.d.cts +1 -1
- package/dist/serializer/serializer.d.ts +1 -1
- package/dist/serializer/serializer.js.map +1 -1
- package/dist/serializer/utils.cjs +1 -2
- package/dist/serializer/utils.cjs.map +1 -1
- package/dist/serializer/utils.d.cts +1 -1
- package/dist/serializer/utils.d.ts +1 -1
- package/dist/serializer/utils.js +1 -2
- package/dist/serializer/utils.js.map +1 -1
- package/dist/{serializer-Dz4AIM2O.d.cts → serializer-BKn50Vnx.d.cts} +2 -24
- package/dist/{serializer-BswFRdT8.d.ts → serializer-CQxucveV.d.ts} +2 -24
- package/dist/serve/server.cjs +13 -7
- package/dist/serve/server.cjs.map +1 -1
- package/dist/serve/server.d.cts +5 -15
- package/dist/serve/server.d.ts +5 -15
- package/dist/serve/server.js +13 -7
- package/dist/serve/server.js.map +1 -1
- package/dist/template.cjs.map +1 -1
- package/dist/template.d.cts +1 -12
- package/dist/template.d.ts +1 -12
- package/dist/template.js.map +1 -1
- package/dist/tools/arxiv.cjs.map +1 -1
- package/dist/tools/arxiv.d.cts +2 -13
- package/dist/tools/arxiv.d.ts +2 -13
- package/dist/tools/arxiv.js.map +1 -1
- package/dist/tools/base.cjs.map +1 -1
- package/dist/tools/base.d.cts +1 -1
- package/dist/tools/base.d.ts +1 -1
- package/dist/tools/base.js.map +1 -1
- package/dist/tools/calculator.cjs.map +1 -1
- package/dist/tools/calculator.d.cts +2 -13
- package/dist/tools/calculator.d.ts +2 -13
- package/dist/tools/calculator.js.map +1 -1
- package/dist/tools/custom.cjs.map +1 -1
- package/dist/tools/custom.d.cts +3 -14
- package/dist/tools/custom.d.ts +3 -14
- package/dist/tools/custom.js.map +1 -1
- package/dist/tools/database/elasticsearch.cjs.map +1 -1
- package/dist/tools/database/elasticsearch.d.cts +2 -13
- package/dist/tools/database/elasticsearch.d.ts +2 -13
- package/dist/tools/database/elasticsearch.js.map +1 -1
- package/dist/tools/database/metadata.cjs.map +1 -1
- package/dist/tools/database/metadata.d.cts +1 -12
- package/dist/tools/database/metadata.d.ts +1 -12
- package/dist/tools/database/metadata.js.map +1 -1
- package/dist/tools/database/milvus.cjs.map +1 -1
- package/dist/tools/database/milvus.d.cts +2 -13
- package/dist/tools/database/milvus.d.ts +2 -13
- package/dist/tools/database/milvus.js.map +1 -1
- package/dist/tools/database/qdrant.cjs.map +1 -1
- package/dist/tools/database/qdrant.d.cts +2 -13
- package/dist/tools/database/qdrant.d.ts +2 -13
- package/dist/tools/database/qdrant.js.map +1 -1
- package/dist/tools/database/sql.cjs.map +1 -1
- package/dist/tools/database/sql.d.cts +2 -13
- package/dist/tools/database/sql.d.ts +2 -13
- package/dist/tools/database/sql.js.map +1 -1
- package/dist/tools/llm.cjs +3 -3
- package/dist/tools/llm.cjs.map +1 -1
- package/dist/tools/llm.d.cts +3 -14
- package/dist/tools/llm.d.ts +3 -14
- package/dist/tools/llm.js +3 -3
- package/dist/tools/llm.js.map +1 -1
- package/dist/tools/mcp.cjs +2 -1
- package/dist/tools/mcp.cjs.map +1 -1
- package/dist/tools/mcp.d.cts +2 -13
- package/dist/tools/mcp.d.ts +2 -13
- package/dist/tools/mcp.js +2 -1
- package/dist/tools/mcp.js.map +1 -1
- package/dist/tools/openapi.cjs.map +1 -1
- package/dist/tools/openapi.d.cts +1 -1
- package/dist/tools/openapi.d.ts +1 -1
- package/dist/tools/openapi.js.map +1 -1
- package/dist/tools/python/output.cjs.map +1 -1
- package/dist/tools/python/output.d.cts +2 -13
- package/dist/tools/python/output.d.ts +2 -13
- package/dist/tools/python/output.js.map +1 -1
- package/dist/tools/python/python.cjs.map +1 -1
- package/dist/tools/python/python.d.cts +2 -2
- package/dist/tools/python/python.d.ts +2 -2
- package/dist/tools/python/python.js.map +1 -1
- package/dist/tools/python/storage.cjs.map +1 -1
- package/dist/tools/python/storage.d.cts +1 -12
- package/dist/tools/python/storage.d.ts +1 -12
- package/dist/tools/python/storage.js.map +1 -1
- package/dist/tools/search/base.cjs.map +1 -1
- package/dist/tools/search/base.d.cts +2 -13
- package/dist/tools/search/base.d.ts +2 -13
- package/dist/tools/search/base.js.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.cjs +7 -1
- package/dist/tools/search/duckDuckGoSearch.cjs.map +1 -1
- package/dist/tools/search/duckDuckGoSearch.d.cts +2 -13
- package/dist/tools/search/duckDuckGoSearch.d.ts +2 -13
- package/dist/tools/search/duckDuckGoSearch.js +7 -1
- package/dist/tools/search/duckDuckGoSearch.js.map +1 -1
- package/dist/tools/search/googleSearch.cjs.map +1 -1
- package/dist/tools/search/googleSearch.d.cts +1 -1
- package/dist/tools/search/googleSearch.d.ts +1 -1
- package/dist/tools/search/googleSearch.js.map +1 -1
- package/dist/tools/search/searXNGSearch.cjs.map +1 -1
- package/dist/tools/search/searXNGSearch.d.cts +2 -13
- package/dist/tools/search/searXNGSearch.d.ts +2 -13
- package/dist/tools/search/searXNGSearch.js.map +1 -1
- package/dist/tools/search/wikipedia.cjs +11 -11
- package/dist/tools/search/wikipedia.cjs.map +1 -1
- package/dist/tools/search/wikipedia.d.cts +1 -1
- package/dist/tools/search/wikipedia.d.ts +1 -1
- package/dist/tools/search/wikipedia.js +11 -11
- package/dist/tools/search/wikipedia.js.map +1 -1
- package/dist/tools/similarity.cjs.map +1 -1
- package/dist/tools/similarity.d.cts +2 -13
- package/dist/tools/similarity.d.ts +2 -13
- package/dist/tools/similarity.js.map +1 -1
- package/dist/tools/weather/openMeteo.cjs.map +1 -1
- package/dist/tools/weather/openMeteo.d.cts +2 -13
- package/dist/tools/weather/openMeteo.d.ts +2 -13
- package/dist/tools/weather/openMeteo.js.map +1 -1
- package/dist/tools/web/webCrawler.cjs.map +1 -1
- package/dist/tools/web/webCrawler.d.cts +1 -1
- package/dist/tools/web/webCrawler.d.ts +1 -1
- package/dist/tools/web/webCrawler.js.map +1 -1
- package/dist/version.cjs +1 -1
- package/dist/version.cjs.map +1 -1
- package/dist/version.d.cts +1 -12
- package/dist/version.d.ts +1 -12
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/dist/workflows/agent.cjs.map +1 -1
- package/dist/workflows/agent.d.cts +40 -40
- package/dist/workflows/agent.d.ts +40 -40
- package/dist/workflows/agent.js.map +1 -1
- package/dist/workflows/workflow.cjs +3 -3
- package/dist/workflows/workflow.cjs.map +1 -1
- package/dist/workflows/workflow.d.cts +1 -1
- package/dist/workflows/workflow.d.ts +1 -1
- package/dist/workflows/workflow.js +3 -3
- package/dist/workflows/workflow.js.map +1 -1
- package/package.json +42 -73
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var uuid = require('uuid');
|
|
4
|
+
var logger_cjs = require('../../../logger/logger.cjs');
|
|
5
|
+
var utils_cjs = require('../agents/utils.cjs');
|
|
6
|
+
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
|
+
const logger = logger_cjs.Logger.root.child({
|
|
10
|
+
name: "A2A server"
|
|
11
|
+
});
|
|
12
|
+
class BaseA2AAgentExecutor {
|
|
13
|
+
static {
|
|
14
|
+
__name(this, "BaseA2AAgentExecutor");
|
|
15
|
+
}
|
|
16
|
+
agent;
|
|
17
|
+
abortControllers = /* @__PURE__ */ new Map();
|
|
18
|
+
constructor(agent) {
|
|
19
|
+
this.agent = agent;
|
|
20
|
+
}
|
|
21
|
+
async execute(requestContext, eventBus) {
|
|
22
|
+
const userMessage = requestContext.userMessage;
|
|
23
|
+
const existingTask = requestContext.task || {
|
|
24
|
+
kind: "task",
|
|
25
|
+
id: uuid.v4(),
|
|
26
|
+
contextId: userMessage.contextId || uuid.v4(),
|
|
27
|
+
status: {
|
|
28
|
+
state: "submitted",
|
|
29
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
30
|
+
},
|
|
31
|
+
history: [
|
|
32
|
+
userMessage
|
|
33
|
+
],
|
|
34
|
+
metadata: userMessage.metadata
|
|
35
|
+
};
|
|
36
|
+
const taskId = existingTask.id;
|
|
37
|
+
const contextId = existingTask.contextId;
|
|
38
|
+
eventBus.publish(existingTask);
|
|
39
|
+
const workingStatusUpdate = {
|
|
40
|
+
kind: "status-update",
|
|
41
|
+
taskId,
|
|
42
|
+
contextId,
|
|
43
|
+
status: {
|
|
44
|
+
state: "working",
|
|
45
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
46
|
+
},
|
|
47
|
+
final: false
|
|
48
|
+
};
|
|
49
|
+
eventBus.publish(workingStatusUpdate);
|
|
50
|
+
const abortController = new AbortController();
|
|
51
|
+
this.abortControllers.set(taskId, [
|
|
52
|
+
contextId,
|
|
53
|
+
abortController
|
|
54
|
+
]);
|
|
55
|
+
const agent = await this.agent.clone();
|
|
56
|
+
agent.memory = await agent.memory.clone();
|
|
57
|
+
agent.memory.reset();
|
|
58
|
+
await agent.memory.addMany((existingTask.history || [
|
|
59
|
+
requestContext.userMessage
|
|
60
|
+
]).map(utils_cjs.convertA2AMessageToFrameworkMessage) || []);
|
|
61
|
+
try {
|
|
62
|
+
const response = await agent.run({}, {
|
|
63
|
+
signal: abortController.signal
|
|
64
|
+
}).observe(async (emitter) => {
|
|
65
|
+
await this.process_events(emitter, requestContext, eventBus);
|
|
66
|
+
});
|
|
67
|
+
const agentMessage = {
|
|
68
|
+
kind: "message",
|
|
69
|
+
role: "agent",
|
|
70
|
+
messageId: uuid.v4(),
|
|
71
|
+
parts: [
|
|
72
|
+
{
|
|
73
|
+
kind: "text",
|
|
74
|
+
text: response.result.text
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
taskId,
|
|
78
|
+
contextId
|
|
79
|
+
};
|
|
80
|
+
if (!existingTask.history) {
|
|
81
|
+
existingTask.history = [];
|
|
82
|
+
}
|
|
83
|
+
existingTask.history.push(agentMessage);
|
|
84
|
+
eventBus.publish(existingTask);
|
|
85
|
+
const finalUpdate = {
|
|
86
|
+
kind: "status-update",
|
|
87
|
+
taskId,
|
|
88
|
+
contextId,
|
|
89
|
+
status: {
|
|
90
|
+
state: "completed",
|
|
91
|
+
message: agentMessage,
|
|
92
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
93
|
+
},
|
|
94
|
+
final: true
|
|
95
|
+
};
|
|
96
|
+
eventBus.publish(finalUpdate);
|
|
97
|
+
eventBus.finished();
|
|
98
|
+
} catch (error) {
|
|
99
|
+
logger.error("Agent execution error:", {
|
|
100
|
+
error
|
|
101
|
+
});
|
|
102
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
103
|
+
const errorUpdate = {
|
|
104
|
+
kind: "status-update",
|
|
105
|
+
taskId,
|
|
106
|
+
contextId,
|
|
107
|
+
status: {
|
|
108
|
+
state: "failed",
|
|
109
|
+
message: {
|
|
110
|
+
kind: "message",
|
|
111
|
+
role: "agent",
|
|
112
|
+
messageId: uuid.v4(),
|
|
113
|
+
parts: [
|
|
114
|
+
{
|
|
115
|
+
kind: "text",
|
|
116
|
+
text: `Agent error: ${errorMessage}`
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
taskId,
|
|
120
|
+
contextId
|
|
121
|
+
},
|
|
122
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
123
|
+
},
|
|
124
|
+
final: true
|
|
125
|
+
};
|
|
126
|
+
eventBus.publish(errorUpdate);
|
|
127
|
+
eventBus.finished();
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async process_events(_emitter, _requestContext, _eventBus) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
cancelTask = /* @__PURE__ */ __name(async (taskId, eventBus) => {
|
|
134
|
+
if (this.abortControllers.has(taskId)) {
|
|
135
|
+
const [contextId, abortController] = this.abortControllers.get(taskId);
|
|
136
|
+
const cancelledUpdate = {
|
|
137
|
+
kind: "status-update",
|
|
138
|
+
taskId,
|
|
139
|
+
contextId,
|
|
140
|
+
status: {
|
|
141
|
+
state: "canceled",
|
|
142
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
143
|
+
},
|
|
144
|
+
final: true
|
|
145
|
+
};
|
|
146
|
+
eventBus.publish(cancelledUpdate);
|
|
147
|
+
abortController.abort();
|
|
148
|
+
}
|
|
149
|
+
}, "cancelTask");
|
|
150
|
+
}
|
|
151
|
+
class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {
|
|
152
|
+
static {
|
|
153
|
+
__name(this, "ToolCallingAgentExecutor");
|
|
154
|
+
}
|
|
155
|
+
async process_events(emitter, requestContext, eventBus) {
|
|
156
|
+
let lastMsg = void 0;
|
|
157
|
+
const processEvent = /* @__PURE__ */ __name(async ({ state }) => {
|
|
158
|
+
const messages = state.memory.messages;
|
|
159
|
+
if (lastMsg === void 0) {
|
|
160
|
+
lastMsg = messages.at(-1);
|
|
161
|
+
}
|
|
162
|
+
const index = lastMsg ? messages.lastIndexOf(lastMsg) : -1;
|
|
163
|
+
for (const message of messages.slice(index + 1)) {
|
|
164
|
+
const update = {
|
|
165
|
+
kind: "status-update",
|
|
166
|
+
taskId: requestContext.taskId,
|
|
167
|
+
contextId: requestContext.contextId,
|
|
168
|
+
status: {
|
|
169
|
+
state: "working",
|
|
170
|
+
message: {
|
|
171
|
+
kind: "message",
|
|
172
|
+
role: "agent",
|
|
173
|
+
messageId: uuid.v4(),
|
|
174
|
+
parts: [
|
|
175
|
+
{
|
|
176
|
+
kind: "text",
|
|
177
|
+
text: JSON.stringify(message.toPlain())
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
taskId: requestContext.taskId,
|
|
181
|
+
contextId: requestContext.contextId
|
|
182
|
+
},
|
|
183
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
184
|
+
},
|
|
185
|
+
final: false
|
|
186
|
+
};
|
|
187
|
+
eventBus.publish(update);
|
|
188
|
+
lastMsg = message;
|
|
189
|
+
}
|
|
190
|
+
}, "processEvent");
|
|
191
|
+
emitter.on("start", processEvent);
|
|
192
|
+
emitter.on("success", processEvent);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
class ReActAgentExecutor extends BaseA2AAgentExecutor {
|
|
196
|
+
static {
|
|
197
|
+
__name(this, "ReActAgentExecutor");
|
|
198
|
+
}
|
|
199
|
+
async process_events(emitter, requestContext, eventBus) {
|
|
200
|
+
emitter.on("update", async ({ update }) => {
|
|
201
|
+
const updateEvent = {
|
|
202
|
+
kind: "status-update",
|
|
203
|
+
taskId: requestContext.taskId,
|
|
204
|
+
contextId: requestContext.contextId,
|
|
205
|
+
status: {
|
|
206
|
+
state: "working",
|
|
207
|
+
message: {
|
|
208
|
+
kind: "message",
|
|
209
|
+
role: "agent",
|
|
210
|
+
messageId: uuid.v4(),
|
|
211
|
+
parts: [
|
|
212
|
+
{
|
|
213
|
+
kind: "text",
|
|
214
|
+
text: update.value
|
|
215
|
+
}
|
|
216
|
+
],
|
|
217
|
+
taskId: requestContext.taskId,
|
|
218
|
+
contextId: requestContext.contextId
|
|
219
|
+
},
|
|
220
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
221
|
+
},
|
|
222
|
+
final: false
|
|
223
|
+
};
|
|
224
|
+
eventBus.publish(updateEvent);
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
exports.BaseA2AAgentExecutor = BaseA2AAgentExecutor;
|
|
230
|
+
exports.ReActAgentExecutor = ReActAgentExecutor;
|
|
231
|
+
exports.ToolCallingAgentExecutor = ToolCallingAgentExecutor;
|
|
232
|
+
//# sourceMappingURL=agent_executor.cjs.map
|
|
233
|
+
//# sourceMappingURL=agent_executor.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/adapters/a2a/serve/agent_executor.ts"],"names":["logger","Logger","root","child","name","BaseA2AAgentExecutor","abortControllers","Map","agent","execute","requestContext","eventBus","userMessage","existingTask","task","kind","id","uuidv4","contextId","status","state","timestamp","Date","toISOString","history","metadata","taskId","publish","workingStatusUpdate","final","abortController","AbortController","set","clone","memory","reset","addMany","map","convertA2AMessageToFrameworkMessage","response","run","signal","observe","emitter","process_events","agentMessage","role","messageId","parts","text","result","push","finalUpdate","message","finished","error","errorMessage","Error","String","errorUpdate","_emitter","_requestContext","_eventBus","cancelTask","has","get","cancelledUpdate","abort","ToolCallingAgentExecutor","lastMsg","undefined","processEvent","messages","at","index","lastIndexOf","slice","update","JSON","stringify","toPlain","on","ReActAgentExecutor","updateEvent","value"],"mappings":"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","file":"agent_executor.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { AnyAgent } from \"@/agents/types.js\";\nimport { AgentExecutor, RequestContext, ExecutionEventBus } from \"@a2a-js/sdk/server\";\nimport { Message, TaskStatusUpdateEvent } from \"@a2a-js/sdk\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { convertA2AMessageToFrameworkMessage } from \"@/adapters/a2a/agents/utils.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { ToolCallingAgentCallbacks, ToolCallingAgentRunState } from \"@/agents/toolCalling/types.js\";\nimport { ReActAgentCallbacks } from \"@/agents/react/types.js\";\nimport { Message as FrameworkMessage } from \"@/backend/message.js\";\n\nconst logger = Logger.root.child({\n name: \"A2A server\",\n});\n\nexport abstract class BaseA2AAgentExecutor implements AgentExecutor {\n protected readonly abortControllers = new Map<string, [string, AbortController]>();\n\n constructor(protected agent: AnyAgent) {}\n\n async execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void> {\n const userMessage = requestContext.userMessage;\n const existingTask = requestContext.task || {\n kind: \"task\",\n id: uuidv4(),\n contextId: userMessage.contextId || uuidv4(),\n status: {\n state: \"submitted\",\n timestamp: new Date().toISOString(),\n },\n history: [userMessage],\n metadata: userMessage.metadata,\n };\n\n const taskId = existingTask.id;\n const contextId = existingTask.contextId;\n\n // Publish initial Task event if it's a new task\n eventBus.publish(existingTask);\n\n // Publish \"working\" status update\n const workingStatusUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"working\",\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(workingStatusUpdate);\n\n const abortController = new AbortController();\n this.abortControllers.set(taskId, [contextId, abortController]);\n\n const agent = await this.agent.clone();\n agent.memory = await agent.memory.clone();\n agent.memory.reset();\n await agent.memory.addMany(\n (existingTask.history || [requestContext.userMessage]).map(\n convertA2AMessageToFrameworkMessage,\n ) || [],\n );\n\n try {\n // run the agent\n const response = await agent\n .run(\n {},\n {\n signal: abortController.signal,\n },\n )\n .observe(async (emitter) => {\n await this.process_events(emitter, requestContext, eventBus);\n });\n\n const agentMessage: Message = {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: response.result.text }],\n taskId: taskId,\n contextId: contextId,\n };\n\n // Append agent message to task history\n if (!existingTask.history) {\n existingTask.history = [];\n }\n existingTask.history.push(agentMessage);\n eventBus.publish(existingTask);\n\n // Publish completed status update with agent message\n const finalUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"completed\",\n message: agentMessage,\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(finalUpdate);\n\n eventBus.finished();\n } catch (error) {\n logger.error(\"Agent execution error:\", { error });\n const errorMessage = error instanceof Error ? error.message : String(error);\n // Publish failed status update\n const errorUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"failed\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: `Agent error: ${errorMessage}` }],\n taskId: taskId,\n contextId: contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(errorUpdate);\n eventBus.finished();\n }\n }\n\n async process_events(\n _emitter: Emitter,\n _requestContext: RequestContext,\n _eventBus: ExecutionEventBus,\n ): Promise<void> {\n return;\n }\n\n public cancelTask = async (taskId: string, eventBus: ExecutionEventBus): Promise<void> => {\n if (this.abortControllers.has(taskId)) {\n const [contextId, abortController] = this.abortControllers.get(taskId)!;\n const cancelledUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"canceled\",\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(cancelledUpdate);\n abortController.abort();\n }\n };\n}\n\nexport class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {\n async process_events(\n emitter: Emitter<ToolCallingAgentCallbacks>,\n requestContext: RequestContext,\n eventBus: ExecutionEventBus,\n ): Promise<void> {\n let lastMsg: FrameworkMessage | undefined = undefined;\n\n const processEvent: Callback<{ state: ToolCallingAgentRunState }> = async ({ state }) => {\n const messages = state.memory.messages;\n if (lastMsg === undefined) {\n lastMsg = messages.at(-1);\n }\n\n const index = lastMsg ? messages.lastIndexOf(lastMsg) : -1;\n for (const message of messages.slice(index + 1)) {\n const update: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n status: {\n state: \"working\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: JSON.stringify(message.toPlain()) }],\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(update);\n lastMsg = message;\n }\n };\n emitter.on(\"start\", processEvent);\n emitter.on(\"success\", processEvent);\n }\n}\n\nexport class ReActAgentExecutor extends BaseA2AAgentExecutor {\n async process_events(\n emitter: Emitter<ReActAgentCallbacks>,\n requestContext: RequestContext,\n eventBus: ExecutionEventBus,\n ): Promise<void> {\n emitter.on(\"update\", async ({ update }) => {\n const updateEvent: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n status: {\n state: \"working\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: update.value }],\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(updateEvent);\n });\n }\n}\n"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { c as AnyAgent } from '../../../base-BP7v-NSL.cjs';
|
|
2
|
+
import { AgentExecutor, RequestContext, ExecutionEventBus } from '@a2a-js/sdk/server';
|
|
3
|
+
import { E as Emitter } from '../../../emitter-DWEsd-ud.cjs';
|
|
4
|
+
import { ToolCallingAgentCallbacks } from '../../../agents/toolCalling/types.cjs';
|
|
5
|
+
import { ReActAgentCallbacks } from '../../../agents/react/types.cjs';
|
|
6
|
+
import '../../../context.cjs';
|
|
7
|
+
import '../../../internals/serializable.cjs';
|
|
8
|
+
import '../../../internals/types.cjs';
|
|
9
|
+
import '../../../internals/helpers/guards.cjs';
|
|
10
|
+
import '../../../internals/helpers/promise.cjs';
|
|
11
|
+
import '../../../errors.cjs';
|
|
12
|
+
import '../../../memory/base.cjs';
|
|
13
|
+
import '../../../backend/message.cjs';
|
|
14
|
+
import 'ai';
|
|
15
|
+
import '../../../tools/base.cjs';
|
|
16
|
+
import 'ajv';
|
|
17
|
+
import 'promise-based-task';
|
|
18
|
+
import '../../../cache/base.cjs';
|
|
19
|
+
import '../../../internals/helpers/schema.cjs';
|
|
20
|
+
import 'zod';
|
|
21
|
+
import 'zod-to-json-schema';
|
|
22
|
+
import '../../../agents/toolCalling/prompts.cjs';
|
|
23
|
+
import '../../../template.cjs';
|
|
24
|
+
import '../../../agents/react/prompts.cjs';
|
|
25
|
+
import '../../../parsers/linePrefix.cjs';
|
|
26
|
+
import '../../../parsers/field.cjs';
|
|
27
|
+
import '@streamparser/json';
|
|
28
|
+
import 'jsonrepair/stream';
|
|
29
|
+
import '../../../parsers/errors.cjs';
|
|
30
|
+
import '../../../chat-CR4yfOR9.cjs';
|
|
31
|
+
import '../../../backend/constants.cjs';
|
|
32
|
+
import '../../../logger/logger.cjs';
|
|
33
|
+
import 'pino';
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Copyright 2025 © BeeAI a Series of LF Projects, LLC
|
|
37
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
declare abstract class BaseA2AAgentExecutor implements AgentExecutor {
|
|
41
|
+
protected agent: AnyAgent;
|
|
42
|
+
protected readonly abortControllers: Map<string, [string, AbortController]>;
|
|
43
|
+
constructor(agent: AnyAgent);
|
|
44
|
+
execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
45
|
+
process_events(_emitter: Emitter, _requestContext: RequestContext, _eventBus: ExecutionEventBus): Promise<void>;
|
|
46
|
+
cancelTask: (taskId: string, eventBus: ExecutionEventBus) => Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
declare class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {
|
|
49
|
+
process_events(emitter: Emitter<ToolCallingAgentCallbacks>, requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
50
|
+
}
|
|
51
|
+
declare class ReActAgentExecutor extends BaseA2AAgentExecutor {
|
|
52
|
+
process_events(emitter: Emitter<ReActAgentCallbacks>, requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { BaseA2AAgentExecutor, ReActAgentExecutor, ToolCallingAgentExecutor };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { c as AnyAgent } from '../../../base-BsY2baWy.js';
|
|
2
|
+
import { AgentExecutor, RequestContext, ExecutionEventBus } from '@a2a-js/sdk/server';
|
|
3
|
+
import { E as Emitter } from '../../../emitter-C9nwGLt6.js';
|
|
4
|
+
import { ToolCallingAgentCallbacks } from '../../../agents/toolCalling/types.js';
|
|
5
|
+
import { ReActAgentCallbacks } from '../../../agents/react/types.js';
|
|
6
|
+
import '../../../context.js';
|
|
7
|
+
import '../../../internals/serializable.js';
|
|
8
|
+
import '../../../internals/types.js';
|
|
9
|
+
import '../../../internals/helpers/guards.js';
|
|
10
|
+
import '../../../internals/helpers/promise.js';
|
|
11
|
+
import '../../../errors.js';
|
|
12
|
+
import '../../../memory/base.js';
|
|
13
|
+
import '../../../backend/message.js';
|
|
14
|
+
import 'ai';
|
|
15
|
+
import '../../../tools/base.js';
|
|
16
|
+
import 'ajv';
|
|
17
|
+
import 'promise-based-task';
|
|
18
|
+
import '../../../cache/base.js';
|
|
19
|
+
import '../../../internals/helpers/schema.js';
|
|
20
|
+
import 'zod';
|
|
21
|
+
import 'zod-to-json-schema';
|
|
22
|
+
import '../../../agents/toolCalling/prompts.js';
|
|
23
|
+
import '../../../template.js';
|
|
24
|
+
import '../../../agents/react/prompts.js';
|
|
25
|
+
import '../../../parsers/linePrefix.js';
|
|
26
|
+
import '../../../parsers/field.js';
|
|
27
|
+
import '@streamparser/json';
|
|
28
|
+
import 'jsonrepair/stream';
|
|
29
|
+
import '../../../parsers/errors.js';
|
|
30
|
+
import '../../../chat-W9j8T6UU.js';
|
|
31
|
+
import '../../../backend/constants.js';
|
|
32
|
+
import '../../../logger/logger.js';
|
|
33
|
+
import 'pino';
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Copyright 2025 © BeeAI a Series of LF Projects, LLC
|
|
37
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
declare abstract class BaseA2AAgentExecutor implements AgentExecutor {
|
|
41
|
+
protected agent: AnyAgent;
|
|
42
|
+
protected readonly abortControllers: Map<string, [string, AbortController]>;
|
|
43
|
+
constructor(agent: AnyAgent);
|
|
44
|
+
execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
45
|
+
process_events(_emitter: Emitter, _requestContext: RequestContext, _eventBus: ExecutionEventBus): Promise<void>;
|
|
46
|
+
cancelTask: (taskId: string, eventBus: ExecutionEventBus) => Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
declare class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {
|
|
49
|
+
process_events(emitter: Emitter<ToolCallingAgentCallbacks>, requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
50
|
+
}
|
|
51
|
+
declare class ReActAgentExecutor extends BaseA2AAgentExecutor {
|
|
52
|
+
process_events(emitter: Emitter<ReActAgentCallbacks>, requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { BaseA2AAgentExecutor, ReActAgentExecutor, ToolCallingAgentExecutor };
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { v4 } from 'uuid';
|
|
2
|
+
import { Logger } from '../../../logger/logger.js';
|
|
3
|
+
import { convertA2AMessageToFrameworkMessage } from '../agents/utils.js';
|
|
4
|
+
|
|
5
|
+
var __defProp = Object.defineProperty;
|
|
6
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
7
|
+
const logger = Logger.root.child({
|
|
8
|
+
name: "A2A server"
|
|
9
|
+
});
|
|
10
|
+
class BaseA2AAgentExecutor {
|
|
11
|
+
static {
|
|
12
|
+
__name(this, "BaseA2AAgentExecutor");
|
|
13
|
+
}
|
|
14
|
+
agent;
|
|
15
|
+
abortControllers = /* @__PURE__ */ new Map();
|
|
16
|
+
constructor(agent) {
|
|
17
|
+
this.agent = agent;
|
|
18
|
+
}
|
|
19
|
+
async execute(requestContext, eventBus) {
|
|
20
|
+
const userMessage = requestContext.userMessage;
|
|
21
|
+
const existingTask = requestContext.task || {
|
|
22
|
+
kind: "task",
|
|
23
|
+
id: v4(),
|
|
24
|
+
contextId: userMessage.contextId || v4(),
|
|
25
|
+
status: {
|
|
26
|
+
state: "submitted",
|
|
27
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
28
|
+
},
|
|
29
|
+
history: [
|
|
30
|
+
userMessage
|
|
31
|
+
],
|
|
32
|
+
metadata: userMessage.metadata
|
|
33
|
+
};
|
|
34
|
+
const taskId = existingTask.id;
|
|
35
|
+
const contextId = existingTask.contextId;
|
|
36
|
+
eventBus.publish(existingTask);
|
|
37
|
+
const workingStatusUpdate = {
|
|
38
|
+
kind: "status-update",
|
|
39
|
+
taskId,
|
|
40
|
+
contextId,
|
|
41
|
+
status: {
|
|
42
|
+
state: "working",
|
|
43
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
44
|
+
},
|
|
45
|
+
final: false
|
|
46
|
+
};
|
|
47
|
+
eventBus.publish(workingStatusUpdate);
|
|
48
|
+
const abortController = new AbortController();
|
|
49
|
+
this.abortControllers.set(taskId, [
|
|
50
|
+
contextId,
|
|
51
|
+
abortController
|
|
52
|
+
]);
|
|
53
|
+
const agent = await this.agent.clone();
|
|
54
|
+
agent.memory = await agent.memory.clone();
|
|
55
|
+
agent.memory.reset();
|
|
56
|
+
await agent.memory.addMany((existingTask.history || [
|
|
57
|
+
requestContext.userMessage
|
|
58
|
+
]).map(convertA2AMessageToFrameworkMessage) || []);
|
|
59
|
+
try {
|
|
60
|
+
const response = await agent.run({}, {
|
|
61
|
+
signal: abortController.signal
|
|
62
|
+
}).observe(async (emitter) => {
|
|
63
|
+
await this.process_events(emitter, requestContext, eventBus);
|
|
64
|
+
});
|
|
65
|
+
const agentMessage = {
|
|
66
|
+
kind: "message",
|
|
67
|
+
role: "agent",
|
|
68
|
+
messageId: v4(),
|
|
69
|
+
parts: [
|
|
70
|
+
{
|
|
71
|
+
kind: "text",
|
|
72
|
+
text: response.result.text
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
taskId,
|
|
76
|
+
contextId
|
|
77
|
+
};
|
|
78
|
+
if (!existingTask.history) {
|
|
79
|
+
existingTask.history = [];
|
|
80
|
+
}
|
|
81
|
+
existingTask.history.push(agentMessage);
|
|
82
|
+
eventBus.publish(existingTask);
|
|
83
|
+
const finalUpdate = {
|
|
84
|
+
kind: "status-update",
|
|
85
|
+
taskId,
|
|
86
|
+
contextId,
|
|
87
|
+
status: {
|
|
88
|
+
state: "completed",
|
|
89
|
+
message: agentMessage,
|
|
90
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
91
|
+
},
|
|
92
|
+
final: true
|
|
93
|
+
};
|
|
94
|
+
eventBus.publish(finalUpdate);
|
|
95
|
+
eventBus.finished();
|
|
96
|
+
} catch (error) {
|
|
97
|
+
logger.error("Agent execution error:", {
|
|
98
|
+
error
|
|
99
|
+
});
|
|
100
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
101
|
+
const errorUpdate = {
|
|
102
|
+
kind: "status-update",
|
|
103
|
+
taskId,
|
|
104
|
+
contextId,
|
|
105
|
+
status: {
|
|
106
|
+
state: "failed",
|
|
107
|
+
message: {
|
|
108
|
+
kind: "message",
|
|
109
|
+
role: "agent",
|
|
110
|
+
messageId: v4(),
|
|
111
|
+
parts: [
|
|
112
|
+
{
|
|
113
|
+
kind: "text",
|
|
114
|
+
text: `Agent error: ${errorMessage}`
|
|
115
|
+
}
|
|
116
|
+
],
|
|
117
|
+
taskId,
|
|
118
|
+
contextId
|
|
119
|
+
},
|
|
120
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
121
|
+
},
|
|
122
|
+
final: true
|
|
123
|
+
};
|
|
124
|
+
eventBus.publish(errorUpdate);
|
|
125
|
+
eventBus.finished();
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
async process_events(_emitter, _requestContext, _eventBus) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
cancelTask = /* @__PURE__ */ __name(async (taskId, eventBus) => {
|
|
132
|
+
if (this.abortControllers.has(taskId)) {
|
|
133
|
+
const [contextId, abortController] = this.abortControllers.get(taskId);
|
|
134
|
+
const cancelledUpdate = {
|
|
135
|
+
kind: "status-update",
|
|
136
|
+
taskId,
|
|
137
|
+
contextId,
|
|
138
|
+
status: {
|
|
139
|
+
state: "canceled",
|
|
140
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
141
|
+
},
|
|
142
|
+
final: true
|
|
143
|
+
};
|
|
144
|
+
eventBus.publish(cancelledUpdate);
|
|
145
|
+
abortController.abort();
|
|
146
|
+
}
|
|
147
|
+
}, "cancelTask");
|
|
148
|
+
}
|
|
149
|
+
class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {
|
|
150
|
+
static {
|
|
151
|
+
__name(this, "ToolCallingAgentExecutor");
|
|
152
|
+
}
|
|
153
|
+
async process_events(emitter, requestContext, eventBus) {
|
|
154
|
+
let lastMsg = void 0;
|
|
155
|
+
const processEvent = /* @__PURE__ */ __name(async ({ state }) => {
|
|
156
|
+
const messages = state.memory.messages;
|
|
157
|
+
if (lastMsg === void 0) {
|
|
158
|
+
lastMsg = messages.at(-1);
|
|
159
|
+
}
|
|
160
|
+
const index = lastMsg ? messages.lastIndexOf(lastMsg) : -1;
|
|
161
|
+
for (const message of messages.slice(index + 1)) {
|
|
162
|
+
const update = {
|
|
163
|
+
kind: "status-update",
|
|
164
|
+
taskId: requestContext.taskId,
|
|
165
|
+
contextId: requestContext.contextId,
|
|
166
|
+
status: {
|
|
167
|
+
state: "working",
|
|
168
|
+
message: {
|
|
169
|
+
kind: "message",
|
|
170
|
+
role: "agent",
|
|
171
|
+
messageId: v4(),
|
|
172
|
+
parts: [
|
|
173
|
+
{
|
|
174
|
+
kind: "text",
|
|
175
|
+
text: JSON.stringify(message.toPlain())
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
taskId: requestContext.taskId,
|
|
179
|
+
contextId: requestContext.contextId
|
|
180
|
+
},
|
|
181
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
182
|
+
},
|
|
183
|
+
final: false
|
|
184
|
+
};
|
|
185
|
+
eventBus.publish(update);
|
|
186
|
+
lastMsg = message;
|
|
187
|
+
}
|
|
188
|
+
}, "processEvent");
|
|
189
|
+
emitter.on("start", processEvent);
|
|
190
|
+
emitter.on("success", processEvent);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
class ReActAgentExecutor extends BaseA2AAgentExecutor {
|
|
194
|
+
static {
|
|
195
|
+
__name(this, "ReActAgentExecutor");
|
|
196
|
+
}
|
|
197
|
+
async process_events(emitter, requestContext, eventBus) {
|
|
198
|
+
emitter.on("update", async ({ update }) => {
|
|
199
|
+
const updateEvent = {
|
|
200
|
+
kind: "status-update",
|
|
201
|
+
taskId: requestContext.taskId,
|
|
202
|
+
contextId: requestContext.contextId,
|
|
203
|
+
status: {
|
|
204
|
+
state: "working",
|
|
205
|
+
message: {
|
|
206
|
+
kind: "message",
|
|
207
|
+
role: "agent",
|
|
208
|
+
messageId: v4(),
|
|
209
|
+
parts: [
|
|
210
|
+
{
|
|
211
|
+
kind: "text",
|
|
212
|
+
text: update.value
|
|
213
|
+
}
|
|
214
|
+
],
|
|
215
|
+
taskId: requestContext.taskId,
|
|
216
|
+
contextId: requestContext.contextId
|
|
217
|
+
},
|
|
218
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
219
|
+
},
|
|
220
|
+
final: false
|
|
221
|
+
};
|
|
222
|
+
eventBus.publish(updateEvent);
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export { BaseA2AAgentExecutor, ReActAgentExecutor, ToolCallingAgentExecutor };
|
|
228
|
+
//# sourceMappingURL=agent_executor.js.map
|
|
229
|
+
//# sourceMappingURL=agent_executor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/adapters/a2a/serve/agent_executor.ts"],"names":["logger","Logger","root","child","name","BaseA2AAgentExecutor","abortControllers","Map","agent","execute","requestContext","eventBus","userMessage","existingTask","task","kind","id","uuidv4","contextId","status","state","timestamp","Date","toISOString","history","metadata","taskId","publish","workingStatusUpdate","final","abortController","AbortController","set","clone","memory","reset","addMany","map","convertA2AMessageToFrameworkMessage","response","run","signal","observe","emitter","process_events","agentMessage","role","messageId","parts","text","result","push","finalUpdate","message","finished","error","errorMessage","Error","String","errorUpdate","_emitter","_requestContext","_eventBus","cancelTask","has","get","cancelledUpdate","abort","ToolCallingAgentExecutor","lastMsg","undefined","processEvent","messages","at","index","lastIndexOf","slice","update","JSON","stringify","toPlain","on","ReActAgentExecutor","updateEvent","value"],"mappings":"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","file":"agent_executor.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { v4 as uuidv4 } from \"uuid\";\n\nimport { AnyAgent } from \"@/agents/types.js\";\nimport { AgentExecutor, RequestContext, ExecutionEventBus } from \"@a2a-js/sdk/server\";\nimport { Message, TaskStatusUpdateEvent } from \"@a2a-js/sdk\";\nimport { Logger } from \"@/logger/logger.js\";\nimport { convertA2AMessageToFrameworkMessage } from \"@/adapters/a2a/agents/utils.js\";\nimport { Callback, Emitter } from \"@/emitter/emitter.js\";\nimport { ToolCallingAgentCallbacks, ToolCallingAgentRunState } from \"@/agents/toolCalling/types.js\";\nimport { ReActAgentCallbacks } from \"@/agents/react/types.js\";\nimport { Message as FrameworkMessage } from \"@/backend/message.js\";\n\nconst logger = Logger.root.child({\n name: \"A2A server\",\n});\n\nexport abstract class BaseA2AAgentExecutor implements AgentExecutor {\n protected readonly abortControllers = new Map<string, [string, AbortController]>();\n\n constructor(protected agent: AnyAgent) {}\n\n async execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void> {\n const userMessage = requestContext.userMessage;\n const existingTask = requestContext.task || {\n kind: \"task\",\n id: uuidv4(),\n contextId: userMessage.contextId || uuidv4(),\n status: {\n state: \"submitted\",\n timestamp: new Date().toISOString(),\n },\n history: [userMessage],\n metadata: userMessage.metadata,\n };\n\n const taskId = existingTask.id;\n const contextId = existingTask.contextId;\n\n // Publish initial Task event if it's a new task\n eventBus.publish(existingTask);\n\n // Publish \"working\" status update\n const workingStatusUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"working\",\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(workingStatusUpdate);\n\n const abortController = new AbortController();\n this.abortControllers.set(taskId, [contextId, abortController]);\n\n const agent = await this.agent.clone();\n agent.memory = await agent.memory.clone();\n agent.memory.reset();\n await agent.memory.addMany(\n (existingTask.history || [requestContext.userMessage]).map(\n convertA2AMessageToFrameworkMessage,\n ) || [],\n );\n\n try {\n // run the agent\n const response = await agent\n .run(\n {},\n {\n signal: abortController.signal,\n },\n )\n .observe(async (emitter) => {\n await this.process_events(emitter, requestContext, eventBus);\n });\n\n const agentMessage: Message = {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: response.result.text }],\n taskId: taskId,\n contextId: contextId,\n };\n\n // Append agent message to task history\n if (!existingTask.history) {\n existingTask.history = [];\n }\n existingTask.history.push(agentMessage);\n eventBus.publish(existingTask);\n\n // Publish completed status update with agent message\n const finalUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"completed\",\n message: agentMessage,\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(finalUpdate);\n\n eventBus.finished();\n } catch (error) {\n logger.error(\"Agent execution error:\", { error });\n const errorMessage = error instanceof Error ? error.message : String(error);\n // Publish failed status update\n const errorUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"failed\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: `Agent error: ${errorMessage}` }],\n taskId: taskId,\n contextId: contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(errorUpdate);\n eventBus.finished();\n }\n }\n\n async process_events(\n _emitter: Emitter,\n _requestContext: RequestContext,\n _eventBus: ExecutionEventBus,\n ): Promise<void> {\n return;\n }\n\n public cancelTask = async (taskId: string, eventBus: ExecutionEventBus): Promise<void> => {\n if (this.abortControllers.has(taskId)) {\n const [contextId, abortController] = this.abortControllers.get(taskId)!;\n const cancelledUpdate: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: taskId,\n contextId: contextId,\n status: {\n state: \"canceled\",\n timestamp: new Date().toISOString(),\n },\n final: true,\n };\n eventBus.publish(cancelledUpdate);\n abortController.abort();\n }\n };\n}\n\nexport class ToolCallingAgentExecutor extends BaseA2AAgentExecutor {\n async process_events(\n emitter: Emitter<ToolCallingAgentCallbacks>,\n requestContext: RequestContext,\n eventBus: ExecutionEventBus,\n ): Promise<void> {\n let lastMsg: FrameworkMessage | undefined = undefined;\n\n const processEvent: Callback<{ state: ToolCallingAgentRunState }> = async ({ state }) => {\n const messages = state.memory.messages;\n if (lastMsg === undefined) {\n lastMsg = messages.at(-1);\n }\n\n const index = lastMsg ? messages.lastIndexOf(lastMsg) : -1;\n for (const message of messages.slice(index + 1)) {\n const update: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n status: {\n state: \"working\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: JSON.stringify(message.toPlain()) }],\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(update);\n lastMsg = message;\n }\n };\n emitter.on(\"start\", processEvent);\n emitter.on(\"success\", processEvent);\n }\n}\n\nexport class ReActAgentExecutor extends BaseA2AAgentExecutor {\n async process_events(\n emitter: Emitter<ReActAgentCallbacks>,\n requestContext: RequestContext,\n eventBus: ExecutionEventBus,\n ): Promise<void> {\n emitter.on(\"update\", async ({ update }) => {\n const updateEvent: TaskStatusUpdateEvent = {\n kind: \"status-update\",\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n status: {\n state: \"working\",\n message: {\n kind: \"message\",\n role: \"agent\",\n messageId: uuidv4(),\n parts: [{ kind: \"text\", text: update.value }],\n taskId: requestContext.taskId,\n contextId: requestContext.contextId,\n },\n timestamp: new Date().toISOString(),\n },\n final: false,\n };\n eventBus.publish(updateEvent);\n });\n }\n}\n"]}
|