一键导入
client-ids
Privacy-protected ID management with @ledgerhq/client-ids — DeviceId, UserId, DatadogId, export-rules.json
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Privacy-protected ID management with @ledgerhq/client-ids — DeviceId, UserId, DatadogId, export-rules.json
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Enforce import boundaries inside the devtools scope. Use for any work in "devtools/**".
Official Ledger wallet-cli - USB-based CLI for Ledger hardware wallet flows (account discover, receive, balances, operations, send, swap quote/execute/status, genuine-check, assets token / token-by-id). Use for any wallet-cli command execution and for mapping informal requests to the right command.
Handle batches of Jira tickets through shared analysis, per-ticket feature-dev, Lumen UI guardrails, changesets, and draft PRs. Use when the user provides multiple Jira tickets or asks to deliver tickets one by one with PRs.
Trigger the on-demand production build workflows on LedgerHQ/ledger-live-build (Desktop, Android APK, iOS) for a ledger-live branch, then post a PR comment. Use when asked to "run builds", "produce a build", "build the app(s)", or "make an APK/iOS/desktop build" for a PR/branch.
Guided feature development with codebase understanding and architecture focus
Rules and layout for coin module packages under libs/coin-modules/. Read when adding or modifying a coin module.
| name | client-ids |
| description | Privacy-protected ID management with @ledgerhq/client-ids — DeviceId, UserId, DatadogId, export-rules.json |
@ledgerhq/client-ids)@ledgerhq/client-idsSensitive identifiers (DeviceId, UserId, DatadogId) must always use the @ledgerhq/client-ids library:
DeviceId, UserId, or DatadogId classes from @ledgerhq/client-ids/ids.exportUserIdForSomething()).libs/client-ids/export-rules.json with a justification.toString() and toJSON() return [DeviceId:REDACTED] by default — this is by design.The client-ids library provides unified, privacy-protected ID management for Ledger Live. It isolates sensitive identifiers (DeviceId, UserId, DatadogId) and prevents accidental exposure through logging or serialization.
DeviceId, UserId, or DatadogId classes from @ledgerhq/client-ids/idstoString() and toJSON() return [DeviceId:REDACTED] by defaultexportUserIdForSomethingSomething())export-rules.json file serves as a registry of all allowed use cases, ensuring each ID export is intentional and justifiedcheck-export-rules.mjs script enforces that all ID exports match declared use cases at build timeTwo scenarios:
1. Using an existing ID for a new use case:
exportUserIdForSomethingSomething())libs/client-ids/export-rules.json allowlist:
{
"libs/client-ids/src/ids/UserId.ts": {
"exportUserIdForSomethingSomething": [
"your/new/file/path.ts" // Add here
]
}
}
2. Introducing a new kind of ID:
libs/client-ids/src/ids/ (e.g., NewId.ts)DeviceId.ts: Symbol storage, redacted toString/toJSON, export methodsexport-rules.jsonimport { DeviceId } from "@ledgerhq/client-ids/ids";
// ✅ Correct: Use the library
const deviceId = DeviceId.fromString("device-123");
// ❌ Wrong: Don't use raw strings
const deviceId = "device-123"; // BAD