Skip to content

RikkaHub Plus

Android AI chat client and SillyTavern-compatible endpoint where Jev screens memories for relevance and serves as a judge tool.

LibraryproductionAGPL-3.0

Overview

RikkaHub Plus (Lantern) is a heavily customised fork of the RikkaHub Android chat client, written in Kotlin with Jetpack Compose. It works as a plain multi-provider chat app with streaming, voice calls, plugins and memory, and also imports SillyTavern character cards, lorebooks, presets, regex and themes losslessly without Termux or Node. Other additions include prompt-cache optimisation, three-layer memory with rolling compression, a QuickJS plugin system, device tools and bot integrations. Documentation is in English and Chinese.

Jev decisioning is enabled by pasting a TypeSafe key in settings, with two switches. Automatic memory screening replaces embedding retrieval: Jev judges whether each stored memory is relevant to the current conversation, in parallel batches newest-first, and anything above 50% is injected; identity memories always count as relevant. The second switch gives the main chat model a judge tool it can call when unsure about a yes/no, multiple-choice or rating question, with a routing note added to the system prompt so weaker models find it. The README describes Jev as about 100 ms end to end.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this memory relevant to the current conversation?—
OtherYes/no, multiple-choice or rating questions the main model hands to Jev via the judge tool—

How it works

  1. User sends a message
  2. Jev scores candidate memories in batches; those above 0.5 are injected
  3. Main model generates the reply and may call the judge tool when unsure
  4. Jev returns a typed answer the main model uses

Strengths

  • No embedding API calls for memory retrieval
  • About 100 ms per judgment per the README
  • Weaker main models can defer narrow judgments

Caveats

  • Requires a TypeSafe key for Jev features
  • Large fork with many unrelated features
  • Fixed 0.5 relevance threshold

Getting started

Install the APK from GitHub Releases, then enable Jev under Settings, HuaDeng Settings, Jev decisioning and paste an API key.

At a glance

Type
Library
Status
production
Language
Kotlin
Runtime
Android app
Has code
yes
License
AGPL-3.0

Use cases and integrations

How curated lists describe it

  • 安卓AI聊天端:开箱即聊,无损导入酒馆卡,缓存强省用量,Jev…

    wh000wh000/awesome-jev-live
  • Android chat client with a built-in Jev client: it scores stored memories for relevance in batches before retrieval, and exposes Jev to the model as a callable judgment tool. Endpoint and key are set in its settings. Chinese documentation.

    MrJev/awesome-jev

Frequently asked questions

What does Jev decide in RikkaHub Plus?

Which stored memories are relevant to the current conversation, and narrow questions the main model passes to its judge tool.

How is memory selected?

Jev judges each memory's relevance, and memories above 50% probability are injected.

Is Jev required?

No; it is an optional feature enabled with a TypeSafe key.

Related projects

  • Personal AI assistant with eight memory types and multi-channel support; per the list, it has an optional Jev provider.

    Projectproduction
  • Federated knowledge retrieval engine for agents that uses Jev to route queries to backends and re-rank evidence, with keyword fallback.

    LibraryprototypePython
  • Local long-term memory for coding agents with an optional Jev reranker that orders recalled memories.

    ProjectproductionTypeScript
  • Volcengine's context database for agents, with a Jev rerank client that scores candidate documents with jev-latest as relevance.

    LibraryproductionPython
  • Filters an assistant's memories by relevance, not resemblance: one Jev yes/no per memory in a single request, kept above a threshold.

    ProjectbetaPython
  • Multi-user MCP 'agents' cloud' on Cloudflare Workers with an optional search stage that reranks candidates with Workers AI Jev scores.

    MCP serverbetaTypeScript