eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
1 lines • 986 B
JavaScript
import{ParentSessionKey,SessionDynamicSubagentSelectionsKey,TurnDynamicSubagentSelectionsKey}from"#context/keys.js";import{BundleKey}from"#runtime/sessions/runtime-context-keys.js";import{AGENT_TOOL_NAME}from"#tools/framework/agent-contract.js";function resolveWorkflowAgentMetadata(e){let t=e.get(BundleKey);if(t===void 0)return{};let n=new Map;t.nodeId===void 0&&e.get(ParentSessionKey)===void 0&&n.set(AGENT_TOOL_NAME,{description:t.resolvedAgent.config?.description??``});for(let[e,r]of t.subagentRegistry.subagentsByName??[]){let t=r.definition.description;t!==void 0&&n.set(e,{description:t})}let r=effectiveDynamicSelections(e);for(let e of Object.values(r))e!==null&&n.set(e.prepared.name,{description:e.kind===`subagent`?e.agentConfig.description:e.remoteAgent.description});return Object.fromEntries(n)}function effectiveDynamicSelections(e){return{...e.get(SessionDynamicSubagentSelectionsKey),...e.get(TurnDynamicSubagentSelectionsKey)}}export{resolveWorkflowAgentMetadata};