export { AnthropicToolDefinition, CharacterPluginDataEntry, CharacterPluginDataMap, GoogleToolDefinition, LogContext, LogLevel, OpenAIToolDefinition, PluginLogger, ToolCall, ToolCallRequest, ToolFormatOptions, ToolResult, UniversalTool, createConsoleLogger, createNoopLogger } from '@quilltap/plugin-types'; export { T as ToolCallFormat, a as ToolConvertTarget, b as applyDescriptionLimit, c as convertFromAnthropicFormat, d as convertFromGoogleFormat, e as convertOpenAIToAnthropicFormat, f as convertOpenAIToGoogleFormat, g as convertToAnthropicFormat, h as convertToGoogleFormat, i as convertToolTo, j as convertToolsTo, k as detectToolCallFormat, l as hasToolCalls, p as parseAnthropicToolCalls, m as parseGoogleToolCalls, n as parseOpenAIToolCalls, o as parseToolCalls } from './converters-BPYo8xdH.mjs'; export { PluginLoggerWithChild, __clearCoreLoggerFactory, __injectCoreLoggerFactory, createPluginLogger, getLogLevelFromEnv, hasCoreLogger } from './logging/index.mjs'; export { DEFAULT_REQUEST_TIMEOUT_MS, OpenAICompatibleProvider, OpenAICompatibleProviderConfig, ProfileParamNormalizer, applyProfileParameters, buildRequestAbortSignal, buildSdkClientOptions, buildSdkRequestOptions, collapseLeadingSystemMessages, resolveRequestTimeoutMs } from './providers/index.mjs'; export { CreateSystemPromptPluginOptions, createSystemPromptPlugin, validateSystemPromptPlugin } from './system-prompts/index.mjs'; export { isVMEnvironment, resolveHostGateway, rewriteLocalhostUrl } from './host-rewrite.mjs'; import 'openai'; /** * Built-in tool names for Quilltap * * These are the tool names used by Quilltap's built-in tools. * Plugins that provide dynamic tools (like MCP connectors) should use * this list for collision detection to avoid shadowing built-in functionality. * * @module @quilltap/plugin-utils/builtin-tools */ /** * Names of all built-in Quilltap tools * * This set contains the function names of tools that are built into Quilltap: * - `generate_image` - AI image generation * - `search` - Search the Scriptorium (memories, conversations, backgrounds) * - `search_web` - Web search (when enabled) * - `project_info` - Get project metadata * - `request_full_context` - Request full context reload (context compression) * - `help_search` - Search Quilltap help documentation * - `help_settings` - Read Quilltap instance settings */ declare const BUILTIN_TOOL_NAMES: Set; /** * Get the set of built-in tool names * * Use this function to get the current list of reserved tool names * when implementing collision detection in plugins that provide * dynamic tools (e.g., MCP server connectors, external tool bridges). * * @returns Set of tool names that are reserved by Quilltap's built-in tools * * @example * ```typescript * import { getBuiltinToolNames } from '@quilltap/plugin-utils'; * * // When generating tool names from external sources: * const builtinNames = getBuiltinToolNames(); * if (builtinNames.has(proposedToolName)) { * // Rename or prefix the tool to avoid collision * proposedToolName = `external_${proposedToolName}`; * } * ``` */ declare function getBuiltinToolNames(): Set; /** * Quilltap Version Management * * Provides access to the Quilltap application version for plugins. * Uses the same globalThis injection pattern as the logger factory, * allowing the host app to inject its version at startup. * * @module @quilltap/plugin-utils/version */ /** * Inject the Quilltap application version into the global namespace. * * This should be called early in plugin initialization (alongside the * logger factory injection), before any plugins are loaded. Plugins * can then retrieve the version via `getQuilltapVersion()`. * * @param version - The Quilltap application version string (e.g., '3.3.0') * * @example * ```typescript * import { __injectQuilltapVersion } from '@quilltap/plugin-utils'; * import packageJson from './package.json'; * * __injectQuilltapVersion(packageJson.version); * ``` */ declare function __injectQuilltapVersion(version: string): void; /** * Clear the injected Quilltap version from the global namespace. * * Useful for testing or cleanup. */ declare function __clearQuilltapVersion(): void; /** * Get the Quilltap application version. * * Returns the version injected by the host app, or 'unknown' if * no version has been injected (e.g., running outside of Quilltap). * * @returns The Quilltap version string (e.g., '3.3.0') or 'unknown' */ declare function getQuilltapVersion(): string; /** * Get the Quilltap User-Agent string for API requests. * * Returns a string in the format `Quilltap/{version}` suitable for * use as a User-Agent header or app identifier in API calls. * * @returns User-Agent string (e.g., 'Quilltap/3.3.0') * * @example * ```typescript * import { getQuilltapUserAgent } from '@quilltap/plugin-utils'; * * const client = new OpenAI({ * apiKey, * defaultHeaders: { 'User-Agent': getQuilltapUserAgent() }, * }); * ``` */ declare function getQuilltapUserAgent(): string; /** * GENERATED FILE — DO NOT EDIT. * * Written by scripts/generate-version.mjs from the "version" field in * package.json. Bump the version there; this file follows automatically on * `npm run build` / `npm run typecheck`. */ /** * Version of the plugin-utils package. * Can be used at runtime to check compatibility. */ declare const PLUGIN_UTILS_VERSION = "2.7.1"; export { BUILTIN_TOOL_NAMES, PLUGIN_UTILS_VERSION, __clearQuilltapVersion, __injectQuilltapVersion, getBuiltinToolNames, getQuilltapUserAgent, getQuilltapVersion };