Releases: glowingjade/obsidian-smart-composer
Releases · glowingjade/obsidian-smart-composer
1.2.9
feat: support output dimensions for embedding models (#490) (#522) Add optional outputDimension field for embedding models to request specific dimensions from providers that support Matryoshka Representation Learning (MRL). Supported providers: - OpenAI text-embedding-3-* (via 'dimensions' parameter) - Google gemini-embedding-001 (via 'config.outputDimensionality') Changes: - Add outputDimension field to EmbeddingModel type - Update all provider getEmbedding methods to accept dimensions option - Add Output Dimensions input field in Add Embedding Model modal - Validate that returned dimension matches requested outputDimension
1.2.8
Add Gemini Plan (OAuth) support (#513) * feat: Add Gemini plan provider with OAuth support - Introduced Gemini plan as a new provider type with OAuth integration. - Implemented authentication flow including token exchange and callback server. - Updated settings schema to include Gemini provider and associated OAuth fields. - Enhanced chat model settings to support Gemini-specific configurations. - Added migration logic to transition existing settings to support the new provider. - Comprehensive tests added for migration and Gemini functionality. * chore: Update Gemini plan modal and connection descriptions * docs: Update README and settings to warn about risks of third-party OAuth access for Claude subscriptions - Added a warning in the README about the risks associated with connecting a Claude subscription, including potential account bans. - Introduced a warning message in the PlanConnectionsSection to inform users about the restrictions on third-party OAuth access and advised caution in usage. - Enhanced styles for warning messages to improve visibility and user awareness. * fix: Fix lint * fix: Resolve coderabbitai review
1.2.7
Add plan-based Claude/OpenAI connections with OAuth (#509) * feat: Add OpenAI Codex provider and OAuth integration - Introduced OpenAI Codex as a new provider type with OAuth support. - Implemented authentication flow including token exchange and callback server. - Updated settings schema to include Codex provider and associated OAuth fields. - Enhanced chat and provider management to accommodate Codex integration. - Added migration logic to transition existing settings to support the new provider. - Comprehensive tests added for migration and Codex functionality. * feat: Enhance HTTP transport for Codex integration - Added comments explaining the use of Node's http/https modules for Codex endpoints due to CORS restrictions. - Updated the nodePost function to throw an error when called on mobile platforms, ensuring proper platform handling. - Refactored the import of IncomingMessage type for better clarity and consistency. * feat: Add Anthropic Claude Code provider with OAuth support - Introduced the Anthropic Claude Code provider, including OAuth integration for authentication. - Implemented the necessary authentication flow, including token exchange and authorization URL generation. - Updated settings schema to include the new provider type and associated OAuth fields. - Enhanced provider management and chat model handling to accommodate Claude Code integration. - Added migration logic to transition existing settings to support the new provider. - Comprehensive tests added for migration and Claude Code functionality. * chore: Update OpenAI package and refactor message adapters - Upgraded OpenAI package from version 4.91.1 to 6.8.1 in package.json and package-lock.json. - Refactored DeepSeekMessageAdapter and PerplexityMessageAdapter to normalize tool calls using the new method. - Enhanced OpenAIMessageAdapter with a new normalizeToolCalls method to streamline tool call handling. - Updated NoStainlessOpenAI to improve header management in requests. * feat: Add OpenAI Codex model settings and reasoning support - Introduced settings for the OpenAI Codex model, allowing users to configure reasoning effort and summary. - Enhanced CodexMessageAdapter to handle reasoning summary extraction and inclusion in responses. - Updated OpenAICodexProvider to normalize requests with reasoning parameters. - Modified chat model schema to accommodate new reasoning fields. - Added utility functions for reasoning summary extraction in response payloads. * feat: Update ChatModelSettings to support new Anthropic Claude Code model * feat: Refactor provider settings and enhance migration logic for OpenAI and Anthropic models - Reintroduced OpenAI provider settings in the constants file for consistency. - Updated DEFAULT_PROVIDERS and DEFAULT_CHAT_MODELS to include new models for OpenAI Codex and Anthropic Claude Code. - Enhanced migration logic to ensure proper transition to version 15, incorporating new default providers and chat models. * feat: Refactor provider types and update settings for OpenAI and Anthropic models - Replaced 'openai-codex' and 'anthropic-claude-code' with 'openai-plan' and 'anthropic-plan' in constants and provider settings. - Updated DEFAULT_PROVIDERS and DEFAULT_CHAT_MODELS to reflect new provider types. - Adjusted migration logic to ensure compatibility with the new provider types. - Enhanced related components and schemas to support the updated provider structure. * feat: Implement subscription connection settings for OpenAI and Anthropic plans - Added new PlanConnectionsSection to manage connections for OpenAI and Claude subscriptions. - Introduced ConnectClaudePlanModal and ConnectOpenAIPlanModal for OAuth authentication flows. - Enhanced styles for plan connection cards and status indicators. - Updated SettingsTabRoot to include the new PlanConnectionsSection. - Refactored ProvidersSection to exclude subscription providers from API key management. * feat: Add PLAN_PROVIDER_TYPES constant and update provider filtering logic * refactor: Clean up provider connection logic and improve formatting * chore: Update .gitignore to exclude CLAUDE.md * style: Enhance layout and descriptions in PlanConnectionsSection * fix: Resolve coderabbit review - Refactored URL parameter extraction to support dynamic keys for better reusability. - Added state validation to ensure OAuth state consistency during the connection process. - Updated error messages for clearer user guidance in case of missing or mismatched OAuth states. - Introduced a new utility function for posting form data to streamline token requests. - Enhanced HTTP transport methods to support form URL encoding and improved error handling. * chore: Update column header in ProvidersSection from 'Credential' to 'API Key' * chore: Update README for v1.2.7 release * test: Enhance migration tests for v14 to v15
1.2.6
fix: resolve npm audit vulnerabilities (#507) * fix: resolve npm audit vulnerabilities
1.2.5
Add new models: sonnet-4.5 and haiku-4.5 (#492) * feat: Update chat models and implement migration from v11 to v12 - Updated default chat model ID to 'claude-sonnet-4.5' and added new recommended models. - Introduced migration logic to transition settings from version 11 to 12, merging existing chat models with new defaults and adding 'claude-sonnet-4.5' and 'claude-haiku-4.5'. - Removed outdated models: 'claude-sonnet-4.0', 'claude-3.7-sonnet', 'claude-3.5-sonnet', and 'claude-3.5-haiku'. - Added tests to verify migration functionality. * docs: Update README.md with maintenance notice and contribution invitation - Added a maintenance notice indicating the plugin is not under active development and may have delayed responses to issues and feature requests. - Included an invitation for community contributions and collaboration.
1.2.4
Update README.md
1.2.3
fix: remove tools field in the DeepSeek HTTP request. (#398) * fix: remove tools field in the DeepSeek HTTP request. * polish: modify by lint * feat: Enhance DeepSeekMessageAdapter to include tool_calls in message handling - Added tool_calls property to both message and delta processing in DeepSeekMessageAdapter for improved tool integration. - Updated responseGenerator to handle cases where no tools are available, setting tools to undefined to prevent errors. --------- Co-authored-by: Kevin On <40454531+kevin-on@users.noreply.github.com>
1.2.2
Update models: GPT-5, Claude 4, Gemini 2.5 (#452)
* feat: Update anthropic models and add thinking toggle in model settings
* feat: refactor OpenAI reasoning feature with improved UX and GPT-5 support
- Replace simple reasoning_effort field with structured reasoning object
- Add reasoning.enabled toggle for better user control
- Support GPT-5, GPT-5-mini, and GPT-5-nano models with pricing
* feat: Update Gemini models
- Update Gemini models: remove 1.5 versions, add 2.5-pro and 2.5-flash-lite
- Remove Groq pricing constants and cost calculation logic
* feat: Add model fallback
- Add automatic fallback to first available chat model when selected model is not found
- Create LLMModelNotFoundException for better error handling
* feat: Add migration from v10 to v11 with new model structure
- Add migration from v10 to v11 with new reasoning/thinking structure
- Transform OpenAI models with reasoning_effort to new reasoning object structure
- Transform Anthropic models with thinking.budget_tokens to new thinking structure
- Add new default models: claude-sonnet-4.0, claude-opus-4.1, gpt-5 series, gemini-2.5 series
* refactor: Centralize default model ids and update schema fallbacks/recommendations
- Add DEFAULT_CHAT_MODEL_ID ('claude-sonnet-4.0') and DEFAULT_APPLY_MODEL_ID ('gpt-4.1-mini') in src/constants.ts
- Update RECOMMENDED_MODELS_FOR_CHAT to ['claude-sonnet-4.0', 'gpt-4.1'] and RECOMMENDED_MODELS_FOR_APPLY to ['gpt-4.1-mini']
- Update smartComposerSettingsSchema to use the new default IDs as fallbacks (src/settings/schema/setting.types.ts)
- Adjust tests to assert defaults via constants (src/settings/schema/settings.test.ts)
* fix: Resolve CodeRabbit review
1.2.1
feat: Add Mistral provider support (#376)
1.2.0
refactor: Update styles and improve component structure (#373) * refactor: Update styles and improve component structure - Adjusted CSS styles for better layout and spacing in chat components. - Refactored ChatUserInput component to streamline rendering of mentionable badges. - Modified MCPManager to ensure subscribers are notified after cache invalidation. - Updated request type definitions to enforce properties in FunctionDescription. - Enhanced response generation to ensure parameters are correctly structured. * feat: Add settings callout for tool usage warnings - Introduced a new callout in the MCP settings section to inform users about potential costs associated with tool responses. - Updated CSS styles for the callout to enhance visibility and layout.