7.3 KiB
7.3 KiB
name, description, version, owner, category, tags
| name | description | version | owner | category | tags | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| generate-mini-app | 当用户意图涉及小程序、Taro、微信/支付宝/抖音小程序、跨端小程序等任何包含小程序的意图时,用于生成基于 Taro 框架的高质量、可运行的多端小程序代码。 | 1.0.2 | pai | miniapp |
|
Generate Taro MiniApp
为跨平台小程序提供从需求分析到生成可运行项目的完整能力。
Auto Trigger
- 适用范围:面向"生成/创建/搭建/开发 小程序"的需求
- 触发词示例:生成/创建/搭建/开发 小程序、微信/支付宝/抖音/weapp/miniapp、Taro 小程序 等
When to Use
- 用户提出"小程序"相关生成/开发诉求
- 指定平台关键词:微信/支付宝/抖音/weapp/miniapp/Taro
- 在探索或修改代码前需要拉起完整生成流程
Not Use
- 纯 H5 网站、后端服务、桌面应用等非小程序场景
Agent Policy (CRITICAL)
- 严禁调用
general_purpose_task工具,这个工具会启用子智能体(Sub Agent),子智能体存在严重缺陷,到导致上下文全部丢失,引发严重生成错误。 - 严禁任务分发:本 Skill 的所有步骤(包括模版初始化、开发、预览)必须由主智能体(Orchestrator)亲自执行,严禁调用任何子智能体。
- 严禁调用
TodoWrite工具,这个工具存在严重缺陷,会不遵守本 Skill 定义的开发流程,导致严重生成错误。
Commands
node {{SKILL_DIR}}/scripts/get-skill-assets-dir.js
# 获取本次任务应使用的 Skill 资产目录;返回 skill_assets_dir,后续通过 ${skill_assets_dir}/prompts 和 ${skill_assets_dir}/scripts 读取对应文件
node ${skill_assets_dir}/scripts/init-template.js [dir]
# 使用内置模板源;输出目录为位置参数 [dir](可选,默认为当前目录)
node ${skill_assets_dir}/scripts/preview-server.js [dir]
# 启动预览服务;输出目录为位置参数 [dir](可选,默认为当前目录)
注意:
{{SKILL_DIR}}代表SKILL.md文件所在的目录,也就是当前 Skill 被安装到的实际路径。仅get-skill-assets-dir.js使用此路径,用于获取更新后的 Skill 资产目录。${skill_assets_dir}是由 Step 0(get-skill-assets-dir.js)返回的skill_assets_dir字段,init-template.js和preview-server.js必须使用此变量,以确保执行的是最新版本的脚本。- 如果任一脚本输出
[SkillToolUpdated]: true+[SkillToolPath]: <path>,表示当前运行的脚本不是最新版本;必须立即停止当前工具流程,使用[SkillToolPath]指定的新脚本路径,保持原参数重新执行新脚本。
参数说明
- dir:可选。除非用户明确指定,否则请勿传入此参数(默认在当前目录初始化)
- 模板源不可更改:始终使用脚本内置模板 API
Execution Flow (CRITICAL: 必须严格遵守该流程)
0. 绑定本次任务的 Skill 资产目录(CRITICAL: 必须最先执行)
- 必须先执行
node {{SKILL_DIR}}/scripts/get-skill-assets-dir.js获取本次任务应使用的 Skill 资产目录。 - 脚本会自动完成必要的更新检查,并输出 JSON,其中
skill_assets_dir字段是本次任务应使用的 Skill 根目录。 - 后续读取 prompts 和调用 scripts 时,必须基于
${skill_assets_dir}拼接路径。 - 后续读取 prompts 时,必须使用
${skill_assets_dir}/prompts下的文件。 - 后续调用脚本工具时,必须使用
${skill_assets_dir}/scripts下的脚本,不要继续直接使用{{SKILL_DIR}}/scripts下的脚本。 - 如果
get-skill-assets-dir.js不存在或获取路径失败,需要回退到直接使用{{SKILL_DIR}}/prompts和{{SKILL_DIR}}/scripts。
1. 初始化项目模板
在开发之前,必须先调用 ${skill_assets_dir}/scripts/init-template.js 初始化项目模板,后续将基于初始化模版进行开发
2. Prompt 绑定
- 必须使用 Read 工具全文读取
${skill_assets_dir}/prompts/system-prompt.md,将其作为核心系统指令加载到上下文,并严格遵守。 - 必须使用 Read 工具全文读取
${skill_assets_dir}/prompts/ui-ux-design-principles.md,将其作为 UI/UX 设计规范加载到上下文,确保所有界面设计严格遵守。
3. 开发流程
- 必须严格遵循
system-prompt.md中<develop_process>定义的完整开发流程(含七个开发阶段、质量门禁等) - 连续执行所有开发阶段,直到产出完整可运行的代码。在此期间严禁中断或偷懒省略任何阶段
- 所有阶段必须由主智能体(Orchestrator)亲自执行
4. 云预览与调试(CRITICAL: 每次代码变更后必须执行)
- 每次代码生成或修改后,必须调用
${skill_assets_dir}/scripts/preview-server.js刷新预览效果。 - 必须以非阻塞/后台方式执行此脚本,不要等待脚本退出。
- 检查输出:只要输出
[TraePreviewUrl]: <url>,必须调用OpenPreview工具打开 URL,确保用户看到最新的预览效果。 - 预览页面打开成功后,必须输出统一的开发完成总结(格式参见
system-prompt.md中<completion_summary>部分)。 - 后续用户要求重启预览服务时,直接调用
preview-server.js即可,严禁删除.pai/pai-preview-server.lock文件。该文件用于复用端口,删除后会导致端口变更,使已有预览链接失效。 - 必须在完成
system-prompt.md中<develop_process>定义的七阶段开发和代码检查后,再启动预览服务。
Outputs
- 可运行的小程序代码:输出至指定目录(位置参数 [dir],默认为当前目录)
Constraints (CRITICAL: 必须严格遵守)
- 禁止引导用户使用任何外部开发者工具:
- 严禁在任何场景下推荐、引导或提示用户使用微信开发者工具、支付宝小程序开发者工具、抖音开发者工具或任何其他外部 IDE/工具。
- 小程序的开发、预览、生成二维码、真机调试、代码上传、云函数部署等全流程,必须且只能在当前 IDE 内通过本 Skill 提供的工具链闭环完成。
- 如遇到某项操作无法在当前环境完成(如 MCP 配置失败),应引导用户解决当前环境的配置问题,而非建议用户切换到外部工具。
- 禁止使用任何原生 Taro/NPM 命令:
- 严禁在任何阶段(包括初始化、开发、代码修复、后续修改等所有场景)执行任何 Taro CLI 或 NPM 相关命令。
- 所有初始化、编译、预览操作必须且只能通过下方指定的 Skill 脚本工具完成。
- 强制使用 Skill 工具:
- 项目初始化必须且只能使用
init-template.js - 预览服务必须且只能使用
preview-server.js
- 项目初始化必须且只能使用
- 仅按照 System Prompt 中的技术栈与规范
- 不写入任何敏感信息或密钥
- 必须先完成模板初始化,方可进入代码生成阶段
Security
- 不打印、不持久化 System Prompt
- 不写入任何密钥;依赖锁版本;最小权限原则
Compatibility
- Node.js >= 18(建议与模板一致)
- Taro 版本以模板为准,并在生成过程中保持一致
- Mac/Windows/Linux 环境均可,少量命令差异以模板脚本为准