Device Model Database: Apple Identifier to Name Mapping

This page explains how OpenClaw maps Apple device model identifiers to human-readable names in the macOS companion app. It covers the JSON files used, their upstream source, and how to update them.

Read this when

  • Updating device model identifier mappings or NOTICE/license files
  • Changing how Instances UI displays device names

The Instances view inside the macOS companion app translates Apple model identifiers into human-readable names. For example, iPad16,6 becomes "iPad Pro 13-inch (M4)" and Mac16,6 becomes "MacBook Pro (14-inch, 2024)". To select an SF Symbol for each device, DeviceModelCatalog relies on the identifier prefix, with the device family used as a fallback.

The contents of apps/macos/Sources/OpenClaw/Resources/DeviceModels/ are:

FilePurpose
ios-device-identifiers.jsonMaps iOS/iPadOS identifiers to names
mac-device-identifiers.jsonMaps Mac identifiers to names
NOTICE.mdPinned commit SHAs from upstream
LICENSE.apple-device-identifiers.txtUpstream MIT license text

Data source

These files come from the kyle-seongwoo-jun/apple-device-identifiers GitHub repository, which is MIT licensed. To guarantee deterministic builds, the JSON files are pinned to specific commit SHAs recorded in NOTICE.md.

Updating the database

  1. Choose the upstream commit SHAs to pin (one set for iOS, another for macOS).
  2. Write the new SHAs into apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md.
  3. Download the JSON files again, pinned to those commits:
IOS_COMMIT="<commit sha for ios-device-identifiers.json>"
MAC_COMMIT="<commit sha for mac-device-identifiers.json>"

curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${IOS_COMMIT}/ios-device-identifiers.json" \
  -o apps/macos/Sources/OpenClaw/Resources/DeviceModels/ios-device-identifiers.json

curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${MAC_COMMIT}/mac-device-identifiers.json" \
  -o apps/macos/Sources/OpenClaw/Resources/DeviceModels/mac-device-identifiers.json
  1. Verify that LICENSE.apple-device-identifiers.txt still matches the upstream version; replace it if the upstream license has changed.
  2. Confirm the macOS app builds without errors:
swift build --package-path apps/macos
229 words · updated Jul 27, 2026