npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@xuqinghua/microapp-kit

v0.1.11

Published

Skills, templates and tools for developing, previewing and publishing Tuya micro apps

Readme

空间智能微应用开发包

包内 CLI、校验器及 DEV 迁移/诊断/启动脚本的内置提示统一使用英文;错误码和结构化字段保持稳定。用户自填名称、业务数据和应用多语言内容保持原样。MOS 正式脚本使用相同的英文诊断约定。

页面开发由设计 Skill 先确认宿主标题归属、组件与 Token,再实现并分别做功能和视觉验收。模板内提供关键词/普通单选胶囊的本地源码;设计 Skill 提供浏览器取证工具,保存桌面/窄区截图并核验声明的样式与焦点,Agent 仍需打开截图复核。详见 视觉验收。

模板还提供从内部 smart2c 微应用提炼的开发包标准组件,统一从 @/components/MicroAppUI 导入:表单弹窗、受控表格、状态标记、文本省略、页内双栏、列表工具栏,以及已有胶囊。直接交付本地源码,不依赖原业务仓库或新增私有组件包。选型与接入见 组件目录。

把安装提示交给 Coding Agent,描述你的需求,再打开 Agent 返回的预览地址。获取开发包、准备环境、生成代码、诊断问题、打包和已开放的上传操作,都由 Agent 根据目标与当前状态处理。

开始使用

在 Coding Agent 中复制下面这段话:

请使用 npmjs 的 @xuqinghua/microapp-kit@<已核实的精确版本> 安装空间智能微应用开发包,运行 npx --yes --registry=https://registry.npmjs.org/ @xuqinghua/microapp-kit@<已核实的精确版本> setup --project <当前业务项目的绝对路径>,先读取包内 START-HERE.md,适配你当前的宿主并完成环境检查。能自动处理的步骤直接完成;需要我选择业务方案、操作系统界面或授权有风险的改动时,用简单的话说明并引导我。然后根据我的需求开发并启动预览。

随后直接描述需求,例如:

帮我做一个设备巡检应用,需要记录巡检结果,保存后可以查询和修改。

Agent 会在需要时询问数据组织方式、谁可以操作等业务选择。新建应用时,Agent 先展示关键页面草图或原型,并说明数据、接口和权限方案;你确认方向后,再实现并打开功能预览。UI 与技术方案可以合并确认,已有结论会直接复用。你无需选择数据库技术、填写连接串、复制 Skill 或记忆命令。宿主要求授权、重载或系统安装需要你操作时,Agent 会给出具体步骤。

开发按影响分级:文案、样式和明确的缺陷修复直接推进;已有应用的小功能只补设计差异;新建应用、主要流程或数据/权限边界变化先做完整设计。设计与确认规则见 设计流程。原型会标明模拟数据与未接入操作,正式功能预览另行验证。

继续使用

本发行版采用六个 Skill,Agent 按任务需要加载;用户仍从同一个开发入口表达目标:

| Skill | 职责 | |---|---| | micro-app-development | 需求澄清、复杂度判断、流程编排、项目身份、联合验收与交付发布 | | micro-app-design | UI、交互、原型与页面状态设计及审查 | | micro-app-solution-design | 整体技术方案,对齐页面、接口、数据、权限及实施拆分 | | micro-app-frontend-development | React 前端、宿主集成、请求与权限 UI、前端测试构建 | | micro-app-backend-development | 后端接口、业务逻辑、数据访问、迁移及测试 | | micro-app-cloud-integration | 平台及外部 API、调用身份和可信上下文契约 |

只要 UI 或技术方案时,Agent 止于设计交付;明确的小修复直接进入对应实现 Skill,不必加载全部六个或重新审批方案。

  • “增加按日期筛选,并打开预览。”
  • “这个保存按钮失败了,帮我排查并修好。”
  • “继续上次的开发,保留测试数据。”
  • “把当前版本打包。”
  • “把这个版本上传。”(Agent 先检查上传能力和授权,完成已开放的流程。)

有风险的操作会先说明影响;已有明确授权的常规步骤不会反复确认。预览默认保留测试数据,清空数据需要你的明确要求。

当前交付状态

包版本以当前完整包的 package.json 为准;在线安装先核实 npm registry 中目标版本可获取,再替换命令中的精确版本占位符并锁定版本。不静默回退,离线安装直接使用可信完整包。安装器适配当前宿主,将完整资源缓存到用户目录并锁定项目版本。

本包提供六个 Skill、终端凭据向导、账号显式复用、项目级发布恢复、update/rollback、独立 Node24 后端绑定及业务日志指引。内置日志、错误提示和 CLI 向导统一英文。后端采用标准固定构建和累计 SQL 迁移,不支持自定义构建/安装钩子或 JavaScript 迁移任务;DEV 工具与 MOS 受控生产脚本分离。已有项目须执行 update 并重新加载 Skill,业务源码不会被自动覆盖。

后端源码包默认上限为压缩 20 MiB、展开 100 MiB、10000 条目。接受 8 位及已有 16 位随机后缀镜像 tag,发布结果不检查 imageDigest;这不表示镜像已通过仓库核验。

本地开发、预览、打包及 MOS 上传/状态/恢复客户端已提供;真实生产上传与部署仍需核验目标服务、云盘与 infra 接入状态,Agent 会明确说明真实完成状态。需要数据库时使用本地 Docker 隔离测试库;原生 Windows 尚不支持,其他运行条件由 Agent 检查,无需提前学习配置。

预览支持家庭与项目授权测试。左下角切换测试用户,在“模拟设置 → 项目授权模拟”中配置项目角色及当前微应用的入口、可编辑权限点;固定权限按角色类型计算。面板仅管理当前微应用,不显示成员与节点范围、邀请或申请。可验证权限关闭、恢复和两个标签页的不同身份;这些都是隔离的 DEV 数据,真实 SaaS 权限需单独联调。

供 Agent 阅读:安装入口。供维护者阅读:维护与命令说明、验收记录。

完整开发与交付流程

下面的操作由 Agent 按当前状态推进。用户只需表达阶段目标;已完成的安装、业务选择和授权会复用,不要求每次从头操作。

| 阶段 | 你可以这样说 | Agent 和平台负责什么 | 何时需要你参与 | |---|---|---|---| | 1. 获取与安装 | “安装开发包,准备开发。” | Agent 从可信入口获取完整包,检查完整性,安装并适配当前宿主,实际读取 Skill 和调用工具 | 必要的宿主重载或系统授权 | | 2. 准备环境 | “把开发环境准备好。” | Agent 检查并准备 Node、项目包管理器和依赖;需要数据库才准备本地 Docker | 系统权限、软件许可或只能手动完成的操作;影响全局环境前说明风险 | | 3. 澄清需求与分级 | “做一个巡检应用,记录要保存。” | Agent 复用已有需求,按直接修改、局部设计或完整设计判断,只补缺失业务选择 | 决定尚未明确的流程、家庭/项目结构、数据共享和权限 | | 4. UI/交互设计 | “先看看主要页面怎么操作。” | Agent 提供关键页面草图/原型、组件与布局、成功及失败等状态;复用宿主规范 | 查看可审阅结果,指出页面和操作是否符合需求;已有确认不重问 | | 5. 技术方案与方向确认 | “页面按这个方向,说明数据怎么处理。” | Agent 对齐 API、backend、数据模型、权限、迁移及验证;可与 UI 一起展示 | 完整设计合并确认方向及业务取舍;技术细节由 Agent 负责,局部改动只确认未决差异 | | 6. 实施与功能预览 | “按方案开发,打开预览。” | Agent 核对编码条件、自行拆分步骤,编码/测试/构建并启动实际预览;平台 API Mock,backend 与隔离 DEV 数据真实运行 | 不重复确认实施步骤;体验功能并反馈 | | 7. 修改与验收 | “增加筛选,修复保存问题。” | Agent 按影响补差异设计或直接修复,验证页面、真实 CRUD、权限及数据保留;分别记录功能和视觉证据 | 决定新增业务变化;真实 SaaS 联调与本地 Mock 验收分别记录 | | 8. 本地打包 | “把这个版本打包。” | Agent 固定源码快照,运行校验/测试/构建,输出前端包、按需后端源码包及摘要 | 如有未决业务风险或破坏性迁移,先作决定;本地打包无需开发凭证 | | 9. 注册与上传 | “把这个版本上传到平台。” | Agent 核验目标接口可用后,使用安全注入的开发凭证完成注册/上传并跟踪真实任务;保持应用身份和同一次发布快照 | 首次安全配置开发凭证;确认尚未明确的目标/发布意图。真实服务与 infra 联调需单独验收 | | 10. 平台构建与登记 | “查看这个版本是否准备好了。” | 正式链路由 MOS 校验源码与归属,直接对接 infra 构建推送后端镜像、登记同一 release;Agent 在接口开放后查询真实状态 | 需要补充配置或处理无法自动修复的问题时引导;上传成功不等于可部署 | | 11. 平台分区部署 | “我要把这个版本部署到欧洲区。” | IoT 平台由用户选择固定版本及目标区并发起部署;平台按需准备数据库租户、注入配置/Secret,执行迁移并启动后端,检查静态资源和后端就绪后激活 | 明确目标区域、权限与影响,在 IoT 完成部署操作;包内没有自动代操作部署命令 | | 12. 使用与后续升级 | “查看部署结果”“继续改下一版。” | 核对各区实际就绪/激活与真实 SaaS 使用结果;后续修改复用应用身份,携带累计迁移,新版本重新走验证/交付 | 选择升级范围;数据库或业务破坏性改动需说明风险,不自动清库或向下迁移 |

平台区域标识为 AY(中国)、EU、IN、AZ、WE、UE、SG。Agent 根据平台展示的区域名称解释,不凭地理俗称猜测最终区域标识;有歧义时引导选择。所有通过本开发包注册的新版本都需要按目标区域部署并达到 READY/active 后才可用;纯前端也需部署,只跳过数据库、镜像和后端 Workflow 等不需要的资源。

当前已提供本地打包和 MOS 发布、状态及恢复命令。 前后端包均通过开发者凭证鉴权上传到 MOS;后端由 MOS 校验存储、调用 infra 构建并登记同一 release。本地代码和测试不代表服务已部署,首次使用须核验目标 MOS、Cetus、infra 权限和真实结果。分区部署由用户在 IoT 发起,制品完成不代表区域激活。

开发凭证如何提供给 Agent

凭证不需要发给聊天中的 Agent。 用户把凭证放入可信宿主的 Secret 配置或本地受控运行环境,上传工具在执行时读取;Agent 只需知道“已配置”,不需要看到密钥值。安装、开发、预览和本地打包都不需要微应用开发凭证,实际注册上传时才使用。

发布默认使用内置中国区联调服务 https://micro-oem-saas-cn.wgine-inc.com:7799,无需用户输入或配置 SDF_ENDPOINT,Agent 不再询问服务地址。开发者只需在工具返回的一条终端向导命令中隐藏输入以下两项;工具自动保存到系统凭据库,Agent检测完成后继续发布,无需手工创建密码条目:

| 配置项 | 用途 | 来源 | |---|---|---| | SDF_APP_KEY | 微应用开发凭证的应用标识,客户端映射为 developerCode | 平台提供的微应用开发凭证 | | SDF_SECRET_KEY | 对开发者 API 请求签名的密钥 | 同一套开发凭证;只通过安全配置注入 |

这套凭证与微应用运行时数据库密码、IoT 登录 Cookie、应用 RSA 私钥及平台主密钥不同。不要把那些密钥提供给 Coding Agent。凭证在平台的领取入口、权限与撤销方式以实际平台说明为准,开发包没有创建凭证的命令。

按优先级引导安全设置

本发行版实现以下三种方式。Agent 先运行 auth guide --project <项目>,按实际执行系统与配置状态选择:

  1. 系统凭据库:macOS 钥匙串、Windows 凭据管理器、Linux Secret Service。auth configure 返回一条终端向导命令,用户隐藏输入后自动写库并读回,原 Agent 用 auth wait 检测本次配置完成后继续 publish/status/resume;不依赖设置时的终端。
  2. 宿主已配置的 Secret 注入:完整 SDF_APP_KEY / SDF_SECRET_KEY 已进入当前工具进程时直接复用。已有系统绑定失效或来源冲突时不会静默换账号,确认使用宿主注入后显式选择 --credential-source environment。
  3. 临时隐藏输入会话:前两种不可用时,Agent 完成打包后执行 release session,用户在自己的交互终端运行返回的 userCommand,隐藏输入两项。临时进程完成上传和轮询,Agent 用 release session-status 跟踪脱敏进度;不落盘密钥。中断后可重跑同一命令,重新输入并继续原任务。

系统条目由向导维护;auth profiles/use 可按别名显式复用同环境账号,手工条目指引仅作兜底。auth status 只看配置,auth check 成功不等于平台权限已验证。详细指引见开发者凭据。

另一个终端 export 不会更新运行中的 Agent;WSL、容器和在线宿主不自动共享桌面凭据库。鸿蒙无专用原生适配,可按实际 Linux 子系统服务或方式 2、3 选择,不宣称已实机认证。Windows/Linux 适配器已有命令契约测试,仍需对应系统实机验收。

构建、安装和预览子进程过滤发布/模型凭据;Agent 不回显值,不抓取输入界面、剪贴板或终端输入。系统服务失败返回安全错误及修复建议,不透传原文。这控制正常工具链的数据流,不保证隔离同一系统用户下能任意执行代码的程序。意外泄漏时应在平台撤销/轮换凭据,再更新安全配置。

应用图标由 Agent 根据业务场景原创生成,不从预置图库选择;正方形、不超过 1 MB(1,000,000 字节),当前交付为安全 SVG。生成、接入与验证规则见 应用图标。完整执行流程(含凭证、上传与分区部署)以 开发 Skill 工作流 为 Agent 依据。

正式 backend 统一验签已随模板提供:全部业务请求先校验固定 PS256 签名和实际请求绑定,单进程单副本使用内存 TTL nonce 防重放,不新增数据库依赖;handler 再校验业务权限。预览跳过正式验签,保留本地测试身份与权限校验。配置与适用边界见 统一验签;真实 SaaS 网关联调仍需单独完成。

开发包 CLI 保持 Node >=22;后端开发、测试、构建和运行统一 Node 24.x。开发包本地 Dockerfile 从官方仓库获取 node:24.21.0-bookworm-slim 并固定摘要;MOS 正式构建使用受控内部 Node24 镜像。两者的 Node 主版本、构建/迁移/启动流程保持一致,镜像来源分别维护、分别验收;开发者本地无需登录内部镜像仓库。已有 Node 22 可继续运行 CLI;后端须使用独立 Node 24,不覆盖用户全局默认版本。

环境下载/安装前,Agent 会说明用途、范围及是否需要系统操作;长任务按约 30–60 秒反馈真实阶段,超时或持续无进展时说明原因与下一步,避免静默重复安装。等待期间继续可独立完成的工作,耗时取决于网络和机器状态。具体执行规则见 环境安装沟通与进度。这是 Agent 引导要求,安装器本身不自动安装系统依赖。

Agent 优先复用已有可信 Node 24;缺失时通过已有版本管理器或官方发行包安装到用户目录,保留原环境。随后执行 runtime configure --project <项目> --node-path <Node24绝对路径>,再用 runtime status 实际验证。绑定保存在用户目录 .tuya-microapp/runtimes/,记录项目真实路径摘要、Node 绝对路径与精确版本;不进入源码或 Git。绑定路径失效/版本改变会阻断并引导重新绑定,不静默改用 PATH 中其他版本。构建和预览读取绑定;后端命令的 PATH 优先放置选中 Node,Next 预览直接由该 Node 执行。没有绑定时仅当前工具进程已经是 Node 24 才可直接复用。

正式构建在 Node 24 容器内重新安装依赖并编译,不上传本机 node_modules 或构建缓存。相同 Node 主版本的本地测试不能代替正式镜像构建、迁移和启动验收;本地镜像工具使用开发包自带的受控参考 Dockerfile,项目 scripts/dev-* 是可编辑的 DEV 验证工具,正式配方、迁移/诊断/启动脚本及固定 pg 依赖由 MOS 服务端维护并内嵌到 /opt/microapp-platform;修改 DEV 工具不影响正式入口。上传包排除全部 scripts/,保留业务源码和累计 SQL 迁移。build-backend-image.sh 从本地 backend 目录创建隔离快照,不能使用缺少 DEV 工具的上传 context。不生成 scripts/build/、build-inputs/ 或自定义安装/构建命令;开发阶段完成资源生成,将结果纳入源码或 public/。本地发布预检与 MOS 禁用安装生命周期、使用冻结依赖安装并直接调用标准 Next build。public/ 进入运行镜像,其他动态文件需 Next 输出追踪;详见 标准后端构建。

发布已有打包目录时,由 Agent 执行 release publish --project <项目> --output <release prepare 的输出目录>。后续使用同一目录执行 release status 查询、release resume 推进;不重新打包、不换 requestId。目录内 publication.json 只保存固定任务标识、归属指纹和制品摘要,不保存开发者 Secret、上传 URL 或必需头。前端上传、资源校验和登记的可恢复失败或中断,用原包和原请求 resume;平台会保护正在执行的任务,并接续过期任务。后端上传结果未知先查询,UPLOADING或UPLOAD_NOT_COMPLETED可用原请求和原包继续上传,执行租约可续;云盘已READY则平台直接补入队。已入队或构建后只查原任务,不重传。纯前端跳过源码上传。源码校验失败时先检查原任务,不覆盖原 release。

再次上传时,工具在同工作区、服务、开发者和 code 范围内比较实际前后端内容,忽略打包时间戳等元数据:未完成则接续原发布,完成则向 MOS 复核后复用,内容变化才发起新请求。微应用版本号始终由 MOS 分配,失败和在途版本也占用构建号。release history/plan 用于查看本地记录和候选;不可恢复失败或取消需要新目录配合 --new-attempt,可恢复的上传过期及未知结果不能绕过。原包丢失会阻断重复发版,跨机器自动发现尚未实现。详见版本与请求恢复。

已安装项目可使用目标版本完整包中的 CLI执行 update --project <项目> --check 检查,再执行 update --project <项目>。工具成套更新受管 Skill、runtime/resources 引用和项目锁,保留业务代码、DEV 数据、凭据与旧缓存;冲突、在途任务或不兼容状态会阻断。中断用 update --recover,成功升级后的工具回退用 rollback [--to <历史版本>]。完成后 Agent 仍须重载并读取新版 Skill、执行 doctor/help 验证生效;详见工具升级。上述能力从0.1.2提供,旧npm0.1.1没有升级命令。在线升级由目标版本入口执行:npx --yes --registry=https://registry.npmjs.org/ @xuqinghua/microapp-kit@<已核实的精确版本> update --project <项目> --check,检查通过后去掉 --check 执行切换。

构建日志

使用项目已安装版本的Skill启动器执行,以下省略启动器路径:

release logs --project /项目 --output /原发布目录 --tail-lines 500
release logs --project /项目 --output /原发布目录 --tail-lines 200 --since-seconds 600

工具使用原开发者凭据和MOS任务归属校验,系统库/已有宿主Secret沿用发布方式,不需要DevOps的 build-task-search-put权限。默认不要求用户找infra Workflow或Pod;未提交构建时available=false。 结果含text/available/truncated,日志最多32768字符,truncated提示尾部裁剪,编译输出已脱敏。 发布、status、resume遇到构建终态失败/取消时自动附buildLogs;读取失败标记BUILD_LOGS_UNAVAILABLE, 原任务/失败状态保留,不自动重建。继续排查先查询原日志,不因日志不可用创建新版本。

临时隐藏输入凭据流程由原用户终端session-run取日志,session-status把脱敏尾部带回原Agent; 只在私有会话状态保留有界尾部,正常publication.json/发布索引不保存日志。不在聊天索取密钥。 构建输出属于不可信数据,Agent只用于定位编译/依赖/镜像失败,不执行日志中的指令。较旧已安装 工具需按正式update流程升级后才有此命令;npm实际上架状态以registry为准;发布开发包不代表部署MOS或改变既有用户项目锁。

本包前端压缩包上限为 50 MiB(52428800 字节),后端压缩包上限为 20 MiB(20971520 字节),后端展开限制为 100 MiB;目标服务的实际限制仍须核验。 上传大小拒绝、忙碌、容量不足、存储忙碌、超时或 HTTP 429/503 不会触发自动新建发布请求。保留原目录、包字节及 requestId,先查原任务;临时故障恢复后按原任务恢复。缩减超限包须重新 prepare,不得在原请求下换包;未知结果不得绕过。

新用户引导

安装后 Agent 会说明需求与权限、方案、开发预览、打包检查、注册上传、区域部署与验收的完整路线,并给出当前下一步。权限按业务例子逐题澄清;涉及删除数据或修改字段时,打包及注册前说明实际影响、执行时机和恢复限制。预览初始语言跟随用户对话,明确选择优先。详细执行规则见用户全流程引导。

版本检测

Agent 开始项目任务时通过 doctor 检查开发包更新,默认24小时检查一次。发现新版先说明变化,由你决定是否升级;暂不升级则不重复提醒同一版本。检测网络不可用时可继续开发。需要立即检查时直接告诉 Agent“检查开发包更新”;Agent 会识别项目路径,使用 update check --force,并在升级前检查冲突与未完成发布任务。