ZUI 扩展库国际化
SkillDev toolsLets your agent audit, add, complete, and verify translations (zh_cn, zh_tw, en) in ZUI extension projects.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the ZUI 扩展库国际化 skill
About this capability
审计或实现独立 ZUI 扩展库的文案、语言接线及覆盖和回退行为。需求明确时直接实施;只要求审计时保持只读。
What this skill tells your AI
The instructions your AI receives, as published by easysoft/zui in skills-exts/zuix-i18n/SKILL.md and read by ahel’s review.
准备
- 在采取其他任务动作前,完整读取
../zuix-standards/SKILL.md。 - 从当前技能目录运行只读 resolver:
node ../zuix-standards/scripts/resolve-zui-ext-context.mjs --cwd <目标路径> --lib <目录名或包名> [--host <宿主根>] --json
- 记录 resolver 输出的
targetLibRoot、extensionRoot、gitRoot、zuiRoot、extsName、folderName、packageName、zuiName、publicPath和dependencyPolicy。读取/导入模块使用真实packageName;语言命名空间和宿主选择必须从现有契约及zuiName核对,不能从folderName机械推导。 - 按
zuix-standards的路由完整读取工作流与 i18n 规范。完整读取各层适用的AGENTS.md并检查gitRoot状态;所有源码通过targetLibRoot真实路径处理,不通过宿主exts/符号链接写入。 zuiRoot或extsName未解析时不猜测。可以完成扩展项目本地审计和实现;需要宿主运行时验收时报告上下文缺口。- 阅读目标组件/helper、入口、公开 options/types、现有语言文件和两个相似实现。优先扩展项目内参考,不足时再读取当前
zuiRoot的 i18n 基础设施与成熟内置库;不要根据历史快照猜测i18nAPI。
盘点与模式
- 枚举目标范围内所有用户可见字符串及其消费路径,包括标签、按钮、标题、placeholder、提示、可见错误和 schema 文案;排除协议值、事件名、CSS 类、icon、字段 key/name、注释与仅开发日志。
- 盘点现有语言目录、注册入口、实际加载路径、三语言键结构、占位符、源码键引用、硬编码残留、实例覆盖与 fallback 行为。
- 选择模式:
- audit:用户只要求检查时保持只读,输出证据和建议;
- bootstrap:没有 i18n 基础时建立当前扩展项目适用的最小结构;
- complete:保留现有结构,补齐缺失语言、键、引用或加载;
- clean:均符合当前契约时不制造无意义改动。
- 缺少会改变翻译范围、产品术语、语言集合或公共覆盖方式的信息时先询问;否则直接在 i18n 边界内实施,不增加确认门禁。
实施
- 判断组件静态 i18n 映射、带命名空间的全局注册或目标项目已有等价机制。组件私有文案不无理由进入全局空间;全局 namespace 必须稳定且与其他扩展和内置库不冲突。
- namespace 优先沿用公开兼容契约;新建时结合真实
packageName、zuiName、宿主注册结果和扩展项目惯例设计并记录,禁止硬编码某个项目 scope 或只把folderName转 camelCase 就视为充分证据。 - 默认按当前 ZUI 规范提供
zh_cn、zh_tw、en,但若扩展项目明确采用其他文件名或语言集合,服从其契约并说明兼容映射。以typeof、satisfies或共享类型保证所有语言键和嵌套结构一致。 - 确保入口或真实消费路径加载语言注册。Preact + vanilla 组合要验证
ComponentFromReact的静态映射和实例 options/props 覆盖路径。 - 所有语言保留相同占位符。区分 ZUI i18n 插值与下游组件稍后处理的模板占位符,避免提前消费。
- 明确并验证全局语言、实例
lang、实例 i18n 覆盖、缺失键默认值、不支持语言和语言码归一化。不要承诺当前源码没有实现的 fallback 链。 - 动态切换语言时区分 render 内求值与模块级常量一次性求值;需要实时更新时设计可重新求值的数据路径,不让静态常量伪装成响应式。
- 只修改
targetLibRoot内国际化所需源码、类型与接线。依赖、lint、类型和测试从extensionRoot执行;不修改zuiRoot的源码、依赖、lockfile、注册或生成目录。 - 文档、调试页和无关运行时 API 仅在用户请求或共享批准范围明确包含时修改,并分别完整读取
../zuix-doc/SKILL.md或../zuix-dev/SKILL.md。
验证与交付
- 程序化比较语言键、嵌套和占位符;核对每个源码键引用已定义、每个语言文件从发布入口可达。
- 从
extensionRoot读取实际 package scripts,运行针对性 lint、类型和测试。至少验证三种语言的真实消费路径、实例覆盖、缺失键和动态行为(若承诺)。 - 需要宿主构建时,只有 resolver 已确认
zuiRoot与extsName才从zuiRoot使用准确zuiName:
pnpm build -- --exts=buildIn,<extsName> --lib='<zuiName>' --noMinify
- 需要语言切换调试时,按
../zuix-dev/SKILL.md从zuiRoot启动扩展开发入口并验证,结束后关闭持续进程。 - 独立需求明确时直接实施;由
../zuix-component/SKILL.md、../zuix-helper/SKILL.md、../zuix-lib/SKILL.md或../zuix-optimize/SKILL.md编排时只处理共享范围,不重复确认。 - 汇报模式、namespace、键与接线变化、四层上下文、验证结果、疑似未使用键和待决术语,不自动提交、推送或发布。
Signals
- GitHub stars
- 3k
- Forks
- 678
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
zuix-i18n- Source
- github.com/easysoft/zui