Add OpenRouter provider#317
Open
lukesbeard wants to merge 1 commit into
Open
Conversation
…nd chat integration New files: - OpenRouterProvider.swift — Core provider with OpenAI-compatible chat completions, model fetching, retry logic, error handling, text generation - OpenRouterProvider+Transcription.swift — Screenshot transcription via vision API, activity card generation, image resizing Modified files: - LLMTypes.swift — Added .openRouter case to LLMProviderType, LLMProviderID, DashboardChatProvider enums - LLMService.swift — Wired OR into batch processing, text generation, chat streaming - OnboardingLLMSelectionView.swift — Added OpenRouter selection card with features - LLMProviderSetupView.swift — Added 'Connect OpenRouter' header - ProviderSetupState.swift — Added setup flow (key entry, model selection, test), Keychain persistence, openRouterModelId tracking - ProvidersSettingsViewModel.swift — Added provider config check + routing - ChatView+Actions.swift — Added OR availability check for dashboard chat Fixes applied per Claude Code audit: - HIGH: Safe bitmap allocation (removed force-unwrap) - HIGH: Non-retryable 4xx errors no longer waste retries - MED: Screenshot timestamps use wall-clock capture time - MED: Colorspace changed to .deviceRGB - MED: Zero-size dimension crash guard - M2: content field made Optional (handles model refusals) - M3: response_format support for JSON mode
|
would love this :) currently using dayflow conifgured with openrouter through the local model config, technically works but it's a bit janky |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a dedicated OpenRouter provider for Dayflow, enabling access to 300+ models (DeepSeek V4 Flash, Claude, GPT, Gemini, etc.) for screenshot transcription, activity card generation, and dashboard chat.
Changes
New files
Integration
Audit fixes
All findings from Claude Code audit addressed: