07067ca6c5
- Custom Keyboard Extension with push-to-talk UI - iOS 26 SpeechAnalyzer + DictationTranscriber (iOS 18 SF fallback) - OpenAI-compatible LLM client (4 built-in providers + custom) - 3-page onboarding flow + provider config UI - App Group shared storage for cross-process config - 8s LLM timeout with raw-transcript fallback - App Store privacy manifests for both targets - SwiftLint + XcodeGen + GitHub Actions CI - Unit tests (4/4 passing)
1.4 KiB
1.4 KiB
Changelog
All notable changes to OSGKeyboard will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- Initial open-source release.
- Custom Keyboard Extension with push-to-talk UI.
- iOS 26
SpeechAnalyzer+DictationTranscriberon-device ASR. - iOS 18
SFSpeechRecognizerfallback path (on-device only). - OpenAI-compatible LLM client (BaseURL / API Key / Model / System Prompt user-editable).
- Built-in presets: OpenAI, DeepSeek, Qwen DashScope, Custom.
- Three-page onboarding (welcome → enable keyboard → API config).
ProviderConfigpersisted in App Groupgroup.com.osgkeyboard.ios.- 8-second LLM call timeout with graceful fallback to raw transcript.
- App Store privacy manifest (
PrivacyInfo.xcprivacy) for both targets. - SwiftLint config, XcodeGen project definition, GitHub Actions CI.
- Unit tests for
ProviderConfigandOpenAICompatibleClient.
Known limitations
- 2 failing tests stub state pollution was fixed in this release; regression coverage in place.
- The keyboard does not work in password fields (iOS limitation).
- Microphone requires "Allow Full Access" to be enabled in iOS Settings.
- Whisper.cpp / on-device LLM polish is intentionally out of scope for v1 (cloud-only).
[0.1.0] - 2026-06-17
Added
- First public pre-release.