/** * @aexol/spectral — Public API for extension authors. * * Import types and utilities from this package when writing .spectral extensions. * * ## Quick Start * * ```ts * import type { ExtensionAPI, ToolDefinition } from "@aexol/spectral"; * * export default function activate(ext: ExtensionAPI): void { * ext.registerTool({ * name: "my_tool", * label: "My Tool", * description: "Does something useful.", * parameters: { type: "object", properties: {}, additionalProperties: false }, * async execute(_id, params) { * return { content: [{ type: "text", text: "Done!" }], details: {} }; * }, * }); * } * ``` * * ## Event Handling * * ```ts * import type { ExtensionAPI, BeforeAgentStartEvent } from "@aexol/spectral"; * * export default function activate(ext: ExtensionAPI): void { * ext.on("before_agent_start", (event, ctx) => { * // inspect or modify the system prompt * return { systemPrompt: event.systemPrompt + "\nExtra instructions..." }; * }); * } * ``` */ export type { ExtensionAPI, ToolDefinition } from "./sdk/coding-agent/index.js"; export type { AfterProviderResponseEvent, AgentEndEvent, AgentStartEvent, BashToolCallEvent, BashToolResultEvent, BeforeAgentStartEvent, BeforeProviderRequestEvent, ContextEvent, CustomToolCallEvent, CustomToolResultEvent, ExtensionEvent, InputEvent, MessageEndEvent, MessageStartEvent, MessageUpdateEvent, ModelSelectEvent, ReadToolCallEvent, ReadToolResultEvent, ResourcesDiscoverEvent, SessionBeforeCompactEvent, SessionBeforeForkEvent, SessionBeforeSwitchEvent, SessionBeforeTreeEvent, SessionCompactEvent, SessionEvent, SessionShutdownEvent, SessionStartEvent, SessionTreeEvent, ToolCallEvent, ToolExecutionEndEvent, ToolExecutionStartEvent, ToolExecutionUpdateEvent, ToolResultEvent, TurnEndEvent, TurnStartEvent, UserBashEvent, } from "./sdk/coding-agent/index.js"; export type { BeforeAgentStartEventResult, BeforeProviderRequestEventResult, ContextEventResult, InputEventResult, ResourcesDiscoverResult, SessionBeforeCompactResult, SessionBeforeForkResult, SessionBeforeSwitchResult, SessionBeforeTreeResult, ToolCallEventResult, UserBashEventResult, } from "./sdk/coding-agent/index.js"; export type { ExtensionCommandContext, ExtensionContext, ReplacedSessionContext, } from "./sdk/coding-agent/index.js"; export type { ProviderConfig, ProviderModelConfig, } from "./sdk/coding-agent/index.js"; export { defineTool } from "./sdk/coding-agent/index.js"; export { isBashToolResult, isReadToolResult, isToolCallEventType, } from "./sdk/coding-agent/index.js"; export type { AgentToolResult, AgentToolUpdateCallback, BuildSystemPromptOptions, CompactOptions, ExecOptions, ExecResult, InputSource, ToolExecutionMode, } from "./sdk/coding-agent/index.js"; export type { Extension, ExtensionActions, ExtensionError, ExtensionFactory, ExtensionFlag, ExtensionHandler, ExtensionRuntime, ExtensionShortcut, ExtensionUIContext, LoadExtensionsResult, RegisteredCommand, RegisteredTool, ResolvedCommand, ToolInfo, } from "./sdk/coding-agent/index.js"; export { agentLoop, agentLoopContinue, } from "./sdk/agent-core/index.js"; export type { AgentContext, AgentEvent, AgentLoopConfig, AgentMessage, AgentTool, AgentToolCall, StreamFn, } from "./sdk/agent-core/index.js"; export type { AssistantMessage, AssistantMessageEvent, ImageContent, Message, Model, TextContent, ThinkingContent, ToolCall, ToolResultMessage, } from "./sdk/ai/index.js"; //# sourceMappingURL=index.d.ts.map