用途
create-code-app 用于创建 Power Apps 代码应用(Code Apps),技术栈为 React 与 Vite。它适合在需要构建代码应用、搭建项目脚手架,或将应用部署到 Power Platform 时使用。该技能以工作流形式组织,覆盖从环境校验到最终部署的完整流程。
主要能力
该技能提供一套分步工作流:
- 检查 Memory Bank(依据 shared-instructions.md,跳过已完成步骤)
- 校验前置条件
- 收集需求
- 规划方案
- 搭建脚手架
- 初始化应用
- 基线构建与部署
- 添加数据源
- 实现应用
- 最终构建与部署
- 总结
其中数据源接入通过一系列 /add-* 子技能完成,包括:/add-dataverse(存储和管理自定义业务数据)、/add-azuredevops(跟踪工作项、缺陷、管道)、/add-teams(发送或读取 Teams 消息)、/add-excel(读写 Excel 电子表格数据)、/add-onedrive(上传、下载或管理文件)、/add-sharepoint(处理 SharePoint 列表或文档)、/add-office365(发送邮件、读取收件箱、管理日历)、/add-mcscopilot(调用 Copilot Studio 智能体)、/add-workiq(搜索 M365 数据或获取 AI 驱动的答案)、/add-connector(连接其他服务)。
使用方式
前置条件
需要 Node.js v22+(通过 node --version 检查),Git 为可选但推荐(通过 git --version 检查)。若缺少 Node.js,需从 https://nodejs.org/ 安装 v22+ 并停止;若版本低于 v22,需升级或使用 nvm use 22 切换。
脚手架
使用 npx degit 下载模板(不使用 git clone,不手动创建文件,不从 GitHub UI 下载):
npx degit microsoft/PowerAppsCodeApps/templates/vite {folder} --force cd {folder} npm install
若目标为已有目录,可使用 . 作为文件夹名。若 npx degit 失败,重试一次,然后请用户手动运行。
初始化
先解析 CLI(见 cli-binary.md),以 $PA app init … 形式运行(npx --no-install pa …),不要使用裸 pa。在仅 power-apps 项目中,转换为 power-apps init …。
pa app init -n '{user-provided-app-name}' -e <environment-id>
环境 ID 是 make.powerapps.com URL 中的 GUID:https://make.powerapps.com/environments/<env-id>/home。若不传 -e,CLI 会交互式提示。首次运行会打开浏览器进行 Microsoft 登录。初始化后需读取 power.config.json 并确认 environmentId 正确。
构建与部署
基线部署属于脚手架流程的一部分,无需单独确认:
npm run build pa app push
应用 URL 形如:https://apps.powerapps.com/play/e/{env-id}/app/{app-id}
最终部署前需询问用户并获得明确确认。
实现应用
使用生成的 service 进行所有数据访问,不要直接使用 fetch/axios。使用 Grep 查找生成 service 文件中的方法,不要读取整个生成文件。构建前移除未使用的导入(TS6133 严格模式)。除修复已知问题外,不要编辑 src/generated/ 中的文件。
适用场景
- 需要基于 React 和 Vite 构建 Power Apps 代码应用
- 需要搭建 Power Platform 代码应用项目脚手架
- 需要将代码应用部署到 Power Platform
- 需要为代码应用接入 Dataverse、SharePoint、Teams、Office 365、Excel、OneDrive、Azure DevOps、Copilot Studio、Work IQ 等数据源或服务
限制
- 需要 Node.js v22+,低于该版本无法继续
- 初始化与部署依赖 pa CLI(或 power-apps CLI),需完成 Microsoft 登录
- 需要目标环境的 maker 权限
- 数据源接入需通过对应的 /add-* 子技能完成
- 具体收费、价格、平台支持范围等资料暂未提供