用途
setup-datamodel 是面向 Power Apps 移动应用的独立数据源规划技能,用于设计或重新设计 Dataverse 架构与连接器方案。它作为组合编排器,先设计 Dataverse 架构、规划连接器,获得对两者的批准,然后委托 /add-dataverse 和 /add-connector 执行。
该工作流是仅针对数据的独立流程,不需要完整的应用计划。它只提出并批准当前的架构/连接器增量,保留现有应用部分,不触发完整应用规划或屏幕生成。当被某个 owner 调用时,会保留其明确的当前请求、绝对根目录、阶段和范围,并将提案或验证结果返回给该 owner。
主要能力
- 解析用户提供的 ER 图:支持 PNG/JPG(通过 Read 查看)、Mermaid 语法(在聊天中粘贴)或文本描述,解析表、列和关系。
- 由 data-model-architect 智能体推断数据模型:当用户没有现成图表时,可让架构师智能体根据需求推断。
- 连接器规划:根据应用需求推断连接器候选列表,经用户确认后记录到 ## Connectors 部分。
- 统一批准:将数据模型与连接器一起在单个 EnterPlanMode 块中呈现,区分保留上下文与新增、刷新、明确批准的退役。
- 执行委托:批准后调用 /add-dataverse 按层级顺序建表、添加绑定或刷新服务,并调用 /add-connector 添加或刷新连接器。
- 产物存储规则:当需求涉及签名、签核、墨迹、生成的 PDF、导出报告、证据包或保留文档时,在批准前明确存储目标(设备端/仅共享、Dataverse Image 列、Dataverse File 列或子 Evidence/Attachment 表)。保留的 PDF 内容必须使用 File 列,不能建模为长文本/base64。
使用方式
工作流分为多个阶段:
- 验证项目与认证:解析一个绝对 working_dir,确认所选根目录是 Power Apps 移动应用(检查 power.config.json 和 app.config.js),解析环境 ID 并验证租户。
- 设计数据模型:检查请求是否需要 Dataverse 架构;仅连接器请求走 Path C。若 $ARGUMENTS 中有图表提示则走 Path A;若已提供 Dataverse 需求则走 Path B 进行只读提案;若仍未知则询问用户如何定义数据模型。
- 规划连接器:推断连接器关键词、构建候选列表、通过 AskUserQuestion 确认、记录 ## Connectors 部分。
- 统一批准:呈现完整计划,用户可批准、更改数据模型、更改连接器或取消。
- 执行数据模型:调用 /add-dataverse 并传 --skip-planning,读取已批准计划。
- 执行连接器:对每个已批准新增/刷新的连接器行调用 /add-connector。
调用时需注意:嵌套调用继承 owner 的绝对 working_dir;直接调用需解析显式 --working-dir。所有相对路径均相对于解析后的根目录。
适用场景
- 初始化后的应用,进行独立的架构 + 连接器设计(数据计划可选)。
- 已有 ER 图(图片 / Mermaid / 文本)需要导入。
- /create-mobile-app 将其作为子步骤调用,带有已批准的范围上下文。
- 项目中期重新规划架构或连接器。
限制
- 若计划已存在且只需应用表并生成服务,应直接使用 /add-dataverse。
- 若只需添加单张表或单个连接器,应直接使用 /add-dataverse。
- 仅连接器、仅退役和仅刷新的提案保留各自的检查,不得复用陈旧的架构规划产物。
- 省略的表不是自动删除;现有消费者所需的任何内容都会保留。
- 提案审查的批准不覆盖 --plan-only;实现需要单独的不带该标志的请求并批准其确切增量。
- 保存的计划或 --skip-planning 本身不构成批准。
- 若智能体不可用,可从同一紧凑证据内联起草两份产物并运行相同验证。
- 关于收费、价格、平台支持范围等具体信息,资料中暂未提供。