From atp
Android app static analysis — build navigation map, API scenarios, and View state map
How this skill is triggered — by the user, by Claude, or both
Slash command
/atp:analyze-appThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Analyze the Android source code in the current project to build a complete app map.
Analyze the Android source code in the current project to build a complete app map.
Run all three analyses in order and save results to .claude/app-map/.
Analyze:
AndroidManifest.xml for Activity declarationsstartActivity(), startActivityForResult() callsnav_graph.xml, navigation/*.xml for Fragment transitionsIntent creation patternsSave to: .claude/app-map/navigation_map.mermaid
Format: Mermaid flowchart showing Activity/Fragment transition relationships.
Analyze:
@GET, @POST, @PUT, @DELETE annotationsonSuccess) and error (onError) branchesSave to: .claude/app-map/api_scenarios.json
Format:
{
"apis": [
{
"endpoint": "GET /api/users",
"interfaceFile": "UserApi.kt:15",
"callers": [
{
"file": "UserViewModel.kt:42",
"successHandler": "UserViewModel.kt:45-50",
"errorHandler": "UserViewModel.kt:51-55"
}
]
}
]
}
Analyze:
View.VISIBLE, View.GONE, View.INVISIBLE conditionsLiveData.observe(), StateFlow.collect() call sites@{viewModel.isLoading})Save to: .claude/app-map/view_state_map.json
Format:
{
"screens": [
{
"name": "LoginActivity",
"file": "LoginActivity.kt",
"states": [
{
"viewId": "btn_login",
"visibilityCondition": "isFormValid && !isLoading",
"dataSource": "LoginViewModel.loginFormState",
"sourceFile": "LoginActivity.kt:67"
}
]
}
]
}
.claude/app-map/ directory if it doesn't exist.npx claudepluginhub panicgit/android-test-pilot --plugin android-test-pilotGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.