Skip to content

bluewhale 1.1.0

Latest

Choose a tag to compare

@1440000bytes 1440000bytes released this 16 Jul 12:11
v1.1.0

[1.1.0] - 2026-07-16

Added

  • /ai <prompt>: offline text generation. A language model runs on the device
    and the reply is posted to the conversation the command was typed in, under
    your nickname, prefixed with [ai] and quoting the prompt. Only successful
    answers are transmitted; the thinking indicator, failures and usage errors
    stay on the device. The prompt never leaves your phone, but the answer is
    sent to your peers, so do not type anything into /ai you would not type
    into the chat itself (#8).
  • Message range: a settings slider limiting how many hops (1 to 8, default 8,
    the previous fixed reach) messages this device originates travel through the
    mesh. Relaying for other peers is unaffected. A local warning is shown when
    a private message is sent to a peer the mesh graph places beyond the
    configured range (#9).
  • Optional "reduce background activity" setting, off by default, that slows
    background presence to 12 to 18 minutes for maximum battery savings, at the
    cost of dropping out of geohash lists until the app is opened (#10).

Changed

  • Reduced idle background battery usage: the mesh notification is event driven
    instead of refreshed every 5 seconds, RSSI polling backs off when no peers
    are connected, and presence heartbeats slow down while backgrounded. Idle
    wakeups drop from roughly 1620 to 87 per hour with default settings (#10).
  • The arm64 APK grows about 26 MB from the bundled MediaPipe inference runtime,
    whether or not a model is installed (#8).

Setting up /ai: no model ships with the app. Download one MediaPipe .task bundle (recommended: Qwen2.5-0.5B-Instruct, 521 MB, Apache-2.0) and push it to the device renamed to model.task:

adb push Qwen2.5-0.5B-Instruct_multi-prefill-seq_q8_ekv1280.task \
  /sdcard/Android/data/com.bluewhale.android/files/models/model.task

.task bundles are not GGUF; files for Ollama or llama.cpp will not load. Until a model is installed, /ai replies with the path where one belongs. Larger models answer better but may be killed by the OS on mid-range hardware; see docs/offline_ai.md.


Verify your download: check the APK SHA-256 hashes against SHA256SUMS, which is PGP-signed in SHA256SUMS.asc (key 2D230520212A5901, /dev/fd0 <alicexbt@protonmail.com>).

gpg --verify SHA256SUMS.asc SHA256SUMS && sha256sum -c SHA256SUMS