Files
openclaw-openclaw/docs/reference/device-models.md
Peter Steinberger f7d7148cf0 docs: rewrite published docs grounded in current source (#100142)
Source-grounded rewrite of 529 published docs pages with per-unit information-loss verification: 1,713 factual corrections cited to src/**, generated surfaces regenerated, frontmatter titles preserved for i18n, release notes pages untouched. All docs gates green.

Closes #100141
2026-07-05 00:32:47 -04:00

2.4 KiB

summary, read_when, title
summary read_when title
How OpenClaw vendors Apple device model identifiers for friendly names in the macOS app.
Updating device model identifier mappings or NOTICE/license files
Changing how Instances UI displays device names
Device model database

The macOS companion app's Instances UI maps Apple model identifiers to friendly names (iPad16,6 -> "iPad Pro 13-inch (M4)", Mac16,6 -> "MacBook Pro (14-inch, 2024)"). DeviceModelCatalog also uses the identifier prefix (falling back to device family) to pick an SF Symbol per device.

Files in apps/macos/Sources/OpenClaw/Resources/DeviceModels/:

File Purpose
ios-device-identifiers.json iOS/iPadOS identifier -> name mapping
mac-device-identifiers.json Mac identifier -> name mapping
NOTICE.md Pinned upstream commit SHAs
LICENSE.apple-device-identifiers.txt Upstream MIT license

Data source

Vendored from the MIT-licensed kyle-seongwoo-jun/apple-device-identifiers GitHub repository. JSON files are pinned to commit SHAs recorded in NOTICE.md to keep builds deterministic.

Updating the database

  1. Pick the upstream commit SHAs to pin to (one for iOS, one for macOS).
  2. Update apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md with the new SHAs.
  3. Re-download the JSON files 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. Confirm LICENSE.apple-device-identifiers.txt still matches upstream; replace it if the upstream license changed.
  2. Verify the macOS app builds cleanly:
swift build --package-path apps/macos