Add AndroidKit semantic UI support - #53
Conversation
Co-Authored-By: siGit Code <noreply@sigit.si>
There was a problem hiding this comment.
This change adds semantic UI automation support for Android via the new XCRS AndroidKit companion runner. It introduces a new ui_tap tool for semantic element activation, extends ui_describe and ui_element_list to Android, and normalizes AndroidKit's accessibility tree to the cross-platform element-list shape. The CLI gains android-kit subcommands for installing, starting, stopping, and querying AndroidKit on devices. The MCP and tool schemas are updated to accept app_id (Android package name or Apple bundle ID), with validation to prevent conflicting identifiers. Documentation is updated and a new docs/androidkit.md is added. Reviewers should focus on the new AndroidKit integration points, the normalization logic for AndroidKit elements, and the cross-platform tool schema changes.
Automated review by siGit Code Review · commit 50c9e43
Co-Authored-By: siGit Code <noreply@sigit.si>
Co-Authored-By: siGit Code <noreply@sigit.si>
# Conflicts: # crates/xcrs/src/mcp.rs
There was a problem hiding this comment.
This change adds support for semantic UI automation on Android via the new XCRS AndroidKit companion runner. The CLI gains an android-kit subcommand for installing, starting, stopping, and probing AndroidKit on a device. The MCP contract is extended so that ui_describe, ui_element_list, and ui_tap work cross-platform: they now accept app_id (Android package name or Apple bundle id), and will use AndroidKit if available for Android targets. AndroidKit is detected and its capabilities are surfaced in device_capabilities. The element extraction logic is extended to normalize AndroidKit's accessibility hierarchy into the same shape as Apple's. Documentation is updated to describe AndroidKit setup and usage. Reviewers should focus on the new AndroidKit client, the cross-platform logic in MCP tools, and the correctness of element extraction and error handling for AndroidKit-backed flows.
Automated review by siGit Code Review · commit f9602df
Related Issue
Fixes #
Description
Type of Change
How Has This Been Tested?
cargo test --all-featuressmb <command>)Checklist
cargo check --workspacepassescargo clippy --workspace --tests -- -D warningspassescargo fmt --all -- --checkpassesunwrap()orexpect()calls in production codemod.rsfiles introducedCargo.tomland inherited with{ workspace = true }Release Notes