RPClient

me.kafuuneko.rpclient
by Zapstore Catalog

AI roleplay chat and story writing client

RPClient is an AI roleplay and storytelling client with support for common tavern-style character cards and lorebooks. Create your own characters, write multi-chapter stories, start one-on-one chats, or build group chats where multiple characters join the same story. RPClient is not an Android remake of SillyTavern. It is a mobile-focused roleplay and storytelling app that supports familiar workflows such as character cards, lorebooks, prompts, and long-term story memory, while offering an interface designed for Android. Key features: - Write and organize multi-chapter stories with Story Studio (volumes, chapters, and continuation prompts) - View model reasoning and thought processes in real time during generation - Backup and share stories with .rpstory archive export and import - Import JSON and PNG character cards (including batch import) - Create, edit, and manage your own characters - Import and manage tavern-style lorebooks (with mutual exclusion groups) - Start one-on-one AI character chats - Create group chats with multiple characters - Regenerate, continue, or stop replies - Generate from the user’s perspective - Keep long stories going with summary memory - Assign independent models to specific characters and summaries - Import and export chat histories compatible with SillyTavern (.jsonl) - Manage prompts, character settings, greetings, and story context - Connect to OpenAI-compatible APIs, Gemini, Claude, DeepSeek, OpenRouter, and custom providers - Chats, stories, characters, and settings are stored on your device by default RPClient does not include a built-in AI model service. To chat or generate stories, you need to configure your own model provider or API key. Requests are sent to the provider you choose, so please use services you trust. RPClient is not an official SillyTavern Android app and is not affiliated with OpenAI, Google, Anthropic, DeepSeek, or OpenRouter.

First release: Nov 4, 2026, 1 total release.

Most recent release: Nov 4, 2026.

Repo

Appears in 0 app stacks.

0 sats / 0 zaps received in the past year.

Sats Received

Underlying data available via MCP: app_zaps, app_releases.

Zap Count

Underlying data available via MCP: app_zaps, app_releases.

Releases

  • Nov 4, 2026 V2026.4.3
    # 📦 RPClient 2026.4.3 > At the request of some users, we have opened a Discord community on a trial basis. > Join us to share your experience, report issues, and offer suggestions: [Join Discord](https://discord.gg/EqY7AhvNh). ### 中文版本 (Chinese) #### ✨ 新增功能 - **#27 最近角色与角色内容页:**
    More…
    - 首页最近区域支持在“最近内容”和“最近角色”之间切换,并记住所选模式。 - 最近角色按关联内容的活动时间排序,展示角色头像、最近内容标题、内容数量和更新时间。 - 点击角色可集中查看与其关联的单聊、群聊和故事,支持按类型筛选、打开已有内容,以及预选当前角色创建单聊。 - 角色内容页支持聊天最新消息与故事正文片段预览;聊天预览隐藏思考链,纯图片消息显示图片占位提示。 - **角色卡批量导入与导出:**(@onemind66) - 角色管理页支持长按进入多选,按当前筛选结果全选或取消全选,并将所选角色导出为 ZIP;切换筛选时保留已有选择。 - ZIP 内为独立的 Character Card V2 JSON,沿用单卡导出的世界书与角色正则打包规则,方便批量迁移或分别使用。 - 现有角色导入入口支持读取角色 ZIP,继续使用原有的世界书确认与角色保存流程,并汇总成功和失败数量。 - **可编辑的完整备份与恢复详情:**(@onemind66) - 完整备份升级为 v3 格式。角色卡、世界书、全局正则、单聊和故事文档与对应菜单的导入格式保持一致,可从备份中取出后单独导入。 - 支持按规则直接修改、删除或新增备份内的文档,恢复时使用编辑后的内容;本地关联信息单独保存,避免同一段正文存在两份需要同步修改的副本。 - 完整备份中的角色卡保留绑定世界书与角色正则,故事保留角色及世界书匹配信息,聊天保留图片、摘要和会话设置等恢复所需信息。 - 备份与恢复页面新增可展开、可选择和复制的技术详情,展示处理阶段、数量、警告与错误摘要。 - 恢复完成后保留详情,由用户查看后点击“重启 RPClient”,便于先确认被跳过的内容及其他警告。 - **背景图片裁剪:** - 页面背景与角色背景接入统一图片裁剪流程,可拖动、缩放、旋转和水平翻转,并选择屏幕比例或原图比例。 - 背景导入与首轮预览提供加载和取消反馈,失败或取消时保留原有背景与编辑草稿。 - 首次设置角色背景且尚未开启使用开关时,可通过提示直接启用;后续不会重复询问。 #### 🎨 体验优化 - **背景设置与显示:** - 未选择背景图片时,也可提前调整背景与栏位外观选项;新背景配置默认不模糊,并使用 35% 背景遮罩。 - 角色内容页可跟随“使用角色卡背景”开关,使用角色图片并保留通用外观参数;无可用角色背景时回退通用背景。 - 统一普通页面、聊天、群聊、故事及编辑预览的背景渲染,减少流式回复期间的重复图片解码,并在图片加载失败时回退主题底色。 - **加载反馈与大数据处理:** - 改善搜索、历史消息、图片处理、故事生成和备份等流程的加载提示与操作状态一致性。 - 最近角色按可见区域加载头像,减少屏外图片处理。 - 多图聊天备份改为逐条写入消息并流式编码图片,降低长会话导出的内存占用。 - 完整备份不再打包可重建的搜索索引与构建进度,减少冗余数据。 - 完整备份与角色 ZIP 先在缓存中完成打包及相关检查,再写入所选文件,减少打包失败或超限时覆盖旧文件的风险。 - **关于页与启动体验:** - 调整关于页品牌展示与信息排版,新增 Discord 社区入口,方便交流与反馈。 - Android 12 及以上版本使用独立的透明开屏 Logo,改善启动图标的白色方底显示。 #### 🐛 问题修复 - 修复超长角色介绍和首页消息预览造成大量文本测量、可能引发界面卡顿或无响应的问题,并避免预览截断拆开 Emoji 等字符。 - 修复输入对话框在键盘展开后正文挤占底部操作区的问题,改善提示词编辑器的滚动、光标避让和输入体验。 - 修复裁剪页取消加载时,云端图片读取无法及时中止的问题,完善取消后的资源释放。 - 修复正式构建中数据库字段混淆导致完整备份导出失败的问题。(@onemind66) - 修复完整备份携带旧的数据库内部标识,导致恢复校验失败的问题。(@onemind66) - 修复完整备份丢失多段主开场白的问题,新备份可保留后续开场白及原始空白、空段和末尾分隔符。 - 修复世界书本地条目分类在完整备份恢复后丢失,以及已清空的扫描深度、大小写、整词匹配、分组权重、持续、冷却和延迟等设置在导出后重新出现的问题。 - 修复编辑、删除或复制备份内容后,单聊角色、群聊成员与发言者、摘要覆盖范围及故事关联可能错误匹配的问题;缺失或有歧义的来源会安全跳过或清理,并记录警告。 - 修复单聊备份中图片的新增、编辑、删除和复制未正确反映到恢复结果,以及删除群聊消息后遗留图片关系可能被新消息继承的问题;损坏的内嵌图片会在覆盖前拒绝恢复。 - 修复较大请求或响应日志超出数据库读取窗口而导致备份失败的问题,按 UTF-8 字节分块读取,保留跨块字符与完整正文。 - 修复完整备份中的超长会话因菜单导入的十万条消息限制而无法恢复的问题;完整恢复改为按归档字节限额处理。 - 修复截断或损坏的 ZIP 可能通过恢复检查的问题,补充完整目录、实际文件大小与 CRC 校验,在替换当前数据前拒绝异常归档。 - 完善角色 ZIP 的格式识别、路径与容量校验,避免清单、世界书、普通配置或误选的完整备份被当作角色导入;单卡损坏或超限可计入失败并继续处理后续角色。 - 修复角色导出期间页面或进程重建后,系统文件选择结果丢失原角色选择的问题。 #### ℹ️ 使用说明与注意事项 - **备份与恢复仍为试验性功能:** 跨设备与跨版本恢复的完整可靠性尚未得到充分验证。恢复会完全替换现有应用数据,不会合并;操作前请先备份需要保留的数据,完成后查看详情并点击重启。 - **备份 ZIP 未加密:** 文件可能包含 API 密钥、自定义请求头、私密对话、提示词、附件及已保存的请求日志,请妥善保管,勿公开分享。 - 新导出使用 v3,继续支持恢复 portable v2、V1 JSONL 快照及原始 SQLite 快照。手动编辑仅适用于 v3,请遵循[完整数据备份与恢复说明](../manual-backup-restore.md);旧备份中已经丢失的开场白无法通过本次更新补回。 - 完整恢复后默认关闭搜索加速,并清空旧索引与构建进度。普通搜索仍可使用;需要加速时,请在设置中手动开启并重新构建索引。 - 角色 ZIP 导入与导出共用以下限额:最多 1,000 个条目、64 MiB 压缩数据、单张 JSON 8 MiB、累计 JSON 32 MiB。整包容量或条目数超限时拒绝整包;导出超限时请减少所选角色或缩小较大的卡片。 - 完整恢复会跳过找不到唯一来源角色的单聊,并在详情中记录警告;需要保留这些聊天时,可从备份取出 JSONL,使用单聊导入流程重新选择角色。 - 请求日志的每个请求或响应正文最多支持 16 MiB,超限时备份导出失败,不会截断正文。完整恢复支持超过十万条消息的会话,单聊菜单导入仍保留原有上限。 --- ### English Version (英文) #### ✨ What's New - **#27 Recent Characters and Character Content Pages:** - Switch the home page's recent section between Recent Content and Recent Characters. Your selection is remembered. - Recent characters are sorted by activity in their associated content, with avatars, the latest content title, item counts, and update times. - Open a character to browse their single chats, group chats, and stories together. Filter by type, open existing content, or create a single chat with that character preselected. - Character content pages show the latest chat message or a story excerpt. Chat previews hide reasoning blocks and show an image placeholder for image-only messages. - **Bulk Character Card Import and Export:** (@onemind66) - Long-press in Character Manager to enter multi-selection, select or deselect all filtered results, and export selected characters as a ZIP. Selections are retained when filters change. - ZIP archives contain individual Character Card V2 JSON files, using the same bound World Book and character Regex packaging rules as single-card exports. - The existing character import entry now accepts character ZIP archives, reuses World Book confirmation and character saving, and reports successful and failed imports. - **Editable Full Backups and Restore Details:** (@onemind66) - Full backups now use format v3. Character cards, World Books, global Regex scripts, single chats, and story documents match their corresponding menu import formats and can be extracted for individual import. - Edit, delete, or add documents inside a backup according to the documented rules. Restoration uses the edited content, with local relationship metadata stored separately so body text does not need to be edited in two places. - Backed-up character cards retain bound World Books and character Regex scripts. Stories retain character and World Book matching hints, while chats retain the images, summaries, and session settings needed for restoration. - The Backup and Restore page now offers expandable, selectable, and copyable technical details with processing stages, counts, warnings, and error summaries. - Restore details remain visible until you choose Restart RPClient, allowing you to review skipped content and other warnings first. - **Background Image Cropping:** - Page and character backgrounds now use the shared image cropping flow, with dragging, zooming, rotation, horizontal flipping, and screen or original aspect ratios. - Background import and initial preview provide loading and cancellation feedback. Failure or cancellation preserves the existing background and editing draft. - When setting a character background for the first time while character backgrounds are disabled, a one-time prompt lets you enable them directly. #### 🎨 Improvements - **Background Settings and Rendering:** - Adjust background and surface appearance options before choosing an image. New background configurations default to no blur and a 35% background scrim. - Character content pages follow the Use Character Card Background setting, applying the character image with general appearance settings and falling back to the general background when unavailable. - Unified background rendering across general pages, chats, group chats, stories, and editing previews. Reduced repeated image decoding during streaming replies, with theme-color fallbacks when image loading fails. - **Loading Feedback and Large Data Handling:** - Improved consistency of loading feedback and available actions across search, message history, image processing, story generation, and backups. - Recent character avatars load according to the visible area, reducing off-screen image processing. - Backups write chat messages individually and stream image encoding, reducing memory use when exporting long conversations with many images. - Full backups omit rebuildable search indexes and build progress, reducing redundant data. - Full backups and character ZIP exports finish packaging and related checks in cache before writing the selected file, reducing the risk of overwriting an existing file when packaging fails or limits are exceeded. - **About Page and Startup:** - Refined branding and information layout on the About page and added a Discord community entry for discussion and feedback. - Android 12 and later now use a dedicated transparent splash logo, improving the startup icon's white square background appearance. #### 🐛 Bug Fixes - Fixed excessive text measurement for very long character descriptions and home-page message previews that could cause lag or an unresponsive interface. Preview truncation also preserves Emoji and other surrogate-pair characters. - Fixed dialog content crowding out bottom actions when the keyboard opens, and improved scrolling, cursor visibility, and input in the prompt editor. - Fixed cloud image reads not stopping promptly when crop loading is cancelled, and improved resource cleanup after cancellation. - Fixed database field obfuscation causing full backup exports to fail in release builds. (@onemind66) - Fixed stale internal database identity metadata in full backups causing restore validation failures. (@onemind66) - Fixed full backups losing additional primary greetings. New backups preserve subsequent greetings, original whitespace, empty segments, and trailing separators. - Fixed local World Book entry categories being lost during full backup restoration, and cleared scan depth, case sensitivity, whole-word matching, group weight, sticky, cooldown, and delay settings reappearing after export. - Fixed incorrect single-chat character, group member and speaker, summary coverage, and story relationships after editing, deleting, or copying backup content. Missing or ambiguous sources are safely skipped or cleared and reported as warnings. - Fixed added, edited, deleted, or copied single-chat images not being reflected correctly after restore, and orphaned group-chat image links potentially attaching to new messages. Corrupt embedded images are rejected before data replacement. - Fixed large request or response logs causing backup failures by exceeding the database read window. UTF-8 byte chunks preserve characters across chunk boundaries and retain the complete saved content. - Fixed full backups of very long conversations failing to restore because of the menu importer's 100,000-message limit. Full restoration now follows archive byte limits instead. - Fixed truncated or corrupt ZIP archives potentially passing restore checks. Complete archive directory, actual file size, and CRC checks reject invalid archives before replacing current data. - Improved character ZIP format detection, path validation, and size checks so manifests, World Books, ordinary configurations, and accidentally selected full backups are not imported as characters. Damaged or oversized individual cards count as failures while subsequent cards can still be processed. - Fixed character export selections being lost when the page or process is recreated while the system file picker is open. #### ℹ️ Notes and Precautions - **Backup and restore remains experimental:** Full reliability across devices and app versions has not been sufficiently verified. Restoring completely replaces existing application data without merging. Back up anything you want to retain first, then review the restore details and choose Restart RPClient when finished. - **Backup ZIP files are not encrypted:** They may contain API keys, custom headers, private conversations, prompts, attachments, and saved request logs. Store them securely and do not share them publicly. - New exports use v3. Restoration still supports portable v2, V1 JSONL snapshots, and raw SQLite snapshots. Manual editing applies only to v3; follow the [full backup and restore guide](../manual-backup-restore.md). Greetings already lost in older backups cannot be recovered by this update. - Full restoration disables search acceleration and clears old indexes and build progress. Ordinary search remains available. Enable acceleration manually in settings and rebuild the index if needed. - Character ZIP import and export share these limits: 1,000 entries, 64 MiB of compressed data, 8 MiB per JSON file, and 32 MiB of cumulative JSON data. Archives exceeding archive-wide size or entry limits are rejected in full. If export exceeds a limit, select fewer characters or reduce a large card's size. - Full restoration skips single chats whose source character cannot be uniquely resolved and records warnings in the details. To retain those chats, extract their JSONL files and use single-chat import to choose a character again. - Each request or response log body is limited to 16 MiB. Exceeding this limit fails backup export rather than truncating content. Full restoration supports conversations exceeding 100,000 messages; the single-chat menu importer retains its existing limit.