@alipay/alipay-aipay 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -2
- package/skill/SKILL.md +1 -1
- package/skill/VERSION +1 -1
- package/skill/references/integration/flow.md +51 -73
- package/skill/references/integration/modules/checklist.md +3 -3
- package/skill/references/integration/modules/product-decision.md +1 -1
- package/skill/references/integration/modules/sandbox/a2m-sandbox-test.md +11 -22
- package/skill/references/integration/modules/sandbox/alipay-sandbox-tool.md +1 -1
- package/skill/references/integration/modules/sandbox/sandbox-setup-guide.md +4 -4
- package/skill/references/normal/alipay-cli-env.md +2 -2
- package/skill/references/normal/full-process-routing.md +17 -17
- package/skill/references/normal/json/customer-messages.json +13 -14
- package/skill/references/normal/rejection-guide.md +1 -1
- package/skill/references/normal/scripts/alipay_cli_env.mjs +8 -4
- package/skill/references/normal/scripts/flow_loader.mjs +2 -2
- package/skill/references/normal/scripts/integration_context_runner.mjs +3 -3
- package/skill/references/normal/scripts/integration_message_runner.mjs +3 -3
- package/skill/references/normal/scripts/interaction_reply.mjs +3 -3
- package/skill/references/normal/scripts/onboarding_discovery_runner.mjs +3 -3
- package/skill/references/normal/scripts/onboarding_message_runner.mjs +3 -3
- package/skill/references/normal/scripts/onboarding_recovery_runner.mjs +9 -7
- package/skill/references/normal/scripts/python_script_runner.mjs +10 -8
- package/skill/references/normal/scripts/render_customer_message.mjs +68 -59
- package/skill/references/normal/scripts/runtime.mjs +133 -0
- package/skill/references/normal/scripts/self_update.mjs +8 -6
- package/skill/references/normal/scripts/telemetry.mjs +27 -26
- package/skill/references/normal/self-update.md +2 -2
- package/skill/references/normal/telemetry.md +5 -5
- package/skill/references/onboarding/flow.md +67 -80
- package/skill/references/onboarding/modules/app-release.md +5 -5
- package/skill/references/onboarding/modules/authorization.md +1 -1
- package/skill/references/onboarding/modules/service-registration.md +4 -4
- package/skill/references/runtime-entry.md +30 -30
|
@@ -1,63 +1,63 @@
|
|
|
1
1
|
# 支付宝 AI 付 Skill
|
|
2
2
|
## 支持范围
|
|
3
3
|
|
|
4
|
-
仅支持 AI 按量付费、AI 网页应用收款、AI
|
|
4
|
+
仅支持 AI 按量付费、AI 网页应用收款、AI 移动应用收款;“按量付费”“网站支付”“APP 支付”等旧称仅作输入别名,对客仍用新名称。明确要求当面付、付款码、订单码支付、JSAPI 支付、预授权支付或商家扣款时不得改判,按 `normal/rejection-guide.md` 受控拒绝。
|
|
5
5
|
|
|
6
|
-
AI 网页应用收款覆盖 PC
|
|
6
|
+
AI 网页应用收款覆盖 PC 网页和手机浏览器/H5,接口固定 `alipay.trade.page.pay`,签约固定 `productType=webpay`、`salesCode=I1080300001000041203`、`appType=PC_WEB`;`PC_WEB` 不表示仅 PC。
|
|
7
7
|
|
|
8
8
|
## 执行红线
|
|
9
9
|
|
|
10
|
-
1.
|
|
11
|
-
2.
|
|
12
|
-
3. **CLI/MCP
|
|
13
|
-
4. **联网权限**:`alipay-cli` 登录/MCP
|
|
14
|
-
5.
|
|
15
|
-
6.
|
|
16
|
-
7.
|
|
17
|
-
8. **异步通知**:AI 网页应用收款/AI
|
|
18
|
-
9.
|
|
19
|
-
10. **对客输出**:指定 runner/renderer/脚本时,stdout
|
|
20
|
-
11. **确定性转移**:固定脚本终态后立即转移;只执行动作处登记命令,禁止追加 `jq/cat/grep/curl`
|
|
10
|
+
1. **流程与确认**:按 flow 顺序执行;阻塞确认只认用户对当前摘要的明确回复,不以工具超时、默认值或 Task 状态代替,不增未登记操作、材料或确认。
|
|
11
|
+
2. **事实与依据**:禁止编造配置、状态、结果或规则;无当前实现、实际返回或官方依据时说明无法确认。额度解限、可收款时间和产品开通问题用[支付宝商家平台](https://b.alipay.com/page/portal/home),代码、应用创建和发布问题用[支付宝开放平台](https://open.alipay.com/)或[支付宝技术支持](https://opensupport.alipay.com/support/intelligent-services?form=payskill)。静态扫描或提交成功不等于完成。
|
|
12
|
+
3. **CLI/MCP 契约**:优先用动作处脚本;直调的完整方法和 JSON 仅来自已读文档或 `alipay-cli mcp list <server> --json` 实时 schema。遇到 `Server not found`、`Method not found`、`Invalid params` 立即停下核对,禁止试近似名称。
|
|
13
|
+
4. **联网权限**:`alipay-cli` 登录/MCP、上传、沙箱创建和下载按联网命令处理;支持显式授权时首次即申请,详见 `normal/alipay-cli-env.md`。
|
|
14
|
+
5. **用户文件**:只改已确认项目和范围,不清空或删除既有项目;“新建/重做/换一个”不是删除授权。具体删除仍遵守 Integration flow 的清单、二次确认和禁删边界。
|
|
15
|
+
6. **敏感信息**:应用公钥仅由用户生成并明确提供;禁止请求/处理生产私钥、生成密钥对、补全/改写公钥或添加 PEM 头尾。敏感值、临时 URL 和沙箱资料遵守对应 flow/script 的白名单、权限和输出边界。
|
|
16
|
+
7. **沙箱结论**:真实快速沙箱配置不得用占位值,唯一例外是 AI 按量付费沙箱 `service_id=api_mock_service_id`,且生产禁用。`CREATE_PENDING|VERIFY_PENDING` 只允许继续代码实现,阻止字段使用、摘要、后置校验、联调和付款体验。字段校验不等于支付测试;仅完整 402 链路满足 flow 才可称沙箱测试通过。
|
|
17
|
+
8. **异步通知**:AI 网页应用收款/AI 移动应用收款必须实现通知。本地无公网 HTTPS `notify_url` 时可不传并以交易查询验收,公网通知联调列为人工待验证;生产上线前须恢复通知并完成验签、幂等、关键字段校验、`success` 回写和补偿查询,否则不宣称生产就绪。
|
|
18
|
+
9. **受控页面**:授权链接仅由 `auth.sh` 按固定产品/MCC 生成,只允许 `https://aipay.alipay.com/cli-auth` 及登记参数,禁用 CLI `verification_url`;公钥确认页、自动打开和兜底也只走登记脚本。
|
|
19
|
+
10. **对客输出**:指定 runner/renderer/脚本时,stdout 是唯一对客正文,须原文回复且不加旁白;工具输出记录、折叠面板或日志不等于已对客发送。展示命令只执行登记的单条命令,禁止追加 `2>&1`、管道、`grep/sed/awk/tee`、临时包装或拆回 `jq/printf/renderer`。除 `self_update.mjs` 的 `SELF_UPDATE:*` stderr 终态外,内部事实行均以 `ALIPAY_AIPAY_INTERNAL:` 开头;宿主合并输出时仍整行剔除,严禁对客。所有 `postRenderHintType=scanReturn` 的页面消息都是交付屏障(当前为 `auth.page`、`application.key.page`):先独立送达页面 stdout,再执行受控 opener 和有限轮询,不把后续待完成或收口消息合并发送;屏障不要求确认或新增操作。阻塞正文后等待;剔除内部行后正文为空则直接转移,不补话术。
|
|
20
|
+
11. **确定性转移**:固定脚本终态后立即转移;只执行动作处登记命令,禁止追加 `jq/cat/grep/curl` 或临时脚本重复解析。失败只走登记恢复;项目自检不绕过 Skill 脚本或打印敏感配置。
|
|
21
21
|
|
|
22
22
|
## 标准消息
|
|
23
23
|
|
|
24
|
-
`normal/json/customer-messages.json` 是稳定对客正文唯一目录。Integration 启动使用 `
|
|
24
|
+
`normal/json/customer-messages.json` 是稳定对客正文唯一目录。Integration 启动使用 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" integration-message start-confirm`,收口使用 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" integration-message checklist-result`;Onboarding 的 MCC、发现、材料、候选、收口及授权、公钥页、密钥工具、错误均用登记 runtime 动作。`process.partial_result` 必须发送 closeout 动作的完整 stdout,缺少 AI 网页应用收款上线关键点或收款限制引导即未送达。仅无托管入口时直调 renderer:
|
|
25
25
|
|
|
26
26
|
```bash
|
|
27
|
-
node normal/scripts/
|
|
28
|
-
node normal/scripts/
|
|
27
|
+
node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" render --schema <messageId> --variant <VARIANT>
|
|
28
|
+
node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" render <messageId> --variant <VARIANT> --input-json "$MESSAGE_INPUT_JSON"
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
动态 JSON
|
|
31
|
+
动态 JSON 只取本轮事实;无变量传 `{}`,禁止字符串替换或 `eval`。renderer 返回 `MESSAGE_RENDER_ERROR` 时必须先复查同一 `messageId` + `variant` schema,禁止猜枚举;非 0 即停止,不手写兜底。
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
阻塞点展示登记摘要后,把用户原始回复交给 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" reply confirm --reply "$USER_REPLY"`;仅唯一 `ALIPAY_AIPAY_INTERNAL:REPLY_DECISION=CONFIRMED` 可推进。`1`、`继续/继续推进`、`好了/已完成`、`确认/确定/同意`、`OK` 等明确肯定表达等价;否定、疑问、取消、修改或含糊回复不确认。确认只绑定当前产品、项目、主体、候选和摘要,任一变化即失效;此校验不新增操作点。
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
`<SKILL_DIR>` 是启动器确定的当前 Skill 规范化绝对路径占位符,不是 shell 变量。Skill 自有受控 Node、Shell 和 Python 入口必须使用文档登记的 `<SKILL_DIR>/references/...` 绝对路径单命令执行,禁止前置 `cd`、拼 `&&`、管道或退回相对路径;这些入口不新增权限确认或业务操作点。未登记命令和用户项目命令仍使用所在 Markdown 目录或已确认项目根,不得借用 Skill 权限。
|
|
36
36
|
|
|
37
37
|
## 入口路由
|
|
38
38
|
|
|
39
|
-
根 `SKILL.md` 启动器已经在读取本文件前确定本轮有效版本。运行时禁止再次执行自更新、读取 `normal/self-update.md`
|
|
39
|
+
根 `SKILL.md` 启动器已经在读取本文件前确定本轮有效版本。运行时禁止再次执行自更新、读取 `normal/self-update.md` 或切换其他副本;只按原始请求识别根意图并加载入口:
|
|
40
40
|
|
|
41
41
|
| 意图 | 判定 | 入口 | 后续按需加载 |
|
|
42
42
|
|---|---|---|---|
|
|
43
|
-
| `integration_only` | 只要求代码开发、支付集成或集成排障,未同时要求产品开通 | 执行 `node normal/scripts/
|
|
44
|
-
| `onboarding_only` | 只要求签约、入驻或产品开通,未同时要求代码开发 | 执行 `node normal/scripts/
|
|
43
|
+
| `integration_only` | 只要求代码开发、支付集成或集成排障,未同时要求产品开通 | 执行 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" flow integration entry` | 当前阶段、产品和语言的契约、示例与脚本 |
|
|
44
|
+
| `onboarding_only` | 只要求签约、入驻或产品开通,未同时要求代码开发 | 执行 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" flow onboarding entry` | 当前阶段的授权、查询或写分支模块 |
|
|
45
45
|
| `full_process` | 明确要求完整接入、一站式,或同一请求同时要求代码开发和产品开通 | `normal/full-process-routing.md` | 先 Integration,满足衔接条件后 Onboarding |
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
`onboarding_only` 或 `full_process` 衔接 Onboarding 时先执行 flow 登记的 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" onboarding-message platform-entry`:Windows 只发送登记引导并停止 Skill 内产品开通;非 Windows stdout 为空并继续。门禁早于产品/MCC、方案和环境检查,不手写或重复。
|
|
48
48
|
|
|
49
|
-
识别根意图后立即执行 `node normal/scripts/
|
|
49
|
+
识别根意图后立即执行 `node "<SKILL_DIR>/references/normal/scripts/runtime.mjs" telemetry start-run --root-intent <integration_only|onboarding_only|full_process>`;产品已唯一确定时追加 `--product-type <aipay|webpay|apppay>`。命令创建/复用当前流程 `run_id`,并在遥测开启时记录 `run.intent_detected`:同一意图和产品继续复用,`UNKNOWN` 补全产品仍复用同一 `run_id`;明确换产品、换根意图或既有 run 已终态才重建。第三方平台项目 ID 仍优先固定为 `run_id`,不得被显式 run ID 或本地生成值覆盖。业务 stage 只由登记 runner/script 异步记录。
|
|
50
50
|
|
|
51
|
-
遥测默认开启,`ALIPAY_AIPAY_TELEMETRY=0|false|off|no`
|
|
51
|
+
遥测默认开启,`ALIPAY_AIPAY_TELEMETRY=0|false|off|no` 可关闭 `METRIC_EVENT`、outbox、上传和 flush;私有流程 run context 仍用于 `PLATFORM_ID` 和终态生命周期。落盘/网络/上传/flush 失败静默,不改变业务、消息或确认,stdout 为空且 stderr 内部行不对客。`integration_only` 由 checklist 终态结束 run,其他意图由 Onboarding closeout 结束。脚本始终以当前流程 `run_id` 为 `PLATFORM_ID`,Agent 不手写环境前缀或改 MCP payload;维护诊断、outbox、上传和 flush 细节只在 `normal/telemetry.md` 按需读取。
|
|
52
52
|
|
|
53
|
-
三种入口均只在无法从已有产品名称或业务描述可靠确定唯一产品时执行 flow 登记的 `product-clarify` runner;不得推定或手写澄清。产品明确但 MCC 尚无检索输入时使用 `mcc-clarify`;已有经营描述后统一使用 `mcc-resolve-plan`,不得拆回 `mcc-search + mcc-candidates`
|
|
53
|
+
三种入口均只在无法从已有产品名称或业务描述可靠确定唯一产品时执行 flow 登记的 `product-clarify` runner;不得推定或手写澄清。产品明确但 MCC 尚无检索输入时使用 `mcc-clarify`;已有经营描述后统一使用 `mcc-resolve-plan`,不得拆回 `mcc-search + mcc-candidates` 或为方案展示再拼 renderer 输入。
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
代码开发或完整接入缺项目位置/技术栈时,执行 `integration.context.required` 或 `integration.project_path.required` 标准消息。先区分新建与复用;`PROJECT_INPUT` 保留原话,明确新建项目/网站/商城/应用等产物时必须 `resolve-project --intent new`,不得因当前目录有项目改为复用。未知现有项目先轻量定位,所有路径再由 `resolve-project` 解析;补齐前不初始化、装依赖或改文件。
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
每轮代码开发只渲染一次非阻塞 `integration.start.confirm`,两种意图复用同一次检查器事实并覆盖 Integration 步骤 1 至步骤8:代码开发校验;`full_process` 在方案展示前已完成步骤 1,方案送达且 receipt 有效后进入步骤 3。Onboarding 只保留一次非阻塞方案展示;服务修改仍保留绑定当前摘要的阻塞确认。签约材料完整后直接提交,服务创建摘要后直接创建,新建应用公钥校验成功后直接提审。
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
扫码页非阻塞:授权最多 12 次/间隔 5 秒,公钥最多 20 次/间隔 2 秒,成功即推进;耗尽后经统一回复判定只查一次,不重启轮询。
|
|
60
60
|
|
|
61
|
-
`full_process`
|
|
61
|
+
`full_process` 代码开发方案送达前只准备项目、语言、系统分支环境和沙箱;Windows 未明确要求当前配置时记 `VERIFY_PENDING`,不收资料。方案送达且 receipt 有效后进入 Integration 步骤 3,满足条件自动进 Onboarding;仅沙箱待配置,或 READY 且只剩非阻塞人工验证时可部分通过,其他缺口停在 Integration;收口保留全部待办。
|
|
62
62
|
|
|
63
63
|
仅代码开发结束时提醒仍需产品开通;仅产品开通结束时提醒仍需代码开发。机器规则、消息目录、fixture 和测试不作为默认必读内容。
|