KJ

k4wai1/jav

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

0 stars 0 forks 品質 54 トレンド 14NOASSERTION

Jav — non-root Android control runtime over MCP: on-device UI automation, native telemetry APIs and dual-tier AI (Jev + director)

概要

Normative detail lives in AGENTS.md, PROTOCOL.md, ARCHITECTURE.md, PLAN.md and docs/specs/. An on-device app (, dev.k4wai1.jav) exposes the screen via AccessibilityService and privileged actions via (started by the user) to a Go MCP server on the PC (jav, cmd/jav, stdio). Jav never loops, never plans and never invents coordinates. The Director holds the loop; Jav holds the device. Every tool returns {ok, verified, evidence, hint}. verified: true only with real post-verification, never on "command sent". tools/list carries a compact 1–2 line description per tool; the full 7-section spec loads as an MCP Resource (android://tool/ , android://tools/ , index android://tools/catalog). Startup measured with a real tiktoken tokenizer: (instructions + 38 compact descriptions) and (includes the fixed MCP schema for 38 tools, not reducible without consolidating) — so ~8.8k before v1.2.0. See docs/benchmarks/PERFORMANCE.md §9.

README

以下は原文 README の抜粋です。原文を見る。

English first, español después. Normative detail lives in AGENTS.md, PROTOCOL.md, ARCHITECTURE.md, PLAN.md and docs/specs/.


What is Jav

Jav is a full-control Android MCP runtime without root. An on-device app (Jav, dev.k4wai1.jav) exposes the screen via AccessibilityService and privileged actions via Shizuku (started by the user) to a Go MCP server on the PC (jav, stdio).

Jav (this repo) Director (external, not part of Jav)
What Go MCP server (cmd/jav) + Android app dev.k4wai1.jav OpenCode / Claude / Cursor / operator
Does exposes 38 atomic MCP tools, runs no loops and no internal planner reads each screen, picks one atomic tool per step, verifies the effect
Tactical help serves resolve_element (blind S1 Jev resolver) decides goals, gates, and approves previews

Jav never loops, never plans and never invents coordinates. The Director holds the loop; Jav holds the device.

Architecture

Interactive version: docs/diagrams/jav-architecture.html

The Director reads the screen, picks one atomic tool per step and verifies the effect. When the screen is noisy, resolve_element adds a blind tactical resolver (S1 Jev): the accessibility tree is pruned to a numbered table (≤254 candidates) and Jev answers in a single pass — a Choice + confidence, no free text, anti-prompt-injection by construction. conf ≥ 0.70 (tau) or

GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →