Skip to content
AgentsKit

@agentskit/runtime — Type Aliases

API type aliases for @agentskit/runtime.

#Type Alias: AgentRunResult

AgentRunResult = object

Defined in: multi-agent.ts:12

Result of running a single agent within a topology.

#Properties

#latencyMs?

optional latencyMs?: number

Defined in: multi-agent.ts:16


#output

output: unknown

Defined in: multi-agent.ts:13


#tokens?

optional tokens?: number

Defined in: multi-agent.ts:14


#usd?

optional usd?: number

Defined in: multi-agent.ts:15


#Type Alias: AuctionHandlerOptions<Ctx>

AuctionHandlerOptions<Ctx> = object

Defined in: multi-agent-auction.ts:16

#Type Parameters

#Ctx

Ctx

#Properties

#concurrency?

optional concurrency?: number

Defined in: multi-agent-auction.ts:19


#customScorer?

optional customScorer?: AuctionScorerFn

Defined in: multi-agent-auction.ts:18


#runAgent

runAgent: TopologyRunAgent<Ctx>

Defined in: multi-agent-auction.ts:17


#Type Alias: AuctionScorerFn

AuctionScorerFn = (bid, agentId) => number

Defined in: multi-agent-auction.ts:14

#Parameters

#bid

AgentRunResult

#agentId

string

#Returns

number


#Type Alias: ChatSurface

ChatSurface = "slack" | "teams" | "discord" | "whatsapp" | string & object

Defined in: chat-trigger.ts:30

Surface identifier. The four named surfaces preserve autocomplete in editors; (string & \{\}) keeps the type extensible for adapters landing later (Mattermost, Telegram, Webex). Caveat: a switch (event.surface) will not be exhaustive — TS cannot warn about missing branches when the union is open. Use a default branch.


#Type Alias: ChatSurfaceEvent

ChatSurfaceEvent = ChatMessageEvent | ChatMentionEvent | ChatReplyEvent | ChatReactionEvent | ChatFileUploadEvent | ChatInstallationEvent

Defined in: chat-trigger.ts:118


#Type Alias: ChatSurfaceEventType

ChatSurfaceEventType = ChatSurfaceEvent["type"]

Defined in: chat-trigger.ts:126


#Type Alias: CompareEvalFn<Ctx>

CompareEvalFn<Ctx> = (results, evalRef, ctx) => Promise<number>

Defined in: multi-agent-compare.ts:13

#Type Parameters

#Ctx

Ctx

#Parameters

#results

AgentRunResult[]

#evalRef

string

#ctx

Ctx

#Returns

Promise<number>


#Type Alias: CompareHandlerOptions<Ctx>

CompareHandlerOptions<Ctx> = object

Defined in: multi-agent-compare.ts:27

#Type Parameters

#Ctx

Ctx

#Properties

#concurrency?

optional concurrency?: number

Defined in: multi-agent-compare.ts:31


#evaluator?

optional evaluator?: CompareEvalFn<Ctx>

Defined in: multi-agent-compare.ts:29


#judger?

optional judger?: CompareJudgeFn<Ctx>

Defined in: multi-agent-compare.ts:30


#runAgent

runAgent: TopologyRunAgent<Ctx>

Defined in: multi-agent-compare.ts:28


#Type Alias: CompareJudgeFn<Ctx>

CompareJudgeFn<Ctx> = (results, agentIds, criteria, judgeAgent, ctx) => Promise<number>

Defined in: multi-agent-compare.ts:19

#Type Parameters

#Ctx

Ctx

#Parameters

#results

AgentRunResult[]

#agentIds

string[]

#criteria

string

#judgeAgent

string

#ctx

Ctx

#Returns

Promise<number>


#Type Alias: CompareSelection

CompareSelection = { mode: "manual"; } | { combine: "concat" | "merge"; mode: "all"; } | { metric: "fastest" | "cheapest"; mode: "first"; } | { evalRef: string; mode: "eval"; } | { criteria: string; judgeAgent: string; mode: "judge"; }

Defined in: multi-agent.ts:86


#Type Alias: DebateHandlerOptions<Ctx>

DebateHandlerOptions<Ctx> = object

Defined in: multi-agent-debate.ts:6

#Type Parameters

#Ctx

Ctx

#Properties

#runAgent

runAgent: TopologyRunAgent<Ctx>

Defined in: multi-agent-debate.ts:7


#Type Alias: DurableEvent

DurableEvent = { name: string; runId: string; stepId: string; type: "step:replay"; } | { attempt: number; name: string; runId: string; stepId: string; type: "step:start"; } | { durationMs: number; name: string; runId: string; stepId: string; type: "step:success"; } | { attempt: number; error: string; name: string; runId: string; stepId: string; type: "step:failure"; }

Defined in: durable.ts:48


#Type Alias: FlowHandler<TInput, TResult>

FlowHandler<TInput, TResult> = (ctx) => Promise<TResult> | TResult

Defined in: flow.ts:48

#Type Parameters

#TInput

TInput = unknown

#TResult

TResult = unknown

#Parameters

#ctx

FlowHandlerContext<TInput>

#Returns

Promise<TResult> | TResult


#Type Alias: FlowRegistry<TInput>

FlowRegistry<TInput> = Record<string, FlowHandler<TInput>>

Defined in: flow.ts:52

#Type Parameters

#TInput

TInput = unknown


#Type Alias: FlowRunEvent

FlowRunEvent = { flow: string; runId: string; type: "flow:start"; } | { flow: string; nodeId: string; runId: string; type: "node:start"; } | { flow: string; nodeId: string; result: unknown; runId: string; type: "node:success"; } | { error: string; flow: string; nodeId: string; runId: string; type: "node:failure"; } | { flow: string; outputs: Record<string, unknown>; runId: string; type: "flow:done"; }

Defined in: flow.ts:163


#Type Alias: QuotaMap

QuotaMap = Record<string, ToolQuota>

Defined in: quota.ts:33


#Type Alias: ScratchpadStore

ScratchpadStore = object

Defined in: multi-agent.ts:62

Shared scratchpad store contract used by stateful topologies.

#Methods

#entries()

entries(): readonly [string, unknown][]

Defined in: multi-agent.ts:65

#Returns

readonly [string, unknown][]


#get()

get(key): unknown

Defined in: multi-agent.ts:63

#Parameters

key

string

#Returns

unknown


#set()

set(key, value): void

Defined in: multi-agent.ts:64

#Parameters

key

string

value

unknown

#Returns

void


#Type Alias: SpeculatePicker

SpeculatePicker = (results) => string | Promise<string>

Defined in: speculate.ts:21

#Parameters

#results

SpeculativeResult[]

#Returns

string | Promise<string>


#Type Alias: TopologyObserver

TopologyObserver = (event) => void

Defined in: topologies.ts:30

#Parameters

#event

TopologyLogEvent

#Returns

void


#Type Alias: TopologyOutcome

TopologyOutcome = { kind: "ok"; value: unknown; } | { error: { code: string; message: string; }; kind: "failed"; } | { kind: "paused"; reason: string; }

Defined in: multi-agent.ts:27

Discriminated outcome of a topology handler.


#Type Alias: TopologyRunAgent<Ctx>

TopologyRunAgent<Ctx> = (agentId, input, ctx) => Promise<AgentRunResult>

Defined in: multi-agent.ts:20

Injected agent runner: resolve an agent id + input to a structured result.

#Type Parameters

#Ctx

Ctx

#Parameters

#agentId

string

#input

unknown

#ctx

Ctx

#Returns

Promise<AgentRunResult>


#Type Alias: ValidatorAction

ValidatorAction = "retry" | "block" | "fallback"

Defined in: validator-guard.ts:22

Validator guarantee — the "agent insurance" primitive. Wraps any regenerable agent output with a validator chain. If a validator fails, the guard either retries (with optional repair feedback), blocks (returns a deterministic fallback), or falls back to a pre-canned safe answer. Every decision is auditable.

Use cases:

  • JSON-shape contracts on tool inputs / structured outputs.
  • "Never emit PII" final-output gate.
  • "Answer must cite at least one source from the corpus" guarantee.
  • SOX / HIPAA / fair-housing safety rails.

The guard is provider- and adapter-agnostic — pass any () => Promise&lt;string> regenerator. Designed to layer on top of @agentskit/eval validators (a deterministic eval is just a Validator whose check returns true/false).

Closes issue #210.


#Type Alias: ValidatorResult

ValidatorResult = boolean | { ok: boolean; reason?: string; }

Defined in: validator-guard.ts:53


#Type Alias: VoteBallot

VoteBallot = { mode: "majority"; } | { mode: "weighted"; weights?: Record<string, number>; } | { mode: "unanimous"; } | { mode: "quorum"; threshold: number; }

Defined in: multi-agent.ts:99


#Type Alias: VoteHandlerOptions<Ctx>

VoteHandlerOptions<Ctx> = object

Defined in: multi-agent-vote.ts:20

#Type Parameters

#Ctx

Ctx

#Properties

#concurrency?

optional concurrency?: number

Defined in: multi-agent-vote.ts:23


#judger?

optional judger?: VoteJudgeFn<Ctx>

Defined in: multi-agent-vote.ts:22


#runAgent

runAgent: TopologyRunAgent<Ctx>

Defined in: multi-agent-vote.ts:21


#Type Alias: VoteJudgeFn<Ctx>

VoteJudgeFn<Ctx> = (outputs, agentIds, judgeAgent, ctx) => Promise<unknown>

Defined in: multi-agent-vote.ts:13

#Type Parameters

#Ctx

Ctx

#Parameters

#outputs

unknown[]

#agentIds

string[]

#judgeAgent

string

#ctx

Ctx

#Returns

Promise<unknown>


#Type Alias: WebhookHandler

WebhookHandler = (req) => Promise<WebhookResponse>

Defined in: background.ts:255

#Parameters

#req

WebhookRequest

#Returns

Promise<WebhookResponse>

Explore nearby

On this page

Type Alias: AgentRunResultPropertieslatencyMs?outputtokens?usd?Type Alias: AuctionHandlerOptions<Ctx>Type ParametersCtxPropertiesconcurrency?customScorer?runAgentType Alias: AuctionScorerFnParametersbidagentIdReturnsType Alias: ChatSurfaceType Alias: ChatSurfaceEventType Alias: ChatSurfaceEventTypeType Alias: CompareEvalFn<Ctx>Type ParametersCtxParametersresultsevalRefctxReturnsType Alias: CompareHandlerOptions<Ctx>Type ParametersCtxPropertiesconcurrency?evaluator?judger?runAgentType Alias: CompareJudgeFn<Ctx>Type ParametersCtxParametersresultsagentIdscriteriajudgeAgentctxReturnsType Alias: CompareSelectionType Alias: DebateHandlerOptions<Ctx>Type ParametersCtxPropertiesrunAgentType Alias: DurableEventType Alias: FlowHandler<TInput, TResult>Type ParametersTInputTResultParametersctxReturnsType Alias: FlowRegistry<TInput>Type ParametersTInputType Alias: FlowRunEventType Alias: QuotaMapType Alias: ScratchpadStoreMethodsentries()Returnsget()ParameterskeyReturnsset()ParameterskeyvalueReturnsType Alias: SpeculatePickerParametersresultsReturnsType Alias: TopologyObserverParameterseventReturnsType Alias: TopologyOutcomeType Alias: TopologyRunAgent<Ctx>Type ParametersCtxParametersagentIdinputctxReturnsType Alias: ValidatorActionType Alias: ValidatorResultType Alias: VoteBallotType Alias: VoteHandlerOptions<Ctx>Type ParametersCtxPropertiesconcurrency?judger?runAgentType Alias: VoteJudgeFn<Ctx>Type ParametersCtxParametersoutputsagentIdsjudgeAgentctxReturnsType Alias: WebhookHandlerParametersreqReturns