بنقرة واحدة
android-adb-debug
Linux→Windows AndroidエミュレータへのADBデバッグ。スクリーンショット、ログ取得、UI操作、アプリインストールなど。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Linux→Windows AndroidエミュレータへのADBデバッグ。スクリーンショット、ログ取得、UI操作、アプリインストールなど。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Pipelines Service のAPI仕様書。ヘルスチェック、データ鮮度、成功率、キュー状況など、エージェントがAPI経由でパイプラインの監視・運用を行う。
実装計画(Plan)ファイルを作成する。TDD・コミット分割・テストケース一覧・工数見積もりを含む再現性の高い Plan を生成する。機能追加・バグ修正・リファクタリング等の実装計画策定時に使用。トリガー: 「Planを作って」「計画を立てて」「実装計画を」
Pipelines Service のデバッグワークフロー。API経由でワークフロー状態確認、失敗原因の特定、stepログの取得、手動リトライを行う。
ToolCall テスト実行スキル。AIが自律的にTmuxでBEを起動し、ログを収集しながら全モデル×全ツールのテストを実行し、テスト結果とログから不具合原因を特定する。
A skill to break down ambiguous requests into small, immediately implementable requirement definitions through strategic questioning. Focus on WHY and WHAT, excluding HOW. This is used when ambiguous requests such as 'I want to add a feature like XX,' 'I want to fix XX,' or 'I did XX' are made outside of Plan Mode.
OSSのからrawファイルを直接取得。Claude Codeの最新CHANGELOG確認など、OSSの最新情報や仕様を手軽に取得が可能
| name | android-adb-debug |
| description | Linux→Windows AndroidエミュレータへのADBデバッグ。スクリーンショット、ログ取得、UI操作、アプリインストールなど。 |
| allowed-tools | Bash, Read, Write |
LinuxからWindows上のAndroidエミュレータをADB経由でデバッグするスキル。
adb-connection-troubleshoot の初回セットアップが完了していること.env.local に WINDOWS_IP=100.x.x.x が設定されていること./.claude/skills/android-adb-debug/scripts/linux_connect_and_install.sh
接続 → ビルド → インストール → アプリ起動を一括実行。
# デバイスIPとポート(.env.localから読み込むか、直接指定)
DEVICE="100.x.x.x:5559"
注意: 画像を Read ツールで表示するのは時間がかかるため、デバッグには向きません。
VS Code で /tmp/screen.png を直接開くか、uiautomator で UI 状態を確認してください。
# デバイス上で撮影 → ローカルに転送
adb -s $DEVICE shell screencap /sdcard/screen.png
adb -s $DEVICE pull /sdcard/screen.png /tmp/screen.png
# VS Code で /tmp/screen.png を直接開いて確認
# code /tmp/screen.png
# 全ログ(最新50件)
adb -s $DEVICE logcat -d -t 50
# エラーのみ
adb -s $DEVICE logcat -d "*:E" | tail -30
# クラッシュ専用バッファ(最新200件)
adb -s $DEVICE logcat -b crash -d -t 200
# アプリ固有のログ(タグ指定)
adb -s $DEVICE logcat -s EgoGraph:* | tail -50
# アプリのPIDでフィルタ
PID=$(adb -s $DEVICE shell pidof dev.egograph.app)
adb -s $DEVICE logcat -d --pid=$PID | tail -50
# アプリ起動
adb -s $DEVICE shell am start -n dev.egograph.app/.MainActivity
# アプリ強制停止
adb -s $DEVICE shell am force-stop dev.egograph.app
# アプリ再起動
adb -s $DEVICE shell am force-stop dev.egograph.app && \
adb -s $DEVICE shell am start -n dev.egograph.app/.MainActivity
# アプリアンインストール
adb -s $DEVICE uninstall dev.egograph.app
座標を推測するのではなく、UI 階層から正確な座標を取得します。
# UI 階層を XML でダンプ
adb -s $DEVICE shell uiautomator dump
adb -s $DEVICE pull /sdcard/window_dump.xml /tmp/ui.xml
# 特定のテキストを持つ要素を検索
cat /tmp/ui.xml | grep 'text="Save"'
cat /tmp/ui.xml | grep 'text="Send"'
# resource-id で検索
cat /tmp/ui.xml | grep 'resource-id="dev.egograph.app:id/save_button"'
# bounds 属性から座標を取得 [left,top][right,bottom]
# 例: <node bounds="[960,100][1080,180]" ...> → x=1020, y=140 (中央)
# ワンライナーで座標を特定してタップ
adb -s $DEVICE shell uiautomator dump && \
adb -s $DEVICE pull /sdcard/window_dump.xml - && \
BOUNDS=$(grep -o 'bounds="\[[0-9]*,[0-9]*\]\[.*?\]' /tmp/ui.xml | head -1 | \
sed 's/bounds="\[\([0-9]*\),\([0-9]*\)\[.*\]"/\1 \2/') && \
adb -s $DEVICE shell input tap $BOUNDS
# 座標タップ(x=540, y=1200)
adb -s $DEVICE shell input tap 540 1200
# テキスト入力
adb -s $DEVICE shell input text "hello"
# キーイベント
adb -s $DEVICE shell input keyevent 66 # Enter
adb -s $DEVICE shell input keyevent 4 # Back
adb -s $DEVICE shell input keyevent 3 # Home
# スワイプ(x1,y1 → x2,y2、duration ms)
adb -s $DEVICE shell input swipe 540 1500 540 500 300
# プロセス確認
adb -s $DEVICE shell ps -A | grep egograph
# メモリ使用量
adb -s $DEVICE shell dumpsys meminfo dev.egograph.app
# アクティビティスタック
adb -s $DEVICE shell dumpsys activity activities | grep -A 5 "dev.egograph"
# インストール済みパッケージ確認
adb -s $DEVICE shell pm list packages | grep egograph
# デバイス → ローカル
adb -s $DEVICE pull /sdcard/Download/file.txt ./file.txt
# ローカル → デバイス
adb -s $DEVICE push ./file.txt /sdcard/Download/file.txt
# デバイス内のファイル一覧
adb -s $DEVICE shell ls -la /sdcard/
# APKインストール
adb -s $DEVICE install -r ./app-debug.apk
# 既存データを保持してインストール
adb -s $DEVICE install -r -d ./app-debug.apk
DEVICE="100.x.x.x:5559"
adb -s $DEVICE shell screencap /sdcard/screen.png
adb -s $DEVICE pull /sdcard/screen.png /tmp/screen.png
# → /tmp/screen.png を確認
# 最近のエラーログ
adb -s $DEVICE logcat -d "*:E" | tail -50
# クラッシュログ(FATAL含む)
adb -s $DEVICE logcat -d | grep -E "FATAL|Exception|Error" | tail -30
# PIDで絞り込み(再現直後に取得)
PID=$(adb -s $DEVICE shell pidof dev.egograph.app)
adb -s $DEVICE logcat -d --pid=$PID | tail -50
# アプリ再起動して初期状態から確認
adb -s $DEVICE shell am force-stop dev.egograph.app
adb -s $DEVICE shell am start -n dev.egograph.app/.MainActivity
sleep 2
adb -s $DEVICE shell screencap /sdcard/screen.png
adb -s $DEVICE pull /sdcard/screen.png /tmp/screen.png
| スキル | 用途 |
|---|---|
adb-connection-troubleshoot | 接続問題のトラブルシューティング |
references/webview-dom-debug.md