Cloud August 14, 2026

August 14, 2026

Kobiton now uses date-based release versioning. Instead of version numbers such as 4.26S or 4.19.3, releases are identified by date. Build numbers use a format such as 202608.14, and release notes display the corresponding date as August 14, 2026.

Kobiton version management

  • Force-offline enforcement based on deviceConnect version age has been removed. Machines are no longer taken offline for being one or more major versions behind, and the upgrade-deadline concept has been retired.

  • The orange warning banner for out-of-date deviceConnect versions has been removed. Admins can still trigger a manual upgrade from Device Management, and the automatic/manual upgrade toggle is unchanged.

Appium find element with LLM vision (canvas apps)

Portal now supports a new visionvirtual locator strategy for Appium find element, aimed at canvas apps where native elements expose no metadata. When enabled, Kobiton uses an LLM with a 50x50 grid overlay on the device screenshot to identify elements by natural language and returns a virtual element for the match. Five LLM providers are supported.

Highlights

  • Set the strategy per test with the desired capability kobiton:locatorStrategy: visionvirtual (accepted values: uitree (default), visionvirtual), or globally via dc.ini NaturalLanguageLocator.LocatorStrategy=visionvirtual. The capability wins.

  • The strategy is fixed at session start and cannot be switched mid-run.

  • Requires an LLM API key configured via LlmClient.ApiKey in dc.ini.

Availability

  • Configuration lives in dc.ini. Set LlmClient.Enabled=true, LlmClient.ApiKey=<key>, and set the locator strategy per test or globally.

Kobiton CLI — Windows and Linux support, unbundled binary

run-interactive-session now supports Windows and Linux in addition to macOS. Apple Silicon uses the native macos-arm64 build, removing the previous Rosetta 2 requirement. The kobiton CLI binary is no longer bundled with the plugin — it downloads a pinned, checksum-verified build from public.kobiton.download at install time and caches it locally.

Highlights

  • Fresh install on macOS (arm64), Linux (x64), and Windows (x64) yields a working kobiton wrapper running the pinned CLI version.

  • Install script runs at Claude Code session start; if the cached binary matches the pin, no download occurs.

  • Corrupted or mismatched downloads (bad sha256) are rejected with a clear error and do not replace a working cached binary.

  • /automate:doctor reports the pinned version, the installed version, and the latest available version as a drift check.

  • The plugin never defaults to latest — pin bumps are explicit and coordinated with SKILL.md validation.

Restricted ADB shell — expanded commands, safe-path file transfers

The deny-by-default adb-shell whitelist for public cloud and trial devices has been expanded to cover more diagnostic workflows, and file transfers now work from a defined set of safe directories.

Highlights

  • New allowed commands: screencap, input, pm install -r (when the APK is staged in a safe path), and settings get|put secure enabled_accessibility_services. All other settings keys and subcommands remain rejected.

  • New allowed read: /proc/version.

  • Safe directories for PUT file: (push) and GET file: (pull): /sdcard/Download/, /sdcard/Documents/, /data/local/tmp/. Writes cannot target /proc/version or a safe directory itself.

  • PUT was previously blocked outright; GET was previously unchecked. Both now go through the same path validation as shell arguments (length, control characters, forbidden metacharacters, whitespace, .. traversal, safe-directory prefixes).

  • Denied transfers now surface AdbShellCommandRejectedException instead of SecurityException.

  • kobiton device adb-shell --help documents the deny-by-default policy, allowed commands, permitted path roots, the settings restriction, and examples.

  • Unrestricted (private cloud / dedicated) devices are unaffected.

XIUM

  • Fixed XIUM Android tests using UiScrollable.scrollIntoView returning NoSuchElementException without scrolling. The query now scrolls to the target element and returns it, matching the behavior on Basic Appium 2.

Automation sessions

  • Fixed iOS automation Safari driver.get() failing with Page.navigate not found on iOS 26.4.2 and iOS 26.5. Safari navigation now works on both iOS versions.

  • Fixed SessionNotCreatedException (kAXErrorIPCTimeout) and app launch taking more than two minutes when starting an XIUM automation session. Session creation and app launch now return in expected time.

Device passcode automation

  • Fixed iPad passcode automation failing to complete on affected devices. Passcode entry now completes on iPad.

  • Fixed passcode automation missing the first digit of the passcode. All digits are now entered.

Kobiton CLI

  • Fixed CLI session failing intermittently with [MH-400] Failed to book device. CLI sessions now start reliably against booked devices.

deviceConnect

  • Session terminations now include the reason on any in-flight requests, so clients see why a session ended instead of an unexplained failure.

Component versions

This release includes the following component versions:

  • Portal 2608.13

  • deviceConnect 2608.12

  • Kobiton CLI 2608.11

  • gigacap 2608.12