UNPKG

@copilotkit/runtime

Version:

<img src="https://github.com/user-attachments/assets/0a6b64d9-e193-4940-a3f6-60334ac34084" alt="banner" style="border-radius: 12px; border: 2px solid #d6d4fa;" />

285 lines (279 loc) • 9.06 kB
import { TextMessageStartEvent, TextMessageContentEvent, TextMessageEndEvent, ToolCallStartEvent, ToolCallArgsEvent, ToolCallEndEvent, RunAgentInput, EventType } from '@ag-ui/client'; import * as rxjs from 'rxjs'; import { LangGraphAgent as LangGraphAgent$1, LangGraphAgentConfig, ProcessedEvents, State, StateEnrichment, SchemaKeys } from '@ag-ui/langgraph'; export { LangGraphHttpAgent } from '@ag-ui/langgraph'; import { Message } from '@langchain/langgraph-sdk/dist/types.messages'; /** * Constants for LangGraph integration. * This file is separate from langgraph.agent.ts to avoid pulling in @ag-ui/langgraph * when only these constants are needed. */ type TextMessageEvents = TextMessageStartEvent | TextMessageContentEvent | TextMessageEndEvent; type ToolCallEvents = ToolCallStartEvent | ToolCallArgsEvent | ToolCallEndEvent; declare enum CustomEventNames { CopilotKitManuallyEmitMessage = "copilotkit_manually_emit_message", CopilotKitManuallyEmitToolCall = "copilotkit_manually_emit_tool_call", CopilotKitManuallyEmitIntermediateState = "copilotkit_manually_emit_intermediate_state", CopilotKitExit = "copilotkit_exit" } interface PredictStateTool { tool: string; state_key: string; tool_argument: string; } interface CopilotKitStateEnrichment { copilotkit: { actions: StateEnrichment["ag-ui"]["tools"]; context: StateEnrichment["ag-ui"]["context"]; }; } declare class LangGraphAgent extends LangGraphAgent$1 { constructor(config: LangGraphAgentConfig); clone(): LangGraphAgent; dispatchEvent(event: ProcessedEvents): boolean; run(input: RunAgentInput): rxjs.Observable<{ type: EventType.TEXT_MESSAGE_START; role: "developer" | "system" | "assistant" | "user"; messageId: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.TEXT_MESSAGE_CONTENT; messageId: string; delta: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.TEXT_MESSAGE_END; messageId: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.TOOL_CALL_START; toolCallId: string; toolCallName: string; timestamp?: number | undefined; rawEvent?: any; parentMessageId?: string | undefined; } | { type: EventType.TOOL_CALL_ARGS; toolCallId: string; delta: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.TOOL_CALL_END; toolCallId: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.THINKING_TEXT_MESSAGE_START; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.THINKING_TEXT_MESSAGE_CONTENT; delta: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.THINKING_TEXT_MESSAGE_END; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.TOOL_CALL_RESULT; content: string; toolCallId: string; messageId: string; role?: "tool" | undefined; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.THINKING_START; timestamp?: number | undefined; rawEvent?: any; title?: string | undefined; } | { type: EventType.THINKING_END; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.STATE_SNAPSHOT; timestamp?: number | undefined; rawEvent?: any; snapshot?: any; } | { type: EventType.STATE_DELTA; delta: any[]; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.MESSAGES_SNAPSHOT; messages: ({ id: string; role: "developer"; content: string; name?: string | undefined; } | { id: string; role: "system"; content: string; name?: string | undefined; } | { id: string; role: "assistant"; name?: string | undefined; content?: string | undefined; toolCalls?: { function: { name: string; arguments: string; }; type: "function"; id: string; }[] | undefined; } | { id: string; role: "user"; content: string | ({ type: "text"; text: string; } | { type: "binary"; mimeType: string; id?: string | undefined; url?: string | undefined; data?: string | undefined; filename?: string | undefined; })[]; name?: string | undefined; } | { id: string; role: "tool"; content: string; toolCallId: string; error?: string | undefined; } | { id: string; role: "activity"; content: Record<string, any>; activityType: string; })[]; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.RAW; timestamp?: number | undefined; rawEvent?: any; event?: any; source?: string | undefined; } | { name: string; type: EventType.CUSTOM; value?: any; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.RUN_STARTED; threadId: string; runId: string; parentRunId?: string | undefined; timestamp?: number | undefined; rawEvent?: any; input?: { threadId: string; runId: string; messages: ({ id: string; role: "developer"; content: string; name?: string | undefined; } | { id: string; role: "system"; content: string; name?: string | undefined; } | { id: string; role: "assistant"; name?: string | undefined; content?: string | undefined; toolCalls?: { function: { name: string; arguments: string; }; type: "function"; id: string; }[] | undefined; } | { id: string; role: "user"; content: string | ({ type: "text"; text: string; } | { type: "binary"; mimeType: string; id?: string | undefined; url?: string | undefined; data?: string | undefined; filename?: string | undefined; })[]; name?: string | undefined; } | { id: string; role: "tool"; content: string; toolCallId: string; error?: string | undefined; } | { id: string; role: "activity"; content: Record<string, any>; activityType: string; })[]; tools: { name: string; description: string; parameters?: any; }[]; context: { value: string; description: string; }[]; parentRunId?: string | undefined; state?: any; forwardedProps?: any; } | undefined; } | { type: EventType.RUN_FINISHED; threadId: string; runId: string; timestamp?: number | undefined; rawEvent?: any; result?: any; } | { message: string; type: EventType.RUN_ERROR; code?: string | undefined; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.STEP_STARTED; stepName: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType.STEP_FINISHED; stepName: string; timestamp?: number | undefined; rawEvent?: any; } | { type: EventType; name: string; value: any; }>; langGraphDefaultMergeState(state: State, messages: Message[], input: RunAgentInput): State<StateEnrichment & CopilotKitStateEnrichment>; getSchemaKeys(): Promise<SchemaKeys>; } export { CustomEventNames, LangGraphAgent, PredictStateTool, TextMessageEvents, ToolCallEvents };