OpenBiliClaw-mobile is the Flutter client for OpenBiliClaw: connect to your local backend for recommendations, AI chat, and profiles, with a built-in Bilibili player and built-in Tailscale connectivity.
- v0.3.159
- Published at
- Sep 16, 2026
- 27
- Stars
- 253
- Download
- Synced at
- 1d ago
Latest release
v0.3.159Sep 16, 2026, 08:51 AMDownloads slow? Switch the source anytime above
README
Overview
The phone side is here: OpenBiliClaw-mobile is the Flutter mobile client (a multi-platform content recommendation and cognition client) for OpenBiliClaw, connecting to your self-hosted OpenBiliClaw backend (Bilibili data + AI capabilities). It follows a client-plus-backend architecture across six platforms — Android, iOS, Web, Linux, macOS, and Windows — under the MIT license, requiring Android API 31+ and iOS 15.0+.
Connect the backend → browse to build data → AI builds a profile → chat to tune preferences → recommendations get sharper.
| Item | Detail |
|---|---|
| Positioning | Full Flutter mobile client for OpenBiliClaw |
| Platforms | Android, iOS, Web, Linux, macOS, Windows |
| Architecture | Client + local backend (default 127.0.0.1:8420) |
| Player | media_kit native player (PiliPlus-inspired) + built-in WebView |
| License | MIT |
Usage Flow
- Configure the backend: open connection settings from the top-right gear, choose direct connection or built-in Tailscale, fill in the backend IP and port, and verify with Test Connection
- Recommendations page: pulls the for-you video feed from the backend with pull-to-refresh; offline shows a backend-unreachable hint
- Chat page: talk to the AI about the creators and content types you like; it adjusts recommendations accordingly
- Profile page: shows the AI-built interest profile, which sharpens with use
- Library page: manage read-later, favorites, and the last 30 days of history (opened, seen-but-not-opened, recently removed — all restorable)
- Inbox: handle interest probes, pitfall probes, cognition updates, and pending-chat confirmations
Feature Highlights
- Three library tabs: read-later, favorites, and history, with like/dislike/chat feedback and cross-switching between favorite and read-later on saved cards
- Unified inbox and Delight surprise recommendations, aligned with the Web and extension clients
- Cover images load uniformly through the backend proxy and cache, avoiding CORS, mobile anti-hotlinking, and DNS/TLS differences
- Material 3 navigation on Android and Cupertino tab bar on iOS, with light/dark themes, large fonts, landscape, and safe areas
- Source recognition for Bilibili, Douyin, Xiaohongshu, YouTube, X, Zhihu, Reddit, Weibo, Linux.do, V2EX, and more; non-Bilibili content opens the native app first, falling back to the web page
Player and Login State
- The native player is based on media_kit: danmaku, subtitles, speed, quality and part switching, playback memory, double-tick seeking, and swipe volume, plus like, coin, favorite, triple-action, comment lists, and related videos
- Login state and streams use the backend /api/bilibili/player/play-url protocol; if the backend is not ready, one tap falls back to the built-in WebView, which reuses the backend's existing Bilibili login state
- The player page shows the uploader's avatar, name, and follower count, can jump to the Bilibili native app or web space, and supports follow/unfollow
- On Android, to avoid double URL-encoding of cookies, a same-origin bootstrap page writes raw values via document.cookie
Connectivity and Build
- Android and iOS support built-in Tailscale: only this app's backend requests enter the tailnet, with no public port or system VPN; node identity is stored in app-private storage for keyless reconnects
- The backend LLM can use SenseNova or other OpenAI-compatible services; optional local Ollama semantic dedup (nomic-embed-text or bge-m3, 768 dimensions)
- CI builds dual-platform release artifacts when a vX.Y.Z tag matching pubspec is pushed: signed APK/AAB, unsigned IPA for self-signing, symbol files, and checksums
- Tests run in three layers: flutter test unit tests without a backend, test_e2e for backend API and LLM capabilities, and integration_test for four main flows on real devices
Release history
Sort