mobile-use-setup

Interactive setup wizard for Minitap mobile-use SDK. USE WHEN user wants to set up mobile automation, configure mobile-use SDK, connect iOS or Android devices, or create a new mobile testing project.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "mobile-use-setup" with this command: npx skills add minitap-ai/mobile-use/minitap-ai-mobile-use-mobile-use-setup

Mobile-Use SDK Setup Wizard

Interactive guide for setting up the Minitap mobile-use SDK with support for iOS and Android devices, Platform and Local modes.

When to Apply

This skill activates when users want to:

  • Set up mobile automation for an app
  • Configure the Minitap mobile-use SDK
  • Connect physical iOS or Android devices
  • Set up cloud virtual devices
  • Create a new mobile testing project

Setup Flow

Phase 1: Gather Requirements

Ask the user these questions using the AskUserQuestion tool:

  1. Target Platform

    • Question: "Which platform(s) do you want to automate?"
    • Options: iOS only, Android only, Both iOS and Android
  2. LLM Configuration Mode

    • Question: "How do you want to configure AI/LLM?"
    • Options:
      • Platform (Recommended) - Minitap handles LLM config, just need API key
      • Local - Full control with local config files and your own API keys
  3. Device Type (if iOS selected)

    • Question: "What iOS device setup do you need?"
    • Options:
      • Physical device (iPhone/iPad via USB)
      • Simulator (Xcode iOS Simulator)
  4. Device Type (if Android selected)

    • Question: "What Android device setup do you need?"
    • Options:
      • Physical device (via USB/WiFi ADB)
      • Cloud device (Minitap virtual Android)

Phase 2: Check Prerequisites

Run these checks based on user selections:

# Always check
python3 --version    # Requires 3.12+
which uv            # Package manager

# For iOS physical device
which idevice_id    # libimobiledevice
which appium        # Appium
appium driver list  # XCUITest driver

# For iOS simulator
which idb_companion  # Facebook idb

# For Android
which adb           # Android platform tools
adb devices         # Device connection

Phase 3: Install Missing Dependencies

iOS Physical Device Setup:

# Install libimobiledevice
brew install libimobiledevice

# Install Appium + XCUITest
npm install -g appium
appium driver install xcuitest

iOS Simulator Setup:

brew tap facebook/fb
brew install idb-companion

Android Setup:

# macOS
brew install --cask android-platform-tools

# Linux
sudo apt install android-tools-adb

UV Package Manager:

curl -LsSf https://astral.sh/uv/install.sh | sh

Phase 4: Create Project

# Create new project
uv init <project-name>
cd <project-name>

# Add SDK
uv add minitap-mobile-use python-dotenv

Phase 5: Configure Credentials

For Platform Mode:

  1. Direct user to https://platform.minitap.ai to create account
  2. Navigate to API Keys → Create API Key
  3. Create .env file:
MINITAP_API_KEY=<their-key>
  1. Add .env to .gitignore

For Local Mode:

  1. Copy the config template:
    cp llm-config.override.template.jsonc llm-config.override.jsonc
    
  2. Edit llm-config.override.jsonc with preferred models (refer to llm-config.defaults.jsonc for recommended settings)
  3. Add provider API keys to .env (OPENAI_API_KEY, etc.) or set MINITAP_API_KEY for optimized config

Phase 6: Device-Specific Setup

iOS Physical Device (requires manual Xcode steps):

Inform user they need to:

  1. Open WebDriverAgent in Xcode:
    open ~/.appium/node_modules/appium-xcuitest-driver/node_modules/appium-webdriveragent/WebDriverAgent.xcodeproj
    
  2. Sign these targets with their Apple ID:
    • WebDriverAgentRunner
    • WebDriverAgentLib
    • IntegrationApp
  3. Change Bundle IDs to unique values
  4. Build IntegrationApp once with device connected
  5. Trust developer certificate on device: Settings → General → VPN & Device Management

Android Physical Device:

Inform user they need to:

  1. Enable Developer Options (tap Build Number 7 times)
  2. Enable USB Debugging
  3. Connect device and tap "Allow" on USB debugging prompt

Phase 7: Create Starter Script

Generate main.py based on configuration:

Platform Mode:

import asyncio
from dotenv import load_dotenv
from minitap.mobile_use.sdk import Agent
from minitap.mobile_use.sdk.types import PlatformTaskRequest

load_dotenv()

async def main() -> None:
    agent = Agent()
    await agent.init()

    result = await agent.run_task(
        request=PlatformTaskRequest(task="your-task-name")
    )
    print(result)
    await agent.clean()

if __name__ == "__main__":
    asyncio.run(main())

Local Mode:

import asyncio
from dotenv import load_dotenv
from minitap.mobile_use.sdk import Agent
from minitap.mobile_use.sdk.types import AgentProfile
from minitap.mobile_use.sdk.builders import Builders

load_dotenv()

async def main() -> None:
    profile = AgentProfile(name="default", from_file="llm-config.override.jsonc")
    config = Builders.AgentConfig.with_default_profile(profile).build()

    agent = Agent(config=config)
    await agent.init()

    result = await agent.run_task(
        goal="Your automation goal here",
        name="task-name"
    )
    print(result)
    await agent.clean()

if __name__ == "__main__":
    asyncio.run(main())

Phase 8: Verify Setup

Run verification based on device type:

# iOS physical
idevice_id -l

# iOS simulator
xcrun simctl list devices

# Android
adb devices

# Test SDK import
uv run python -c "from minitap.mobile_use.sdk import Agent; print('SDK OK')"

Quick Reference

Setup TypeKey DependenciesVerification
iOS PhysicalAppium, XCUITest, libimobiledeviceidevice_id -l
iOS Simulatoridb-companionxcrun simctl list
Android PhysicalADBadb devices
Android CloudNone (Platform only)N/A

Troubleshooting

IssueSolution
Python < 3.12Install Python 3.12+ via pyenv or homebrew
UV not foundcurl -LsSf https://astral.sh/uv/install.sh | sh
idevice_id not foundbrew install libimobiledevice
ADB not foundbrew install --cask android-platform-tools
WDA build failsCheck Xcode signing for all 3 targets
Device unauthorizedEnable USB debugging, tap Allow on device
CLT version errorsudo xcode-select --install

Examples

Example 1: New iOS automation project

User: "Help me set up mobile automation for my iOS app"
→ Ask: Platform preference (iOS), Mode (Platform), Device (Physical)
→ Check: python3, uv, libimobiledevice, appium
→ Install: Missing dependencies
→ Create: Project with uv init
→ Configure: .env with MINITAP_API_KEY
→ Guide: Xcode WebDriverAgent signing
→ Verify: idevice_id -l shows device

Example 2: Android cloud setup

User: "Set up mobile testing with cloud devices"
→ Ask: Platform (Android), Mode (Platform), Device (Cloud)
→ Check: python3, uv
→ Create: Project with uv init
→ Configure: .env with MINITAP_API_KEY
→ Guide: Create Virtual Mobile on platform.minitap.ai
→ Generate: main.py with for_cloud_mobile config

Example 3: Full local development setup

User: "I want full control over LLM config for mobile automation"
→ Ask: Platform (Both), Mode (Local), Devices (Physical)
→ Check: All dependencies
→ Create: Project, llm-config.override.jsonc
→ Configure: Provider API keys in .env
→ Guide: Device-specific setup for iOS and Android
→ Generate: main.py with local profile config

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

openclaw-version-monitor

监控 OpenClaw GitHub 版本更新,获取最新版本发布说明,翻译成中文, 并推送到 Telegram 和 Feishu。用于:(1) 定时检查版本更新 (2) 推送版本更新通知 (3) 生成中文版发布说明

Archived SourceRecently Updated
Coding

ask-claude

Delegate a task to Claude Code CLI and immediately report the result back in chat. Supports persistent sessions with full context memory. Safe execution: no data exfiltration, no external calls, file operations confined to workspace. Use when the user asks to run Claude, delegate a coding task, continue a previous Claude session, or any task benefiting from Claude Code's tools (file editing, code analysis, bash, etc.).

Archived SourceRecently Updated
Coding

ai-dating

This skill enables dating and matchmaking workflows. Use it when a user asks to make friends, find a partner, run matchmaking, or provide dating preferences/profile updates. The skill should execute `dating-cli` commands to complete profile setup, task creation/update, match checking, contact reveal, and review.

Archived SourceRecently Updated
Coding

clawhub-rate-limited-publisher

Queue and publish local skills to ClawHub with a strict 5-per-hour cap using the local clawhub CLI and host scheduler.

Archived SourceRecently Updated