@visa/cli 5.0.0-rc.335 → 5.0.0-rc.336
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 +9 -3
- package/dist/cli.js +252 -252
- package/dist/mcp-server/index.js +179 -179
- package/dist/merchant-ucp-mcp/index.js +3 -3
- package/dist/skills/pair-visa-agent/SKILL.md +11 -7
- package/dist/skills/visa-shopify-checkout/SKILL.md +75 -109
- package/dist/skills/visa-shopify-checkout/references/evidence-and-states.md +6 -0
- package/dist/skills/visa-ucp-shopping/SKILL.md +8 -4
- package/native/bin/darwin-arm64/visa-runtime-signer +0 -0
- package/native/bin/darwin-x64/visa-runtime-signer +0 -0
- package/native/bin/linux-arm64/visa-runtime-signer +0 -0
- package/native/bin/linux-x64/visa-runtime-signer +0 -0
- package/native/bin/win32-arm64/visa-runtime-signer.exe +0 -0
- package/native/bin/win32-x64/visa-keychain-win.exe +0 -0
- package/native/bin/win32-x64/visa-runtime-signer.exe +0 -0
- package/package.json +1 -1
- package/server.json +2 -2
package/README.md
CHANGED
|
@@ -20,6 +20,12 @@ The protected product flow has three explicit parts:
|
|
|
20
20
|
3. **Use** — `visa pay` and the `pay` tool enforce that authority's own policy
|
|
21
21
|
and approval boundary on every call.
|
|
22
22
|
|
|
23
|
+
Card payment is unavailable in this build: a `pay` target that answers no 402
|
|
24
|
+
challenge refuses with `card_browser_checkout_removed`, even with a saved card,
|
|
25
|
+
grant or tester flag. Another enrollment or card grant will not enable payment.
|
|
26
|
+
UCP discovery and checkout preparation do not prove Visa payment support.
|
|
27
|
+
Preserve the existing merchant checkout for the owner to continue with the merchant.
|
|
28
|
+
|
|
23
29
|
## Install
|
|
24
30
|
|
|
25
31
|
macOS and Linux:
|
|
@@ -93,7 +99,7 @@ The server now exposes:
|
|
|
93
99
|
- JSON Schema 2020-12 tool inputs and outputs, `structuredContent`, namespaced result metadata, cache hints, and receipt `resource_link` blocks.
|
|
94
100
|
- Resources for agent status, capabilities, recent activity, and canonical `visa://receipt/{transactionId}` receipts.
|
|
95
101
|
- Prompts for pairing/funding, spend inspection, safe purchasing, and receipt reconciliation, with completion support.
|
|
96
|
-
- The `io.modelcontextprotocol/tasks` extension
|
|
102
|
+
- The `io.modelcontextprotocol/tasks` extension. Its presence does not make card payment available: a card checkout refuses before creating approval work.
|
|
97
103
|
- Multi-round-trip `input_required` URL elicitation with HMAC-protected, client-bound request state when the client supports URL elicitation but not Tasks.
|
|
98
104
|
- The `io.modelcontextprotocol/ui` Visa Control Center MCP App at `ui://visa/control-center`.
|
|
99
105
|
|
|
@@ -106,7 +112,7 @@ There is one protected enrollment, and two entrances onto it.
|
|
|
106
112
|
| Situation | Door | What it does |
|
|
107
113
|
|---|---|---|
|
|
108
114
|
| Any machine, any state | `visa connect [client]` | Mounts the MCP server, signs the owner in, enrolls this machine's agent, renews the device lease, installs the Claude Code HUD. Idempotent: a second run changes nothing and says so |
|
|
109
|
-
| An agent, from inside a chat | `agent_enroll` | The same workflow. Runs the sign-in leg when the session lapsed and the enrollment leg when no agent is held |
|
|
115
|
+
| An agent, from inside a chat | `agent_enroll` | The same workflow. Runs the sign-in leg when the session lapsed, the device leg when the agent's wallet key is missing or revoked, and the enrollment leg when no agent is held |
|
|
110
116
|
|
|
111
117
|
Order matters and is not negotiable: sign-in must precede enrollment, because
|
|
112
118
|
the enrollment record is stamped with the transport profile that is active when
|
|
@@ -211,7 +217,7 @@ a name that was ever real has to stay readable here.
|
|
|
211
217
|
| Tool | Description |
|
|
212
218
|
|------|-------------|
|
|
213
219
|
| `get_status` | Everything about this machine in one answer: the owner signed in, the agent this machine holds, its limits, its capabilities, and what is owed next |
|
|
214
|
-
| `agent_enroll` | The one door. Idempotent:
|
|
220
|
+
| `agent_enroll` | The one door. Idempotent, and runs whichever of three legs is owed: signs the owner in when the session lapsed, RECONNECTS this machine's wallet key when it is missing or revoked (that key is held in this machine's own custody, so nothing on a server can repair it), and enrolls when no agent is held. It checks the repair before enrolling, so an agent that already exists is never answered by minting a second one; pass `restart: true` to force a fresh enrollment |
|
|
215
221
|
| `discover` | Find something to pay for. Takes search text, or one listing to read its live challenge without paying |
|
|
216
222
|
| `pay` | Pay. The RAIL COMES FROM THE TARGET: search text searches, a listing id pays over the wallet, a payment-gated URL pays over whichever rail its challenge asks for |
|
|
217
223
|
| `history` | Receipts, across every rail, with reconciliation when a payment's outcome is unresolved |
|