MCPcopy Create free account
hub / github.com/21st-dev/21st-sdk / executeAgent

Function executeAgent

packages/agent-runtime/src/runtime.ts:603–642  ·  view source on GitHub ↗
(config: AgentConfig, params: {
  message: string
  images?: Array<{ base64: string; mediaType: string }>
  sessionId?: string
  streamId: string
  threadId?: string
  options?: AgentRequestOptions
})

Source from the content-addressed store, hash-verified

601// --- Entry point (SDK path) ---
602
603export async function executeAgent(config: AgentConfig, params: {
604 message: string
605 images?: Array<{ base64: string; mediaType: string }>
606 sessionId?: string
607 streamId: string
608 threadId?: string
609 options?: AgentRequestOptions
610}) {
611 const traceId = params.threadId ?? params.streamId
612 initTrace(params.streamId, traceId, publish)
613 const agentName = (config as { name?: string }).name || "main"
614
615 const rootKey = "root"
616 const rootSpanId = spanManager.startSpan(rootKey, {
617 name: "agent:" + agentName,
618 kind: "agent",
619 attributes: {
620 "agent.name": agentName,
621 ...(config.model ? { "agent.model": config.model } : {}),
622 "stream.id": params.streamId,
623 "tool.input": JSON.stringify({ message: params.message }).slice(0, 10_000),
624 },
625 })
626 spanManager.setRootSpanId(rootSpanId)
627
628 try {
629 const sdkOptions = buildSdkOptions(config, { sessionId: params.sessionId, requestOptions: params.options })
630 const prompt = buildPrompt(params.message, params.images)
631 const queryStream = claudeQuery({ prompt, options: sdkOptions })
632
633 await processStream(queryStream, params.streamId, config)
634
635 spanManager.endSpan(rootKey, { status: "completed" })
636 } catch (error: any) {
637 spanManager.endSpan(rootKey, { status: "error", error: error?.message ?? String(error) })
638 throw error
639 } finally {
640 flushTrace()
641 }
642}
643
644// --- Entry point (ACP path) ---
645

Callers

nothing calls this directly

Calls 8

initTraceFunction · 0.85
buildSdkOptionsFunction · 0.85
buildPromptFunction · 0.85
processStreamFunction · 0.85
flushTraceFunction · 0.85
startSpanMethod · 0.80
setRootSpanIdMethod · 0.80
endSpanMethod · 0.80

Tested by

no test coverage detected