@visa/cli 5.0.0-rc.412 → 5.0.0-rc.414
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 +39 -18
- package/dist/cli.js +77 -77
- package/dist/enrollment-finisher.js +3 -3
- package/dist/mcp-server/index.js +215 -215
- package/dist/tool-call.js +4 -4
- package/package.json +1 -1
- package/server.json +2 -2
package/README.md
CHANGED
|
@@ -37,9 +37,9 @@ up as an agent:
|
|
|
37
37
|
1. It makes an Ed25519 installation key in this machine's key store (macOS
|
|
38
38
|
Keychain, Windows DPAPI, Linux Secret Service, or a 0600 file on a headless
|
|
39
39
|
host with `VISA_RUNTIME_CUSTODY_PROFILE=headless`).
|
|
40
|
-
2. It starts a setup and opens the owner's approval page
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
2. It starts a setup and opens the owner's approval page. The owner signs in
|
|
41
|
+
to the Visa Console, sets the agent's limits and approves. The CLI never
|
|
42
|
+
sees an owner key.
|
|
43
43
|
3. It claims the approved setup with the installation key. A finite background
|
|
44
44
|
pickup continues after the terminal or MCP host exits, so approval does not
|
|
45
45
|
need a second `connect` call. `status` reports pickup progress and fresh
|
|
@@ -79,11 +79,11 @@ run `visa connect` again to recover the same setup.
|
|
|
79
79
|
unsettled purchase keeps a connected key, its pending replacement is still cancelled.
|
|
80
80
|
- **Update**: `visa update` (RC stays on `@visa/cli@rc`).
|
|
81
81
|
|
|
82
|
-
| Command | What it does
|
|
83
|
-
| -------------------------- |
|
|
84
|
-
| `visa connect [client]` | Mount the MCP server and set this computer up as an agent (resumes).
|
|
82
|
+
| Command | What it does |
|
|
83
|
+
| -------------------------- | ------------------------------------------------------------------------------------- |
|
|
84
|
+
| `visa connect [client]` | Mount the MCP server and set this computer up as an agent (resumes). |
|
|
85
85
|
| `visa disconnect [client]` | Remove Visa from a client (`--all`: mounts, status line and local agent credentials). |
|
|
86
|
-
| `visa update` | Update on the current release channel.
|
|
86
|
+
| `visa update` | Update on the current release channel. |
|
|
87
87
|
|
|
88
88
|
### Apps that cannot load MCP servers
|
|
89
89
|
|
|
@@ -92,7 +92,7 @@ for one) uses the same tools through `visa-tool`, which starts this package's
|
|
|
92
92
|
MCP server and makes one call:
|
|
93
93
|
|
|
94
94
|
```sh
|
|
95
|
-
VISA_RUNTIME_CUSTODY_PROFILE=headless visa connect --no-open --wait 0 # once; the owner approves
|
|
95
|
+
VISA_CLI_RUNTIME=muse VISA_RUNTIME_CUSTODY_PROFILE=headless visa connect --no-open --wait 0 # once; the owner approves
|
|
96
96
|
visa-tool --skill # the Visa skill: recovery after a rebuilt VM, and the rules below
|
|
97
97
|
visa-tool --list # the server's rules and the tools with their inputs (JSON)
|
|
98
98
|
visa-tool status # one call: the tool's answer as JSON, exit 1 on a refusal
|
|
@@ -100,7 +100,9 @@ visa-tool pay '{"target":"https://…","request_id":"order-1"}' # no max: a pr
|
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
On a computer with no keyring, every command needs
|
|
103
|
-
`VISA_RUNTIME_CUSTODY_PROFILE=headless`.
|
|
103
|
+
`VISA_RUNTIME_CUSTODY_PROFILE=headless`. `VISA_CLI_RUNTIME` names the app, so
|
|
104
|
+
the agent is called by its name (Muse) rather than the app `visa connect` falls
|
|
105
|
+
back to mounting. The skill reads `visa-tool --list` on
|
|
104
106
|
each use rather than copying it, and carries a version: when `--list` reports a
|
|
105
107
|
higher `skill_version`, the app asks its owner for the new text. Muse will not
|
|
106
108
|
save a program's output as a skill, so its owner pastes the same text from the
|
|
@@ -117,7 +119,7 @@ stable launcher) serves the laptop column of the one Visa tool catalogue:
|
|
|
117
119
|
| Tool | What it does |
|
|
118
120
|
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
119
121
|
| `status` | Who this agent is, what is ready, and who takes the next step. Call first. |
|
|
120
|
-
| `connect` | Connect this computer (or replace its key). Returns the owner link
|
|
122
|
+
| `connect` | Connect this computer (or replace its key). Returns the owner link; picks up approval automatically. |
|
|
121
123
|
| `discover` | Search paid services or probe one URL. Answers `unavailable` until the discovery source is live. |
|
|
122
124
|
| `pay` | Pay a URL that answers HTTP 402 with a Tempo charge (OUSD). Needs `max` and a new `request_id` per purchase. **Moves real money.** |
|
|
123
125
|
| `payment_status` | Read one purchase by its `request_id`, optionally waiting for it to change. |
|
|
@@ -157,8 +159,26 @@ with a charge-mismatch diagnostic before signing or sending the paid request.
|
|
|
157
159
|
|
|
158
160
|
## Status line
|
|
159
161
|
|
|
160
|
-
`connect` installs a Claude Code status line (`visa-cli config statusline`)
|
|
161
|
-
|
|
162
|
+
`connect` installs a Claude Code status line (`visa-cli config statusline`).
|
|
163
|
+
It draws from a cache a background read refreshes at most every 30 seconds:
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
◆ VISA │ claude 2 ● ready │ wallet $3.20 left of $50/day ▰▰▰▰▰▰ auto up to $5 │ last $0.25 fal.ai 4m │ staging
|
|
167
|
+
Visa-mono │ Opus 5.5 │ context 34% ▰▰▱▱▱▱ │ 5h limit 24%
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
- **The agent's state:** ready, `needs you:` with the owner's next step as a
|
|
171
|
+
link to the Console, payments waiting for approval, or what to run when the
|
|
172
|
+
agent is not connected, not found or the CLI is too old.
|
|
173
|
+
- **Each rail's room:** what is left against the limit, a meter coloured by
|
|
174
|
+
how close it is, and whether the agent pays automatically or asks each time.
|
|
175
|
+
- **Freshness:** facts older than ten minutes say `as of`, and a failed read
|
|
176
|
+
says `offline` with their age; a failed read never shows `ready` or `$0` as if live.
|
|
177
|
+
- **This Claude session** (second line): folder, model, context used and the
|
|
178
|
+
5-hour window.
|
|
179
|
+
|
|
180
|
+
It fits the terminal width by dropping whole facts, least important first,
|
|
181
|
+
and honours `NO_COLOR`.
|
|
162
182
|
|
|
163
183
|
## Environment
|
|
164
184
|
|
|
@@ -170,15 +190,16 @@ that shows the agent and today's spend from a 30-second cache.
|
|
|
170
190
|
| `VISA_SUPPRESS_BROWSER=1` | Print links instead of opening a browser. |
|
|
171
191
|
| `VISA_TEMPO_RPC_URL` | A Tempo RPC for building charges (https, or this machine). |
|
|
172
192
|
| `VISA_RC_CODE` | The access code a release-candidate build asks for. |
|
|
193
|
+
| `VISA_CLI_HUD_THEME` | `light` or `dark` status line colours, when the terminal does not say (`COLORFGBG`). |
|
|
173
194
|
|
|
174
195
|
## Data on this machine
|
|
175
196
|
|
|
176
|
-
| Path
|
|
177
|
-
|
|
178
|
-
| OS key store, or `~/.visa-cli/agent-keys/` (headless) | The installation key.
|
|
179
|
-
| `~/.visa-cli/agent.json`
|
|
180
|
-
| `~/.visa-cli/hud.json`
|
|
181
|
-
| `~/.visa-cli/purchases/`
|
|
197
|
+
| Path | Contents |
|
|
198
|
+
| ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
199
|
+
| OS key store, or `~/.visa-cli/agent-keys/` (headless) | The installation key. |
|
|
200
|
+
| `~/.visa-cli/agent.json` | This computer's agent (ids, name) and, while a setup is open, its one-time setup secret (0600). |
|
|
201
|
+
| `~/.visa-cli/hud-facts.json` | The status line's cache: the agent's last read state, never keys or tokens. |
|
|
202
|
+
| `~/.visa-cli/purchases/` | Server- and agent-scoped records needed to finish after interruption, and merchant answers up to 50 MiB (0600 in a 0700 directory). Canonical settlement or a final unpaid outcome removes the prepared charge and unsigned transaction. Purchase records and already-kept answers are not automatically deleted, including on `visa disconnect --all`. Credential/security lifetimes and terminal preparation cleanup remain separate. |
|
|
182
203
|
|
|
183
204
|
### Managed runtime convergence
|
|
184
205
|
|