Skip to content

Releases: Siddhesh2377/ToolNeuron

Tool Neuron v3.0 - Complete Rewrite

16 May 21:46

Choose a tag to compare

Tool Neuron v3.0 is a ground-up rewrite. Very little of the v2.x code survived. The old app could not honestly call itself privacy-first. Chat history sat on disk in plaintext. So did preferences. On a rooted phone or after a malicious app reinstall, everything was readable.

v3.0 fixes that at the foundation. Every byte the app persists lives inside an encrypted vault sealed under a key the OS will not hand to a different signer. Every gated feature is checked by native C++ code that returns a session token, not a Kotlin boolean. PIN entry runs Argon2id at t=4, m=128 MiB. There is a panic PIN that wipes the device. There is boot integrity, hook-baseline verification, frida and debugger detection. If any of it trips, the app exits the process.

The app now requires Android 12 (API 31) or newer. v2.0.3 dropped to Android 10 to support Note 9 users. v3.0 cannot. The security work depends on StrongBox and TEE attestation paths that on pre-API 31 either do not exist or are unreliable. The trade is worth it for the rest of the user base.

The APK in the asset is built from main, R8-minified, signed with the production key. It is 76 MB because it ships llama.cpp, sherpa-onnx, the Stable Diffusion runtime, and the full embedded HTTP server in one binary.

New in v3.0 (relative to v2.0.3)

App Guide. A multi-screen walkthrough covering chat, models, RAG, vision, voice, themes, lock, and the remote server. Reachable from the drawer.

Chat compact. When the conversation gets long, the user can fold older turns into a single LLM-generated summary card. The KV cache resets after compact so the next turn prefills against the summary only. Old messages stay visible (greyed out) and remain searchable, but the model only sees the summary going forward.

Fork from any message. Tap the fork action on any user, assistant, or compact-summary message and the chat clones up to that point into a new chat titled " (fork)". Closes issue 76.

Edit any message. User and AI both. Editing a user message saves the new text and regenerates from there. Editing an AI message saves it in place without regenerating, so a user can fix a model's reply they otherwise liked. Compact summaries are not editable.

Vision. Load a multimodal GGUF with a sibling mmproj projector and attach images from the input bar. The projector auto-loads when the base model loads.

Voice. sherpa-onnx VITS for text-to-speech and Whisper for speech-to-text, both fully offline. Speak any assistant message. Tap the mic to dictate. First install of each kind becomes the active default.

Remote Server. Embedded native HTTP server exposing every installed engine over an OpenAI-compatible API on the local network. Chat, vision, embeddings, TTS, STT, image generation, and 4x upscale all live behind one bearer token. Bundled web UI at the loopback URL. Runs in its own process so a server crash does not take the app down with it.

HuggingFace Explorer. Rewritten on top of curl-impersonate so the requests look like a desktop browser. Dynamic filter chips populated from the live tags catalog. README rendered client-side. Gated repo detection.

RAG with hybrid retrieval. Dense embeddings, BM25 lexical, RRF fusion, optional LLM rerank, optional multi-query rewriting. Citation matching maps the assistant's [1] markers back to chunks the user can tap to inspect.

Web search. DuckDuckGo behind curl-impersonate, three generated queries, fifteen unique snippets, then a single LLM synthesis with inline citations. Seconds, not minutes. The synthesized answer is what the next turn sees, not the user's original query.

Image generation. Stable Diffusion 1.5 plus two SDXL contexts on the Snapdragon NPU through QNN, MNN as a CPU fallback for non-Snapdragon devices. Text2img, img2img, inpaint, 4x upscale via Real-ESRGAN or UltraSharp. The model picker auto-filters by SoC bucket so you only see what your chip can actually run.

First-party plugin runtime. Plugin authors compile against a small contract module, ship a single classes.dex, and the app loads them through DexClassLoader. Plugins declare capabilities (ONNX inference, encrypted storage, network) and the host gates each one. There is a floating plugin dock that switches between open plugins.

Diagnostics. Crash report screen reachable from Settings shows recent errors and the exportable JSON bundle. Themed to whichever palette the user picked.

Setup flow. Proper first-launch sequence (terms, dev notes, lock setup, theme, model packs, RAG setup) with three preset model packs for users who do not want to pick from the catalog manually.

Security architecture. Too much to list in release notes. The CLAUDE.md file in the repo has the full description. Headline items: HXS-encrypted vaults with signer-bound keys, native PolicyEngine for every gated call, Argon2id PIN, panic PIN, boot-integrity TOFU on every .so file, hook-baseline verification, frida and debugger hard-fail, FLAG_SECURE on PIN entry, auto-clearing clipboard, scorched-earth hardWipe.

Performance work in this release. Voice and image-gen archive extraction is now parallel. tar.bz2 runs through a producer-consumer pipeline, ZIP entries extract N at a time on a thread pool. Voice model installs that used to take roughly 25 seconds now take roughly 12. The RAG keyword index moved into native C++ with HXS-encrypted storage so the index is no longer plaintext on disk.

What this release does not fix

Issue 102, web search does not work properly. The new single-shot pipeline works in our testing but several users report blank results or hangs on certain queries. Most likely either curl-impersonate getting blocked by DuckDuckGo on specific IPs, or the synthesis LLM bailing on weirdly formatted snippets. Under investigation, no fix in this build.

Issues 99 and 96, gemma 4 e4b loading failures. The Q4_K_M and Q5_K_M variants of the Gemma 4 E4B family fail to load. This is upstream. llama.cpp has a known quant-detection bug with this family. We are tracking the fix PR and will refresh the gguf_lib AAR once it merges.

Issue 95, RAG import issue. Some PDFs and DOCX files fail to import. The PDF text extractor in the bundled engine is fragile on scanned PDFs and certain encrypted PDFs. No native API to swap in a better extractor right now.

Issue 91, RAG embedding tool failed to initialize. Specific to a few embedding models the loader cannot resolve thread placement for. Workaround: use a different embedding model. Permanent fix needs a llama.cpp loader change.

Issue 90, mmproj import crash. Manual mmproj import is gone in v3.0. The contract is now auto-load from the sibling file next to the base GGUF. If a VLM repo does not follow that layout, the model is not usable yet. A fallback path is on the list.

Issue 92, chat history sidebar bug. The intermittent disappearance some users reported should be fixed in the rewrite, but we could not reproduce it reliably enough to confirm. If it still happens in v3.0, please file a fresh report with reproduction steps.

Issue 86, markdown and math rendering. Markdown is much better in v3.0. Code blocks, links, headers, emphasis all render correctly. LaTeX math is partially supported but not complete. Full KaTeX-style math is on the list.

What we are working on

Dynamic Island overlay. A floating pill above every app that morphs into a card on tap, with a smart-dodge accessibility service that moves the pill out of the way of clickable buttons in the foreground app. The code is in this build (service files committed) but the manifest declarations are still commented out. Needs more on-device testing before we ship it enabled. Will turn on in a point release.

Pro license tier. Every gated feature already routes through the native PolicyEngine and feature IDs at 1000 or above are reserved for paid features that currently return false. The blob format is sketched out (Ed25519 or ML-DSA-65 signed, device-bound, with expiry). Not in v3.0. Coming in v3.1 or v3.2.

KleidiAI re-enablement. Disabled in v2.0.3 to stop SIGILL crashes on non-SVE devices. Will be re-enabled with proper backend variant selection once we can detect the SVE capability properly at load time.

Better PDF and DOCX extraction for RAG. Replacing the in-engine extractor with a dedicated native module that handles scanned PDFs via on-device OCR.

A note on size and offline guarantees

The APK is 76 MB. The install footprint after first launch (qnnlibs extracted, models downloaded) can reach several hundred MB or more depending on what you install. There is no network telemetry, no Google Play Services, no analytics. Outbound traffic only happens when you ask for it: model downloads from HuggingFace, web search, HF Explorer browsing. The local HTTP server when enabled does not initiate outbound calls.

If you find a crash, the Diagnostics screen under Settings shows the JSON bundle and lets you export it. Attach that to any bug report.

Source: https://github.com/Siddhesh2377/ToolNeuron
Issues: https://github.com/Siddhesh2377/ToolNeuron/issues

v2.0.3 — Stability & Compatibility

14 Mar 23:03
fcfb3bf

Choose a tag to compare

What's Fixed

SIGILL Crashes (60% of production crashes)

  • Rebuilt gguf_lib AAR with KleidiAI disabled — it was injecting SVE assembly into non-SVE backend variants, crashing devices without SVE support (Snapdragon 888 and older)

Theme Crashes (25% of production crashes)

  • dynamicColorScheme() now wrapped in try-catch — fixes Resources$NotFoundException on OEM ROMs that report API 31+ but lack Monet engine (some MIUI, custom ROMs, AOSP forks)
  • Cascading IllegalArgumentException in Compose inline classes resolved by the theme fix

16KB Page Size (Pixel 10 + Android 15 devices)

  • Fixed gguf_lib CMake: backend MODULE targets now get add_link_options() instead of CMAKE_SHARED_LINKER_FLAGS — all .so files are 16KB-aligned
  • Added 16KB page flag to ums and system_encryptor native modules
  • Rebuilt ai_supertonic_tts AAR with 16KB alignment

Android 10 Support (#74)

  • Lowered minSdk from 30 to 29 — Samsung Note 9 and similar devices can now install

Performance

  • Typography: lazy singleton eliminates 16 object allocations per recomposition

Other

  • Reverted PR #88 (audio model support) — will be re-landed separately
  • Version bump: 2.0.3 (versionCode 30)

ToolNeuron v2.0.2

09 Mar 01:31
7275511

Choose a tag to compare

What's New

Android 10 Support

  • Minimum SDK lowered from Android 12 to Android 10 (API 29)

Qwen3.5 Models

  • Default model store updated with Qwen3.5 (0.8B, 4B, 9B)

Security & Stability

  • Network security hardened (cleartext disabled, signature-level service binding)
  • Zip Slip path traversal prevention in model downloads
  • Thread safety fixes across ChatViewModel, RagRepository, PluginManager, MarkdownText
  • ProGuard keep rules for UMS, system_encryptor, file_ops JNI modules
  • VaultHelper no longer deletes vault data on init failure

Bug Fixes

  • Thinking mode: Support for both <think> and [THINK] tag formats (#78, #72)
  • Response cutoff: Repetition detection tuned to reduce false positives (#69)
  • Character encoding: UTF-8 buffer for streaming prevents broken multi-byte characters (#68)
  • Chat creation: Vault init now retries with timeout instead of failing immediately (#66)
  • RAG: Auto-downloads embedding model when missing (#58)
  • Cancel generation: Partial messages preserved correctly (#77)
  • Image generation: Fixed hardcoded 512x512, proper bitmap recycling
  • DiffusionEngine: Null safety for uninitialized state

UI

  • Model picker simplified to GGUF-only
  • Model selector icon updated
  • Shrink resources enabled for release builds

Known Issues

  • RAG retrieval accuracy may be inconsistent — under investigation

Docs

  • README rewritten — concise, factual, no marketing fluff
  • CONTRIBUTORS.md added with 3-repo ecosystem map

Tool-Neuron-2.0.1

22 Feb 18:01

Choose a tag to compare

Major Changes, I am Too Lazy to write the changes please Directly Use the App

Full Changelog: ToolNeuron-2.0.0...Tool-Neuron-2.0.2

Tool-Neuron-2.0.1

21 Feb 19:08

Choose a tag to compare

Major Changes, I am Too Lazy to write the changes please Directly Use the App
Full Changelog: Tool-Neuron-1.2.2...ToolNeuron-2.0.0

Tool-Neuron 1.2.2 - UI Fixes

03 Feb 21:27

Choose a tag to compare

Tool-Neuron 1.2.2 - Major Rewrite

New Features

Web Search Plugin

  • DuckDuckGo Integration — AI can now search the web in real-time
  • Web Scraping — Extract content from websites during conversations

Text-to-Speech (TTS)

  • TTS Tool Integration — AI can speak responses using the new TTS engine
  • TTS Settings — Configure voice, speed, and pitch in Settings

Enhanced Tool System

  • Calculator Plugin — Perform calculations
  • Clipboard Plugin — Read/write clipboard content
  • DateTime Plugin — Get current date and time
  • Device Info Plugin — Access device information
  • File Manager Plugin — Browse and manage files
  • Dev Utils Plugin — Developer utilities

Document & RAG System

  • Document Parser — Parse PDF, DOCX, TXT, and more
  • Secure RAG Creation — Create encrypted knowledge bases from documents
  • RAG Vault Integration — Seamlessly integrate RAGs with Memory Vault

Memory Vault UI Redesign

  • Compact iOS-Style UI — Clean, minimal interface with smooth animations
  • Back Navigation — Added back button for easier navigation
  • Unified Components — Consistent ActionButton and ActionToggleGroup styling
  • No Elevation/Shadows — Modern flat design throughout

⚡ Improvements

  • Concurrent Model Downloads — Download multiple models simultaneously
  • WorkManager Integration — Background embedding model downloads
  • 16KB Page Size Support — Android 15 compatibility for native libraries
  • Optimized Libraries — Smaller and faster native libs

🐛 Fixes

  • Tool Calling in Release Builds — Fixed ProGuard rules breaking function calling
  • Memory Vault Stability — Various vault initialization fixes
  • UI Consistency — Manrope font family applied throughout

Thank You For Using Tool Neuron :)

Full Changelog: Tool-Neuron-1.2.1...Tool-Neuron-1.2.2

Tool-Neuron 1.2.1 - TTS

31 Jan 17:07

Choose a tag to compare

Features

  • TTS Download in Settings — Download and load the TTS model directly from Settings (no
    need to visit the Model Store)
  • Uncensored Model Category — New model category with Gemma3 Emophilic 1B
  • New Coding Model — Ruvltra Claude Code 0.5B added to the Coding category
  • Memory Vault Migration Fix — Upgrading from older versions no longer crashes on vault
    initialization

Fixes

  • Fixed AEADBadTagException crash when upgrading from older app versions
  • Fixed Model Store not showing newly added default repositories for existing users
  • Smoother UI experience

Thank You For Using Tool Neuron :)

Full Changelog: Tool-Neuron-1.2.0...Tool-Neuron-1.2.1

Tool-Neuron 1.2.0 - Plugins ( Beta )

19 Jan 22:56

Choose a tag to compare

Tool-Neuron 1.2.0

Note

Plugins only Work on only Qwen Models

Features :

  • Pull to Refresh Chats From the Drawer
  • Plugins ( Beta :: May Have some Unexpected Behaviour )
    • Web Search
    • Web Scraping

Fixes :

  • Fix the Message Order Miss Match
  • Smoother Experience

Issues Addressed :

Full Changelog: ToolNeuron-1.1.4...Tool-Neuron-1.2.0

Tool-Neuron-1.1.4

17 Jan 19:18

Choose a tag to compare

Refactor: Move VaultLoggerScreen UI to VaultInspectorViewModel

This commit refactors the VaultLoggerScreen by moving its UI Composables and related logic into the VaultInspectorViewModel.kt file. This centralizes the Vault Inspector's UI and state management, improving organization and maintainability.

Specific changes include:

  • Removing VaultLoggerScreen.kt and all its associated UI Composables (LogEntryCard, LogDetailDialog, etc.).
  • Integrating the UI previously in VaultLoggerScreen.kt into VaultInspectorView.kt.
  • Enhancing the VaultInspector UI with a modernized design, including updated cards, filter/sort menus, and a scroll-to-top button.
  • Adding advanced model filtering (by category, parameters, quantization, size) and sorting to the Model Store.
  • Introducing validation and editing capabilities for HuggingFace repositories.
  • Expanding the list of default model repositories with new categories (Medical, Research, Coding, Business, Cybersecurity).
  • Updating the README with comprehensive details on features like RAG, Memory Vault, and model management.

Solved Issues :

Full Changelog: Tool-Neuron-1.1.2-Download-Fix...ToolNeuron-1.1.4

Tool-Neuron-1.1.2-Download-Fix

17 Jan 10:13

Choose a tag to compare

Tool-Neuron-1.1.2-Download-Fix

Fix Model Download

  • Download multiple Models
  • Stop Model Model Download

Issues Addressed :
#60
#58

Full Changelog: TN-Crash-Fix...Tool-Neuron-1.1.2-Download-Fix