@alwith/module-auth

中文文档
0.6.0发布于 2026/11/03SEE LICENSE IN LICENSETypeScriptES Module构建来源已验证近 30 天下载 3974

异能的TypeScript侧面,与其单独许可的Rust 箱子合用.

中文使用文档
文档目录6 节
  1. 许可证和再分配
  2. Vibemon资产
  3. Vibemon 行为和反应
  4. 经认证的 HTTP 运输
  5. 原生刷新桥
  6. 默认桌面氛围

@alwith/module-auth (英语)

异能的TypeScript侧面,与其单独许可的Rust 箱子合用.

拥有现有的桌面认证类型、密码规则、OAuth PKCE/飞行核查员, 错误密钥映射,请求合同,状态生命周期和信使存储操作. 东道主供应现有 存储; 认证StoreName 保存认证。 名称空间。 托肯斯留在这 同一个商店,有相同的钥匙。 日志保存设备 id.

这不会将证书移动到 Rust, 替换 HTTP, 使登录页面 , 或执行交叉设备账户同步。 框架中立状态 工厂保存桌面的现有恢复、登录、登录和窗口活动 语义学;主机提供存储,HTTP,事件运输和产品效果. 桌面仍然拥有原生的OAuth回调,窗口,供应商加载和分析. U 消耗共享软件包; OAuth 调用仍为主机专用.

许可证和再分配

见 自由主义 财务报告和审定财务报表 第三方通知。 。 。 . ALWE拥有的代码是专有的,而不是开源的. 你可以建造,定制,主机, 收取和分发您自己的申请 许可证,不按申请登记。 不提供托管服务 单独分布的 Rust 库或运行时二进制的访问或权限. Npm文物包括汇编/缩小联合来文、申报和必要资产, 不是私人 TS/TSX 执行或源地图。 微分不是加密的 .

Vibemon资产

@alwith/module-auth/vibemon 是一种框架独立的账户资产服务。 注入认证请求,账户身份和修订,存储,二进制资源IO,以及可被删除的下载. 它揭露了现有的目录,相册,绘图,先行访问,分数,选择和缓存合同. 选择是本地的,所有权根据服务核实。 资源缓存保存现有的目录和遗留账户目录, config.json,工作表名称和资源版本。 Persisted相册快照只支持离线演示;它们不授权新绘图或更改服务器所有权.

Vibemon 行为和反应

气相门能力有三个独立的切入点:

  • @alwith/module-auth/vibemon:账户资产,选择,下载和缓存 IO. 无反应依赖.
  • @alwith/module-auth/vibemon/core:主机合同,状态机,会话绑定,图示配置和资源同步. 没有反应, CSS 或本地窗口执行 .
  • @alwith/module-auth/vibemon/react:平面中心,覆盖,快速回复和模式按钮. React和React DOM必须由主机提供.

导入 @alwith/module-auth/vibemon/styles.css 一次并装入翻译 @alwith/module-auth/vibemon/locales。包含 node_modules/@alwith/module-auth/dist/vibemon 在主机的 Tailwind 源扫描中。 相干图像、视频、字体和 图标 URL 由主机的 Vite 构建及其配置的基础路径释放 . 录像仍然是单独的档案;不需要公共目录.

主机注入账户资产、存储、会话观察和窗口动作 结束 VibemonHost原生窗口生命周期、面板、放置和拖放 这仍然是东道国的责任。 拖放承诺在鼠标释放后解决; uI 线程在拖曳时必须仍然可用以渲染动画框架 . 迅速回复确认接受;运行状态确定完成. 只有活过渡触发完成动画,而不是重放快照.

格式 1 资源下载自 resource_url 作为完整的 ZIP 包. 缓存保留 ZIP, 显示, 图像和动画一起, 并比较 格式、修订和源 URL 相对于新的 API 描述符,然后再使用. 路径、 SHA-256 散列、图像解码和动画边界在之前被验证 替换已安装的目录。 更新失败保留了上一个软件包; 缺少可选图像和动画使用静态占位符.

新鲜的加查池可以供应 vibemon_resource_url: 不变不变 URL重用一个经过验证的格式-1缓存而无需其他细节请求. 冷藏库, 已更改的 URL 和遗留资源仍在获取描述符以确定格式 和审校。 输入加载包括主机和希望图像,从而打开希望 不启动第二个装入屏幕. 绘制结果获取 /api/v1/vibemons/{uuid} 以获取完整包描述符。 格式 0和 缺少格式字段继续使用遗留的工作表资源.

可能提供主机 resources.url 直接服务缓存图像 validateImage 在安装前验证他们的平台解码器. onResourceError 报告更新失败,但没有丢弃现有资源.

遗留资产缓存存储布局,工作表身份和资源版本. 回放默认值 由 createSpriteConfig 在核心条目中. spriteConfig 保留 遗产 config.json 不重写的时间、收成、面部和行为覆盖 已有缓存。 存储密钥和账户缓存路径保持不变;选定的vibemon是 保存在 vibemon 领域 vibemon.accounts,所以在前字段名下保存的选项是 不读,而是再次被选中.

运行 bun test src 财务报告和审定财务报表 bun check --no-script 从这个包 在建设前. bun run build 发出精密的Java脚本和声明; bun pm pack 包含 这些产出、视觉资产和再分配通知.

经认证的 HTTP 运输

createAuthTransport (也可从下列网址获得) @alwith/module-auth/transport拥有 API 请求重试并刷新协调 。 供应 baseUrl, (中文(简体) ), fetch,则 结果 createTokenStorage, (中文(简体) ), refresh(token),以及 expired() 这个应用程序. 接受请求 /api/v1/ 路径; 通过 authenticated = false 登录和 校验码电话,所以他们不会发送存储的证书.

同时进行的认证失败共享一个刷新 。 延迟失败 已经用当前符号旋转了符号重试 。 只有刷新失败 kind: "unauthorized" 过期的证书; 临时失败保存登录 . 在替换或清理账户之前, 等待时 transport.invalidate(),则 保存新证书或清除旧证书。 这等飞机上的信号 保存并阻止延迟刷新结果恢复上一个账户. 原生的刷新和app特定的过期副作用仍然由宿主提供.

原生刷新桥

Token 刷新运行在私有本地认证库中, 发送到此套件 native/ 并和应用程序的其他模块库一起上演. 公开的Tauri插件就是箱子 alwith-auth ;没有认证执行并拥有 没有证书店.

alwith-auth = "0.6"

登记册 .plugin(alwith_auth::init(Config { development_directory, vibemon: None })) 添加 alwith-auth:default 在允许的窗口。 发展可以提供其已上演的本土 目录; 创建总是解析捆绑 native 文件夹。 捆绑 createTauriAuthRefresh() 从 @alwith/module-auth/tauri (电话) commands.refreshTokens 从 @alwith/module-auth/commands),然后通过 refresh: token => refreshTokens(apiBaseUrl, token) 改为 createAuthTransport一个被拒绝的刷新是 NativeError { code, message, kind, status? }数字 : code 等于刷新出错类型(unauthorized, (中文(简体) ), network, (中文(简体) ), timeout, (中文(简体) ), server, (中文(简体) ), parse和 kind 被保存在旁边,所以 error.code === "unauthorized" 财务报告和审定财务报表 error.kind === "unauthorized" (一) 确定过期的全权证书; status 带有 HTTP 状态。 仅 unauthorized 过期登录 。 登录页面仍可替换应用程序源 .

没有网页视图刷新( 主机的背景工作持有存储刷新) 的 Rust 代码 (代号)电话 alwith_auth::refresh_tokens(api_base_url, refresh_token).await。 与命令共享序列式刷新及其再利用窗口, 并使用相同的编码失败 NativeError (单位:千美元)error.code == "unauthorized", (中文(简体) ), error.details["kind"]) (中文(简体) ). 插件的设置 配置本地库目录; 外部调用 alwith_native_client::configure_host 先说.

默认桌面氛围

@alwith/module-auth/vibemon/tauri 提供共享桌面资源、窗口和会话主机。 配置 VibemonApplication 一旦每个网页视图使用应用程序的认证存储,现有的 Codex 客户端,运行时连接,账户扫描存储和导航回调. 在主窗口呼叫中 initializeVibemonMain; 使用 updateMainVibemonSurface。蝴蝶和泡沫窗口呼叫 bootstrapVibemonWindow 打开前 VibemonWindow 或者说 VibemonQuickReply。 。 。 .

在认证插件中启用相感元 Config { vibemon: Some(VibemonOwner::new(owner)), .. }时 owner 在每个 symemmon 请求前, 对照主机已有的运行时间验证当前执行所有者 。 Vibemon政策(窗口授权,验证,气泡演示,索赔,资源,下载)在私人本土库中运行;插件只执行窗口动作. 添加 alwith-auth:vibemon 主窗和相机窗,并捆绑 vibemon.html 财务报告和审定财务报表 vibemon-bubble.html。资源下载和IPC请求在不自动重复的情况下明显失败.

在项目创建时,账户整合是可选的。 空闲聊天项目略去此软件包, 本地认证, 其权限和 sympermon 入口; 模型提供者认证仍然独立 .

版本与发布记录

@alwith/module-auth 共发布 23 个版本,首次发布于 2026/09/17;过去 12 个月发布了 23 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.6.0latest2026/11/034 天前
0.5.142026/11/035 天前
0.5.132026/10/308 天前
0.5.122026/10/308 天前
0.5.112026/10/308 天前
0.5.102026/10/308 天前

关于 @alwith/module-auth 的常见问题

@alwith/module-auth 是什么?

异能的TypeScript侧面,与其单独许可的Rust 箱子合用.

如何安装 @alwith/module-auth?

在项目目录运行 npm install @alwith/module-auth,或使用 pnpm add / yarn add / bun add。

@alwith/module-auth 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@alwith/module-auth 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@alwith/module-auth 可以商用吗?

@alwith/module-auth 使用 SEE LICENSE IN LICENSE 许可。许可条款写在包内的独立文件中,请阅读该文件确认可否商用。以上为概括,不构成法律意见,请以许可原文为准。

@alwith/module-auth 的下载量有多少?

根据 npm 官方下载统计,@alwith/module-auth 在 2026/10/06 – 2026/11/04 这 30 天内被下载 3,974 次,日均约 132 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@alwith/module-auth 还在维护吗?

最新版本 0.6.0 发布于 2026/11/03(4 天前);至今共发布 23 个版本,其中过去 12 个月发布了 23 个;首次发布于 2026/09/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。