1. 什么是纷享销客 AI 智能配置开发套件
纷享销客 AI 智能配置开发套件,是基于 ShareDev 工程、租户元数据、对象字典、APL 文档、PWC 资源和一组专项开发技能构建的智能开发辅助能力。
它的目标不是只回答问题,而是帮助用户完成从需求理解到开发交付的完整链路:
环境准备 → 需求理解 → 技能编排 → 配置生成 → 代码开发 → 审查验证 → 发布确认
用户可以用自然语言描述需求,AI 会根据需求类型判断需要调用哪些能力。例如:
- 新建对象、字段、布局和布局规则。
- 开发 APL 按钮、流程、计划任务、自定义控制器或事件监听。
- 开发 PWC 组件或插件。
- 根据 Word 文档或粘贴内容解析需求。
- 生成 PRD、技术方案、实施计划和代码审查报告。
- 在发布前执行编译、静态分析、人工验证提醒和风险确认。
这套能力适合低代码平台上的配置开发、后端函数开发和前端组件/插件开发,不仅关注"生成代码",也关注"需求澄清、执行顺序、质量审查和发布风险"。
2. AI 智能实施场景
| 实施场景 | AI 可以做什么 | 典型输入 | 典型产出 | 常用技能 |
|---|---|---|---|---|
| 端到端配置 | 解析一句话需求、Word 文档或粘贴内容,判断复杂度并推荐技能链 | 自然语言需求、文档路径、粘贴内容 | 需求摘要、复杂度、技能链、确认点 | sharedev-auto |
| 配置对象 | 创建或修改 CRM 对象定义 | 对象名称、API Name、功能开关 | object-meta.xml | sharedev-object |
| 配置字段 | 创建或修改字段,支持全部字段类型和校验规则 | 对象名、字段名、类型、选项值 | field-meta.xml | sharedev-field |
| 配置页面布局 | 创建或修改详情页/编辑页/列表页/移动端摘要布局 | 对象名、布局类型、字段分组 | layout-meta.xml | sharedev-layout |
| 配置布局规则 | 控制字段显示/隐藏/必填/只读的动态行为 | 对象名、布局、条件字段、动作 | layout-rule-meta.xml | sharedev-layout-rule |
| 配置验证规则 | 保存时校验业务数据,阻断或不阻断 | 对象名、公式表达式、错误提示 | validation-rule-meta.xml | sharedev-validation-rule |
| 配置通用选项集 | 创建跨字段复用的共享选项集 | API Name、选项列表(label/value/颜色) | option-set-meta.xml | sharedev-option-set |
| 配置租户场景 | 配置列表视图的筛选条件、适用范围和显示列 | 对象名、筛选条件、显示列 | scene-meta.xml | sharedev-scene |
| 配置映射规则 | 源对象到目标对象的字段自动回填 | 源对象、目标对象、字段映射 | mapping-rule-meta.xml | sharedev-mapping-rule |
| 配置转换规则(推拉单) | 源单到目标单的推拉逻辑,支持合单/回写 | 源单、目标单、场景、策略 | convert-rule-meta.xml | sharedev-convert-rule |
| 配置自定义按钮 | 配置详情页/列表页的普通/跳转/映射按钮 | 对象名、按钮类型、后动作 | button-meta.xml | sharedev-button |
| 配置全局变量 | 管理租户级常量,在公式/表单中引用 | API Name、类型、默认值 | global-variable-meta.xml | sharedev-global-variable |
| 配置币种与汇率 | 管理本位币、原币、汇率与启停状态 | 币种代码、币种名称、汇率 | currency-meta.xml | sharedev-currency |
| APL 后端逻辑开发 | 开发后端函数、按钮、流程、计划任务、控制器、事件监听 | APL 场景、对象字段、业务规则 | Groovy 文件、compile/analyze 结果、REVIEW.md | sharedev-apl-implement / apl-lite / apl-code-review |
| PWC 前端开发 | 开发组件/插件,生成 PRD→Arch→Plan,执行计划,修复 Bug | PWC 功能需求、已有计划、Bug 描述 | prd.md、arch.md、plan.md、PWC 源码、审查结果 | sharedev-pwc-write-prd-spec / write-arch / write-plans / implement / review-code / finish-development / fix-bug |
| 审批流配置 | 配置多级审批流,含节点/处理人/条件分支/后动作/超时提醒 | 审批层级、处理人、后动作 | workflow.json、rule.json、execution.json | sharedev-approval |
| BPM 业务流程 | 配置 BPM 业务流程,含节点/连线/处理人/分支条件/泳道 | 流程节点、连线、处理人、条件 | BPM 流程 JSON | sharedev-bpm-def |
| 阶段推进器 | 配置生命周期阶段管理,含阶段节点/任务/触发规则 | 对象、阶段字段、阶段节点、阶段任务 | stage workflow.json、rule.json | sharedev-stage-def |
| OneFlow 流程 | 配置 OneFlow 流程草案与 definition | 流程节点、变量、条件 | OneFlow JSON | sharedev-oneflow-def |
| 混合/全栈开发 | 同时涉及对象配置+PWC+APL 或 PWC+APL 混合 | 多维度需求描述 | 多技能产出物组合 | sharedev-auto (Template D/E) |
3. 快速开始
环境准备能力用于把当前工作区准备为可开发的 ShareDev 工程。你需要依次完成:
- 安装本地 AI 智能体(WorkBuddy / Trae SOLO Desktop / Codex / Claude Code)
- 安装 CLI 工具
- 下载并安装 sharedev-init
- 在 AI 智能体中调用 sharedev-init 初始化工程
- 快速体验
3.1 步骤一:安装本地 AI 智能体
使用纷享销客 AI 智能实施能力前,你需要在本地安装一个 AI 编程助手或智能体。不同工具适合不同开发场景,你可以根据偏好选择安装。
| AI 智能体 | 发布方 | 适合场景 | 下载地址 |
|---|---|---|---|
| WorkBuddy | 腾讯 | 全场景 AI 桌面智能体,支持本地文件操作、多步骤自动化任务 | codebuddy.cn/work |
| Trae SOLO Desktop | 字节跳动 | AI 原生 IDE,内置 SOLO 模式可完成需求→代码→测试→部署全流程 | trae.cn(国内版)或 trae.ai(国际版) |
| Codex | OpenAI | AI 编程代理,支持 CLI、IDE 扩展、云端 Agent,覆盖编码到代码审查全场景 | developers.openai.com/codex 或 npm install -g @openai/codex |
| Claude Code | Anthropic | 终端 AI 编码代理,支持多文件编辑、项目重构、Bug 修复 | claude.com/download(桌面)或 claude.ai/code(Web) |
安装简要指引:
- WorkBuddy:访问 codebuddy.cn/work,下载对应系统(Windows / macOS)安装包,安装后使用腾讯账号登录即可。
- Trae SOLO Desktop:国内用户访问 trae.com.cn 下载国内版,支持 Windows / macOS / Linux;国际用户访问 trae.ai。
- Codex:推荐使用 CLI 方式
npm install -g @openai/codex,也可从 chatgpt.com/codex 获取桌面 App;需 ChatGPT Plus / Pro 及以上订阅。 - Claude Code:macOS / Linux 可运行
curl -fsSL https://claude.ai/install.sh | bash安装;Windows 在 PowerShell 运行irm https://claude.ai/install.ps1 | iex;也可直接下载桌面 App 或访问 Web 版;需 Claude Pro 及以上订阅。
基于不同工具,使用模型建议:
- WorkBuddy 和 Trae SOLO Desktop 建议使用:Deepseek V4 Pro, GLM-5.1, KIMI-K2.6。
- Codex 和 Claude Code 可以使用官方对应的模型。
3.2 步骤二:CLI 工具安装
环境要求
环境依赖安装:
- 下载 Node.js — 访问 Node.js 官网 下载最新稳定版,按照安装向导完成安装(通常保持默认设置即可)。
- 环境就绪 — 以上步骤完成后即可安装 CLI。
命令行安装
选择以下任一方式安装:
方式一:npm 全局安装
npm install -g @share-crm/sharedev-cli
方式二:macOS / Linux / WSL
curl -fsSL http://developer.fxiaoke.com/sharedev/install.sh | bash
方式三:Windows PowerShell
irm https://developer.fxiaoke.com/sharedev/install.ps1 | iex
验证安装
安装完成后,请在终端执行:
sharedev -v
如果没有报错信息,并且返回结果是
0.0.x-rc.x,则证明安装成功。更详细的 CLI 命令和参数说明请参考 sharedev-cli 开发在线手册。
3.3 步骤三:下载并安装 sharedev-init
sharedev-init 是纷享销客AI智能配置开发套件的入口技能包。你需要先下载,再在 AI 智能体中使用它。下载地址: 打开链接下载技能到本地。
安装要求: 下载
sharedev-init.zip 到你要作为工程根目录的文件夹。开始初始化前确认 3 件事:
| 确认项 | 要求 |
|---|---|
| 当前目录位于项目根目录 | 或能明确项目根目录位置 |
| 租户配置 | 项目根目录存在 settings.json |
| 初始化目标 | 明确目标平台、执行模式、安装范围 |
settings.json 示例:{
"enterpriseEA": "fktest001",
"domain": "https://www.fxiaoke.com",
"certificate": "ZXlKaGJHY2lPaUpJVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SnpkV0lpT2lKU1pYRjFaWE4wVkc5clpXNGlMQ0pwYzNNaU9pSkRSVkF0VTJWeWRtVnlJaXdpWlc1MFpYSndjbWx6WlVGalkyOTFiblFpT2lKbWEzUmxjM1E0TlRBM0lpd2laVzUwWlhKd2NtbHpaVWxrSWpvNE1qUXpNRElzSW5ObGMzTnBiMjVKWkNJNklqWTNNemN6WmpjM0xUSXdPVFV0TkdJMVpTMDVZbVU0TFdOaE16VXpZV0k1T0dVME5pSXNJbVY0Y0NJNk16ZzNNelV4TURVeE9Dd2lkWE5sY2tsa0lqb3hNREF3TENKcFlYUWlPakUzTnprd056UTVOVGw5Lm9Sbjdfc1FJSmtsVlAxUGQy"
}
项目目录结构示例:
<workspaceRoot>/ # 项目根目录
└── settings.json # 初始化输入:租户连接信息
文件内容具体设置请查看「环境初始化内容」。
3.4 步骤四:初始化项目示例
下载
sharedev-init 后,在 AI 智能体中进行对话安装 sharedev-init 技能。- 安装
<技能包存放的路径>/sharedev-init.zip技能 - 完成安装后,在 AI 智能体中按以下方式调用
sharedev-init技能
示例:一句话快速初始化
在 AI 智能体中输入:
/sharedev-init 初始化当前 <工作区>
执行完成后,
sharedev-init 会把当前工作区整理为可开发的 ShareDev 工程结构。初始化后的完整目录结构:
<workspaceRoot>/ # 项目根目录
├── settings.json # 租户连接信息
├── .sharedev/ # 本地元数据
│ ├── dev-metadata/objects/ # 对象字典
│ ├── apl-docs/ # APL 文档
│ └── pwc-docs/ # PWC 文档
├── <enterpriseEAName>/ # 企业工程目录(enterpriseRoot)
│ ├── .trae/skills/ # 目标平台技能
│ ├── specs/apl/ # APL 规范与参考
│ ├── package/fx/custom/apl/script/ # APL 源码
│ │ ├── <ApiName>.function.groovy
│ │ └── <ApiName>.class.groovy
│ ├── pwc/ # PWC 组件/插件资源
│ │ └── components/
│ │ └── <ComponentName>/
│ │ ├── source/
│ │ ├── .sharedev-meta.json
│ │ └── mateXml.xml
│ └── tenant-config/ # CRM 配置目录
│ ├── objects/<ObjectApiName>/
│ │ ├── <ObjectApiName>.object-meta.xml
│ │ ├── fields/<fieldApiName>.field-meta.xml
│ │ ├── layouts/<layoutApiName>.layout-meta.xml
│ │ ├── layout-rules/<ruleApiName>.layout-rule-meta.xml
│ │ ├── validation-rules/<ruleApiName>.validation-rule-meta.xml
│ │ ├── scenes/<sceneApiName>.scene-meta.xml
│ │ └── buttons/<buttonApiName>.button-meta.xml
│ ├── option-sets/<api_name>.option-set-meta.xml
│ ├── mapping-rules/<masterRuleApiName>.mapping-rule-meta.xml
│ ├── convert-rules/<masterRuleApiName>.convert-rule-meta.xml
│ ├── global-variables/<api_name>.global-variable-meta.xml
│ ├── currencies/currency.currency-meta.xml
│ ├── approval/<srcWorkflowId>/
│ │ ├── workflow.json
│ │ ├── rule.json
│ │ └── execution.json
│ ├── stage/<sourceWorkflowId>/
│ │ ├── workflow.json
│ │ └── rule.json
│ └── bpm/
└── .trae/skills/ # 全局技能目录(初始化时安装)
注意:
<enterpriseEAName> 目录即 enterpriseRoot,所有 sharedev 远端操作命令(如 apl push、pwc deploy、object-dev push)都应在此目录下执行,而不是在 <workspaceRoot> 下执行。3.5 步骤五:动手体验
场景 1:一句话需求端到端开发
技能使用示例:
/sharedev-auto 【需求描述信息】
对于 Word 文档或粘贴内容,可以这样调用:
/sharedev-auto 根据这个 Word 需求文档做需求解析和技能链编排:/path/to/需求.docx
识别 word 文档建议本地使用 WorkBuddy、Codex 和 Trae SOLO Desktop 工具,这些工具会自动给您的环境安装对应的插件或 python 去提取文档内容。
执行完成后,
sharedev-auto 通常会先产出以下结果:- 输入来源识别结果:一句话、文件路径、Word 文档或粘贴内容
- 结构化需求摘要:对象、字段、页面、规则、APL、PWC、发布目标等
- 复杂度等级:L1 到 L5
- 推荐技能链:配置、APL、PWC 或混合编排路径
- 阶段 Gate:需要用户确认的硬停止点
- 用户确认后的专项技能执行计划
场景 2:从 0 到 1 新建业务对象
对象配置示例:
/sharedev-object 新建"竞品档案"对象,API Name 为 Competitor__c
字段配置示例:
/sharedev-field 给 Competitor__c 新增竞品名称、行业、官网、启用状态字段
布局配置示例:
/sharedev-layout 配置 Competitor__c 的详情页、新建页和列表页布局
布局规则配置示例:
/sharedev-layout-rule 在 Competitor__c 新建页,当启用状态为"停用"时隐藏官网字段
执行完成后,配置类技能通常会在企业工程目录下生成或修改这些配置文件:
tenant-config/objects/<ObjectApiName>/<ObjectApiName>.object-meta.xml— 对象定义tenant-config/objects/<ObjectApiName>/fields/<fieldApiName>.field-meta.xml— 字段定义tenant-config/objects/<ObjectApiName>/layouts/<layoutApiName>.layout-meta.xml— 页面布局tenant-config/objects/<ObjectApiName>/layout-rules/<ruleApiName>.layout-rule-meta.xml— 布局规则
标准依赖顺序: Object → Field → Layout → Layout Rule
注意: 新增字段后不会自动出现在页面上。若要展示字段,需要继续配置布局。布局规则只能控制目标布局中已有字段。如果字段未放入布局,应先调整布局,再配置规则。
场景 3:开发 APL 流程函数
完整开发示例:
/sharedev-apl-implement 开发一个流程函数:当销售订单审批通过后,自动更新客户最近成交时间。请按完整 APL 开发流程执行。
轻量开发示例:
/sharedev-apl-lite 快速写一个客户详情页按钮函数,校验客户等级是否为空,不需要 PRD/ARCH/TASKS。
代码审查示例:
/sharedev-apl-code-review 帮我 review 这个 APL 函数,确认 compile/analyze 和发布风险,并输出 REVIEW.md。
执行完成后,APL 技能通常会产出:
package/fx/custom/apl/script/<ApiName>.function.groovy— 函数源码package/fx/custom/apl/script/<ApiName>.class.groovy— 类源码deliverables/<需求目录>/PRD.md、ARCH.md、TASKS.md— 完整流程文档deliverables/<需求目录>/REVIEW.md— 代码审查报告sharedev apl compile <apiName>与sharedev apl analyze <apiName>的检查结果
最短理解路径:
- 完整开发: 需求确认 → PRD/ARCH/TASKS → 代码实现 → compile/analyze → 代码审查 → 发布确认
- Lite 开发: 需求确认 → 代码实现 → compile/analyze → 代码审查 → 发布确认
- 代码审查: 确认范围 → compile/analyze → 规则审查 → REVIEW.md → 审查结论
Lite 流程只跳过 PRD/ARCH/TASKS,不跳过 compile/analyze、代码审查和发布授权。
场景 4:开发 PWC 插件
适用于从 0 到 1 开发 PWC 组件/插件。
示例:
/sharedev-pwc-write-prd-spec 开发一个客户新建编辑页插件,手机号输入后自动查询是否重复并提示。请先写 PRD。
执行流程:
- 使用
sharedev-pwc-write-prd-spec技能澄清需求并输出prd.md - 用户批准 PRD 后,使用
sharedev-pwc-write-arch技能输出arch.md - 用户批准技术方案后,使用
sharedev-pwc-write-plans技能输出plan.md - 使用
sharedev-pwc-execute-plans或sharedev-pwc-subagent-driven-development技能执行计划 - 完成主要功能后使用
sharedev-pwc-review-code技能审查 - 使用
sharedev-pwc-finish-development技能输出配置说明并请求人工测试 - 人工测试通过且用户明确授权后,才执行发布
场景 5:配置通用选项集
为多个字段共享同一套下拉选项时使用。
示例:
/sharedev-option-set 新建一个"行业"通用选项集,API Name 为 option_industry__c,包含:互联网、金融、制造、医疗四个选项,互联网标为蓝色。
执行流程:
- 技能检查
tenant-config/option-sets/确认 API Name 不冲突 - 生成
option_industry__c.option-set-meta.xml配置文件 - 部署:
sharedev object-dev option-set push --apiNames option_industry__c - 之后可在
sharedev-field中为字段引用此选项集
注意: 选项集的 value 是数据主键,创建后不可删除或修改已有 value。不再使用的 value 应设为
not_usable=true 停用。场景 6:配置验证规则
在保存数据时校验业务逻辑。
示例:
/sharedev-validation-rule 给 LeadsObj 新增一个验证规则:手机号不能为空,当手机号为空时阻断保存,错误提示"手机号码为必填项"。
执行流程:
- 技能确认目标对象存在并加载字段清单
- 与用户确认规则名称、阻断/不阻断、触发时机(新建/编辑)
- 生成公式表达式(返回布尔值)
- 输出
validation-rules/<ruleApiName>.validation-rule-meta.xml - 部署:
sharedev object-dev validate-rule push --objectApiName LeadsObj --apiName <Rule>
注意: 验证规则表达式最终结果必须是布尔型(true=触发提示)。主从同时新建场景下,从对象的不阻断规则不生效。
场景 7:配置映射规则(字段回填)
从源对象自动将字段值填入目标对象。
示例:
/sharedev-mapping-rule 配置线索转客户的映射规则:线索的公司名称→客户名称,线索电话→客户电话,线索地址→客户地址。
执行流程:
- 技能确认源对象(LeadsObj)与目标对象(AccountObj)存在
- 加载两侧字段清单校验字段引用
- 生成
mapping-rules/配置文件(含主规则 + 配对按钮) - 部署:
sharedev object-dev object-mapping push --ruleApiNames <Rule>
注意: 映射规则是转换规则的低配版,不支持场景/策略/合单/回写/关闭/超额检查。如需完整推拉单能力,使用
sharedev-convert-rule。场景 8:配置审批流程
为业务对象配置审批流。
示例:
/sharedev-approval 给采购申请单配置一个二级审批流程:部门经理审批→总经理审批,审批通过后自动更新申请单状态为"已批准"。
执行流程:
- 技能收集节点结构、处理人配置、后动作等信息
- 生成
tenant-config/approval/<workflowId>/workflow.json审批流主体 - 部署:
sharedev approval def deploy -f tenant-config/approval/<workflowId>/ --updateType "create" - 部署成功后回填 workflowId
注意: 新建和更新使用不同的数据结构——新建时
workflow.id 为空字符串,更新时必须使用从 detail 获取的真实 ID。sharedev-approval 用于审批流,sharedev-bpm-def 用于 BPM 业务流程,sharedev-stage-def 用于阶段推进器。4. 智能编排详解(sharedev-auto)
4.1 概述
sharedev-auto 是 ShareDev 技能体系的智能编排器。用户只需用自然语言或 Word 文档描述需求,它自动完成:输入来源检测 → 需求分析 → 产品线判定 → 技能链推荐 → Phase Gate 协调 → 知识库规避 → 部署编排。4.2 输入来源检测
| 模式 | 触发条件 | 行为 |
|---|---|---|
| 模式 A — 纯文本 | 纯自然语言一句话需求 | 直接进入需求分析与分类 |
| 模式 B — 文件路径 | 提供 .docx/.doc/.txt 路径 | Read 工具读取文件内容;不可读则提示用户 |
| 模式 C — 粘贴内容 | 将 Word 内容粘贴到对话中 | 视为结构化需求,进入文档内容解析 |
4.3 需求分析与产品线分类
| 产品线 | 分类关键词 | 复杂度 | 目标模板 |
|---|---|---|---|
| PWC | 插件/组件/图表/表单校验/移动端/Web端 | L1/L2 | Template A |
| APL | 后端函数/定时任务/触发器/按钮/验证 | L1/L2 | Template B |
| Object Config | 对象/字段/布局/验证规则/场景/按钮/选项集/映射规则 | L1/L2 | Template C |
| Flow Definition | 审批流/BPM/阶段推进器/工作流/OneFlow | L1-F/L2-F+ | Template F |
| PWC+APL | 前端插件 + 后端函数 | L2 | Template D |
| Full Stack | 对象 + 插件 + 函数 | L2 | Template E |
| Mixed | 对象+Flow / APL+Flow | L2/L5 | E + F |
| Button | 自定义按钮 | L1 | Template C |
| Option Set | 通用选项集 | L1 | Template C |
| Global Variable | 全局变量/租户常量/formula 引用的公共参数 | L1 | Template C |
L1 vs L2: L1=单文件/简单调整;L2=多文件/复杂逻辑。L2+ 必须产出 PRD+Arch+Plan。仅自然语言描述判 L1,来自文件/文档至少 L2。
复杂度判定:
| 复杂度 | 判定条件 |
|---|---|
| L1 - 单一配置 | 仅涉及 1 条配置产品线 |
| L2 - 完整配置 | 涉及多环节对象配置 |
| L3 - 纯代码 | 仅涉及 PWC 或 APL 之一 |
| L4 - 混合 | PWC + APL(无对象配置) |
| L5 - 全栈 | 同时涉及对象配置 + PWC + APL |
4.4 技能链模板
Template A:纯 PWC 开发链
write-prd-spec → write-arch → write-plans → implement → review-code → finish-development
| 阶段 | 技能调用 | Phase Gate |
|---|---|---|
| 1 | sharedev-pwc-write-prd-spec | ✅ 用户确认 PRD |
| 2 | sharedev-pwc-write-arch | ✅ 用户确认架构 |
| 3 | sharedev-pwc-write-plans | ✅ 用户确认计划 |
| 4 | sharedev-pwc-implement | ❌ 自动执行 |
| 5 | sharedev-pwc-review-code | ✅ 用户确认审查 |
| 6 | sharedev-pwc-finish-development | 🚫 强制停止 |
Template B:纯 APL 开发链
prd → arch → plan → apl-init → apl-implement → apl-code-review → (push)
| 阶段 | 技能调用 | Phase Gate |
|---|---|---|
| 1 | sharedev-pwc-write-prd-spec(APL 适配) | ✅ 用户确认 PRD |
| 2 | sharedev-pwc-write-arch(APL 适配) | ✅ 用户确认架构 |
| 3 | sharedev-pwc-write-plans | ✅ 用户确认计划 |
| 4 | sharedev-apl-init | ❌ 自动执行 |
| 5 | sharedev-apl-implement | ✅ 用户确认代码 |
| 6 | sharedev-apl-code-review | ✅ 用户确认审查 |
| 7 | — | 🚫 强制停止(APL push) |
Template C:对象配置链
prd → plan → object → option-set → field → layout → scene → layout-rule → validation-rule → mapping-rule → global-variable → (push)
内部顺序不可并行:
object → option-set → field → layout → scene → layout-rule → validation-rule → mapping-rule → global-variableTemplate D:PWC+APL 混合链
prd → arch → plan → [APL ∥ PWC] → review → deploy
Template E:全栈开发链
prd → arch → plan → [Object ∥ APL ∥ PWC] → review → deploy
Template F:Flow 定义链
[prd → arch → plan →] flow-def → <flow-skill> → deploy
Flow Definition 类的部署由 flow-skill 内部的 HARD-GATE 和用户确认流程独立控制。
4.5 文档生成流程
所有文档统一输出到
<enterpriseRoot>/deliverables/YYYY-MM-DD-<功能名称>/ 目录下。| 模板 | PRD | Arch | Plan | Review |
|---|---|---|---|---|
| A (PWC) | ✅ write-prd-spec | ✅ write-arch | ✅ write-plans | ✅ review-code |
| B (APL) | ✅ write-prd-spec(APL) | ✅ write-arch(APL) | ✅ write-plans | ✅ apl-code-review |
| C (Config L2+) | ✅ write-prd-spec(配置) | — | ✅ write-plans | — |
| C (Config L1) | ❌ 可跳过 | — | ❌ 可跳过 | — |
| D (混合) | ✅ write-prd-spec | ✅ write-arch | ✅ write-plans | ✅ 双审查 |
| E (全栈) | ✅ write-prd-spec | ✅ write-arch | ✅ write-plans | ✅ 双审查 |
红线: 即使是最简单的 APL 函数,也必须产出 PRD 和 Plan。
APL PRD 核心内容:
- 函数职责描述(做什么、何时触发)
- namespace 和绑定对象
- 输入(context 可用变量)和输出(返回类型)
- 核心业务规则(状态流转、校验条件、数据联动)
配置 PRD 核心内容(Template C L2+):
- 配置范围(对象/选项集/字段/布局/规则/全局变量)
- 通用选项集定义(API Name、选项 value、颜色、启用/禁用状态)
- 字段定义(API Name、类型、选项值、默认值、必填/只读)
- 布局变更(布局类型、section、字段顺序)
- 规则逻辑(显示/隐藏/只读条件、依赖关系)
- 全局变量定义(api_name 格式
var_<id>__g)
4.6 审查执行流程
审查结果统一输出到
REVIEW.md。| REVIEW.md 章节 | A (PWC) | B (APL) | D (混合) | E (全栈) |
|---|---|---|---|---|
| 1. 文档信息 | ✅ | ✅ | ✅ | ✅ |
| 2. 审查范围 | ✅ | ✅ | ✅ | ✅ |
| 3. APL 代码审查 | — | ✅ | ✅ | ✅ |
| 4. PWC 代码审查 | ✅ | — | ✅ | ✅ |
| 5. 配置审查 | — | — | — | ✅ |
| 6. 需求追溯矩阵 | ✅ | ✅ | ✅ | ✅ |
| 7. 审查总结 | ✅ | ✅ | ✅ | ✅ |
4.7 多子代理并行执行
当 plan.md 调度表中存在 ≥2 个互不依赖的任务时,编排器可使用
Task 工具同时启动多个子代理并行执行。依赖判断规则:
| 条件 | 判定 |
|---|---|
| 任务操作不同对象 | ✅ 可并行 |
| 任务操作不同代码目录(APL vs PWC vs 配置) | ✅ 可并行 |
| 任务操作同一对象的不同子资源(field→layout→scene) | ❌ 不可并行 |
| 任务操作同一代码文件的先后阶段 | ❌ 不可并行 |
| 任务操作同一目录的不同文件 | ✅ 可并行 |
最大并行数: 8 个子代理同时执行。
4.8 Phase Gate 协调 — 三大硬停止点
| 关口 | 何时停止 | 产出物 | 优先级 |
|---|---|---|---|
| 🔴 需求确认 | 第一步(需求分类)后 | 产品线分类 + 技能链 | 高 |
| 🔴 复杂度确认 | 第1.5步(复杂度自检)后 | L1/L2 判定 | 高 |
| 🔴 部署确认 | 最终推送前 | 推送清单 + 命令预览 | 最高 |
递进铁律:
- 用户确认后才能下一阶段 — 禁止跳过用户确认自动推进
- 禁止跳过 Skill 直接读写文件 — 每阶段必须通过目标 Skill 生成
- 硬停止点不可跳过 — 即使 L1 也不能跳过部署前确认
- Flow 类的创建即部署独立于 Object→PWC 链条
4.9 强制部署顺序
Object → Option Set → Field → Layout → Scene → Layout Rule → Validation Rule → Mapping Rule → Global Variable → Button → APL → PWC
不可更改此顺序。 每一步成功后才执行下一步。
关键部署命令:
| 步骤 | 资源类型 | 命令 |
|---|---|---|
| 1 | Object | sharedev object-dev object push --objectApiName <Obj> |
| 2 | Option Set | sharedev object-dev option-set push --apiNames <OptionSet> |
| 3 | Field | sharedev object-dev field push --objectApiName <Obj> --fieldApiName <Field> |
| 4 | Layout | sharedev object-dev layout push --objectApiName <Obj> --layoutApiName <Layout> --type <edit|detail> |
| 5 | Scene | sharedev object-dev scene push --objectApiName <Obj> --sceneApiNames <SceneA,SceneB> |
| 6 | Layout Rule | sharedev object-dev layout-rule push --objectApiName <Obj> --ruleApiName <Rule> |
| 7 | Validation Rule | sharedev object-dev validate-rule push --objectApiName <Obj> --apiName <Rule> |
| 8 | Mapping Rule | sharedev object-dev object-mapping push --ruleApiNames <Rule> |
| 9 | Global Variable | sharedev object-dev global-variable push --apiNames <var_1,var_2> |
| 10 | Button | sharedev object-dev button push --objectApiName <Obj> --buttonApiName <Btn> |
| 11 | APL | sharedev apl push <ApiName> --remark "<msg>" |
| 12 | PWC | sharedev pwc deploy <PluginName> --type plugin |
部署后验证 Checklist:
-
sharedev object-dev object pull --objectApiName <Obj>验证对象status=unchanged -
sharedev object-dev layout list --objectApiName <Obj>确认 layouts 数量 -
sharedev apl list | grep <ApiName>确认函数存在且版本号递增 -
sharedev pwc deploy输出中source=N与实际 JS 文件数一致 - 所有 post-pull 文件
status=unchanged
5. 技能详解
以下为所有技能的速查总表,点击技能名称可跳转到对应的详细说明。
5.0 技能速查总表
配置类技能
| # | 技能 | 说明 |
|---|---|---|
| 1 | sharedev-object | 创建或修改 CRM 对象定义,新建自定义对象时同步产出默认字段和布局 |
| 2 | sharedev-option-set | 创建或修改租户级通用选项集,实现跨字段复用同一套选项 |
| 3 | sharedev-field | 为 CRM 对象创建或修改字段配置,支持全部字段类型和校验规则 |
| 4 | sharedev-layout | 创建或修改页面布局,支持 detail/edit/list_layout/list 四种类型 |
| 5 | sharedev-layout-rule | 控制布局内字段的动态行为(显示/隐藏/必填/只读) |
| 6 | sharedev-validation-rule | 在保存时校验业务数据,支持阻断/不阻断策略 |
| 7 | sharedev-scene | 创建或修改租户场景(列表视图),含筛选条件/适用范围/显示列 |
| 8 | sharedev-mapping-rule | 配置源对象到目标对象的字段映射,自动生成配对按钮 |
| 9 | sharedev-convert-rule | 配置源单到目标单的推拉逻辑,支持场景/策略/合单/回写 |
| 10 | sharedev-button | 配置自定义按钮,支持普通/跳转/映射三种类型 |
| 11 | sharedev-global-variable | 管理租户级常量,在公式/表单/默认值中引用 |
| 12 | sharedev-currency | 创建或修改币种与汇率配置,管理本位币/原币/汇率 |
APL 后端开发技能
| # | 技能 | 说明 |
|---|---|---|
| 13 | sharedev-apl-implement | APL 完整开发流程:需求分析→文档→代码→编译→审查→发布 |
| 14 | sharedev-apl-lite | APL 轻量开发:跳过文档,从需求直接到代码实现 |
| 15 | sharedev-apl-code-review | APL 代码审查:编译/静态分析/问题分级/质量门控 |
PWC 前端开发技能
| # | 技能 | 说明 |
|---|---|---|
| 16 | sharedev-pwc | PWC 底层命令:拉取/推送/发布/创建组件或插件 |
| 17 | sharedev-pwc-write-prd-spec | 通过协作对话输出结构化 PRD 文档 |
| 18 | sharedev-pwc-write-arch | 依据 PRD 设计技术方案,输出 arch.md |
| 19 | sharedev-pwc-write-plans | 将技术方案拆解为可执行任务,输出 plan.md |
| 20 | sharedev-pwc-implement | 按书面计划逐任务实施 PWC 代码 |
| 21 | sharedev-pwc-subagent-driven-development | 分派子任务给独立子智能体并行执行 |
| 22 | sharedev-pwc-review-code | 派发 code-reviewer 进行代码审查 |
| 23 | sharedev-pwc-finish-development | 验证测试、配置说明和发布准备 |
| 24 | sharedev-pwc-fix-bug | 系统化修复 PWC bug |
Flow 流程定义技能
| # | 技能 | 说明 |
|---|---|---|
| 25 | sharedev-approval | 通过 CLI 管理审批流:节点/处理人/条件分支/后动作/表单 |
| 26 | sharedev-bpm-def | 创建或修改 BPM 业务流程 |
| 27 | sharedev-stage-def | 创建或修改阶段推进器定义 |
| 28 | sharedev-oneflow-def | 创建或修改 OneFlow 流程定义 |
| 29 | sharedev-flow-def | 所有 Flow 技能的前置公用数据结构参考 |
5.1 配置类技能
sharedev-object — 配置对象定义
创建或修改 CRM 对象定义。新建自定义对象时必须同步产出
name/owner 默认字段、detail 详情布局和 list 移动端摘要布局。- 输入: 对象 API Name、显示名称、功能开关(如审批流、阶段推进器等)
- 输出路径:
tenant-config/objects/<ObjectApiName>/<ObjectApiName>.object-meta.xml - 约束: 自定义对象以
__c结尾;content.release_version固定为"6.4";define_type=custom时禁止short_name - 示例:
/sharedev-object 新建一个"竞品档案"对象,API Name 为 Competitor__c
sharedev-option-set — 配置通用选项集
创建或修改租户级通用选项集,实现跨字段复用同一套选项。
- 输入: API Name(格式
option_<id>__c)、选项列表(label/value/颜色/启用状态) - 输出路径:
tenant-config/option-sets/<api_name>.option-set-meta.xml - 约束: 禁止删除或修改已有 value(破坏历史数据),只能新增或停用;不可为平台系统字段新建选项集
- 示例:
/sharedev-option-set 新建一个"行业"通用选项集,API Name 为 option_industry__c,包含互联网、金融、制造、医疗
sharedev-field — 配置字段定义
为 CRM 对象创建或修改字段配置,支持全部字段类型和校验规则。
- 输入: 对象 API Name、字段名、类型(text/number/date/select_one 等)、选项值、默认值、必填/只读
- 输出路径:
tenant-config/objects/<ObjectApiName>/fields/<fieldApiName>.field-meta.xml - 约束: 新增字段需确认对象已存在、API Name 不冲突;
formula类型需参考公式生成指南;级联字段需参考级联规范 - 示例:
/sharedev-field 给 Competitor__c 新增一个"竞品名称"文本字段,API Name 为 competitor_name__c,必填
sharedev-layout — 配置页面布局
为 CRM 对象创建或修改页面布局,支持 detail(详情页)、edit(新建/编辑页)、list_layout(Web 列表页)、list(移动端摘要)四种类型。
- 输入: 对象 API Name、布局类型、字段分组与排列、PWC 插件挂载
- 输出路径:
tenant-config/objects/<ObjectApiName>/layouts/<layoutApiName>.layout-meta.xml - 约束: detail 布局必须包含
name和owner字段;edit 布局需先确认服务端已开启独立编辑页;list 和 list_layout 不可混淆 - 示例:
/sharedev-layout 配置 Competitor__c 的详情页布局,将竞品名称、行业、官网字段放在基本信息区域
sharedev-layout-rule — 配置布局规则
控制布局内字段的动态行为,支持字段控制类型(基于主字段值条件)和页面控制类型(按新建/编辑页面控制)。
- 输入: 对象 API Name、目标布局、主字段、条件树、动作(显示/隐藏/必填/只读)
- 输出路径:
tenant-config/objects/<ObjectApiName>/layout-rules/<ruleApiName>.layout-rule-meta.xml - 约束: 每布局最多 10 条规则;条件字段和叶子字段不可相同;同一布局内主字段不可重复
- 示例:
/sharedev-layout-rule 在 Competitor__c 新建页,当启用状态为"停用"时隐藏官网字段
sharedev-validation-rule — 配置验证规则
在保存时校验业务数据,支持阻断/不阻断策略,可设置在新建/编辑时触发。
- 输入: 对象 API Name、规则名称、公式表达式(返回布尔)、错误提示、阻断/不阻断、触发时机
- 输出路径:
tenant-config/objects/<ObjectApiName>/validation-rules/<ruleApiName>.validation-rule-meta.xml - 约束: 公式返回值必须是布尔型;主从同时新建场景下从对象的不阻断规则不生效
- 示例:
/sharedev-validation-rule 给 LeadsObj 新增验证规则:手机号不能为空,阻断保存,提示"手机号码为必填项"
sharedev-scene — 配置租户场景
创建或修改 CRM 租户场景配置(列表视图),包括筛选条件、适用范围和显示列。
- 输入: 对象 API Name、场景名称、筛选条件(wheres)、适用范围(ranges)、显示列
- 输出路径:
tenant-config/objects/<ObjectApiName>/scenes/<sceneApiName>.scene-meta.xml - 约束: 必须检查 API Name 是否冲突;未提供显示列时使用默认字段
- 示例:
/sharedev-scene 给 AccountObj 新建一个"我的客户"场景,筛选条件为负责人等于当前用户
sharedev-mapping-rule — 配置映射规则
配置源对象到目标对象的字段映射(直接字段回填),自动生成配套的 convert 类型按钮。
- 输入: 源对象、目标对象、字段映射(field_mapping)、选项对应(option_mapping)、从对象映射
- 输出路径:
tenant-config/mapping-rules/<masterRuleApiName>.mapping-rule-meta.xml - 约束: 源/目标对象必须已存在;不支持映射的字段类型(引用/计算/统计/自增编号等);合同/退款/开票等对象不可作为映射目标
- 示例:
/sharedev-mapping-rule 配置线索转客户的映射规则:公司名称→客户名称,电话→客户电话
sharedev-convert-rule — 配置转换规则(推拉单)
配置源单到目标单的自动数据搬运,支持场景/策略/合单/回写/关闭/超额检查。
- 输入: 源对象、目标对象、场景类型、策略、字段映射、回写逻辑、关闭逻辑
- 输出路径:
tenant-config/convert-rules/<masterRuleApiName>.convert-rule-meta.xml - 约束: 比 mapping-rule 更复杂,适用于完整的推拉单流程
- 示例:
/sharedev-convert-rule 配置采购申请单到采购订单的转换规则,一对一简单场景
sharedev-button — 配置自定义按钮
为 CRM 对象配置自定义按钮,支持普通按钮(显示条件/入参表单/后动作)、跳转按钮、映射按钮三种类型。
- 输入: 对象 API Name、按钮 API Name、类型、后动作(post_actions)、显示条件(wheres)、入参表单
- 输出路径:
tenant-config/objects/<ObjectApiName>/buttons/<buttonApiName>.button-meta.xml - 约束: APL 函数缺失时阻断并指向 sharedev-apl-implement;跳转按钮不可配置后动作;映射按钮不可配置入参表单和后动作
- 示例:
/sharedev-button 给 AccountObj 配置一个"同步企业微信"普通按钮,调用 APL 函数
sharedev-global-variable — 配置全局变量
管理租户级常量,在智能表单、公式、默认值中通过 api_name 引用。
- 输入: API Name(格式
var_<id>__g)、类型(字符串/数字/日期等)、默认值、备注 - 输出路径:
tenant-config/global-variables/<api_name>.global-variable-meta.xml - 约束: api_name 创建后不可更改;
__c后缀不适用(使用__g);4 个系统预置变量(currentTime__g等)不可修改 - 示例:
/sharedev-global-variable 新建一个"最低折扣"全局变量,类型为数字,默认值为 0.8
sharedev-currency — 配置币种与汇率
创建或修改租户级币种与汇率配置,管理本位币、原币、汇率与启停状态。
- 输入: 币种代码(ISO 标准)、币种名称、汇率、本位币标识
- 输出路径:
tenant-config/currencies/currency.currency-meta.xml(整租户单一文件) - 约束: 本位币只设置一次不可修改;currencyCode 必须来自 ISO 标准列表;不可重复添加已有币种
- 示例:
/sharedev-currency 新增美元币种,汇率 7.24
5.2 APL 后端开发技能
sharedev-apl-implement — APL 完整开发
提供从需求分析、文档生成、代码实现、编译分析、代码审查到发布确认的完整流程管控。
- 执行流程: Phase 0 (需求确认) → Phase 1 (PRD/ARCH/TASKS) → Phase 2 (代码实现) → Phase 3 (编译+分析) → Phase 4 (代码审查) → Phase 5 (发布确认)
- 硬停止点: 代码审查前(Phase 5-6 转换)和发布前(Phase 6-7 转换)
- 示例:
/sharedev-apl-implement 开发一个流程函数:当销售订单审批通过后自动更新客户最近成交时间
sharedev-apl-lite — APL 轻量开发
跳过 PRD/ARCH/TASKS 文档生成,从需求确认直接进入代码实现,适用于简单函数需求。
- 执行流程: Phase 0 (需求确认) → Phase 1 (代码实现) → Phase 2 (编译+分析) → Phase 3 (代码审查) → Phase 4 (发布)
- 约束: 不跳过 compile/analyze、代码审查和发布授权
- 示例:
/sharedev-apl-lite 快速写一个客户详情页按钮函数,校验客户等级是否为空
sharedev-apl-code-review — APL 代码审查
对 APL 实现结果执行编译、静态分析、问题分级、REVIEW.md 回写和发布前质量门控。
- 审查输出: Findings(按严重度排序)、Review Decision(通过/有条件通过/不通过)、REVIEW.md
- 约束: 必须先编译/静态分析再进入人工审查;发现阻断问题时不得进入发布建议
- 示例:
/sharedev-apl-code-review 帮我 review APL 函数,确认 compile/analyze 和发布风险
5.3 PWC 前端开发技能
sharedev-pwc — PWC 基础命令
用于拉取、推送、发布或创建 PWC 组件/插件的底层命令技能。
- 子命令:
pull(拉取源码)、push(上传文件)、deploy(推送+构建+发布)、create(新建资源) - 示例:
sharedev pwc pull --all --type component
sharedev-pwc-write-prd-spec — PWC 需求文档
通过协作对话探索用户意图、明确需求边界,输出结构化 PRD 文档。
- 流程: 探索项目背景 → 提出澄清问题 → 提出方案 → 呈现设计 → 用户批准 → 写入 PRD
- 约束: 用户批准前不得编写代码或调用技术设计技能
- 示例:
/sharedev-pwc-write-prd-spec 开发一个客户新建编辑页插件,手机号输入后自动查重
sharedev-pwc-write-arch — PWC 技术方案
在写计划前依据 PRD 文档设计技术方案,输出 arch.md。
- 约束: 必须先加载 Skill 并读取 references 文档(spec + feature)
- 示例:
/sharedev-pwc-write-arch 根据已批准的 PRD 设计 PWC 插件技术方案
sharedev-pwc-write-plans — PWC 实施计划
把技术方案拆成可执行任务,输出 plan.md(不含代码块)。
- 输出路径:
deliverables/YYYY-MM-DD-<功能名称>/plan.md - 示例:
/sharedev-pwc-write-plans 将 PWC 技术方案拆解为可执行的任务计划
sharedev-pwc-implement — PWC 执行计划
按书面计划逐任务实施 PWC 代码,设置审查检查点。
- 流程: 加载并审查计划 → 同步 PWC 资源(create/pull)→ 逐任务实施代码
- 示例:
/sharedev-pwc-implement 按 plan.md 逐任务实施 PWC 代码
sharedev-pwc-subagent-driven-development — PWC 子智能体驱动开发
按计划分派子任务给独立子智能体并行执行,每个任务完成后进行两阶段审查。
- 约束: 最大并行数 8 个子代理
- 示例:
/sharedev-pwc-subagent-driven-development 用子智能体并行开发多个独立 PWC 任务
sharedev-pwc-review-code — PWC 代码审查
派发 code-reviewer 子智能体进行代码审查,验证工作是否符合需求。
- 审查内容: 源码质量检查、对照 PRD 验证、输出 REVIEW.md
- 示例:
/sharedev-pwc-review-code 审查 PWC 插件代码,确认符合 PRD 需求
sharedev-pwc-finish-development — PWC 交付收尾
完成开发后的验证、配置说明和发布准备。
- 流程: 生成配置说明 → 请求人工测试 → 测试通过后发布
- 示例:
/sharedev-pwc-finish-development PWC 插件开发完成,请求人工测试并准备发布
sharedev-pwc-fix-bug — PWC 修复 Bug
系统化修复 PWC bug:先复现,再修复;未验证,不完成。
- 流程: 复现问题 → 定位代码 → 修复 → 人工验证
- 示例:
/sharedev-pwc-fix-bug 修复 PWC 插件中手机号查重不生效的 bug
5.4 Flow 流程定义技能
sharedev-approval — 审批流定义
通过 sharedev CLI 管理审批流,覆盖节点配置、处理人、条件分支、后动作、表单、超时提醒。
- 输出路径:
tenant-config/approval/<srcWorkflowId>/workflow.json(审批流主体)、rule.json(实例后动作)、execution.json(流程后动作) - 部署: 新建传
--updateType "create",更新传--updateType "update" - 示例:
/sharedev-approval 给采购申请单配置二级审批:部门经理→总经理,通过后自动更新状态
sharedev-bpm-def — BPM 业务流程定义
创建或修改 BPM 业务流程,覆盖节点/连线/处理人/后动作/分支条件/泳道泳池。
- 部署: 通过
sharedev bpm def create-definition命令 - 示例:
/sharedev-bpm-def 创建一个客户审批 BPM 流程,包含销售主管审核和财务复核两个节点
sharedev-stage-def — 阶段推进器定义
创建或修改阶段推进器,覆盖阶段节点/阶段任务/适用范围/触发规则/终结态/审批关联。
- 输出路径:
tenant-config/stage/<sourceWorkflowId>/workflow.json、rule.json - 部署: 新建用
sharedev stage def deploy,修改用sharedev stage def update - 与审批流区别: 无
execution.json;后动作体现在阶段任务中 - 示例:
/sharedev-stage-def 给商机对象配置阶段推进器:意向客户→需求分析→方案报价→商务谈判→成交
sharedev-oneflow-def — OneFlow 流程定义
创建或修改 OneFlow 流程草案与 definition 配置。
- 示例:
/sharedev-oneflow-def 创建一个订单审批的 OneFlow 流程,包含条件分支和并行网关
sharedev-flow-def — Flow 公用数据结构规范
所有 Flow 技能的前置参考文档,包含过滤条件、网关分支条件、处理人配置、节点类型等公用数据结构规格。
- 示例:
作为前置参考文档,无需单独调用,由 Flow 技能自动加载
6. 使用边界和注意事项
- AI 可以帮助分析需求、生成配置、开发代码、执行检查和整理交付物,但远端发布必须用户明确授权。
- 引用对象和字段前,应优先读取
.sharedev/dev-metadata/objects/<ObjectApiName>.md。 - APL 与配置类开发不能猜对象 API Name、字段 API Name 或选项值。
- APL 必须通过
sharedev apl compile <apiName>和sharedev apl analyze <apiName>后才能进入发布。 - PWC 发布前必须完成代码审查、配置说明和人工测试确认。
push、deploy、配置推送等远端变更命令,不能因为用户说"继续"就自动执行。- 当 Word 文档无法读取时,应提示用户粘贴正文或提供可读取文本。
- 当需求描述和文档内容冲突时,应列出冲突点并等待用户确认。
- 自定义对象配置只能参考其他自定义对象,不能参考预置对象(如 ContactObj)。
- PWC 禁止使用
document.querySelector全局选择器。 - APL 禁止 for 循环、Range 表达式、owner 保留字、log.error 多参数。
- Layout Rule 每布局最多 10 条规则,条件字段和叶子字段不能相同。
- Mapping Rule 中源/目标对象必须已存在,合同/退款/开票/市场活动/拜访不可作为映射目标。
- 所有 CLI 命令必须在
<enterpriseRoot>目录下执行,禁止从<workspaceRoot>直接运行。
7. 常见问题
Q1:为什么不能通过目录判断目标平台?
.trae、.claude、.codex 或 ~/.codex 只能说明环境里可能存在对应工具或历史配置,不能代表本次需求的目标平台。目标平台必须由用户输入、任务上下文或明确规则决定。Q2:初始化命令成功了,为什么还不能说完成?
因为初始化完成不仅要求命令退出成功,还要求核心资源通过验证。例如对象字典、APL 文档、技能目录缺失时,只能标记为
incomplete。Q3:sharedev-auto 会直接实现需求吗?
不会直接跳过分析进入实现。它会先输出需求摘要、复杂度和技能链,等待用户确认后再进入专项技能。
Q4:只新增字段,页面上为什么看不到?
字段定义和页面布局是两个配置。新增字段后,还需要使用
sharedev-layout 把字段加入详情页、编辑页或列表页。Q5:为什么不能直接手写 XML?
对象、字段、布局和规则的 XML 中包含大量租户相关结构和转义 JSON。手写容易遗漏必要字段、错误状态或平台特定 ID,应使用对应技能读取现有模板后生成。
Q6:字段 API Name 可以用中文或随便命名吗?
不建议。自定义字段需要符合平台命名规范,并以
__c 结尾。实际命名应结合对象字典、业务含义和租户规范确认。Q7:为什么发布前必须人工测试?
PWC 通常涉及页面交互、平台挂载点、端差异和真实数据。自动检查不能完全覆盖真实页面行为,因此发布前必须由用户确认人工测试通过。
Q8:为什么所有 CLI 命令都必须在 enterpriseRoot 下执行?
sharedev apl push、sharedev pwc deploy、sharedev object-dev * push 等命令依赖 <enterpriseRoot>/.git 仓库、<enterpriseRoot>/package/ 目录和 <enterpriseRoot>/tenant-config/ 符号链接。从 <workspaceRoot> 执行会因找不到这些资源而失败。Q9:Layout Rule 有什么配置限制?
每个布局最多 10 条规则(含字段控制和页面控制两种类型);条件字段和叶子字段不能相同,否则规则失效;同一布局内不同规则的主字段不可重复;同一字段不能同时配置为 hide_field 和 readonly_field。
Q10:Mapping Rule 和 Convert Rule 有什么区别?
| 特性 | 映射规则 (mapping-rule) | 转换规则 (convert-rule) |
|---|---|---|
| 场景/策略 | ❌ 不支持 | ✅ 支持 |
| 合单依据 | ❌ 不支持 | ✅ 支持 |
| 回写逻辑 | ❌ 不支持 | ✅ 支持 |
| 配置复杂度 | 简单 | 复杂 |
| 适用场景 | 直接字段回填、线索转客户/商机 | 完整推拉单流程 |
Q11:Windows PowerShell 执行安装脚本时报"无法加载文件"怎么办?
错误信息:
无法加载文件 ...\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。解决方法:
- 以管理员身份打开 PowerShell
- 执行命令修改执行策略:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - 输入
Y确认变更 - 重新执行安装命令:
irm https://developer.fxiaoke.com/sharedev/install.ps1 | iex
若希望恢复更严格策略,可在安装完成后执行
Set-ExecutionPolicy Restricted -Scope CurrentUser。