:app:assembleDebug. - Requires JDK 17+ and Android SDK 36; a keystore must be configured for a public release. ### 🔍 What Was Found The ImWuMie/wear-agent repository presents a Wear OS app designed for round screens. It uses the official Wear Compose Material 3 and works with any OpenAI-compatible APIs, as well as Anthropic. Response streaming is implemented via SSE for OpenAI Completions/Responses and the Anthropic Messages API. The chat can display token usage stats: each response shows ↓ out, ↑ in (cached), and t/s. Markdown and LaTeX are supported: CommonMark with GFM tables and strikethrough, with formulas in $..$, $$..$$, \(..\), and \[..\] rendered via JLaTeXMath, while literal dollar signs and code spans are left untouched. A standout feature is thinking traces: reasoning models (e.g., DeepSeek) stream their chain of thought into a collapsible block within the response; the block automatically expands during reasoning and collapses when the main answer begins, with its state preserved alongside the message. Long-pressing a message opens a full-screen actions page: copy, text selection, regeneration (including for user messages), editing, and deletion. The interface uses a pull-up drawer: the handle sits 9dp above the bottom edge of the screen — pull it up to reveal the input field, pull higher for settings. ### 💡 Why It Matters The project is a working example of how to fit an AI chat into the constraints of a watch: a tiny screen, limited memory, and the need for background operation. The app runs a single turn in a foreground service with a Stop button in the notification, saving partial output when stopped. A session log is kept in append-only JSONL: if the process is killed, the file is restored on the next launch, so nothing lives only in memory. For developers, the architecture is valuable: the code is split into agent/ with no Android dependencies (ChatClient on OkHttp SSE, AgentService, Transcript), session/ on DataStore, and presentation/ on Wear Compose. Multiple endpoint profiles are supported, with automatic model list loading and per-endpoint configuration of API type, key, and model. ### 🧩 Context Building requires JDK 17+ and Android SDK 36. Release signing uses a keystore configured via keystore.properties or environment variables in CI; if the keystore is missing, the release workflow refuses to publish and verifies that the APK is not signed with a debug key. The repository warns that losing the keystore means it becomes impossible to update an installed release under the same package name. The TODO list includes plans for watch-side tool execution and a multi-turn tool-use loop. The app is localized: Chinese (default) and English. The project is distributed under the GNU AGPLvSource: github.com · post in Telegram