openclaw/docs/reference/device-models.md
Jon Shapiro 92697edb7c fix(venice): add compat settings to prevent HTTP 400 errors
Venice's API doesn't support certain OpenAI-compatible parameters that
Clawdbot sends by default:

- `store`: Venice returns HTTP 400 with no body when this is present
- `developer` role: Not supported by Venice's API

This adds VENICE_COMPAT settings (supportsStore: false,
supportsDeveloperRole: false) to all Venice model definitions, both
from the static catalog and dynamically discovered models.

Fixes issues reported in PR #1666 where users experienced silent
failures (HTTP 400, no body) when using Venice models.

Co-authored-by: jonisjongithub <jonisjongithub@users.noreply.github.com>
Co-authored-by: Clawdbot <bot@clawd.bot>
2026-01-26 17:56:01 -08:00

1.9 KiB

summary read_when
How Clawdbot 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 (friendly names)

The macOS companion app shows friendly Apple device model names in the 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/Clawdbot/Resources/DeviceModels/

Data source

We currently vendor the mapping from the MIT-licensed repository:

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

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

Updating the database

  1. Pick the upstream commits you want to pin to (one for iOS, one for macOS).
  2. Update the commit hashes in apps/macos/Sources/Clawdbot/Resources/DeviceModels/NOTICE.md.
  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/Clawdbot/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/Clawdbot/Resources/DeviceModels/mac-device-identifiers.json
  1. Ensure apps/macos/Sources/Clawdbot/Resources/DeviceModels/LICENSE.apple-device-identifiers.txt still matches upstream (replace it if the upstream license changes).
  2. Verify the macOS app builds cleanly (no warnings):
swift build --package-path apps/macos