用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/omiinaya/repairshopr-skills --skill repairshopr-user-device命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | repairshopr-user-device |
| description | Register and manage user mobile devices for notifications in RepairShopr |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"integrators, mobile app developers","api":"POST /user_devices, GET /user_devices/{id}, PUT /user_devices/{id}"} |
I manage registered mobile devices for push notifications. These devices are used to send RepairShopr notifications (e.g., ticket assignments, alerts) to users' phones/tablets via Firebase Cloud Messaging (FCM) or similar. I support creating device registrations, retrieving device info, and updating registration tokens.
Use this when:
Required API base URL:
VITE_REPAIRSHOPR_SUBDOMAINVITE_REPAIRSHOPR_API_KEYNo special permissions beyond being authenticated as a user.
Create Device (POST /user_devices) Body:
device_uuid (string) - Unique device identifier (e.g., iOS UDID or Android ID)device_name (string, optional) - Human-readable device nameregistration_token_gcm (string, optional) - FCM registration token for push notificationssystem_name (string, optional) - OS name (e.g., "iOS", "Android")model (string, optional) - Device model (e.g., "iPhone 14")screen_size (string, optional) - Screen sizeuser_id - Not in body? Probably inferred from auth; but response returns user_idGet Device (GET /user_devices/{id})
id (integer) - Device UUID? The docs say "User Device UUID" for the path param; suggests using the device's UUID as ID.Update Device (PUT /user_devices/{id})
id (integer) - Device UUID
Body: typically registration_token_gcm to refresh tokenExample call:
// Register a device after app install
const device = await skill({ name: "repairshopr-user-device" }, {
device_uuid: "A1B2-C3D4-E5F6",
device_name: "John's iPhone 15",
registration_token_gcm: "fcm_token_abc123xyz",
system_name: "iOS",
model: "iPhone 15",
screen_size: "6.1 inch"
}, { method: 'POST' })
// Update token (when FCM token refreshes)
await skill({ name: "repairshopr-user-device" }, {
registration_token_gcm: "new_fcm_token_456"
}, { id: device.user_device.id, method: 'PUT' })
Response includes:
user_id, registration_token_gcm, id, device_uuid, device_name, system_name, model, screen_size, disabled, created_at, updated_atdevice_uuid is used as the identifier for GET/PUT/DELETE operations (the docs say id in path is "User Device UUID")registration_token_gcm is the push token; update when it changesdisabled flag indicates if device is blocked from notificationsdevice_uuid returns 422 errorrepairshopr-user - For user information