UNPKG

@openai/agents-core

Version:

The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows.

34 lines (33 loc) • 1.78 kB
import type { AgentInputItem } from '../../types'; import type { Model } from '../../model'; import type { Tool, ToolCallDetails } from '../../tool'; import type { Span, Trace } from '../../tracing'; import type { Manifest } from '../manifest'; import type { SandboxSessionLike } from '../session'; import type { SandboxUser } from '../users'; import type { SandboxWorkspaceScope } from '../workspacePaths'; export type CapabilityInstructionsResult = string | null | Promise<string | null>; export declare abstract class Capability { abstract readonly type: string; protected _session?: SandboxSessionLike; protected _runAs?: string; protected _modelInstance?: Model; protected _tracingParent?: Span<any> | Trace; protected _workspaceScope?: SandboxWorkspaceScope; clone(): this; bind(session: SandboxSessionLike): this; bindRunAs(runAs?: string | SandboxUser): this; bindModel(_model: string, modelInstance?: Model): this; bindTracingParent(parent?: Span<any> | Trace): this; bindWorkspaceScope(scope: SandboxWorkspaceScope): this; protected modelResourcePath(manifest: Manifest, path: string): string; protected tracingParent(details?: ToolCallDetails): Span<any> | Trace | undefined; requiredCapabilityTypes(): Set<string>; tools(): Tool<any>[]; processManifest(manifest: Manifest): Manifest; instructions(_manifest: Manifest): CapabilityInstructionsResult; samplingParams(_samplingParams: Record<string, unknown>): Record<string, unknown>; processContext(context: AgentInputItem[]): AgentInputItem[]; } export type ConfigureCapabilityTools = (tools: Tool<any>[]) => Tool<any>[]; export declare function requireBoundSession(capabilityType: string, session?: SandboxSessionLike): SandboxSessionLike;