@visa/cli 4.1.0-rc.24 → 4.1.0-rc.25
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.
|
@@ -6,7 +6,7 @@ allowed-tools: Bash(visa:*) Bash(visa-cli:*) Bash(node:*) Bash(npm:*) Bash(npx:*
|
|
|
6
6
|
metadata:
|
|
7
7
|
author: visa
|
|
8
8
|
homepage: https://visacli.sh/agents
|
|
9
|
-
version: '0.6.
|
|
9
|
+
version: '0.6.1'
|
|
10
10
|
# OpenClaw-namespaced extension (agentskills.io keeps `metadata` free-form, so
|
|
11
11
|
# non-standard runtime config lives here — `user-invocable` is not a standard
|
|
12
12
|
# top-level field). OpenClaw auto-installs `install[]` when `requires.bins` are
|
|
@@ -266,16 +266,35 @@ Pairing is the on-ramp. v4 is **non-custodial** — a Turnkey-delegated wallet b
|
|
|
266
266
|
on-device keys and policies, **not** a stored credit line or a server-custodied card.
|
|
267
267
|
Describe it that way to the user. The mounted MCP server exposes:
|
|
268
268
|
|
|
269
|
-
- **x402 wallet spend (the core rail)
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
269
|
+
- **x402 wallet spend (the core rail) — ALWAYS drive it through these MCP tools; never
|
|
270
|
+
substitute another client.** The buy sequence:
|
|
271
|
+
1. **`wallet_discover`** — find payable x402 services by outcome (free, directory-backed).
|
|
272
|
+
If it returns empty or `Not logged in`, do NOT switch discovery tools — proceed to step 2
|
|
273
|
+
with any x402 URL the user names (the wallet pays any endpoint, no directory needed).
|
|
274
|
+
2. **`wallet_probe`** — preview a fresh x402 challenge for a discovered listing **or any
|
|
275
|
+
x402 URL** (free, no spend, needs no session). Confirm network (`eip155:8453` / Base),
|
|
276
|
+
asset (Base USDC), and that the price is at or below the user's ceiling.
|
|
277
|
+
3. **`wallet_pay`** (arbitrary URL) or **`wallet_directory_pay`** (a directory listing) —
|
|
278
|
+
a bounded payment settled directly from the delegated wallet over x402, enforcing the
|
|
279
|
+
on-device policy and journaling a receipt. Always pass a hard `max` ceiling.
|
|
280
|
+
|
|
281
|
+
Bounded by the on-device wallet policy; never touches credits, cards, or server-side spend
|
|
282
|
+
controls. These `wallet_*` tools are **default-on in the supported build**. CLI equivalents
|
|
283
|
+
(`visa find` / `inspect` / `pay`) exist, but prefer the MCP tools — and note `visa find` is
|
|
284
|
+
session-gated (it can report `Not logged in`), whereas `wallet_probe` / `wallet_pay` work on
|
|
285
|
+
any x402 URL directly, so use those when discovery is unavailable.
|
|
286
|
+
|
|
287
|
+
**NEVER — to find or pay an x402 service — fall back to any of:** `npx awal` or any
|
|
288
|
+
"bazaar"/third-party discovery client; `curl` or hand-built EIP-3009 signatures / another
|
|
289
|
+
payment client; reading a merchant's OpenAPI / `/docs` to guess an endpoint and pay it
|
|
290
|
+
blind; or the Visa **catalog** (`discover_tools` / `execute_tool` — a SEPARATE curated-tool
|
|
291
|
+
rail, NOT x402). If the wallet tools cannot find or pay something, report that to the user
|
|
292
|
+
with what you tried and stop — do not improvise another payment path. `wallet_probe` +
|
|
293
|
+
`wallet_pay` already settle ANY x402 endpoint the user gives you.
|
|
294
|
+
- **Visa catalog (curated tools) — NOT an x402 fallback.** `discover_tools` → `execute_tool`
|
|
295
|
+
(or `visa tools` / `visa run`): enumerate the curated first-party catalog and run a tool;
|
|
296
|
+
paid ones show a preview and settle inline. This is a DISTINCT rail from the open x402
|
|
297
|
+
wallet above — never reach for it to satisfy an x402 request.
|
|
279
298
|
- **Subway mesh** — `subway_*` route calls across the agent mesh. **Gated:** present but only
|
|
280
299
|
reach the mesh once the `.visa` relay is wired (`SUBWAY_MESH` / `SUBWAY_RELAY_MULTIADDR`);
|
|
281
300
|
until then they no-op against an unreachable relay.
|
|
@@ -284,8 +303,20 @@ Describe it that way to the user. The mounted MCP server exposes:
|
|
|
284
303
|
network-token cryptogram minted **on this device** (non-custodial) — not a stored card,
|
|
285
304
|
not x402, not server-side spend controls. Two steps: `review` (free; returns merchant +
|
|
286
305
|
exact amount as a `reviewId`) then `pay` (requires `confirm: "PAY <reviewId>"` + a passkey,
|
|
287
|
-
and CHARGES).
|
|
288
|
-
|
|
306
|
+
and CHARGES). Prerequisites — the tool errors clearly if any is missing:
|
|
307
|
+
1. **`checkout_agent_access`** flag on your account (email-keyed; an admin grants it via
|
|
308
|
+
`PUT /v1/admin/users/<your-enroll-email>/feature-flags/checkout_agent_access` or the
|
|
309
|
+
admin panel). Distinct from the RC/GitHub allowlist.
|
|
310
|
+
2. **`CHECKOUT_AGENT_ALLOW_SUBMIT=1`** in the MCP server's env. This is the submit opt-in:
|
|
311
|
+
WITHOUT it the agent fills the checkout form but **refuses to press the pay button** (the
|
|
312
|
+
default safe posture — `submit:false`), so a checkout silently never completes. Set it on
|
|
313
|
+
the `visa-cli` MCP server entry (e.g. OpenClaw `mcp.servers["visa-cli"].env`, Hermes
|
|
314
|
+
`mcp_servers.visa-cli.env`, or `claude mcp add … -e CHECKOUT_AGENT_ALLOW_SUBMIT=1`). The
|
|
315
|
+
`visa-cli checkout … --submit` CLI flag sets the same opt-in.
|
|
316
|
+
3. An enrolled agent credential (`enroll_agent`) and a `~/.visa-mcp/contact.json` (the
|
|
317
|
+
contact details the agent fills into checkouts, created during setup).
|
|
318
|
+
|
|
319
|
+
**RC/preview builds only**, opt-in, never paired-and-go.
|
|
289
320
|
|
|
290
321
|
If a tool you expect isn't visible, the MCP server isn't mounted (or the v4 wallet runtime
|
|
291
322
|
isn't bundled in this build) — go back to "Getting set up".
|
|
Binary file
|
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json",
|
|
3
3
|
"name": "io.github.visa-crypto-labs/visa-cli",
|
|
4
|
-
"version": "4.1.0-rc.
|
|
4
|
+
"version": "4.1.0-rc.25",
|
|
5
5
|
"title": "Visa CLI",
|
|
6
6
|
"description": "AI-powered payments and creative tools for coding agents. Generate images, music, video, query crypto prices, and make purchases — all from your AI coding assistant.",
|
|
7
7
|
"websiteUrl": "https://github.com/Visa-Crypto-Labs/Visa-mono/tree/main/packages/cli#readme",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
{
|
|
10
10
|
"registryType": "npm",
|
|
11
11
|
"identifier": "@visa/cli",
|
|
12
|
-
"version": "4.1.0-rc.
|
|
12
|
+
"version": "4.1.0-rc.25",
|
|
13
13
|
"transport": {
|
|
14
14
|
"type": "stdio"
|
|
15
15
|
},
|