@visa/cli 4.1.0-rc.74 → 4.1.0-rc.76
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/dist/cli.js +280 -280
- package/dist/mcp-server/index.js +212 -212
- package/dist/skills/pair-visa-agent/SKILL.md +31 -3
- package/native/bin/win32-x64/visa-keychain-win.exe +0 -0
- package/package.json +1 -1
- package/server.json +2 -2
|
@@ -153,7 +153,8 @@ after the pending identity and private key are durable. Present the link and fin
|
|
|
153
153
|
for exact browser comparison. When `claiming` is `background`, activation completes after
|
|
154
154
|
approval without another command; if it is `manual`, run the returned `recoveryCommand`
|
|
155
155
|
after approval. Use the step-by-step flow below when `pair` is unavailable or when driving
|
|
156
|
-
the plugin/MCP tools
|
|
156
|
+
the plugin/MCP tools — `enroll_agent` action `start` reports the same `claiming` /
|
|
157
|
+
`recoveryCommand` fields and starts the same detached poller.
|
|
157
158
|
|
|
158
159
|
## Returning & already-connected — do NOT re-pair
|
|
159
160
|
|
|
@@ -269,6 +270,22 @@ dangerous). All spending is gated by the owner-approved local policy caps.
|
|
|
269
270
|
`visa agent enroll-claim --format json`.
|
|
270
271
|
- [ ] Report the stable `agentId` and that the identity is paired on this runtime.
|
|
271
272
|
|
|
273
|
+
### Completion is `activated` — nothing else
|
|
274
|
+
|
|
275
|
+
Only a poll result of `activated` means this runtime is paired. Until you have one, do not
|
|
276
|
+
tell the human the agent is connected, paired, enrolled, set up, ready, or good to go, and
|
|
277
|
+
do not move on to spending, mail, or mesh steps that assume an identity.
|
|
278
|
+
|
|
279
|
+
`start` returning successfully is not completion. It returns a stable `agentId` and a
|
|
280
|
+
`requestKeyFingerprint` **before any human has approved anything** — those are review
|
|
281
|
+
values for the browser comparison, not evidence of pairing. Reporting an `agentId` as
|
|
282
|
+
though it were a finished pairing is the most likely way to mislead the human here, because
|
|
283
|
+
the number looks like a result.
|
|
284
|
+
|
|
285
|
+
If you cannot reach `activated`, say plainly what state you did reach and what the human
|
|
286
|
+
should do next. An honest "approved but not yet activated — I'm still polling" is correct;
|
|
287
|
+
"you're all set" without an `activated` result is not.
|
|
288
|
+
|
|
272
289
|
### 1. Start
|
|
273
290
|
|
|
274
291
|
Start once. If there is already a pending pairing, poll it before creating another.
|
|
@@ -290,12 +307,23 @@ Use this concise shape:
|
|
|
290
307
|
> Public request-key fingerprint — compare every character in the browser:
|
|
291
308
|
> <requestKeyFingerprint, complete and untruncated>
|
|
292
309
|
>
|
|
293
|
-
> Approve only if the fingerprint matches
|
|
294
|
-
>
|
|
310
|
+
> Approve only if the fingerprint matches. The link expires shortly — I'll keep watching
|
|
311
|
+
> and confirm here the moment it activates.
|
|
295
312
|
|
|
296
313
|
Do not ask the human for a code, secret, private key, token, or signed message. The URL,
|
|
297
314
|
stable agent ID, and public fingerprint are review values, not claim credentials.
|
|
298
315
|
|
|
316
|
+
**Do not end your turn here waiting to be told the human is done.** Presenting the link is
|
|
317
|
+
not the end of the ceremony; go straight to the poll in §2 and drive it to a terminal
|
|
318
|
+
state. Asking the human to report back is what strands a pairing: they approve in the
|
|
319
|
+
browser, the server records it, and nothing ever writes the local record — so the ceremony
|
|
320
|
+
expires while both sides believe the other is acting.
|
|
321
|
+
|
|
322
|
+
When the start result reports `claiming: "background"`, a detached poller is already
|
|
323
|
+
finishing activation and it will complete even if this turn ends; poll anyway so you can
|
|
324
|
+
confirm the outcome. When it reports `claiming: "manual"`, that poller could NOT start and
|
|
325
|
+
polling in this turn is the ONLY thing that will complete the pairing.
|
|
326
|
+
|
|
299
327
|
### 2. Poll
|
|
300
328
|
|
|
301
329
|
Poll the same pending pairing. Interpret results as follows:
|
|
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.76",
|
|
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.
|
|
12
|
+
"version": "4.1.0-rc.76",
|
|
13
13
|
"transport": {
|
|
14
14
|
"type": "stdio"
|
|
15
15
|
},
|