Kobiton AI plugin and tools reference

The Kobiton automate plugin connects AI coding assistants to Kobiton. Supported hosts are Claude Code, Claude Desktop, GitHub Copilot CLI, Gemini CLI, Codex CLI, Cursor CLI, and Cursor IDE. The plugin ships MCP tools, skills, and commands covering device management, app uploads, test case and test suite management, test execution, and session review.

This reference covers automate plugin version 1.9.0. For newer changes, see the automate GitHub repo.

MCP tools

The plugin exposes 30 MCP tools across 5 domains.

Devices

Tool Description

listDevices

List available devices, filtered by platform, availability, device group, name, UDID, or group ID. Returns device name, UDID, platform, OS version, and availability.

getDeviceStatus

Get the real-time status of one device, including availability, current session, battery level, and connection state.

reserveDevice

Reserve a device for exclusive use during testing. Returns the reservation ID that terminateReservation requires.

terminateReservation

Release a reserved device by terminating its reservation.

Sessions

Tool Description

listSessions

List test sessions, filtered by state, device, platform, and date range. Returns session ID, state, device information, duration, and timestamps.

getSession

Get session details, including commands, capabilities, and metadata.

getSessionArtifacts

Get download URLs for a session’s video, logs, screenshots, and reports.

getUserInputEvents

Get the touch and swipe gestures performed in device-only live view during a session.

terminateSession

Stop a running test session.

Apps

Tool Description

listApps

List uploaded app builds in your organization.

uploadAppToStore

Upload an app to Kobiton Store. Uploaded apps are permanent and visible in Kobiton Portal.

confirmAppUpload

Confirm an uploaded file so Kobiton creates the app record. Parsing runs asynchronously, so the record is not immediately complete.

getAppParsingStatus

Check the parsing status of an uploaded app version until it reaches a terminal state.

getApp

Get app details and version history.

Test management

A test case is a saved, replayable sequence of steps created from a completed session. A test suite is an ordered collection of test cases. A test run executes a test case or a suite across one or more devices and reports results per device.

Tool Description

saveTestCase

Convert a finished manual session into a reusable test case.

listTestCases

List test cases, filtered by team, keyword, or platform.

getTestCase

Get test case details, including its steps.

updateTestCase

Update a test case’s name, description, or steps.

deleteTestCase

Delete a test case.

createTestRun

Create a test run from a test suite or from selected test cases.

listTestRuns

List test runs, filtered by team, keyword, or platform.

getTestRun

Get test run details, including its sessions.

terminateTestRun

Stop a running test run.

listTestSuites

List test suites, filtered by team or keyword.

getTestSuite

Get test suite details, including member test cases.

createTestSuite

Create a test suite from existing test cases.

updateTestSuite

Update a test suite’s name, description, or membership.

deleteTestSuite

Delete a test suite. Member test cases are kept.

Account

Tool Description

getCredential

Return your username, API key (existing or newly generated), and portal URL. Backs the /automate:setup command, so no manual file editing is required.

getOrgSettings

Return your organization’s settings, including the live remediation flag that determines what happens when a test run execution hits a blocker.

Skills

The plugin ships five guided skills.

Using these skills in Claude Desktop requires a Claude Code subscription.
Skill Description

run-automation-suite

Run local Appium test scripts against Kobiton devices. Covers app upload, device selection, capability parsing, local execution, and result collection. Supports Node.js, Python, .NET, and Java.

run-interactive-session

Interact with a device using natural language. Translates intent into CLI commands for WebDriver actions (find elements, type, click, swipe), device operations (adb shell, screen capture, port forwarding), file transfer, app management, and test execution.

drive-automation-session

Drive a reserved device through a flow you describe. Opens an automation session against Kobiton WebDriver hub and works through the flow one action at a time. Save the resulting session as a test case with saveTestCase.

create-test-run

Create a test run from a test case or a test suite. Fills in defaults, confirms a summary before creating the run, then offers to monitor it.

monitor-test-run

Watch a running test run and report state changes. Surfaces the live remediation URL when an execution is blocked, and reports a blocked execution as blocked rather than passed.

Choose a skill

Goal Skill

Run Appium scripts you already have on Kobiton devices

run-automation-suite

Exercise a flow hands-off and save it as a test case to rerun later

drive-automation-session

Inspect or troubleshoot a device directly, pull logs, push files

run-interactive-session

Start a test run from an existing test case or suite

create-test-run

Follow a running test run and catch blockers

monitor-test-run

Skill requirements by host

Skills differ in what they need from the host running them. Check the requirement, not the host name: a chat surface with code execution provides a filesystem and Node.js and still cannot run the credential-dependent skills, because nothing there runs /automate:setup to write ~/.kobiton/.credentials.

Skill Local file access Credentials file Platform Runs on an MCP connection alone

create-test-run

No

No

Any

Yes

monitor-test-run

Yes

Yes

Any, with Node.js 18 or later

No

drive-automation-session

Yes

Yes

Any, with Node.js 18 or later

No

run-automation-suite

Yes

No

Any, with Node.js 18 or later, Appium 2.x, and your script’s language runtime

No

run-interactive-session

Yes

Yes

macOS only

No

create-test-run is the only skill that runs with nothing but an authenticated MCP connection. If you opt into monitoring, it hands off to monitor-test-run, which needs local file access and the credentials file. On a host without those, create the run and note its ID instead of watching it.

monitor-test-run reports progress best when the host streams output from a background command. Without that, it falls back to a foreground loop rather than refusing to run.

All MCP tools and the run-automation-suite skill work on every platform your host supports.

The run-interactive-session skill ships a CLI binary built for macOS as a single-architecture x86_64 executable. It runs natively on Intel Macs and under Rosetta 2 on Apple Silicon. No Linux or Windows build ships. On those platforms, use run-automation-suite or drive-automation-session, or call the MCP tools directly.

Commands

Command Description

/automate:setup

Fetch credentials from the authenticated MCP server and write them to ~/.kobiton/.credentials. Also installs the ~/.kobiton/bin/kobiton CLI wrapper used by run-interactive-session.

/automate:doctor

Read-only diagnostic for the CLI installation, credentials file, active profile, and required fields. Prints remediation hints for any failures.

On Cursor CLI and Cursor IDE, plugin commands register without a namespace prefix, so these appear as /setup and /doctor. Select the entry with the Kobiton description to tell them apart from Cursor’s built-in commands.

  • Claude Code and Codex CLI recreate the Kobiton CLI wrapper symlink at the start of every new session. On Codex CLI, the first session prompts you to trust the hook once through /hooks.

  • On GitHub Copilot CLI and Gemini CLI, the symlink is not recreated automatically. Run /automate:setup once after install to create the wrapper, and run it again if the symlink goes missing.

  • On Cursor CLI, the symlink is not recreated automatically. Run /setup once after install to create the wrapper, and run it again if the symlink goes missing.

Test execution

The run-automation-suite skill guides you through the full test lifecycle:

  • Upload or select an app

  • Select a device

  • Parse capabilities from your script

  • Run the test in the background

  • Surface the live session URL and collect artifacts (video, logs, screenshots, reports)

Supported languages:

Language Extension Command

Node.js

.js

node <script> <udid>

Python

.py

python <script> <udid>

.NET

.cs / .csproj

dotnet test

Java

.java

mvn test or java -cp …​

Example prompts

Device management

Show available Android devices
Check if Galaxy S23 is available
Reserve Pixel 6 for 60 minutes
Release my reserved Pixel 6

App management

Show uploaded Android apps
Upload resources/apps/GS.apk
Check whether app version 12345 finished parsing
Get details for app version 12345

Test execution

Run tests/smoke_test.js on a Pixel device
Run my Appium suite under tests/ on an iPhone 15

Driving a device through a flow

Open my app on the reserved device, log in, and add the first item to the cart
Drive the checkout flow on the reserved Pixel 6

Interactive testing

Tap the Login button on the current session
Type "hello" in the search field
Swipe down to refresh
Pull /sdcard/Download/report.txt from the device
Run adb shell pm list packages on the current device

Test cases and test runs

Save session 51234 as a test case named smoke-add-to-cart
List my Android test cases
Create a test run for smoke-add-to-cart on 3 Android devices
Watch test run 8891 and tell me if anything blocks
Stop test run 8891

Session management

Show running sessions
Get details for session 12345
Download logs from the last failed session
Stop session 12345