Skip to content

Releases: garfiec/Librechat-Mobile

v2026.06.6

20 Jun 03:20

Choose a tag to compare

Target Backend APK Downloads IPA Downloads

What's Changed

  • feat(chat): rework artifact viewer with preview-first sheet and full-screen mode by @garfiec in #171
  • fix(auth): lift server URL and login fields above the keyboard by @garfiec in #177
  • chore(deps): bump softprops/action-gh-release from 3.0.0 to 3.0.1 by @dependabot[bot] in #172
  • chore(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #173
  • chore(deps): bump koin from 4.2.1 to 4.2.2 by @dependabot[bot] in #174
  • chore(deps): bump coroutines from 1.10.2 to 1.11.0 by @dependabot[bot] in #175
  • chore(deps): bump androidx.compose:compose-bom from 2026.04.01 to 2026.06.00 by @dependabot[bot] in #176
  • fix: lift input fields above the keyboard across the app by @garfiec in #178

Full Changelog: v2026.06.5...v2026.06.6


Build provenance attestation · CI workflow run

v2026.06.5

18 Jun 23:46

Choose a tag to compare

Target Backend APK Downloads IPA Downloads

What's Changed

  • fix(ios): skip embedding static Shared.framework to unblock device installs by @tabilzad in #168
  • fix(chat): eliminate flicker when a streamed reply completes by @garfiec in #169

Full Changelog: v2026.06.4...v2026.06.5


Build provenance attestation · CI workflow run

v2026.06.4

18 Jun 04:34

Choose a tag to compare

Target Backend APK Downloads IPA Downloads

What's Changed

  • ci(release): treat iOS IPA symmetrically to the APK by @garfiec in #155
  • feat(conversations): long-press conversation action menu in nav drawer by @garfiec in #156
  • refactor(chat): decompose ChatViewModel into focused delegates by @garfiec in #157
  • refactor(agents): decompose AgentEditorViewModel into delegates by @garfiec in #158
  • refactor(chat): decompose ChatScreen into focused sibling files by @garfiec in #159
  • refactor(agents): split AgentActionsPanel into per-dialog files by @garfiec in #160
  • refactor(agents): decompose AgentEditorScreen into sibling files by @garfiec in #161
  • refactor(settings): decompose SettingsViewModel into state, prefs controller, and account delegate by @garfiec in #163
  • fix(chat): retain attachments when editing or regenerating messages by @garfiec in #162
  • chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 by @dependabot[bot] in #154
  • chore(deps): bump io.mockk:mockk from 1.14.9 to 1.14.11 by @dependabot[bot] in #152
  • chore(deps): bump org.jetbrains.androidx.lifecycle:lifecycle-viewmodel-navigation3 from 2.10.0-alpha05 to 2.11.0-beta01 by @dependabot[bot] in #153
  • refactor(chat): decompose SharedContentParts into focused content-part files by @garfiec in #165
  • test(network): tolerate quoted multipart param name in SkillsApi test by @garfiec in #166
  • feat(chat): queue follow-up messages while a reply streams by @garfiec in #167

Full Changelog: v2026.06.3...v2026.06.4


Build provenance attestation · CI workflow run

v2026.06.3

12 Jun 03:55

Choose a tag to compare

Target Backend APK Downloads IPA Downloads

iOS (sideload): download librechat-v2026.06.3.ipa and install via AltStore / SideStore / Sideloadly (free Apple ID) or TrollStore — see install notes.

What's Changed

  • ci(release): publish unsigned iOS IPA for sideloading by @garfiec in #150
  • fix(chat): refresh new-chat title in the conversation list by @garfiec in #151

Full Changelog: v2026.06.2...v2026.06.3


Build provenance attestation · CI workflow run

v2026.06.2

12 Jun 00:48

Choose a tag to compare

Target Backend APK Downloads

What's Changed

  • chore(deps): bump org.jetbrains.kotlinx:atomicfu from 0.28.0 to 0.33.0 by @dependabot[bot] in #122
  • chore(deps): bump org.jetbrains.kotlinx:kotlinx-serialization-json from 1.10.0 to 1.11.0 by @dependabot[bot] in #123
  • chore(deps): bump com.slack.lint.compose:compose-lint-checks from 1.5.0 to 1.5.2 by @dependabot[bot] in #120
  • ci(release): add shields.io badges atop release notes by @garfiec in #148
  • fix(chat): show the correct model on a newly created chat by @garfiec in #149

Full Changelog: v2026.06.1...v2026.06.2


Build provenance attestation · CI workflow run

v2026.06.1

11 Jun 03:37

Choose a tag to compare

Target Backend APK Downloads


Target backend: LibreChat v0.8.6

Build provenance attestation · CI workflow run

What's Changed

  • feat(chat): conversation media gallery with predictive-back viewer by @garfiec in #145
  • perf(compose): stabilize composable params across the app by @garfiec in #147

Full Changelog: v2026.06.0...v2026.06.1

v2026.06.0

10 Jun 13:53

Choose a tag to compare

Target Backend APK Downloads


Target backend: LibreChat v0.8.6

Build provenance attestation · CI workflow run

What's Changed

  • fix(conversations): stop drawer search field auto-focusing on open by @garfiec in #136
  • fix(chat): render in-progress tool calls when resuming a stream by @garfiec in #138
  • fix(chat): stream edited/regenerated replies in place by @garfiec in #139
  • fix(chat): tighten row spacing in starred-at-top model selector section by @garfiec in #140
  • feat(settings): in-app language selection with runtime locale switching by @garfiec in #141
  • feat(media): full-screen zoomable media viewer for chat and files by @garfiec in #142
  • chore(release): switch versioning from semver to calver (YYYY.MM.PATCH) by @garfiec in #143

Full Changelog: v0.1.3...v2026.06.0

v0.1.3

07 Jun 22:42

Choose a tag to compare

Target Backend APK Downloads


Target backend: LibreChat v0.8.6

Build provenance attestation · CI workflow run

What's Changed

  • feat(version): single-source the target backend version (#116) by @garfiec in #117
  • perf: move blocking work off the Main thread (#93) by @garfiec in #118
  • feat: sync mobile client to LibreChat v0.8.6 by @garfiec in #119
  • docs(readme): bump backend compatibility range to v0.8.6 by @garfiec in #125
  • fix(artifact): render React artifacts via ESM modules + import map (#126) by @garfiec in #130
  • Remove model selector from the chat app bar by @garfiec in #133
  • Gate chat options by server config, role, and endpoint capability by @garfiec in #132
  • feat(chat): add Starred models display setting for the model picker by @garfiec in #134
  • feat(settings): configurable app accent color by @garfiec in #135

Full Changelog: v0.1.2...v0.1.3

v0.1.2

30 May 21:50

Choose a tag to compare

Target Backend APK Downloads

Target backend: LibreChat v0.8.5


Build provenance attestation · CI workflow run

What's Changed

  • chore(deps): bump com.slack.lint.compose:compose-lint-checks from 1.4.2 to 1.5.0 by @dependabot[bot] in #102
  • chore(deps): bump media3 from 1.10.0 to 1.10.1 by @dependabot[bot] in #88
  • chore(deps): bump org.jetbrains.androidx.navigation3:navigation3-ui from 1.1.0-rc01 to 1.1.1 by @dependabot[bot] in #91
  • chore(deps): bump androidx.activity:activity-compose from 1.10.1 to 1.13.0 by @dependabot[bot] in #89
  • chore(deps): bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #97
  • chore(deps): bump marocchino/sticky-pull-request-comment from 2 to 3 by @dependabot[bot] in #98
  • chore(deps): bump gradle/actions from 5 to 6 by @dependabot[bot] in #100
  • chore(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #99
  • chore(deps): bump softprops/action-gh-release from 2.6.2 to 3.0.0 by @dependabot[bot] in #101
  • fix(chat): eliminate per-token flash while streaming markdown by @garfiec in #106
  • fix(chat): evict markdown/mermaid caches by true LRU by @garfiec in #107
  • chore(release): use bare version tag as release name by @garfiec in #109
  • fix(chat): stop first-agent auto-select from flashing over the selected model by @garfiec in #108
  • chore: remove KNOWN_ISSUES.md in favor of GitHub issue tracking by @garfiec in #113
  • feat(chat): animated placeholder for in-progress image generation by @garfiec in #114
  • fix(chat): deterministic, race-free new-chat model selection by @garfiec in #110
  • feat(logging): persistent, redacted, exportable diagnostic log buffer by @garfiec in #115

Full Changelog: v0.1.1...v0.1.2

v0.1.1

30 May 05:14

Choose a tag to compare

Target Backend APK Downloads

Target backend: LibreChat v0.8.5


Build provenance attestation · CI workflow run

What's Changed

  • Kotlin Multiplatform migration with iOS parity by @garfiec in #6
  • Rename package from com.librechat to com.garfiec.librechat by @garfiec in #7
  • Rename project from LibreChat Android to LibreChat Mobile by @garfiec in #8
  • Migrate to Navigation Compose 3 with type-safe routes by @garfiec in #12
  • fix: create Application Support directory before opening Room database on iOS by @garfiec in #13
  • chore: fix iOS setup docs, remove dead Swift files, fix Xcode release build config by @garfiec in #15
  • Bump coil3 from 3.3.0 to 3.4.0 by @dependabot[bot] in #11
  • chore(deps): bump lifecycle from 2.9.0 to 2.10.0 by @dependabot[bot] in #4
  • chore(deps): bump lifecycle-kmp from 2.9.0 to 2.10.0 by @dependabot[bot] in #9
  • refactor: consolidate duplicate navigation code between app and shared modules by @garfiec in #14
  • fix: configure Coil ImageLoader for iOS and add missing tool call card rendering by @garfiec in #16
  • Fix iOS LaTeX rendering and consolidate markdown parser to commonMain by @garfiec in #18
  • fix: use jvmToolchain(17) to align Java and Kotlin JVM targets by @tabilzad in #17
  • refactor: NavHostViewModel stage 1 — low-hanging fruit cleanup by @garfiec in #19
  • refactor: NavHostViewModel stage 2 — extract banner and version check state holders by @garfiec in #20
  • refactor: NavHostViewModel stage 3 — extract conversation list state holder by @garfiec in #21
  • refactor: NavHostViewModel stage 4 — extract favorites state holder by @garfiec in #22
  • refactor: NavHostViewModel stage 5 — extract drawer models and display mapping by @garfiec in #23
  • refactor: extract supporting types and organize into sub-packages by @garfiec in #24
  • refactor: replace fully-qualified names with proper imports by @garfiec in #25
  • fix(chat): apply safe area padding to iOS chat input by @garfiec in #26
  • fix(settings): equalize MCP server type segmented button heights by @garfiec in #27
  • Add detekt-koin, .editorconfig, and GitHub Actions CI by @garfiec in #28
  • cleanup: burn down detekt baseline findings by @garfiec in #33
  • Bump androidx.test.ext:junit from 1.2.1 to 1.3.0 by @dependabot[bot] in #10
  • Bump io.mockk:mockk from 1.13.13 to 1.14.9 by @dependabot[bot] in #5
  • chore(deps): bump koin from 4.2.0 to 4.2.1 by @dependabot[bot] in #31
  • chore(deps): bump org.jetbrains.androidx.navigation3:navigation3-ui from 1.0.0-alpha06 to 1.1.0-rc01 by @dependabot[bot] in #30
  • ci(android): upload signed debug APK artifact on every PR by @garfiec in #37
  • feat(favorites): move bookmarks to server-backed tags with offline cache by @garfiec in #35
  • fix(ios): stream SSE via NWConnection to bypass NSURLSession text/* buffering by @garfiec in #38
  • fix(data): mark agent/preset caches @volatile by @garfiec in #39
  • fix(data): sweep camera_photos cache dir on logout by @garfiec in #40
  • fix(cache): route Android temp files into named subdirs for logout sweep by @garfiec in #41
  • fix(navigation): fully reset ConversationListStateHolder on logout by @garfiec in #42
  • fix(settings): stop double-invoking authRepository.logout on logout/delete by @garfiec in #43
  • chore(deps): bump compose-multiplatform from 1.11.0-beta01 to 1.11.0-beta02 by @dependabot[bot] in #48
  • chore(deps): bump agp from 9.1.0 to 9.1.1 by @dependabot[bot] in #47
  • chore(deps): bump markdown-renderer from 0.39.2 to 0.40.2 by @dependabot[bot] in #46
  • chore(deps): bump androidx.test:runner from 1.6.2 to 1.7.0 by @dependabot[bot] in #44
  • chore(deps): bump androidx.compose:compose-bom from 2025.05.00 to 2026.03.01 by @dependabot[bot] in #45
  • chore(sync-upstream): fix skill bugs and expand upstream scan coverage by @garfiec in #50
  • fix(permissions): gate mobile surfaces on server role permissions (#49) by @garfiec in #52
  • chore(deps): bump compose-multiplatform from 1.11.0-beta02 to 1.11.0-beta03 by @dependabot[bot] in #57
  • chore(deps): bump ksp from 2.3.6 to 2.3.7 by @dependabot[bot] in #55
  • chore(deps): bump com.android.tools:desugar_jdk_libs from 2.1.4 to 2.1.5 by @dependabot[bot] in #54
  • chore(deps): bump ktor from 3.4.2 to 3.4.3 by @dependabot[bot] in #53
  • feat(ios): support building for both physical devices and simulators by @tabilzad in #58
  • chore(sync): upstream LibreChat v0.8.4 → v0.8.5 by @garfiec in #61
  • feat(common): include patch in backend version compatibility check by @garfiec in #62
  • chore(skill): add reviewer pass + test-runner dispatch to /sync-upstream by @garfiec in #63
  • fix(data): mutex guard clearTokens vs refreshAccessToken race by @garfiec in #64
  • fix(data): mutex guard repository caches against suspension races by @garfiec in #65
  • fix(chat): wire format for custom and user_provided endpoints (#60) by @garfiec in #67
  • feat(ui): render custom endpoint iconURL in drawer and conversation list by @garfiec in #72
  • chore(deps): bump com.google.truth:truth from 1.4.4 to 1.4.5 by @dependabot[bot] in #74
  • chore(deps): bump gradle-wrapper from 9.4.1 to 9.5.0 by @dependabot[bot] in #76
  • chore(deps): bump agp from 9.1.1 to 9.2.0 by @dependabot[bot] in #73
  • feat: per-provider user_provided API key UI + real expiry on chat sends (#70) by @garfiec in #81
  • chore(deps): bump paging from 3.4.2 to 3.5.0 by @dependabot[bot] in #77
  • chore(deps): bump agp from 9.2.0 to 9.2.1 by @dependabot[bot] in #78
  • chore(deps): bump org.jetbrains.kotlinx:kotlinx-datetime from 0.7.1 to 0.8.0 by @dependabot[bot] in #79
  • chore(deps): bump dev.androidbroadcast.rules.koin:detekt-koin4-rules from 1.1.0 to 1.1.1 by @dependabot[bot] in #75
  • feat: add /audit-deps skill for dependabot PR audits by @garfiec in #82
  • fix(settings): keep Sign Out reachable when server is unreachable (#80) by @garfiec in #83
  • docs: correct self-signed TLS cert guidance and extract to FAQ by @garfiec in #84
  • fix(app): pad no-connection banner below status bar by @garfiec in #85
  • refactor(app): use Modifier.then for offline-banner status-bar inset by @garfiec in #87
  • feat(chat): inline artifact rendering with per-type toggles by @garfiec in #86
  • fix(uploads): move file upload off main thread + per-file progress by @garfiec in https://github.com/garfiec/Librecha...
Read more