@itpay/cli 2.1.34 → 2.1.41
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/README.md +5 -12
- package/dist/src/client/backend.js +2 -33
- package/dist/src/client/http.js +0 -2
- package/dist/src/commands/buy.js +4 -7
- package/dist/src/commands/cart.js +15 -15
- package/dist/src/commands/catalog.js +7 -17
- package/dist/src/commands/checkout.js +5 -146
- package/dist/src/commands/checkout_handoff.js +10 -48
- package/dist/src/commands/docs.js +18 -7
- package/dist/src/commands/guidance.js +19 -69
- package/dist/src/commands/install.js +3 -6
- package/dist/src/commands/order.js +1 -14
- package/dist/src/commands/orders.js +9 -4
- package/dist/src/commands/pay.js +1 -1
- package/dist/src/commands/readyz.js +2 -2
- package/dist/src/commands/refund.js +5 -5
- package/dist/src/commands/services.js +167 -1712
- package/dist/src/commands/skill.js +5 -8
- package/dist/src/commands/vault.js +20 -27
- package/dist/src/commands/vault_handoff.js +0 -18
- package/dist/src/main.js +58 -294
- package/dist/src/render/markdown.js +3 -0
- package/dist/src/render/qr.js +1 -1
- package/dist/src/state/cart_session.js +1 -4
- package/dist/src/state/client_context.js +0 -72
- package/dist/src/state/config.js +14 -44
- package/dist/src/state/device_authority.js +41 -141
- package/docs/agent/buyer/cart-checkout.json +5 -6
- package/docs/agent/buyer/catalog-list.json +6 -24
- package/docs/agent/buyer/identity-and-sessions.json +9 -25
- package/docs/agent/buyer/install-and-setup.json +15 -11
- package/docs/agent/buyer/orders-refunds.json +5 -12
- package/docs/agent/buyer/payment-flow.json +3 -4
- package/docs/agent/buyer/purchased-content.json +4 -18
- package/docs/agent/buyer/quickstart.json +16 -24
- package/docs/agent/buyer/render-hosts.json +12 -23
- package/docs/agent/buyer/service-feedback.json +1 -2
- package/docs/cli-reference/agent-types.md +2 -7
- package/docs/cli-reference/commands/buy.md +1 -2
- package/docs/cli-reference/commands/cart/add.md +1 -1
- package/docs/cli-reference/commands/cart/clear.md +1 -1
- package/docs/cli-reference/commands/cart/index.md +1 -1
- package/docs/cli-reference/commands/cart/next.md +1 -1
- package/docs/cli-reference/commands/cart/remove.md +1 -1
- package/docs/cli-reference/commands/cart/show.md +1 -1
- package/docs/cli-reference/commands/catalog/index.md +1 -1
- package/docs/cli-reference/commands/catalog/list.md +2 -2
- package/docs/cli-reference/commands/checkout.md +2 -12
- package/docs/cli-reference/commands/device.md +11 -18
- package/docs/cli-reference/commands/docs/index.md +1 -1
- package/docs/cli-reference/commands/docs/list.md +1 -1
- package/docs/cli-reference/commands/docs/search.md +1 -1
- package/docs/cli-reference/commands/docs/show.md +1 -1
- package/docs/cli-reference/commands/install.md +6 -8
- package/docs/cli-reference/commands/next.md +1 -1
- package/docs/cli-reference/commands/order.md +1 -1
- package/docs/cli-reference/commands/pay.md +1 -1
- package/docs/cli-reference/commands/readyz.md +10 -58
- package/docs/cli-reference/commands/refund/cancel.md +1 -1
- package/docs/cli-reference/commands/refund/create.md +1 -1
- package/docs/cli-reference/commands/refund/get.md +2 -2
- package/docs/cli-reference/commands/refund/index.md +1 -1
- package/docs/cli-reference/commands/refund/list.md +1 -1
- package/docs/cli-reference/commands/refund/watch.md +1 -1
- package/docs/cli-reference/commands/services/action.md +3 -24
- package/docs/cli-reference/commands/services/checkout.md +2 -13
- package/docs/cli-reference/commands/services/events.md +1 -1
- package/docs/cli-reference/commands/services/get.md +2 -4
- package/docs/cli-reference/commands/services/index.md +3 -4
- package/docs/cli-reference/commands/services/invoke.md +4 -6
- package/docs/cli-reference/commands/services/list.md +1 -1
- package/docs/cli-reference/commands/services/next.md +12 -105
- package/docs/cli-reference/commands/services/quote.md +3 -3
- package/docs/cli-reference/commands/services/read-result.md +6 -17
- package/docs/cli-reference/commands/services/start.md +2 -2
- package/docs/cli-reference/commands/vault/access.md +1 -5
- package/docs/cli-reference/conventions.md +6 -4
- package/docs/cli-reference/index.md +1 -8
- package/docs/skill-bundle-rollout/01-mcp-authentication.md +134 -0
- package/docs/skill-bundle-rollout/02-platform-bundle-repositories.md +210 -0
- package/docs/skill-bundle-rollout/03-platform-publishing.md +161 -0
- package/docs/skill-bundle-rollout/04-first-wave-platforms.md +69 -0
- package/docs/skill-bundle-rollout/05-sync-operations.md +62 -0
- package/docs/skill-bundle-rollout/README.md +151 -0
- package/package.json +13 -20
- package/skills/itpay/SKILL.md +105 -101
- package/assets/sell-preview/index.html +0 -6
- package/assets/sell-preview/preview.js +0 -9
- package/bin/darwin-amd64/itpay-sell +0 -0
- package/bin/darwin-arm64/itpay-sell +0 -0
- package/bin/linux-amd64/itpay-sell +0 -0
- package/bin/linux-arm64/itpay-sell +0 -0
- package/bin/windows-amd64/itpay-sell.exe +0 -0
- package/dist/src/commands/presentation.js +0 -153
- package/dist/src/commands/rail_catalog.js +0 -261
- package/dist/src/render/browser.js +0 -65
- package/dist/src/sell/commands.js +0 -80
- package/dist/src/sell/contract.js +0 -86
- package/dist/src/sell/local.js +0 -260
- package/dist/src/sell/mcp.js +0 -49
- package/dist/src/sell/preview.js +0 -70
- package/dist/src/sell/sync.js +0 -145
- package/dist/src/state/account_auth.js +0 -332
- package/dist/src/state/task_journal.js +0 -90
- package/docs/agent/buyer/rail-booking.json +0 -162
- package/docs/agent/buyer/rail-fast-checkout.json +0 -48
- package/docs/cli-reference/commands/auth.md +0 -96
- package/docs/cli-reference/commands/sell.md +0 -1364
- package/docs/cli-reference/commands/services/page.md +0 -71
- package/docs/cli-reference/commands/services/run.md +0 -156
- package/docs/sell.md +0 -84
- /package/bin/{itp.mjs → itp} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay catalog`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 命令范围
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay catalog list`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -40,7 +40,7 @@ itpay catalog list [--json]
|
|
|
40
40
|
|
|
41
41
|
## 异常处理
|
|
42
42
|
|
|
43
|
-
输出不得包含 snapshot、manifest 原文、
|
|
43
|
+
输出不得包含 snapshot、manifest 原文、compiled graph 或 Provider secret。服务为空时返回 `catalog_empty`,要求稍后重试,不猜服务 ID。
|
|
44
44
|
|
|
45
45
|
## Agent Type / Host
|
|
46
46
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay checkout`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -13,10 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
15
|
itpay checkout [--id <checkout_id>] [--token <display_token>]
|
|
16
|
-
[--host <host>] [--target <target>] [--locale <zh-CN|en>]
|
|
17
|
-
[--present <auto|browser|image|link|none>] [--no-open] [--viewer <desktop|mobile|unknown>]
|
|
18
|
-
[--relay-option <ref>] [--confirm-relay] [--request-key <key>] [--relay-status <relay_id>]
|
|
19
|
-
[--json]
|
|
16
|
+
[--host <host>] [--target <target>] [--locale <zh-CN|en>] [--json]
|
|
20
17
|
```
|
|
21
18
|
|
|
22
19
|
省略 `--id/--token` 时只能使用本机保存的一组完整句柄;不得把其他 Checkout 的 token 拼接使用。
|
|
@@ -25,12 +22,6 @@ itpay checkout [--id <checkout_id>] [--token <display_token>]
|
|
|
25
22
|
|
|
26
23
|
`--locale` 默认 `zh-CN`,可显式使用 `en`。它只改变重新渲染的 Card 文案,不改变 Checkout、付款、授权或恢复状态。
|
|
27
24
|
|
|
28
|
-
展示控制(display plane,不创建任何新的付款路径):
|
|
29
|
-
|
|
30
|
-
- `--present` 一次只选一种展示方式:`browser` 打开系统浏览器、`image` 展示官方二维码图片、`link` 给出可点击链接、`none` 只说明状态、`auto`(默认)按宿主能力选择一种。`--json` 下默认只返回展示计划而不执行打开;显式 `--present browser` 即是一次打开请求。`ITPAY_NO_BROWSER=1` 与 `--no-open` 都禁止打开浏览器。已付款、已退款或报价失效的 Checkout 不会发起任何展示动作,只读取原状态。
|
|
31
|
-
- `--viewer` 告知用户正在看哪类设备:`mobile` 时不会把二维码当作同机可读方式;`desktop` 时才考虑打开浏览器。
|
|
32
|
-
- 消息转发(relay)要求服务端已签发的脱敏联系人引用 `--relay-option`、稳定幂等键 `--request-key` 和显式人类同意 `--confirm-relay`,三者缺一不可;CLI 不自行发送短信或邮件。`--relay-status <relay_id>` 只读取一次既有转发结果,绝不重发。`--present` 与 relay 互斥。当前 Backend 未提供 relay 能力时会如实返回不可用。
|
|
33
|
-
|
|
34
25
|
## 等待付款输出
|
|
35
26
|
|
|
36
27
|
```json
|
|
@@ -86,7 +77,6 @@ token 缺失或不匹配时使用本机句柄恢复。只有请求的 Checkout
|
|
|
86
77
|
| `claude-code-cli` | `url`;普通文本模式渲染终端二维码。 |
|
|
87
78
|
| `workbuddy` | 返回 `url,agent_action`;原样执行一次 `present_files(files=[url])` 打开完整渲染的 HTML Card Link,不生成本地文件。 |
|
|
88
79
|
| `zcode` | 返回 `url`;立即用 ZCode 内置浏览器打开,不只粘贴文字链接,也不生成或重建二维码文件。 |
|
|
89
|
-
| `doubao-work` | 返回 `url,qr_image_url`;展示手机直达收银台链接和官方二维码图片链接,说明金额后停止。 |
|
|
90
80
|
| `kimi-code` | `url`;普通文本模式渲染标准终端二维码。 |
|
|
91
81
|
| `openclaw` | Telegram 为 `url,qr_image_url,agent_action`;instruction 强制原样执行 action。`📋 已授权给我读` callback 触发同一 Checkout 查询,再由 Backend 决定是否进入 grant 读取;其他显式 Host 为 `url,qr_image_url`。 |
|
|
92
82
|
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
# `itpay device` / `itpay device recover`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围
|
|
6
6
|
|
|
7
|
-
`itpay device` 只显示该命令组的帮助并退出,不访问 Backend
|
|
8
|
-
|
|
9
|
-
`itpay device repair-lock --json` 只检查本地锁,保留 Device identity;活跃锁返回 `device_lock_active`,过期锁修复后返回 `device_lock_recovered`,无锁返回 `device_lock_absent`。
|
|
7
|
+
`itpay device` 只显示该命令组的帮助并退出,不访问 Backend、不读取或修改身份。当前唯一子命令是 `recover`。
|
|
10
8
|
|
|
11
9
|
仅在运营明确确认当前 Backend 的 Device 登记数据库已重建或清空后,删除本地该 Backend 的 v2 registration:
|
|
12
10
|
|
|
@@ -14,29 +12,18 @@
|
|
|
14
12
|
itpay --agent-type <agent_type> device recover --confirm-backend-reset --json
|
|
15
13
|
```
|
|
16
14
|
|
|
17
|
-
命令只作用于当前官方 Backend 的 Device registration,并保留本地 Ed25519 私钥、Cart 和业务资源。默认是 `https://app.itpay.ai`;显式测试可使用准确的 `ITPAY_BACKEND_URL=https://
|
|
15
|
+
命令只作用于当前官方 Backend 的 Device registration,并保留本地 Ed25519 私钥、Cart 和业务资源。默认是 `https://app.itpay.ai`;显式测试可使用准确的 `ITPAY_BACKEND_URL=https://dev.itpay.ai`。该命令不访问 Backend、不自动创建新身份;返回的只读 `services list` 会保留同一 Backend,是重新登记入口。
|
|
18
16
|
|
|
19
17
|
同一台电脑上的多个 Local Agent Type 共享本地 Device key,但各自使用独立 Agent
|
|
20
18
|
Instance。CLI 只在原子更新 Device state 时使用短期本地锁;释放和 stale recovery
|
|
21
19
|
通过 rename 完成,不依赖 Host 删除文件,因此 WorkBuddy 等 sandbox 的
|
|
22
20
|
safe-delete/trash shim 不应阻断正常命令。该锁不在 Backend,不会让另一台电脑或
|
|
23
21
|
另一个 Buyer 等待。遇到本地锁错误时不得删除 `~/.itpay-v3/device`、切换 Agent
|
|
24
|
-
Type 或执行 `device recover
|
|
22
|
+
Type 或执行 `device recover`;应保留身份并重试原命令一次,持续失败时报告
|
|
23
|
+
`device_state_unwritable` 或 lock timeout。
|
|
25
24
|
|
|
26
25
|
缺少确认参数返回 `backend_reset_confirmation_required`。普通 session 失效由 CLI 自动续期;revoked、quota、权限或未知 Backend 故障不得使用本命令。所有 Agent Type 使用相同输入和输出合同。
|
|
27
26
|
|
|
28
|
-
## `itpay device reset-key`
|
|
29
|
-
|
|
30
|
-
仅在确认当前密钥不可恢复,且服务端返回 `agent_device_key_rotated` / `agent_device_key_conflict` 时使用;`internal_error` 是服务端故障,不能据此重置身份。必须指定真实 Agent Type 并取得明确确认。这是本地操作,不访问 Backend:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
itpay --agent-type <agent_type> device reset-key --confirm-key-reset --json
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
命令删除本地 Ed25519 私钥并清空所有 Backend 的本地登记记录;下一次需要设备身份的命令会以全新密钥重新登记为新设备。服务端旧设备记录保留为孤儿,不会被删除或复用;原设备的额度谱系不迁移。正常续期与登记由 CLI 既有逻辑处理;仅在用户或运营明确决定放弃旧身份后才可执行换钥,旧执行访问不会迁移。锁超时使用 repair-lock,不重复登记或换钥。
|
|
37
|
-
|
|
38
|
-
缺少确认参数返回 `key_reset_confirmation_required`;本地文件操作失败返回 `device_key_reset_failed`。本命令不得删除 Cart、operation journal 或 `~/.itpay-v3` 的其他内容。
|
|
39
|
-
|
|
40
27
|
## 参数
|
|
41
28
|
|
|
42
29
|
| 参数 | 必填 | 说明 |
|
|
@@ -68,3 +55,9 @@ itpay --agent-type <agent_type> device reset-key --confirm-key-reset --json
|
|
|
68
55
|
当前 Backend 已无本地登记时,`status` 为 `backend_registration_absent`、`removed_agent_types=[]`,其余合同不变。文本输出只包含 Backend、registration 状态、私钥保留和其他 Backend 保留四项,不输出私钥、公钥、Device ID、Agent Instance ID、session、token 或本地文件内容。
|
|
69
56
|
|
|
70
57
|
缺少 Agent Type 返回 `agent_type_required`;缺少确认返回 `backend_reset_confirmation_required`。其他本地恢复失败返回 `device_recovery_failed`。所有失败都必须发生在删除 registration 前;本命令不得删除整把 Device identity、Cart、operation journal 或其他 Backend 登记。
|
|
58
|
+
|
|
59
|
+
## `itpay device status --json`
|
|
60
|
+
|
|
61
|
+
先核验当前 Backend 合同,再通过既有设备挑战与签名验证获取当前认证事实。首次可能登记设备及该宿主,后续复用同一私钥和登记,强制验证当前服务端状态而非只读取缓存。成功返回 `device_ready`、agent_type、expires_at、backend_url 与 account_binding=unavailable;不返回 token/私钥/签名,不读取业务或订单。不支持账号绑定读取不等于未登录,也不提供不存在的 auth login。
|
|
62
|
+
|
|
63
|
+
--json 输出标准 envelope;普通文本直接可读。合同、身份或网络故障停止本轮,next=null,不自动重建身份、登录或交易。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay docs`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 命令范围
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay docs list`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay docs search`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay docs show`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay install`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -18,10 +18,10 @@ itpay install [target] [--json]
|
|
|
18
18
|
|
|
19
19
|
| 参数 | 必填 | 说明 |
|
|
20
20
|
| --- | --- | --- |
|
|
21
|
-
| `target` | 否 |
|
|
21
|
+
| `target` | 否 | 八种正式 Agent Type 之一;省略或传 `list` 时列出全部。Host 名称不是合法 target。 |
|
|
22
22
|
| `--json` | 否 | 返回标准命令 envelope;推荐 Agent 使用。 |
|
|
23
23
|
|
|
24
|
-
正式 target:`codex-desktop`、`codex-cli`、`claude-code-desktop`、`claude-code-cli`、`workbuddy`、`zcode`、`
|
|
24
|
+
正式 target:`codex-desktop`、`codex-cli`、`claude-code-desktop`、`claude-code-cli`、`workbuddy`、`zcode`、`kimi-code`、`openclaw`。
|
|
25
25
|
|
|
26
26
|
## 指定 Agent Type 输出
|
|
27
27
|
|
|
@@ -77,7 +77,7 @@ OpenClaw 额外明确没有默认入口:
|
|
|
77
77
|
|
|
78
78
|
## 列表输出
|
|
79
79
|
|
|
80
|
-
省略 target 或传 `list`
|
|
80
|
+
省略 target 或传 `list` 时返回八组运行时定义,不重复每种类型的完整 instruction:
|
|
81
81
|
|
|
82
82
|
```json
|
|
83
83
|
{
|
|
@@ -90,7 +90,6 @@ OpenClaw 额外明确没有默认入口:
|
|
|
90
90
|
{ "agent_type": "claude-code-cli", "default_host": "terminal" },
|
|
91
91
|
{ "agent_type": "workbuddy", "default_host": "plain-chat" },
|
|
92
92
|
{ "agent_type": "zcode", "default_host": "plain-chat" },
|
|
93
|
-
{ "agent_type": "doubao-work", "default_host": "plain-chat" },
|
|
94
93
|
{ "agent_type": "kimi-code", "default_host": "terminal" },
|
|
95
94
|
{
|
|
96
95
|
"agent_type": "openclaw",
|
|
@@ -121,9 +120,8 @@ OpenClaw 额外明确没有默认入口:
|
|
|
121
120
|
| `codex-cli` | `terminal` | 只在用户可见终端展示付款交接。 |
|
|
122
121
|
| `claude-code-desktop` | `claude-code` | 桌面对话必须实际展示二维码和付款链接。 |
|
|
123
122
|
| `claude-code-cli` | `terminal` | 只在用户可见终端展示付款交接。 |
|
|
124
|
-
| `workbuddy` | `plain-chat` |
|
|
123
|
+
| `workbuddy` | `plain-chat` | 会持久化 `~/.itpay-v3` 的 Bash 调用先设 Shell 工具参数 `dangerouslyDisableSandbox=true`;拒绝权限时停止。Checkout 原样执行返回的 `present_files` action,打开渲染后的 Card Link。 |
|
|
125
124
|
| `zcode` | `plain-chat` | Checkout 或授权返回后立即用 ZCode 内置浏览器打开 `handoff.url`;只有浏览器不可用时才展示同一个可点击链接。 |
|
|
126
|
-
| `doubao-work` | `plain-chat` | Checkout 或授权时同时展示 `handoff.url` 和 `handoff.qr_image_url` 两个有标签的官方入口;优先让手机直接打开链接,二维码供保存或另一台设备扫码。 |
|
|
127
125
|
| `kimi-code` | `terminal` | 使用标准 CLI 流程和终端展示,不增加 Kimi 专属命令。 |
|
|
128
126
|
| `openclaw` | 无 | 必须显式提供当前入口;Telegram 使用原生 action,其他入口展示标准二维码和链接。 |
|
|
129
127
|
|
|
@@ -142,7 +140,7 @@ OpenClaw 额外明确没有默认入口:
|
|
|
142
140
|
"code": "unsupported_agent_type",
|
|
143
141
|
"message": "unsupported install target: codex"
|
|
144
142
|
},
|
|
145
|
-
"instruction": "target 只接受:codex-desktop, codex-cli, claude-code-desktop, claude-code-cli, workbuddy, zcode,
|
|
143
|
+
"instruction": "target 只接受:codex-desktop, codex-cli, claude-code-desktop, claude-code-cli, workbuddy, zcode, kimi-code, openclaw。",
|
|
146
144
|
"next": null,
|
|
147
145
|
"recovery": [
|
|
148
146
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay next`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay order`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay pay`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# `itpay readyz`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
7
|
-
检查当前官方 Backend 是否可用。默认使用生产环境 `https://app.itpay.ai`;仅测试时可通过 `ITPAY_BACKEND_URL=https://
|
|
7
|
+
检查当前官方 Backend 是否可用。默认使用生产环境 `https://app.itpay.ai`;仅测试时可通过 `ITPAY_BACKEND_URL=https://dev.itpay.ai` 选择官方开发环境。它只调用 `/v1/readyz` 做 liveness 诊断,不执行平台兼容性 gate、不登记设备、不创建业务资源;需要服务端合同的命令仍会在各自入口严格检查 compatibility。
|
|
8
8
|
|
|
9
|
-
**上游:** CLI 安装;Backend 只能是官方 `https://app.itpay.ai` 或 `https://
|
|
9
|
+
**上游:** CLI 安装;Backend 只能是官方 `https://app.itpay.ai` 或 `https://dev.itpay.ai`,其他 override 在网络或本地状态写入前被拒绝。
|
|
10
10
|
**下游:** 完整 `itpay` Skill;由 Agent 根据用户意图选择新服务、已购内容、订单或退款入口。
|
|
11
11
|
|
|
12
12
|
## 语法与参数
|
|
@@ -31,14 +31,14 @@ itpay readyz [--json]
|
|
|
31
31
|
}
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
开发环境返回同一 envelope,但明确标记环境并在每个后续命令中保留 dev Backend:
|
|
35
35
|
|
|
36
36
|
```json
|
|
37
37
|
{
|
|
38
38
|
"status": "ready",
|
|
39
|
-
"result": { "backend": "available", "backend_url": "https://
|
|
40
|
-
"instruction": "ItPay
|
|
41
|
-
"next": { "command": "ITPAY_BACKEND_URL=https://
|
|
39
|
+
"result": { "backend": "available", "backend_url": "https://dev.itpay.ai", "environment": "development" },
|
|
40
|
+
"instruction": "ItPay dev 可用。先完整读取内置 Skill,再根据用户意图选择新服务、已购内容、订单或退款入口;后续必须执行返回的完整命令并保持同一 dev Backend。",
|
|
41
|
+
"next": { "command": "ITPAY_BACKEND_URL=https://dev.itpay.ai itpay skill show itpay --json", "reason": "加载完整操作与安全规则" },
|
|
42
42
|
"recovery": []
|
|
43
43
|
}
|
|
44
44
|
```
|
|
@@ -54,63 +54,15 @@ itpay readyz [--json]
|
|
|
54
54
|
"status": "error",
|
|
55
55
|
"error": {
|
|
56
56
|
"code": "backend_override_forbidden",
|
|
57
|
-
"message": "ITPAY_BACKEND_URL only supports https://app.itpay.ai or https://
|
|
57
|
+
"message": "ITPAY_BACKEND_URL only supports https://app.itpay.ai or https://dev.itpay.ai"
|
|
58
58
|
},
|
|
59
|
-
"instruction": "移除 ITPAY_BACKEND_URL 使用正式环境,或准确设置为 https://
|
|
59
|
+
"instruction": "移除 ITPAY_BACKEND_URL 使用正式环境,或准确设置为 https://dev.itpay.ai。",
|
|
60
60
|
"next": null,
|
|
61
61
|
"recovery": []
|
|
62
62
|
}
|
|
63
63
|
```
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
```json
|
|
68
|
-
{
|
|
69
|
-
"status": "error",
|
|
70
|
-
"error": {
|
|
71
|
-
"code": "backend_contract_incompatible",
|
|
72
|
-
"message": "CLI 2.0.15 contract sha256:client is incompatible with platform v3.example contract sha256:server (minimum CLI 2.0.16, maximum major 2)"
|
|
73
|
-
},
|
|
74
|
-
"result": {
|
|
75
|
-
"current_cli_version": "2.0.15",
|
|
76
|
-
"required_cli_version": "2.0.16"
|
|
77
|
-
},
|
|
78
|
-
"instruction": "当前 CLI 与 Backend 合约不兼容。停止所有 ItPay 业务命令;只执行 recovery.command,将 @itpay/cli 更新到 Backend 指定的精确版本。安装完成后确认 itpay --version 与 result.required_cli_version 完全一致,再重新运行 readyz。不要安装 latest、猜测版本、切换 Agent Type 或删除 Device 身份。",
|
|
79
|
-
"next": null,
|
|
80
|
-
"recovery": [
|
|
81
|
-
{
|
|
82
|
-
"command": "npm install -g @itpay/cli@2.0.16",
|
|
83
|
-
"reason": "安装 Backend 指定的兼容 CLI 版本"
|
|
84
|
-
}
|
|
85
|
-
]
|
|
86
|
-
}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
OpenClaw bundle 的同一错误改为:
|
|
90
|
-
|
|
91
|
-
```json
|
|
92
|
-
{
|
|
93
|
-
"status": "error",
|
|
94
|
-
"error": {
|
|
95
|
-
"code": "backend_contract_incompatible",
|
|
96
|
-
"message": "<same compatibility fact>"
|
|
97
|
-
},
|
|
98
|
-
"result": {
|
|
99
|
-
"current_cli_version": "2.0.15",
|
|
100
|
-
"required_cli_version": "2.0.16"
|
|
101
|
-
},
|
|
102
|
-
"instruction": "当前 OpenClaw Skill bundle 与 Backend 合约不兼容。停止所有 ItPay 业务命令;只执行 recovery.command,更新 Skill 后启动新会话并确认 itpay --version 与 result.required_cli_version 完全一致,再重新运行 readyz。不要运行 npm、切换 Agent Type 或删除 Device 身份。",
|
|
103
|
-
"next": null,
|
|
104
|
-
"recovery": [
|
|
105
|
-
{
|
|
106
|
-
"command": "openclaw skills update itpay",
|
|
107
|
-
"reason": "更新包含 Backend 指定 CLI 版本的 ItPay Skill bundle"
|
|
108
|
-
}
|
|
109
|
-
]
|
|
110
|
-
}
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
Kimi bundle 使用其 plugin 更新入口,不返回 npm 命令。只允许使用 Backend 返回的 `minimum_cli_version` 生成精确版本要求;兼容性合同不可用、缺少合法版本或仅有无法验证的错误文本时,仍须停止且不得猜测安装版本。
|
|
65
|
+
minimum_cli_version 仅为协议门槛,不是经过核验的推荐制品。兼容失败保留当前 CLI/API、平台API及版本窗口事实;next=null、recovery=[],停止本轮并请求维护方提供配套包,不猜版本或换身份。
|
|
114
66
|
|
|
115
67
|
## Agent Type / Host
|
|
116
68
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund cancel`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund create`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund get`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -48,7 +48,7 @@ itpay refund get <refund_request_id> [--json]
|
|
|
48
48
|
## 终态
|
|
49
49
|
|
|
50
50
|
- `succeeded`:先告诉用户退款已由 ItPay 确认成功,交付永久关闭,`next=null`。
|
|
51
|
-
- `cancelled/rejected
|
|
51
|
+
- `cancelled/rejected`:说明退款没有执行,交付资格可恢复,但旧 grant 不复活,需要用户重新授权,`next=null`。
|
|
52
52
|
- `failed + known_no_effect`:说明退款请求确认未发送;Agent 不重试,由平台管理员决定是否重新执行,`next=null`。
|
|
53
53
|
- `failed + retryable`:说明渠道明确返回可重试失败但 Agent 不会自行重试;等待平台管理员处理,`next=null`。
|
|
54
54
|
- `failed + outcome_unknown`:说明渠道结果未知、交付继续锁定且必须先对账;禁止重试或重复申请,`next=null`。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 命令范围
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund list`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay refund watch`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay services action`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -16,30 +16,11 @@ itpay services action <service_execution_id> --action <action_type>
|
|
|
16
16
|
[--actor-type <actor_type>] [--actor-id <actor_id>]
|
|
17
17
|
[--status <pending|approved|rejected|expired|cancelled>]
|
|
18
18
|
[--candidate <rank> | --result-item <result_item_id>]
|
|
19
|
-
[--required-before <step>] [--input <key=value> ...]
|
|
20
|
-
[--input-json <file>] [--json]
|
|
19
|
+
[--required-before <step>] [--input <key=value> ...] [--json]
|
|
21
20
|
```
|
|
22
21
|
|
|
23
|
-
| 选项 | 说明 |
|
|
24
|
-
|---|---|
|
|
25
|
-
| `--input <key=value>` | 逐项提交 action input;值可为 JSON 字面量(对象/数组/布尔/数字),可重复。 |
|
|
26
|
-
| `--input-json <file>` | UTF-8 JSON 文件;顶层必须是 object,整体作为 action input;文件不超过 256 KiB。适合嵌套结构(如订票确认的 `seat_preferences`)。**与 `--input` 互斥**:同时给出时在发起请求前返回 `service_action_invalid`。文件不存在、非合法 JSON 或顶层非 object 同样在本地报结构化错误,不发生网络写。 |
|
|
27
|
-
|
|
28
22
|
普通 Agent 优先使用 `--candidate <rank>`。CLI 只从当前 Execution 的 `current_result_items` 解析 Result Item ID;Backend 再读取权威 Invocation 和 Stable Hash。Agent 不提交 Hash,也不能使用其他 Execution 或外部来源的候选。`--result-item` 只用于已持有当前 Execution 内部句柄的受控恢复,不应要求用户提供。
|
|
29
23
|
|
|
30
|
-
## 规划动作(rail.progressive.v2)
|
|
31
|
-
|
|
32
|
-
`services next` 的 `rail_planning.available_actions` 会给出可直接执行的完整命令。规划动作只允许以下类型,由 planning owner 校验执行归属、plan 状态与幂等键,不影响 Arazzo `human_action` 状态机或公共执行状态:
|
|
33
|
-
|
|
34
|
-
| action_type | 供应商消耗 | 说明 |
|
|
35
|
-
| --- | --- | --- |
|
|
36
|
-
| `workflow:expand_search` | 有界新增查询 | 仅在扩展暂停(`expansion_status=paused`)时可用;必须带服务端下发的 `action_request_id`(`pa_…`)与 `expected_query_revision`,一轮一柄、用完作废。 |
|
|
37
|
-
| `workflow:refine_preferences` | 无(本地重排) | 用 `--input-json` 提交偏好补丁,对已保存证据重排序。 |
|
|
38
|
-
| `workflow:stop_search` | 无 | 停止未发送的扩展任务;不影响已开始或已完成的出票。 |
|
|
39
|
-
| `select_journey` | 无 | 用户亲自选定用 `--actor-type human`;用户已明确委托按规则代选用 `--actor-type agent --input selection_mode=delegated`。两者都带服务端返回的 `journey_id`,仅记录选择,后续购买仍走既有报价与受保护 Checkout。 |
|
|
40
|
-
|
|
41
|
-
同一 `action_request_id` 相同内容重放返回原受理结果;相同 ID 不同内容会被判冲突。过期 `expected_query_revision` 的新动作被拒绝。
|
|
42
|
-
|
|
43
24
|
## 标准输出
|
|
44
25
|
|
|
45
26
|
```json
|
|
@@ -64,8 +45,6 @@ itpay services action <service_execution_id> --action <action_type>
|
|
|
64
45
|
|
|
65
46
|
rank 不存在、属于旧结果集或其他 Execution、action 不允许、status 非法时均不写 action;返回结构化错误并且只引导同一 Execution 的 `services next`。不得新建 Execution、重新 invoke 或构造候选 ID。相同候选重试幂等;同一结果集改选另一个候选返回冲突,不覆盖已批准事实。
|
|
66
47
|
|
|
67
|
-
订票类 `workflow:confirm_booking` 动作要求嵌套输入(`passengers`、`seat_type`、逐乘客 `seat_preferences`、`draft_revision`、`notice_version` 等),一律经 `--input-json <file>` 提交完整 JSON 对象。`draft_revision` 必须等于 `services next` 投影的 `context.review.draft_revision`;服务端拒绝 `booking_review_changed` 时重新读取后重试,不得自行递增。乘客姓名、证件号等身份信息不在此提交,仍由受保护 Checkout 页收集。
|
|
68
|
-
|
|
69
48
|
## Agent Type / Host
|
|
70
49
|
|
|
71
|
-
所有正式支持的 Local Agent Type
|
|
50
|
+
所有正式支持的 Local Agent Type 行为相同。需要人确认时 instruction 必须明确“先询问用户”,不能因 Desktop Host 自动代替用户选择。
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
# `itpay services checkout`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
7
7
|
为单个 Service Execution 快速创建或恢复 Checkout,并按 Host 向人交接付款入口。它是 `services quote -> cart add --quote -> buy --cart` 的单项快捷方式,必须复用相同的 Quote、Cart 和 Checkout Use Case。
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
**通知联系方式(铁路单):** 订单级联系策略要求至少一个可用通道——邮箱,或在 checkout 页内经验证的大陆手机号(order-contact 验证码只校验收件人,不创建/合并登录身份)。有效邮箱即可独立完成 checkout;SMS 不是必填项,SMS 能力未配置时不得阻塞邮箱通道。该策略仅适用于铁路订单,企知道等既有服务的联系策略不变。乘客证件手机号、账号登录手机号与通知收件人是三个独立事实,互不替代。
|
|
12
|
-
|
|
13
|
-
**上游:** `services next` 返回的 `prepare_quote` capability 和已验证输入。铁路购票执行必须先通过 `workflow:confirm_booking` review(见 `services next` 的 `booking_review_required`),后端才生成可支付报价;review 开放期间不创建 Checkout。
|
|
9
|
+
**上游:** `services next` 返回的 `prepare_quote` capability 和已验证输入。
|
|
14
10
|
**下游:** 人完成 Checkout,随后 `checkout` 或 `services next`。
|
|
15
11
|
|
|
16
12
|
## 语法与参数
|
|
@@ -88,7 +84,6 @@ itpay services checkout <service_execution_id> --resume
|
|
|
88
84
|
| `claude-code-cli` | `handoff={url}`;普通文本模式在用户可见终端渲染二维码。 |
|
|
89
85
|
| `workbuddy` | `handoff={url,agent_action}`;原样执行一次 `present_files(files=[url])` 打开完整渲染的 HTML Card Link,然后停止;不得检查或生成本地文件。 |
|
|
90
86
|
| `zcode` | `handoff={url}`;立即用 ZCode 内置浏览器打开,然后停止;只有浏览器不可用时才展示同一个可点击链接。 |
|
|
91
|
-
| `doubao-work` | `handoff={url,qr_image_url}`;在当前对话中展示手机直达收银台链接和官方二维码图片链接,说明金额后停止。 |
|
|
92
87
|
| `kimi-code` | `handoff={url}`;复用标准 CLI 终端展示。 |
|
|
93
88
|
| `openclaw` | 必须显式传 Host;Telegram 还必须传 OpenClaw 原生 Target,并返回必须原样执行的 `message` action;其他入口返回标准 `url,qr_image_url`。 |
|
|
94
89
|
|
|
@@ -104,12 +99,6 @@ ZCode 的准确 instruction 语义必须完整包含:
|
|
|
104
99
|
Backend 尚未确认付款。立即用 ZCode 内置浏览器打开 handoff.url,让用户完成付款;确认已发起打开后说明金额,然后停止等待。不要只粘贴文字链接,不要下载、解析或重建二维码,不要创建新 Checkout、Payment Intent 或 Execution。只有内置浏览器明确不可用时,才展示同一个可点击 handoff.url。只有用户明确表示已付款或要求查询状态时,才执行 next.command;用户的话不是付款成功证明。
|
|
105
100
|
```
|
|
106
101
|
|
|
107
|
-
Doubao Work 的准确 instruction 语义必须完整包含:
|
|
108
|
-
|
|
109
|
-
```text
|
|
110
|
-
Backend 尚未确认付款。在当前豆包工作对话中展示两个有标签的官方入口:将 handoff.url 标为“手机直接打开收银台”,将 handoff.qr_image_url 标为“二维码图片(保存或用另一台设备扫码)”。说明金额后停止等待。不要解析或单独输出 URL credential,不要下载或重建二维码,不要调用 pay,不要创建新 Checkout、Payment Intent 或 Execution。只有用户明确表示已付款或要求查询状态时,才执行 next.command;用户的话不是付款成功证明。
|
|
111
|
-
```
|
|
112
|
-
|
|
113
102
|
`--locale` 默认 `zh-CN`,可显式使用 `--locale en`。语言只影响 Card 渲染,不改变 Checkout、付款或恢复状态。
|
|
114
103
|
|
|
115
104
|
OpenClaw 的 Host/Target 校验必须发生在读取 execution 后、创建 Checkout 前;校验失败不能调用 Checkout 创建接口。Telegram `agent_action.arguments.presentation` 只使用 `blocks.buttons`,其中 `📱 手机点这儿支付` 使用扁平 `url`,`📋 已授权给我读` 使用 `value=itp:grant_confirmed:<checkout_id>`。准确 instruction 必须要求 Agent 立即用原生 `message` tool 原样执行 `handoff.agent_action`,不得改写 Presentation、换工具或用普通回复冒充按钮已发送。收到该 callback 表示用户声明已在收银台授权读取;Agent 立即执行 `next.command` 查询同一 Checkout,再只按 Backend 返回的 `next.command` 进入同一 Execution grant 流程。callback 不包含 display token,也不证明付款或 grant active;Backend 未返回 `grant_active` 前不得读取结果。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay services events`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay services get`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 范围与意义
|
|
6
6
|
|
|
@@ -57,11 +57,9 @@ itpay services get <service_execution_id> [--json]
|
|
|
57
57
|
|
|
58
58
|
`timeline` 只保留最近 20 个公开节点;超过时增加 `timeline_truncated: true`。它不返回 event ID 或 `redacted_summary`。交付存在时可增加 `delivery_mode`;退款锁存在时增加 `access_locked` 和退款 ID/status,并优先返回锁定 instruction。
|
|
59
59
|
|
|
60
|
-
订票类 Execution 的 `workflow:confirm_booking` 待确认/待修订状态不在 timeline 中展开细节——行程、`seat_options` 与当前 `draft_revision` 一律通过 `services next` 的 `booking_review_required` 投影读取;`get` 只用于确认执行仍处于可继续状态。
|
|
61
|
-
|
|
62
60
|
## 异常处理
|
|
63
61
|
|
|
64
|
-
默认不返回原始 events、Provider metadata、内部 bindings、
|
|
62
|
+
默认不返回原始 events、Provider metadata、内部 bindings、graph projection、capability schema、candidate hash、client context 或完整 payload。需要完整但仍经服务端脱敏的事件时才运行 `services events`。
|
|
65
63
|
|
|
66
64
|
execution 不存在或不属于当前身份时保留不透明 `not_found`,只恢复到 `itpay services list --json`;不得通过错误差异探测其他账号。
|
|
67
65
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# `itpay services`
|
|
2
2
|
|
|
3
|
-
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation.
|
|
3
|
+
> **Product boundary:** `itpay` is the single public CLI entry point, and `$itpay` is its user-facing Skill invocation. Under that one product entry point, the two top-level commerce actions are `buy` and `sell`: Buyer workflows are available now; Seller workflows will use the same entry point and are not implemented yet.
|
|
4
4
|
|
|
5
5
|
## 命令范围
|
|
6
6
|
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
## 核心不变量
|
|
13
13
|
|
|
14
|
-
-
|
|
14
|
+
- 一个 Execution 表示一个独立服务意图;多个意图分别执行、分别交付,但各自的 Quote 可以进入同一 Cart。
|
|
15
15
|
- 任何 capability 输入都必须在状态写入、锁价、订单创建和 Provider 调用前通过 schema 校验。
|
|
16
16
|
- `invoke` 只运行当前阶段允许且不需付款的 Agent-visible capability。
|
|
17
17
|
- 依赖候选的付费 capability 必须继续来源 Execution;`action --candidate` 不能跨 Execution 搬运候选。
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
## 子命令
|
|
23
23
|
|
|
24
24
|
- [`start`](start.md)
|
|
25
|
-
- [`run`](run.md)
|
|
26
25
|
- [`invoke`](invoke.md)
|
|
27
26
|
- [`action`](action.md)
|
|
28
27
|
- [`quote`](quote.md)
|
|
@@ -41,7 +40,7 @@
|
|
|
41
40
|
itpay services --help
|
|
42
41
|
```
|
|
43
42
|
|
|
44
|
-
|
|
43
|
+
输出十个子命令及一句选择规则:正常推进使用 `next`,深度诊断才使用 `get/events`。未知子命令返回参数错误和本 help,不创建 Execution。
|
|
45
44
|
|
|
46
45
|
## Agent Type / Host
|
|
47
46
|
|