Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/kelvinkosbab/appbootstrapai/android-accessibility-pronpx skills add kelvinkosbab/AppBootstrapAI --skill android-accessibility-progit clone --depth 1 https://github.com/kelvinkosbab/AppBootstrapAIWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kelvinkosbab/appbootstrapai/android-accessibility-pro)<a href="https://agentmods.dev/skills/kelvinkosbab/appbootstrapai/android-accessibility-pro"><img src="https://agentmods.dev/badge/skills/kelvinkosbab/appbootstrapai/android-accessibility-pro.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00092 | $0.01100 |
| Opus 5 | $0.00046 | $0.00550 |
| Sonnet 5 | $0.00018 | $0.00220 |
| Haiku 4.5 | $0.00009 | $0.00110 |
Grade A, and why
android-accessibility-pro scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 74 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Review Android app accessibility for correctness and completeness. This is the deep-review companion to the always-on android-accessibility-best-practices.md rule — the rule steers while writing; this skill audits whole screens. The Android sibling of swift-accessibility-pro. Report only genuine problems; don't nitpick.
Applies to Jetpack Compose (primary) with View-interop notes. If asked to write or fix rather than review, make the changes directly and summarize them in the same file-by-file format.
Review process:
- Audit the TalkBack semantics tree using
references/semantics.md— content descriptions, roles, merging, state descriptions, custom actions, live regions, and the deprecated-announcement migration. - Audit Bluetooth assistive input using
references/input-access.md— keyboard/D-pad reachability, Switch Access scanning, braille-display label quality. - Audit visual accessibility using
references/visual.md— contrast, dynamic text scaling, touch targets, color-independence, reduce motion.
If doing a partial review, load only the relevant reference files.
Core Instructions
- Audit the semantics tree, not the code style. The question for every Composable is what TalkBack/keyboard/braille users actually receive — trace
semanticsmodifiers to the resulting node, don't assume. - The input methods share one tree. A
CustomAccessibilityActionserves TalkBack's action menu, Switch Access, AND braille users; a missing one fails all three. Report tree problems once, noting every affected input method. - Flag deprecated announcement APIs on sight:
announceForAccessibility()/TYPE_ANNOUNCEMENT(deprecated Android 16) →liveRegion/paneTitle/stateDescriptionsemantics. AI-generated code still emits the old calls. - Localization is part of accessibility. Hardcoded strings in
contentDescription,stateDescription, or action labels are findings — everything routes throughstringResource(...). - Severity by user impact: task-blocking (unreachable control, missing label on a primary action, focus trap) > degraded (fragmented rows, sub-48dp targets, contrast near-misses) > polish (verbosity tuning).
- Name the verification path where relevant: Compose semantics tests (
onNodeWithContentDescription), the Accessibility Scanner app, TalkBack on device, or a paired Bluetooth keyboard. - Never suggest suppressing or hollowing out an accessibility affordance to silence a finding.
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 74 lines · 92 tokens per session scan A 421317d9a4cb
android-accessibility-pro is a skill published in the GitHub repository kelvinkosbab/AppBootstrapAI (5 stars, last pushed 14d ago), licensed MIT. It adds 92 tokens to every session and 1,100 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
kmp-glassmorphism-ui
Implements a production-grade Glassmorphism design system for Kotlin Multiplatform (KMP) Compose Multiplatform projects. Use when the user asks for glass UI, frosted glass effects, glassmorphism theme, translucent/transparent UI components, liquid/blob animated backgrounds, or premium modern dark-mode design in a…
flutter-cherry-pick
How to land a formal cherry-pick of a merged PR for the flutter/flutter repo stable or beta channel. Only use for flutter/flutter landed pull requests. Only use when the cherry pick request is into "stable", "beta" or a branch that has the format with flutter- . -candidate.0.
updating-android-sdk
Upgrades Flutter's Android SDK dependency to a new Android API version (or preview/canary release) in packages.txt, verifies CIPD tag uniqueness, and packages/uploads the binaries using createcipdpackages.sh across macOS, Linux, and Windows. Use whenever a user wants to pick up a new version of Android or upload…
analyze-github-flake
Expertise in analyzing flake github issues in the flutter/flutter repository. Use when a user wants to analyze the flakiness of a specific link to a flutter github issue.
upgrade-browser
Upgrade browser versions (Chrome or Firefox) in the Flutter Web Engine and/or Framework tests. Use when asked to roll or upgrade Chrome or Firefox to a newer version.
run-devicelab-with-led
Run DeviceLab tests for Flutter PRs using LUCI's led CLI tool. Use when asked to run, launch, try, or deflake a post-submit or devicelab test against a PR using led.