@cognipeer/agent-sdk 0.7.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -107,6 +107,71 @@ declare function withTools(model: SmartModel, tools: any[], options?: {
107
107
  }): BaseChatModel;
108
108
  declare function fromLangchainModel(lcModel: any): BaseChatModel;
109
109
 
110
+ /**
111
+ * Skill primitive — progressive capability disclosure for the smart agent.
112
+ *
113
+ * A Skill is a lazy, self-contained capability bundle. The model always sees a
114
+ * cheap one-line `header`; it calls `open_skill(key)` to load the skill's prompt
115
+ * and (for small skills) bind its tools, or `bind_skill_tools(key, names)` to
116
+ * bind a chosen subset of a fat skill. This keeps the number of bound tools per
117
+ * step small — the property small models need — and replaces an up-front
118
+ * tool-selector pass with on-demand disclosure.
119
+ */
120
+ type SkillToolHeader = {
121
+ name: string;
122
+ description?: string;
123
+ };
124
+ type SkillModelTier = "small" | "large";
125
+ type Skill = {
126
+ /** Stable key, e.g. "mcp:atlassian" | "integration:google" | "builtin:drawio". */
127
+ key: string;
128
+ title: string;
129
+ /** One-line "what + when to use" the model always sees in the catalog. */
130
+ header: string;
131
+ /** Injected (as the open_skill result) only after the skill is opened. */
132
+ prompt: string | (() => Promise<string> | string);
133
+ /** When true, opening this skill should trigger sandbox bootstrap. */
134
+ needsSandbox?: boolean;
135
+ /** Gate: a "large"-only skill is hidden from a small-tier model. */
136
+ minModelTier?: SkillModelTier;
137
+ /** Whether the skill is usable in the current workspace (integration connected, etc.). */
138
+ isAvailable?: () => boolean | Promise<boolean>;
139
+ /** Cheap list of the skill's tool headers (names + one-liners). */
140
+ listToolIndex: () => Promise<SkillToolHeader[]> | SkillToolHeader[];
141
+ /** Bind concrete tools. With no names, bind the whole (small) skill. */
142
+ bindTools: (names?: string[]) => Promise<ToolInterface[]> | ToolInterface[];
143
+ /** Optional embedding/heuristic ranking of tool headers for a fat skill. */
144
+ rankToolHeaders?: (query: string, headers: SkillToolHeader[]) => Promise<SkillToolHeader[]> | SkillToolHeader[];
145
+ /** Deterministic floor: tools to bind when a weak model gives no usable query. */
146
+ defaultBindNames?: string[];
147
+ };
148
+ type SkillPolicy = {
149
+ /** Max distinct skills open at once (small tier should be 1). */
150
+ maxOpenSkills: number;
151
+ /** Max tools bound from a single skill in one bind call. */
152
+ maxBoundToolsPerSkill: number;
153
+ /** Overall cap on skill-bound tools across the whole run. */
154
+ maxBoundToolsTotal: number;
155
+ /** Current model tier; gates `minModelTier`. */
156
+ modelTier?: SkillModelTier;
157
+ };
158
+ declare const DEFAULT_SKILL_POLICY: SkillPolicy;
159
+ declare const SMALL_TIER_SKILL_POLICY: SkillPolicy;
160
+ /**
161
+ * Mutable per-invoke registry. The skill tools mutate this ref (append-only) and
162
+ * call `__onToolsChanged` so the runtime can rebuild its tool sets. Mirrors the
163
+ * stateRef pattern used by createAskUserQuestionTool.
164
+ */
165
+ type SkillRegistryRef = {
166
+ /** Append-only: skills the model has opened this run. */
167
+ openedSkillKeys: string[];
168
+ /** Append-only, deduped by tool name: tools bound from opened skills. */
169
+ boundSkillTools: ToolInterface[];
170
+ /** Rebuild hook wired by createSmartAgent; rebuilds both recovery variants. */
171
+ __onToolsChanged?: () => void;
172
+ };
173
+ declare function createSkillRegistryRef(): SkillRegistryRef;
174
+
110
175
  type ImageURL = {
111
176
  url: string;
112
177
  detail?: 'auto' | 'low' | 'high';
@@ -306,8 +371,16 @@ type AgentOptions = {
306
371
  */
307
372
  humanInTheLoop?: HumanInTheLoopOptions;
308
373
  };
309
- type ReasoningLevel = "low" | "medium" | "high";
310
- type ReflectionCadence = "off" | "every_turn" | "after_tool" | "on_branch";
374
+ type ReasoningLevel = "minimal" | "low" | "medium" | "high";
375
+ type ReflectionCadence = "off" | "every_turn" | "after_tool" | "on_branch" | "initial_then_after_tool";
376
+ /** Context passed to reflection lifecycle hooks. */
377
+ type ReflectionHookContext = {
378
+ state: SmartState;
379
+ /** The turn number (state.toolCallCount) at the time of the decision. */
380
+ turn: number;
381
+ trigger: ReflectionCadence;
382
+ ranToolsThisTurn: boolean;
383
+ };
311
384
  type ReflectionConfig = {
312
385
  enabled?: boolean;
313
386
  cadence?: ReflectionCadence;
@@ -337,6 +410,29 @@ type ReflectionConfig = {
337
410
  * turn, etc. Independent of `cadence`.
338
411
  */
339
412
  everyNTurns?: number;
413
+ /**
414
+ * Where to route the reflection text in addition to the reflection record:
415
+ * - "memory" — store as a low-confidence agent-scoped `MemoryFact`.
416
+ * - "plan" — append the note to the active plan's `lastReflection` field.
417
+ * - "none" — record only (default).
418
+ */
419
+ feedTo?: "memory" | "plan" | "none";
420
+ /**
421
+ * Custom predicate that overrides the built-in cadence decision. Return true
422
+ * to force a reflection on this turn, false to skip. `maxPerRun`/`everyNTurns`
423
+ * throttles still apply on top of this.
424
+ */
425
+ shouldReflect?: (ctx: ReflectionHookContext) => boolean;
426
+ /**
427
+ * Build the reflection prompt body. Receives the resolved default prompt and
428
+ * the char budget; return the prompt text to send. Overrides `promptTemplate`.
429
+ */
430
+ buildPrompt?: (ctx: ReflectionHookContext & {
431
+ defaultPrompt: string;
432
+ maxChars: number;
433
+ }) => string;
434
+ /** Side-effect hook invoked after a reflection record is produced. */
435
+ onReflection?: (record: ReflectionRecord, ctx: ReflectionHookContext) => void;
340
436
  };
341
437
  type NativeReasoningConfig = {
342
438
  effort?: "minimal" | "low" | "medium" | "high";
@@ -546,6 +642,15 @@ type SmartAgentOptions = {
546
642
  costEstimator?: AgentOptions["costEstimator"];
547
643
  /** See AgentOptions.humanInTheLoop. */
548
644
  humanInTheLoop?: HumanInTheLoopOptions;
645
+ /**
646
+ * Progressive capability disclosure. When provided, the agent exposes cheap
647
+ * skill headers in its system prompt and binds a skill's tools on demand via
648
+ * the built-in open_skill / bind_skill_tools tools. Keeps the bound-tool count
649
+ * per step small. An empty array is a no-op.
650
+ */
651
+ skills?: Skill[];
652
+ /** Caps/tiering for skill disclosure. Defaults to DEFAULT_SKILL_POLICY. */
653
+ skillPolicy?: SkillPolicy;
549
654
  };
550
655
  type AgentRuntimeConfig = {
551
656
  name?: string;
@@ -883,6 +988,7 @@ type SmartState = AgentState & {
883
988
  steps: PlanStepRecord[];
884
989
  lastUpdated?: string;
885
990
  adherenceScore?: number;
991
+ lastReflection?: string;
886
992
  } | null;
887
993
  planVersion?: number;
888
994
  /**
@@ -1417,6 +1523,58 @@ declare function createSmartAgent<TOutput = unknown>(opts: SmartAgentOptions & {
1417
1523
  outputSchema?: ZodSchema<TOutput>;
1418
1524
  }): SmartAgentInstance<TOutput>;
1419
1525
 
1526
+ /**
1527
+ * Pure registry helpers for the skill primitive. No I/O, no agent loop — these
1528
+ * are the deterministic core, fully unit-testable on their own.
1529
+ */
1530
+ /**
1531
+ * Rebuild BOTH runtime tool-set variants with fresh array references.
1532
+ *
1533
+ * This is the heart of mid-run skill binding. `syncRuntimeTools` swaps between
1534
+ * two PRE-COMPUTED arrays and short-circuits on `currentRuntime.tools ===
1535
+ * nextTools`. So to make newly-bound skill tools take effect we must hand back
1536
+ * NEW array references (breaking the `===` short-circuit) AND include the skill
1537
+ * tools in the recovery variant too (otherwise a recovery-swap iteration would
1538
+ * silently drop them).
1539
+ */
1540
+ declare function composeToolSets(input: {
1541
+ base: ToolInterface[];
1542
+ boundSkillTools: ToolInterface[];
1543
+ recoveryTool?: ToolInterface;
1544
+ }): {
1545
+ toolsWithoutRecovery: ToolInterface[];
1546
+ toolsWithRecovery: ToolInterface[];
1547
+ };
1548
+ /**
1549
+ * Append tools to the registry, append-only and deduped by name, honoring the
1550
+ * overall total cap. Returns the tools actually added (may be fewer than asked).
1551
+ */
1552
+ declare function appendBoundTools(ref: SkillRegistryRef, newTools: ToolInterface[], policy: Pick<SkillPolicy, "maxBoundToolsTotal">): ToolInterface[];
1553
+ /** Precedence guard: may the model open another (not-yet-open) skill? */
1554
+ declare function canOpenSkill(ref: SkillRegistryRef, policy: SkillPolicy): {
1555
+ ok: true;
1556
+ } | {
1557
+ ok: false;
1558
+ reason: string;
1559
+ };
1560
+ /** Filter the catalog to skills usable now: available + tier-gated. */
1561
+ declare function resolveAvailableSkills(skills: Skill[], opts?: {
1562
+ modelTier?: SkillPolicy["modelTier"];
1563
+ }): Promise<Skill[]>;
1564
+ /** The cheap header block the model always sees in its system prompt. */
1565
+ declare function buildSkillHeaderBlock(skills: Skill[]): string;
1566
+ declare function dedupeToolsByName(tools: ToolInterface[]): ToolInterface[];
1567
+
1568
+ type SkillToolDeps = {
1569
+ registryRef: SkillRegistryRef;
1570
+ skills: Skill[];
1571
+ policy: SkillPolicy;
1572
+ };
1573
+ declare function createOpenSkillTool(deps: SkillToolDeps): ToolInterface;
1574
+ declare function createBindSkillToolsTool(deps: SkillToolDeps): ToolInterface;
1575
+ /** Both skill tools for an invoke, sharing one registry ref. */
1576
+ declare function createSkillTools(deps: SkillToolDeps): ToolInterface[];
1577
+
1420
1578
  type EvalHarnessParams = {
1421
1579
  profiles: EvalProfileTarget[];
1422
1580
  cases: EvalCase[];
@@ -1729,6 +1887,39 @@ declare function createAskUserQuestionTool(stateRef: AskUserStateRef, config: Hu
1729
1887
 
1730
1888
  declare function fromLangchainTools<T extends ToolInterface = ToolInterface>(tools: any[]): T[];
1731
1889
 
1890
+ type ResolvedReflectionConfig = {
1891
+ enabled: boolean;
1892
+ cadence: ReflectionCadence;
1893
+ mode: "piggyback" | "separate";
1894
+ maxTokens: number;
1895
+ maxChars: number;
1896
+ keepLast: number;
1897
+ summarize: boolean;
1898
+ promptTemplate?: string;
1899
+ emitEvents: boolean;
1900
+ maxPerRun?: number;
1901
+ everyNTurns: number;
1902
+ feedTo: "memory" | "plan" | "none";
1903
+ shouldReflect?: (ctx: ReflectionHookContext) => boolean;
1904
+ buildPrompt?: (ctx: ReflectionHookContext & {
1905
+ defaultPrompt: string;
1906
+ maxChars: number;
1907
+ }) => string;
1908
+ onReflection?: (record: ReflectionRecord, ctx: ReflectionHookContext) => void;
1909
+ };
1910
+ type ResolvedReasoning = {
1911
+ enabled: boolean;
1912
+ level: ReasoningLevel;
1913
+ native?: NativeReasoningConfig;
1914
+ reflection: ResolvedReflectionConfig;
1915
+ };
1916
+ /**
1917
+ * Validates a user-supplied ReasoningConfig and throws a descriptive error for
1918
+ * obviously-wrong values. Pure; safe to call before resolveReasoning.
1919
+ */
1920
+ declare function validateReasoningConfig(input: ReasoningConfig | undefined): void;
1921
+ declare function resolveReasoning(input: ReasoningConfig | undefined): ResolvedReasoning | undefined;
1922
+
1732
1923
  declare function fileSink(path?: string): TraceSinkConfig;
1733
1924
  type CustomSinkArg = ((event: TraceEventRecord) => void | Promise<void>) | {
1734
1925
  onEvent?: (event: TraceEventRecord) => void | Promise<void>;
@@ -1781,12 +1972,35 @@ type ToolCall = {
1781
1972
  name: string;
1782
1973
  arguments: string;
1783
1974
  };
1975
+ /**
1976
+ * A provider-native reasoning/thinking block. Captured from the model response
1977
+ * and replayed verbatim on subsequent turns (required by Anthropic extended
1978
+ * thinking when tools are involved — the `signature` must round-trip intact).
1979
+ */
1980
+ type ReasoningBlock = {
1981
+ type: "thinking" | "redacted_thinking";
1982
+ /** Plain-text thinking content (absent for redacted blocks). */
1983
+ text?: string;
1984
+ /** Cryptographic signature Anthropic requires to be echoed back verbatim. */
1985
+ signature?: string;
1986
+ /** Opaque payload for redacted_thinking blocks. */
1987
+ data?: string;
1988
+ };
1989
+ /** Captured reasoning payload attached to assistant turns / responses. */
1990
+ type ReasoningPayload = {
1991
+ /** Verbatim provider blocks to replay on the next turn. */
1992
+ blocks?: ReasoningBlock[];
1993
+ /** Human-readable reasoning summary, when the provider exposes one. */
1994
+ summary?: string;
1995
+ };
1784
1996
  type UnifiedMessage = {
1785
1997
  role: MessageRole;
1786
1998
  content: string | ContentPart[];
1787
1999
  name?: string;
1788
2000
  toolCalls?: ToolCall[];
1789
2001
  toolCallId?: string;
2002
+ /** Native reasoning blocks to replay verbatim (Anthropic/Bedrock thinking). */
2003
+ reasoning?: ReasoningPayload;
1790
2004
  };
1791
2005
  type ToolDefinition = {
1792
2006
  name: string;
@@ -1853,6 +2067,8 @@ type ChatCompletionResponse = {
1853
2067
  toolCalls: ToolCall[];
1854
2068
  usage: TokenUsage;
1855
2069
  finishReason: FinishReason;
2070
+ /** Native reasoning blocks + summary captured from the response, if any. */
2071
+ reasoning?: ReasoningPayload;
1856
2072
  raw: any;
1857
2073
  };
1858
2074
  type ChatCompletionChunk = {
@@ -1861,6 +2077,8 @@ type ChatCompletionChunk = {
1861
2077
  delta: {
1862
2078
  content?: string;
1863
2079
  toolCalls?: Partial<ToolCall>[];
2080
+ /** Incremental reasoning text / signature deltas (Anthropic thinking). */
2081
+ reasoning?: ReasoningPayload;
1864
2082
  };
1865
2083
  usage?: TokenUsage;
1866
2084
  finishReason?: FinishReason;
@@ -1988,9 +2206,19 @@ declare class OpenAIProvider extends BaseProvider {
1988
2206
  protected readonly defaultModel: string;
1989
2207
  protected readonly defaultHeaders: Record<string, string>;
1990
2208
  constructor(config: OpenAIProviderConfig);
2209
+ /** True when the request targets a reasoning model (o-series / gpt-5) so we
2210
+ * should route through the Responses API, which exposes `reasoning.effort`
2211
+ * and reasoning summaries. Chat Completions silently drops these. */
2212
+ protected useResponsesApi(request: ChatCompletionRequest): boolean;
1991
2213
  complete(request: ChatCompletionRequest): Promise<ChatCompletionResponse>;
1992
2214
  completeStream(request: ChatCompletionRequest): AsyncGenerator<ChatCompletionChunk, void, unknown>;
1993
2215
  protected buildRequestBody(request: ChatCompletionRequest, stream: boolean): Record<string, any>;
2216
+ protected completeResponses(request: ChatCompletionRequest): Promise<ChatCompletionResponse>;
2217
+ protected buildResponsesBody(request: ChatCompletionRequest): Record<string, any>;
2218
+ /** Maps a unified message to a Responses API `input` item. */
2219
+ protected toResponsesInput(m: UnifiedMessage): Record<string, any>;
2220
+ protected responsesFetch(body: Record<string, any>): Promise<Response>;
2221
+ protected parseResponsesResponse(json: any, modelId: string): ChatCompletionResponse;
1994
2222
  protected toOpenAIMessage(m: UnifiedMessage): Record<string, any>;
1995
2223
  protected toOpenAITool(t: ToolDefinition): Record<string, any>;
1996
2224
  protected doFetch(body: Record<string, any>): Promise<Response>;
@@ -2025,6 +2253,10 @@ declare class AzureProvider extends OpenAIProvider {
2025
2253
  private readonly azureApiKey;
2026
2254
  constructor(config: AzureProviderConfig);
2027
2255
  protected doFetch(body: Record<string, any>): Promise<Response>;
2256
+ /** Azure exposes the Responses API at /openai/responses with api-key auth.
2257
+ * Reasoning summaries require a preview api-version; callers can override via
2258
+ * the `apiVersion` config. */
2259
+ protected responsesFetch(body: Record<string, any>): Promise<Response>;
2028
2260
  }
2029
2261
 
2030
2262
  declare class OpenAICompatibleProvider extends OpenAIProvider {
@@ -2122,4 +2354,4 @@ declare function fromNativeProvider(provider: BaseProvider, options?: NativeMode
2122
2354
  */
2123
2355
  declare function createProvider(config: ProviderConfig): BaseProvider;
2124
2356
 
2125
- export { type AIMessage, type AgentInstance, type AgentInvokeResult, type AgentLimits, type AgentOptions, type AgentRuleOptions, type AgentRuntimeConfig, type AgentSnapshot, type AgentSnapshotMetadata, type AgentState, AnthropicProvider, type AnthropicProviderConfig, AzureProvider, type AzureProviderConfig, type BaseChatMessage, type BaseChatMessagePart, type BaseChatModel, type BaseMessage, BaseProvider, BedrockProvider, type BedrockProviderConfig, type BuiltInRuntimeProfile, type CancellationTokenLike, type CancelledEvent, type ChatCompletionChunk, type ChatCompletionRequest, type ChatCompletionResponse, type ChildContextPolicy, type CodeDetectionRuleOptions, type CodeGuardrailOptions, type ContextPolicy, type ContextToolsStateRef, type ConversationGuardrail, type CustomRuleCallback, type CustomRuleOptions, DEFAULT_PROFILE_CONFIGS, type DelegationMode, type EvalCase, type EvalCaseResult, type EvalFamily, type EvalHarnessMetrics, type EvalHarnessParams, type EvalHarnessResult, type EvalProfileDescriptor, type EvalProfileTarget, type FinalAnswerEvent, type FinishReason, type GuardrailContext, type GuardrailDisposition, type GuardrailEvent, type GuardrailIncident, type GuardrailOutcome, GuardrailPhase, type GuardrailRule, type HandoffDescriptor, type HandoffEvent, type HumanInTheLoopAskUserConfig, type HumanInTheLoopOptions, type HumanInTheLoopRuntimeConfig, InMemoryMemoryStore, type InvokeConfig, type JsonGuardrailOptions, type JsonSchemaRuleOptions, type MemoryFact, type MemoryProviderKind, type MemoryReadPolicy, type MemoryScope, type MemoryStore, type MemoryWritePolicy, type Message, type MetadataEvent, type ModelCapabilities, NativeJsonSchemaStrategy, type NativeModelOptions, type NativeReasoningConfig, OpenAICompatibleProvider, type OpenAICompatibleProviderConfig, OpenAIProvider, type OpenAIProviderConfig, type PendingToolApproval, type PendingUserQuestion, type PlanEvent, type PlanStepRecord, type PlanningMode, type ProfileConfig, type ProgressEvent, type ProgressUpdate, type ProviderConfig, ProviderError, type ToolCall as ProviderToolCall, type ToolDefinition as ProviderToolDefinition, type ProviderType, type ReasoningConfig, type ReasoningLevel, type ReflectionCadence, type ReflectionConfig, type ReflectionEvent, type ReflectionRecord, type RegexGuardrailOptions, type RegexRuleOptions, type ReplanPolicy, type ResolvedSmartAgentConfig, type ResolvedTraceConfig, type ResolvedTraceSink, type RestoreSnapshotOptions, type RuntimeProfile, type SerializableSmartState, type SmartAgentBudgetConfig, type SmartAgentContextConfig, type SmartAgentCustomProfileConfig, type SmartAgentDelegationConfig, type SmartAgentEvent, type SmartAgentInstance, type SmartAgentLimits, type SmartAgentMemoryConfig, type SmartAgentOptions, type SmartAgentPlanningConfig, type SmartAgentSummarizationConfig, type SmartAgentToolResponseConfig, type SmartAgentTracingConfig, type SmartModel, type SmartState, type SmartToolFn, type SnapshotOptions, type SnapshotRuntimeHint, type StreamChunk, type StreamEvent, type StructuredOutputError, type StructuredOutputFieldError, StructuredOutputManager, type StructuredOutputManagerConfig, type StructuredOutputResult, type StructuredOutputStrategy, type StructuredSummary, type SummarizationEvent, type SummarizationMode, type SummaryFactItem, type SummaryIntegrityCheck, type TokenCounter, type TokenUsage, type ToolApprovalEvent, type ToolApprovalResolution, type ToolApprovalStatus, ToolBasedStrategy, type ToolCachePolicy, type ToolCallEvent, type ToolInterface, type ToolResponseClassification, type ToolResponseRetentionPolicy, type ToolRetryPolicy, type TraceDataSection, type TraceErrorRecord, type TraceEventRecord, type TraceMessageSection, type TraceMetadataSection, type TraceSessionConfigSnapshot, type TraceSessionFile, type TraceSessionStatus, type TraceSessionSummary, type TraceSinkCognipeerConfig, type TraceSinkConfig, type TraceSinkCustomConfig, type TraceSinkFileConfig, type TraceSinkHttpConfig, type TraceSinkOtlpConfig, type TraceSinkSnapshot, type TraceSummarySection, type TraceToolCallSection, type TraceToolDetails, type TraceToolResponseSection, type TraceToolResultSection, type TracingConfig, type TracingMode, type UnifiedMessage, type UserQuestionAnswer, type UserQuestionAnswerSet, type UserQuestionEvent, type UserQuestionItem, type UserQuestionOption, type UserQuestionResolution, type UserQuestionStatus, VertexProvider, type VertexProviderConfig, agentVerdictRule, buildSystemPrompt, captureSnapshot, codePresenceRule, cognipeerSink, countApproxTokens, countMessagesTokens, createAgent, createAgentNode, createAskUserQuestionTool, createCodeGuardrail, createContextSummarizeNode, createContextTools, createGetToolResponseTool, createGuardrail, createJsonGuardrail, createManageTodoTool, createProvider, createRegexGuardrail, createResolverNode, createSmartAgent, createTool, createToolLimitFinalizeNode, createToolsNode, customCallbackRule, customSink, defaultTokenCounter, emptyUsage, evaluateGuardrails, fileSink, formatZodError, fromLangchainModel, fromLangchainTools, fromNativeProvider, generateSpanId, generateTraceId, getModelCapabilities, getNestedValue, getResolvedSmartConfig, getTokenCounter, hasToolResponseRecoveryReference, httpSink, isSmartModel, jsonSchemaRule, normalizeSmartAgentOptions, otlpSink, readMemoryFacts, regexRule, resolveMemoryStore, resolveStrategy, resolveToolApprovalState, resolveUserQuestionState, restoreSnapshot, runSmartAgentEvalHarness, setTokenCounter, startStreamingSession, traceSessionToOtlp, withTools, writeSummaryFactsToMemory };
2357
+ export { type AIMessage, type AgentInstance, type AgentInvokeResult, type AgentLimits, type AgentOptions, type AgentRuleOptions, type AgentRuntimeConfig, type AgentSnapshot, type AgentSnapshotMetadata, type AgentState, AnthropicProvider, type AnthropicProviderConfig, AzureProvider, type AzureProviderConfig, type BaseChatMessage, type BaseChatMessagePart, type BaseChatModel, type BaseMessage, BaseProvider, BedrockProvider, type BedrockProviderConfig, type BuiltInRuntimeProfile, type CancellationTokenLike, type CancelledEvent, type ChatCompletionChunk, type ChatCompletionRequest, type ChatCompletionResponse, type ChildContextPolicy, type CodeDetectionRuleOptions, type CodeGuardrailOptions, type ContextPolicy, type ContextToolsStateRef, type ConversationGuardrail, type CustomRuleCallback, type CustomRuleOptions, DEFAULT_PROFILE_CONFIGS, DEFAULT_SKILL_POLICY, type DelegationMode, type EvalCase, type EvalCaseResult, type EvalFamily, type EvalHarnessMetrics, type EvalHarnessParams, type EvalHarnessResult, type EvalProfileDescriptor, type EvalProfileTarget, type FinalAnswerEvent, type FinishReason, type GuardrailContext, type GuardrailDisposition, type GuardrailEvent, type GuardrailIncident, type GuardrailOutcome, GuardrailPhase, type GuardrailRule, type HandoffDescriptor, type HandoffEvent, type HumanInTheLoopAskUserConfig, type HumanInTheLoopOptions, type HumanInTheLoopRuntimeConfig, InMemoryMemoryStore, type InvokeConfig, type JsonGuardrailOptions, type JsonSchemaRuleOptions, type MemoryFact, type MemoryProviderKind, type MemoryReadPolicy, type MemoryScope, type MemoryStore, type MemoryWritePolicy, type Message, type MetadataEvent, type ModelCapabilities, NativeJsonSchemaStrategy, type NativeModelOptions, type NativeReasoningConfig, OpenAICompatibleProvider, type OpenAICompatibleProviderConfig, OpenAIProvider, type OpenAIProviderConfig, type PendingToolApproval, type PendingUserQuestion, type PlanEvent, type PlanStepRecord, type PlanningMode, type ProfileConfig, type ProgressEvent, type ProgressUpdate, type ProviderConfig, ProviderError, type ToolCall as ProviderToolCall, type ToolDefinition as ProviderToolDefinition, type ProviderType, type ReasoningConfig, type ReasoningLevel, type ReflectionCadence, type ReflectionConfig, type ReflectionEvent, type ReflectionHookContext, type ReflectionRecord, type RegexGuardrailOptions, type RegexRuleOptions, type ReplanPolicy, type ResolvedSmartAgentConfig, type ResolvedTraceConfig, type ResolvedTraceSink, type RestoreSnapshotOptions, type RuntimeProfile, SMALL_TIER_SKILL_POLICY, type SerializableSmartState, type Skill, type SkillModelTier, type SkillPolicy, type SkillRegistryRef, type SkillToolDeps, type SkillToolHeader, type SmartAgentBudgetConfig, type SmartAgentContextConfig, type SmartAgentCustomProfileConfig, type SmartAgentDelegationConfig, type SmartAgentEvent, type SmartAgentInstance, type SmartAgentLimits, type SmartAgentMemoryConfig, type SmartAgentOptions, type SmartAgentPlanningConfig, type SmartAgentSummarizationConfig, type SmartAgentToolResponseConfig, type SmartAgentTracingConfig, type SmartModel, type SmartState, type SmartToolFn, type SnapshotOptions, type SnapshotRuntimeHint, type StreamChunk, type StreamEvent, type StructuredOutputError, type StructuredOutputFieldError, StructuredOutputManager, type StructuredOutputManagerConfig, type StructuredOutputResult, type StructuredOutputStrategy, type StructuredSummary, type SummarizationEvent, type SummarizationMode, type SummaryFactItem, type SummaryIntegrityCheck, type TokenCounter, type TokenUsage, type ToolApprovalEvent, type ToolApprovalResolution, type ToolApprovalStatus, ToolBasedStrategy, type ToolCachePolicy, type ToolCallEvent, type ToolInterface, type ToolResponseClassification, type ToolResponseRetentionPolicy, type ToolRetryPolicy, type TraceDataSection, type TraceErrorRecord, type TraceEventRecord, type TraceMessageSection, type TraceMetadataSection, type TraceSessionConfigSnapshot, type TraceSessionFile, type TraceSessionStatus, type TraceSessionSummary, type TraceSinkCognipeerConfig, type TraceSinkConfig, type TraceSinkCustomConfig, type TraceSinkFileConfig, type TraceSinkHttpConfig, type TraceSinkOtlpConfig, type TraceSinkSnapshot, type TraceSummarySection, type TraceToolCallSection, type TraceToolDetails, type TraceToolResponseSection, type TraceToolResultSection, type TracingConfig, type TracingMode, type UnifiedMessage, type UserQuestionAnswer, type UserQuestionAnswerSet, type UserQuestionEvent, type UserQuestionItem, type UserQuestionOption, type UserQuestionResolution, type UserQuestionStatus, VertexProvider, type VertexProviderConfig, agentVerdictRule, appendBoundTools, buildSkillHeaderBlock, buildSystemPrompt, canOpenSkill, captureSnapshot, codePresenceRule, cognipeerSink, composeToolSets, countApproxTokens, countMessagesTokens, createAgent, createAgentNode, createAskUserQuestionTool, createBindSkillToolsTool, createCodeGuardrail, createContextSummarizeNode, createContextTools, createGetToolResponseTool, createGuardrail, createJsonGuardrail, createManageTodoTool, createOpenSkillTool, createProvider, createRegexGuardrail, createResolverNode, createSkillRegistryRef, createSkillTools, createSmartAgent, createTool, createToolLimitFinalizeNode, createToolsNode, customCallbackRule, customSink, dedupeToolsByName, defaultTokenCounter, emptyUsage, evaluateGuardrails, fileSink, formatZodError, fromLangchainModel, fromLangchainTools, fromNativeProvider, generateSpanId, generateTraceId, getModelCapabilities, getNestedValue, getResolvedSmartConfig, getTokenCounter, hasToolResponseRecoveryReference, httpSink, isSmartModel, jsonSchemaRule, normalizeSmartAgentOptions, otlpSink, readMemoryFacts, regexRule, resolveAvailableSkills, resolveMemoryStore, resolveReasoning, resolveStrategy, resolveToolApprovalState, resolveUserQuestionState, restoreSnapshot, runSmartAgentEvalHarness, setTokenCounter, startStreamingSession, traceSessionToOtlp, validateReasoningConfig, withTools, writeSummaryFactsToMemory };