用途:处理 Dinox 的认证相关操作,包括登录、登出、登录状态与身份检查,以及凭据清理;不用于同步。
主要能力:查询本地登录状态(离线,不触发网络同步);在需要时检查身份与 PowerSync 连通性;登出并清除已保存令牌;可选删除本地 SQLite 缓存(破坏性操作)。
常用命令: dino auth status --offline --format json dino auth status --sync-timeout 20000 --format json dino auth logout --format json dino auth logout --clear-local-db --format json printf '%s' "$DINOX_TOKEN" | dino auth login --token-stdin --sync-timeout 20000 --format json
使用方式:优先使用 --format json,成功时要求顶层 ok: true,从 data 读取结果,并单独查看 _notice。在线命令的 --sync-timeout 建议传有界值(默认 20000 毫秒),主机执行超时至少再高 5-10 秒。非零退出时解析结构化 stderr 中的 code、recoverable、exit_code、suggested_action 与 error。
安全与限制:不要在聊天中索要或粘贴认证令牌,不要将令牌放入 argv;子进程须继承 DINOX_TOKEN 或由主机密钥库在执行时注入。DINOX_TOKEN 优先于已保存配置,且不得回显。持久登录需用户在自己终端执行 stdin 登录。登出会清除凭据并停止守护进程,但活动的 DINOX_TOKEN 仍可认证当前进程,应报告 environmentTokenActive。--clear-local-db 会删除本地缓存,须单独确认。若主机超时未收到结构化响应,结果视为未知,重试前先验证状态。声明完整、最新或精确数量前,需确认新鲜度字段(通常 data.stale,搜索为 data.meta.stale)为 false,并检查分页或截断字段。