@visa/cli 4.1.0-rc.225 → 4.1.0-rc.227

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,8 +1,9 @@
1
- # Running Visa pairing in OpenClaw and Hermes
1
+ # Running Visa agent setup in OpenClaw and Hermes
2
2
 
3
- `@visa/visa-cli-openclaw` is packaged for OpenClaw, but the pairing v2 skill is
4
- runtime-agnostic. OpenClaw, Hermes, and any runtime that can execute the `visa` CLI or
5
- mount its MCP server all use the same identity-only enrollment ceremony.
3
+ `@visa/visa-cli-openclaw` is packaged for OpenClaw, but the skill is runtime-agnostic.
4
+ OpenClaw, Hermes, and any runtime that can execute the `visa` CLI or mount its MCP server
5
+ all drive the same setup operation: identity plus every requested rail, behind one owner
6
+ approval.
6
7
 
7
8
  ## Plugins are runtime-specific
8
9
 
@@ -18,25 +19,30 @@ mount its MCP server all use the same identity-only enrollment ceremony.
18
19
  The OpenClaw JavaScript tools do not load as a Hermes plugin. Portability comes from the
19
20
  Markdown skill, CLI, and MCP protocol instead.
20
21
 
21
- ## One ceremony, three surfaces
22
+ ## One ceremony, two surfaces
22
23
 
23
- All supported surfaces share the same local pending record and pairing v2 protocol:
24
+ Both supported surfaces share the same local pending record and the same server-owned
25
+ setup operation:
24
26
 
25
- 1. OpenClaw: `pair_agent_start` / `pair_agent_poll`.
26
- 2. Visa MCP server: `enroll_agent` with `action: "start"` / `action: "claim"`.
27
- 3. Raw CLI: `visa agent enroll --format json` /
28
- `visa agent enroll-claim --format json`.
27
+ 1. Visa MCP server: `setup_start`, then `setup_status` until it reports done
28
+ (`setup_resume` / `setup_cancel` for the interrupted and abandoned cases).
29
+ 2. Raw CLI: `visa setup start "<name>" --rails card,wallet --format json`, then
30
+ `visa setup status --format json`.
29
31
 
30
- The start operation returns an authorization URL for the human. The browser receives only
31
- that URL. The runtime retains its private Ed25519 key and local claim material. Polling
32
- resumes the same pending identity and safely replays the same signed request after an
33
- interruption.
32
+ The start operation returns a review URL for the human. The browser receives only that
33
+ URL. The runtime retains its private Ed25519 key and local claim material. Polling both
34
+ resumes the same pending identity after an interruption and performs the runtime's own
35
+ steps — a setup nothing polls is a setup that never finishes.
34
36
 
35
- On activation, use `agentId` as the stable identity. `identityKeyJkt` identifies the
36
- currently bound Ed25519 public key and can change after key rotation. Activation means the
37
- identity is paired only; payment methods, email, and tap bindings are separate future or
37
+ Use `agentId` as the stable identity. `identityKeyJkt` identifies the currently bound
38
+ Ed25519 public key and can change after key rotation. Only the rails named in the
39
+ operation are configured; email, `.visa` names, and tap bindings remain separate
38
40
  follow-up configuration.
39
41
 
42
+ The older `pair_agent_start` / `pair_agent_poll` and `enroll_agent` surfaces still exist
43
+ for published clients, but they pair identity ALONE and cost the owner one further
44
+ approval per rail. Do not use them to connect a new agent.
45
+
40
46
  ## Install and mount
41
47
 
42
48
  Install the prerelease CLI, which provides both command names and the MCP server:
@@ -75,19 +81,18 @@ mcp_servers:
75
81
 
76
82
  ## Runtime setup map
77
83
 
78
- | Runtime | Setup and pairing surface |
79
- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
80
- | OpenClaw | Install `@visa/visa-cli-openclaw` for the `pair_agent_*` tools and bundled skill. The plugin auto-mounts the Visa MCP server. The MCP or raw CLI surfaces remain valid alternatives. |
81
- | Hermes | Run `visa-cli connect hermes`, install `pair-visa-agent/SKILL.md` under `~/.hermes/skills/`, and use `enroll_agent`. `hermes claw migrate` can import an existing OpenClaw setup. |
82
- | Codex | Run `visa agent skill --runtime codex`. It plants the skill under `~/.codex/skills/` and mounts the Visa MCP server into `~/.codex/config.toml` in the same step. |
83
- | Other runtime | Put `visa` on `PATH`, mount the same MCP server if supported, or use the raw `visa agent enroll` and `visa agent enroll-claim` commands as the universal fallback. |
84
+ | Runtime | Setup surface |
85
+ | ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
86
+ | OpenClaw | Install `@visa/visa-cli-openclaw` for the bundled skill. The plugin auto-mounts the Visa MCP server, which serves `setup_start` / `setup_status`. |
87
+ | Hermes | Run `visa-cli connect hermes`, install the skill with `visa agent skill --runtime hermes` (it resolves the per-profile dir), and use `setup_start`. `hermes claw migrate` can import an existing OpenClaw setup. |
88
+ | Codex | Run `visa agent skill --runtime codex`. It plants the skill under `~/.codex/skills/` and mounts the Visa MCP server into `~/.codex/config.toml` in the same step. |
89
+ | Other runtime | Put `visa` on `PATH`, mount the same MCP server if supported, or use the raw `visa setup start` and `visa setup status` commands as the universal fallback. |
84
90
 
85
91
  The skill itself can be installed with `visa agent skill`. Pass `--runtime <name>` or
86
92
  `--dir <path>` when auto-detection is not appropriate, then reload the runtime.
87
93
 
88
94
  ## Optional Hermes wrapper
89
95
 
90
- A Hermes Python plugin may expose the same `pair_agent_start` and `pair_agent_poll` names
91
- by calling the canonical raw CLI commands and registering tools with
96
+ A Hermes Python plugin may wrap the canonical raw CLI commands and register tools with
92
97
  `ctx.register_tool(...)`. It is optional: the MCP server and skill already expose the
93
- same protocol and persisted pairing state without a second implementation.
98
+ same operation and persisted local state without a second implementation.