OpenClawSkills
GitHub
Reference • TutorialHeader.readTime

Device Model Database

How OpenClaw vendors Apple device model identifiers for friendly names in macOS app.

The macOS companion app shows friendly Apple device model names in Instances UI by mapping Apple model identifiers (e.g. iPad16,6, Mac16,6) to human-readable names.

The mapping is vendored as JSON under:

- apps/macos/Sources/OpenClaw/Resources/DeviceModels/

Tutorial.step

Data source

We currently vendor mapping from MIT-licensed repository:

- kyle-seongwoo-jun/apple-device-identifiers

To keep builds deterministic, JSON files are pinned to specific upstream commits (recorded in apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md).

Tutorial.step

Updating database

1. Pick upstream commits you want to pin to (one for iOS, one for macOS).

2. Update commit hashes in apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md.

3. Re-download JSON files, pinned to those commits:

Bash
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

4. Ensure apps/macos/Sources/OpenClaw/Resources/DeviceModels/LICENSE.apple-device-identifiers.txt still matches upstream (replace it if the upstream license changes).

5. Verify the macOS app builds cleanly (no warnings):

Bash
swift build --package-path apps/macos