@visa/cli 4.1.0-rc.193 → 4.1.0-rc.195

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.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: pair-visa-agent
3
- description: Pair a Visa CLI v4 agent identity to this runtime. Sign the owner in first (agent_login), then present one authorization link, the returned public confirmation code, and the full public request-key fingerprint to the human, then poll until the runtime's local Ed25519 identity is activated. Use when the user says "pair my agent", "enroll my Visa CLI", "connect my Visa agent", or "set up my agent identity".
3
+ description: Pair a Visa CLI v4 agent identity to this runtime. Present one authorization link, the returned public confirmation code, and the full public request-key fingerprint to the human (or claim a Console handoff code directly without local owner login), then poll until the runtime's local Ed25519 identity is activated. Use when the user says "pair my agent", "enroll my Visa CLI", "connect my Visa agent", or "set up my agent identity".
4
4
  compatibility: Needs the `visa` CLI (`npm i -g @visa/cli@rc`) — run `node scripts/setup.mjs` to install it if missing — plus network access to the Visa authorization service. Works in OpenClaw, Hermes, or any Agent Skills runtime.
5
5
  allowed-tools: Bash(visa:*) Bash(visa-cli:*) Bash(node:*) Bash(npm:*) Bash(npx:*)
6
6
  metadata:
@@ -101,7 +101,7 @@ OpenClaw users also receive the skill with the `@visa/visa-cli-openclaw` plugin.
101
101
  in `~/.hermes/config.yaml`.
102
102
  - **No MCP integration:** use the raw `visa agent …` commands.
103
103
  3. **Sign the owner in.** Pairing starts are owner-bound — see "Sign in first" below. On a
104
- fresh runtime this step is required before any pairing command will succeed.
104
+ fresh runtime using direct pairing, this step is required before any pairing command will succeed. When claiming a Console handoff code, skip sign-in and claim the handoff directly.
105
105
  4. **Pair.** Follow the core flow below.
106
106
 
107
107
  ## MCP mounting examples
@@ -179,7 +179,8 @@ simply omits it, which is not an error. The activation result includes protocol
179
179
  Pairing starts are authenticated as the owner: the service pins the owner account at
180
180
  initiation, and the browser review page rejects any other signed-in account
181
181
  (`owner_profile_mismatch`). So on a fresh runtime the ceremony has a mandatory first leg —
182
- establish the owner session **before** any pairing command:
182
+ establish the owner session **before** any runtime-initiated pairing command (Console handoff codes
183
+ are owner-pinned by the code itself and do NOT require an active owner session):
183
184
 
184
185
  - [ ] Call `agent_login` (MCP, default action `"start"`) or run
185
186
  `visa agent login --format json` (CLI). The result carries a sign-in `browserUrl`
@@ -285,18 +286,19 @@ approve — you poll to completion yourself:
285
286
  later returns `{"code":"session_required"}`, the session lapsed — run `agent_login`
286
287
  again.
287
288
  - [ ] **Initiate the grant from MCP — no shelling, no invented URLs.** Call `agent_connect`
288
- with the rail and caps: `{"rail":"card","ceiling":"<usd>","perTransaction":"<usd>"}`
289
- (or `"rail":"wallet"`); omit `agentId` to target the most recently paired agent. It
290
- returns `{ url, code, attachId, willGrant, expiresAt }`. Present the **bare `url` and
291
- `code` exactly as returned** never construct, shorten, or guess a Visa URL, and never
292
- open it yourself. The crypto approval happens in the owner's browser and cannot run
289
+ with the rail, caps, and exact `agentId` returned by pairing:
290
+ `{"agentId":"<agentId>","rail":"card","ceiling":"<usd>","perTransaction":"<usd>"}`
291
+ (or `"rail":"wallet"`; `agentId` is optional only when exactly one eligible paired agent
292
+ exists on this runtime). It returns `{ url, code, attachId, willGrant, expiresAt }`. Present the
293
+ **bare `url` and `code` exactly as returned** never construct, shorten, or guess a Visa URL, and
294
+ never open it yourself. The crypto approval happens in the owner's browser and cannot run
293
295
  inline in chat. (`setup_agent {"rail":"card"|"wallet"}` returns the same next-step map
294
296
  if you need it.)
295
297
  - [ ] **Owner approves once** on the **v4 agent dashboard** (`app.visacli.sh/agent/enroll`),
296
298
  confirming the caps — **card with a passkey, wallet with their sign-in session**. You
297
299
  cannot approve on their behalf.
298
300
  - [ ] **Poll to activation from MCP.** Call `agent_connect_poll` (`{"attachId":"<from
299
- agent_connect>"}`; or resume by `agentId`) — one bounded poll per call. It returns
301
+ agent_connect>"}`; or resume by `agentId`) — one bounded poll per call. It returns
300
302
  `{"ok":false,"state":"...","blockedByKind":"awaiting_human_approval"}` while pending;
301
303
  call again until `{"ok":true,"state":"grant_activated","caps":...}` (wallet also
302
304
  returns `fundAddress`). Activation registers the delegated signer + caps: wallet writes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visa/cli",
3
- "version": "4.1.0-rc.193",
3
+ "version": "4.1.0-rc.195",
4
4
  "description": "Visa CLI runtime for stable agent identity and separately authorized payment capabilities",
5
5
  "bin": {
6
6
  "visa-cli": "./bin/visa-cli.js",
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.193",
4
+ "version": "4.1.0-rc.195",
5
5
  "title": "Visa CLI",
6
6
  "description": "Pair a human-approved agent identity, configure payment capabilities separately, and discover and pay x402 services 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.193",
12
+ "version": "4.1.0-rc.195",
13
13
  "transport": {
14
14
  "type": "stdio"
15
15
  },