@quilltap/plugin-types 2.2.1 → 2.3.0

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/CHANGELOG.md CHANGED
@@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.3.0] - 2026-04-15
9
+
10
+ ### Added
11
+
12
+ - `modelSupportsPrefill` optional method on `TextProviderPlugin` — allows providers to declare per-model support for assistant message prefill (Claude 4.6 dropped prefill support)
13
+
8
14
  ## [2.2.0] - 2026-04-09
9
15
 
10
16
  ### Removed
@@ -445,6 +445,20 @@ interface TextProviderPlugin {
445
445
  * @returns Cleaned text with markers removed
446
446
  */
447
447
  stripTextToolMarkers?: (text: string) => string;
448
+ /**
449
+ * Check whether a specific model supports assistant message prefill (optional)
450
+ *
451
+ * Assistant prefill is the technique of ending the messages array with an
452
+ * assistant role message to steer the model's response format. Some newer
453
+ * models (e.g., Claude 4.6) no longer support this.
454
+ *
455
+ * When this returns false, Quilltap falls back to system prompt instructions
456
+ * for multi-character identity anchoring instead of appending a prefill message.
457
+ *
458
+ * @param model The model ID (e.g., 'claude-sonnet-4-6')
459
+ * @returns true if the model supports prefill, false if not. Defaults to true if not implemented.
460
+ */
461
+ modelSupportsPrefill?: (model: string) => boolean;
448
462
  /**
449
463
  * Get image provider constraints (optional)
450
464
  * Only applicable for providers with imageGeneration capability
@@ -445,6 +445,20 @@ interface TextProviderPlugin {
445
445
  * @returns Cleaned text with markers removed
446
446
  */
447
447
  stripTextToolMarkers?: (text: string) => string;
448
+ /**
449
+ * Check whether a specific model supports assistant message prefill (optional)
450
+ *
451
+ * Assistant prefill is the technique of ending the messages array with an
452
+ * assistant role message to steer the model's response format. Some newer
453
+ * models (e.g., Claude 4.6) no longer support this.
454
+ *
455
+ * When this returns false, Quilltap falls back to system prompt instructions
456
+ * for multi-character identity anchoring instead of appending a prefill message.
457
+ *
458
+ * @param model The model ID (e.g., 'claude-sonnet-4-6')
459
+ * @returns true if the model supports prefill, false if not. Defaults to true if not implemented.
460
+ */
461
+ modelSupportsPrefill?: (model: string) => boolean;
448
462
  /**
449
463
  * Get image provider constraints (optional)
450
464
  * Only applicable for providers with imageGeneration capability
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { UniversalTool } from './llm/index.mjs';
2
2
  export { AnthropicToolDefinition, AttachmentResults, CacheUsage, EmbeddingOptions, EmbeddingProvider, EmbeddingResult, FileAttachment, GeneratedImage, GoogleToolDefinition, ImageGenParams, ImageGenProvider, ImageGenResponse, ImageGenProvider as ImageProvider, JSONSchemaDefinition, LLMMessage, LLMParams, LLMProvider, LLMResponse, LocalEmbeddingProvider, LocalEmbeddingProviderState, ModelMetadata, ModelWarning, ModelWarningLevel, OpenAIToolDefinition, ResponseFormat, StreamChunk, LLMProvider as TextProvider, TokenUsage, ToolCall, ToolCallRequest, ToolFormatOptions, ToolResult, isLocalEmbeddingProvider } from './llm/index.mjs';
3
3
  export { CategoryScore, ScoringInput, ScoringProvider, ScoringResult, ScoringTask } from './providers/index.mjs';
4
- export { A as AttachmentSupport, C as CheapModelConfig, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, f as ImageStyleInfo, g as InstalledPluginInfo, L as LLMProviderPlugin, M as MessageFormatSupport, h as ModelInfo, i as ModerationCategoryResult, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, r as PluginIconData, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, U as SubsystemOverrides, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, _ as ToolFormatType, $ as Typography } from './index-BiFtkKWr.mjs';
4
+ export { A as AttachmentSupport, C as CheapModelConfig, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, f as ImageStyleInfo, g as InstalledPluginInfo, L as LLMProviderPlugin, M as MessageFormatSupport, h as ModelInfo, i as ModerationCategoryResult, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, r as PluginIconData, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, U as SubsystemOverrides, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, _ as ToolFormatType, $ as Typography } from './index-B8HOnH-e.mjs';
5
5
  export { ApiKeyError, AttachmentError, ConfigurationError, LogContext, LogLevel, ModelNotFoundError, PluginError, PluginLogger, ProviderApiError, RateLimitError, ToolExecutionError, createConsoleLogger, createNoopLogger } from './common/index.mjs';
6
6
 
7
7
  /**
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { UniversalTool } from './llm/index.js';
2
2
  export { AnthropicToolDefinition, AttachmentResults, CacheUsage, EmbeddingOptions, EmbeddingProvider, EmbeddingResult, FileAttachment, GeneratedImage, GoogleToolDefinition, ImageGenParams, ImageGenProvider, ImageGenResponse, ImageGenProvider as ImageProvider, JSONSchemaDefinition, LLMMessage, LLMParams, LLMProvider, LLMResponse, LocalEmbeddingProvider, LocalEmbeddingProviderState, ModelMetadata, ModelWarning, ModelWarningLevel, OpenAIToolDefinition, ResponseFormat, StreamChunk, LLMProvider as TextProvider, TokenUsage, ToolCall, ToolCallRequest, ToolFormatOptions, ToolResult, isLocalEmbeddingProvider } from './llm/index.js';
3
3
  export { CategoryScore, ScoringInput, ScoringProvider, ScoringResult, ScoringTask } from './providers/index.js';
4
- export { A as AttachmentSupport, C as CheapModelConfig, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, f as ImageStyleInfo, g as InstalledPluginInfo, L as LLMProviderPlugin, M as MessageFormatSupport, h as ModelInfo, i as ModerationCategoryResult, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, r as PluginIconData, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, U as SubsystemOverrides, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, _ as ToolFormatType, $ as Typography } from './index-DNgmDKd5.js';
4
+ export { A as AttachmentSupport, C as CheapModelConfig, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, f as ImageStyleInfo, g as InstalledPluginInfo, L as LLMProviderPlugin, M as MessageFormatSupport, h as ModelInfo, i as ModerationCategoryResult, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, r as PluginIconData, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, U as SubsystemOverrides, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, _ as ToolFormatType, $ as Typography } from './index-DTMLwcR8.js';
5
5
  export { ApiKeyError, AttachmentError, ConfigurationError, LogContext, LogLevel, ModelNotFoundError, PluginError, PluginLogger, ProviderApiError, RateLimitError, ToolExecutionError, createConsoleLogger, createNoopLogger } from './common/index.js';
6
6
 
7
7
  /**
@@ -1,3 +1,3 @@
1
- export { A as AttachmentSupport, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, g as InstalledPluginInfo, L as LLMProviderPlugin, h as ModelInfo, i as ModerationCategoryResult, a0 as ModerationProviderConfig, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, $ as Typography } from '../index-BiFtkKWr.mjs';
1
+ export { A as AttachmentSupport, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, g as InstalledPluginInfo, L as LLMProviderPlugin, h as ModelInfo, i as ModerationCategoryResult, a0 as ModerationProviderConfig, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, $ as Typography } from '../index-B8HOnH-e.mjs';
2
2
  import '../llm/index.mjs';
3
3
  import '../providers/index.mjs';
@@ -1,3 +1,3 @@
1
- export { A as AttachmentSupport, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, g as InstalledPluginInfo, L as LLMProviderPlugin, h as ModelInfo, i as ModerationCategoryResult, a0 as ModerationProviderConfig, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, $ as Typography } from '../index-DNgmDKd5.js';
1
+ export { A as AttachmentSupport, a as ColorPalette, E as Effects, b as EmbeddedFont, c as EmbeddingModelInfo, F as FontDefinition, I as IconProps, d as ImageGenerationModelInfo, e as ImageProviderConstraints, g as InstalledPluginInfo, L as LLMProviderPlugin, h as ModelInfo, i as ModerationCategoryResult, a0 as ModerationProviderConfig, j as ModerationProviderConfigRequirements, k as ModerationProviderMetadata, l as ModerationProviderPlugin, m as ModerationProviderPluginExport, n as ModerationResult, P as PluginAuthor, o as PluginCapability, p as PluginCategory, q as PluginCompatibility, s as PluginManifest, t as PluginPermissions, u as PluginStatus, v as ProviderCapabilities, w as ProviderConfig, x as ProviderConfigRequirements, y as ProviderMetadata, z as ProviderPluginExport, S as ScoringProviderConfigRequirements, B as ScoringProviderMetadata, D as ScoringProviderPlugin, G as ScoringProviderPluginExport, H as SearchOutput, J as SearchProviderConfig, K as SearchProviderConfigRequirements, N as SearchProviderMetadata, O as SearchProviderPlugin, Q as SearchProviderPluginExport, R as SearchResult, T as Spacing, V as TextProviderPlugin, W as ThemeMetadata, X as ThemePlugin, Y as ThemePluginExport, Z as ThemeTokens, $ as Typography } from '../index-DTMLwcR8.js';
2
2
  import '../llm/index.js';
3
3
  import '../providers/index.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quilltap/plugin-types",
3
- "version": "2.2.1",
3
+ "version": "2.3.0",
4
4
  "description": "Type definitions for Quilltap plugin development",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",