Agent skill · software engineering · aradotso
pokeclaw-android-ai-agent
PokeClaw (PocketClaw) — on-device Android AI phone agent using Gemma 4 via LiteRT-LM with tool calling, accessibility automation, and optional cloud models.
Why this skill is useful
Adds executable scripts for on-device AI automation and tool calling that are not available in public documentation.
What it needs
Requires android studio, kotlin installed locally. About 8k tokens when loaded. Last updated 2026-07-09. 70 stars on the source repository.
What this skill does
PokeClaw Android AI Agent Skill by ara.so — Daily 2026 Skills collection. PokeClaw is an open-source Android app that runs Gemma 4 entirely on-device via LiteRT-LM with native tool calling. The LLM reads the screen as a UI tree, selects tools (tap, swipe, type, open app, send message, etc.), executes them through Android Accessibility Services, observes the result, and loops until the task is complete — no cloud, no API key required for local mode. --- Architecture Overview --- Installation / Setup 1. Clone the repo 2. Open in Android Studio Android Studio Hedgehog or newer recommended SDK: Android 9+ (API 28), target API 34+ Kotlin 1.9+ 3. Add LiteRT-LM dependency In app/build.gradle.kts: 4. AndroidManifest.xml permissions res/xml/accessibilityserviceconfig.xml: 5. Build & install APK Or download the latest release APK. --- Core Concepts Tool Definition Tools are declared as JSON schemas that LiteRT-LM uses for structured output. Define a tool: Registering Tools with LiteRT-LM --- Accessibility Service Implementation --- Task Orchestrator --- Tool Dispatcher --- Skills System Skills are reusable multi-step workflows. Write a skill as a Kotlin class or (upcoming) a plain-text .skill file. Built-in skill example: Auto-Reply kotlin // skills/AutoReplySkill.kt class AutoReplySkill( private val accessibility: PokeAccessibilityService, private val llmEngine: LLMEngine, private val contact: String, private val app: String = "WhatsApp" ) { // Called when a new message notification arrives from contact` suspend fun handleIncomingMessage(notificationText: String): String { // St
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills aradotso/pokeclaw-android-ai-agent