Skip to content

Commit 7525139

Browse files
committed
Replace hcloud examples with Supabase password
1 parent b571473 commit 7525139

17 files changed

Lines changed: 318 additions & 318 deletions

File tree

Docs/ACCEPTANCE_CRITERIA.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,7 @@ Required evidence:
437437

438438
Failure examples:
439439

440-
- `/tmp/hcloud` can choose its own target path.
440+
- `/tmp/supabase` can choose its own target path.
441441
- Changing the target binary after approval is not detected.
442442
- Editing `cli-registry.json` to point at another target still allows secret resolution.
443443
- `trust-refresh` can silently rebind a CLI target without local authorization.
@@ -491,8 +491,8 @@ Required evidence:
491491

492492
Failure examples:
493493

494-
- Installing a shim overwrites `/opt/homebrew/bin/hcloud`.
495-
- `hcloud version` passes through without resolving or receiving `HCLOUD_TOKEN`.
494+
- Installing a shim overwrites `/opt/homebrew/bin/supabase`.
495+
- `supabase version` passes through without resolving or receiving `SUPABASE_DB_PASSWORD`.
496496
- A generated shell wrapper contains product logic or a secret value.
497497

498498
### AC-SHIM-004: Exec Plan Is Single-Use and Bound

Docs/INSTALLATION.md

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -160,140 +160,140 @@ LocalAuthentication is the macOS security mechanism. The visible prompt may offe
160160

161161
The script name is kept for compatibility with older acceptance scripts, but the default self-build runtime path uses an owner-only encrypted local file store gated by LocalAuthentication. It does not require shared Keychain access groups.
162162

163-
## Register hcloud Without cli.toml
163+
## Register supabase Database Password
164164

165-
Do not use `hcloud context create` for the Agentic Secrets flow. That official hcloud mode stores the token in `~/.config/hcloud/cli.toml`.
165+
Do not put the Supabase database password in `.env`, shell startup files, or tool-specific plaintext config for the Agentic Secrets flow.
166166

167-
Instead, register `hcloud` through Agentic Secrets and enter the token at the hidden prompt:
167+
Instead, register `supabase` through Agentic Secrets and enter the database password at the hidden prompt:
168168

169169
```sh
170170
PREFIX="$HOME/Library/Application Support/AgenticSecrets/LocalInstall"
171-
"$PREFIX/bin/agentic-secrets" cli register hcloud \
172-
--env HCLOUD_TOKEN \
171+
"$PREFIX/bin/agentic-secrets" cli register supabase \
172+
--env SUPABASE_DB_PASSWORD \
173173
--secret-prompt
174174
```
175175

176-
The token is read by the broker-owned registration command and stored in the local encrypted secret store. Do not pass token values as command-line arguments.
176+
The password is read by the broker-owned registration command and stored in the local encrypted secret store. Do not pass password values as command-line arguments.
177177

178178
For clipboard or automation use, pipe the value explicitly:
179179

180180
```sh
181-
pbpaste | "$PREFIX/bin/agentic-secrets" cli register hcloud \
182-
--env HCLOUD_TOKEN \
181+
pbpaste | "$PREFIX/bin/agentic-secrets" cli register supabase \
182+
--env SUPABASE_DB_PASSWORD \
183183
--secret-stdin
184184
```
185185

186-
Run `hcloud` through Agentic Secrets with arguments after `--`:
186+
Run `supabase` through Agentic Secrets with arguments after `--`:
187187

188188
```sh
189-
"$PREFIX/bin/agentic-secrets" cli run hcloud -- server list
189+
"$PREFIX/bin/agentic-secrets" cli run supabase -- db pull
190190
```
191191

192-
Agentic Secrets prints its own diagnostics to stderr, requests local authentication before reading the secret, scrubs inherited secret-like environment variables, injects `HCLOUD_TOKEN` only into the child process, and leaves the target CLI stdout/stderr intact. Use `--quiet` before `--` when wrapping scripts:
192+
Agentic Secrets prints its own diagnostics to stderr, requests local authentication before reading the secret, scrubs inherited secret-like environment variables, injects `SUPABASE_DB_PASSWORD` only into the child process, and leaves the target CLI stdout/stderr intact. Use `--quiet` before `--` when wrapping scripts:
193193

194194
```sh
195-
"$PREFIX/bin/agentic-secrets" cli run hcloud --quiet -- server list
195+
"$PREFIX/bin/agentic-secrets" cli run supabase --quiet -- db pull
196196
```
197197

198198
After a successful prompt, Agentic Secrets writes a local authorization grant so repeated matching runs do not prompt every time. The default CLI authorization mode is `always`, which does not expire. `remember-24h`, `short`, and `once` are available per run. Grants store no secret value. Persistent grants are HMAC-signed with a device-local macOS Keychain key and bound to CLI name, target identity, workspace hash, config context, untrusted origin hint, provenance confidence, delivery mode, and secret alias. Short grants additionally bind action class, command digest, and risk. Each command is still policy-checked before secret delivery, and destructive commands require fresh approval.
199199

200200
Choose authorization mode for one run:
201201

202202
```sh
203-
"$PREFIX/bin/agentic-secrets" cli run hcloud --authorization-mode remember-24h -- server list
204-
"$PREFIX/bin/agentic-secrets" cli run hcloud --authorization-mode short --delivery-grant-ttl-seconds 60 -- server list
205-
"$PREFIX/bin/agentic-secrets" cli run hcloud --authorization-mode once -- server list
203+
"$PREFIX/bin/agentic-secrets" cli run supabase --authorization-mode remember-24h -- db pull
204+
"$PREFIX/bin/agentic-secrets" cli run supabase --authorization-mode short --delivery-grant-ttl-seconds 60 -- db pull
205+
"$PREFIX/bin/agentic-secrets" cli run supabase --authorization-mode once -- db pull
206206
```
207207

208208
Legacy TTL override still selects short authorization mode:
209209

210210
```sh
211-
"$PREFIX/bin/agentic-secrets" cli run hcloud --delivery-grant-ttl-seconds 0 -- server list
211+
"$PREFIX/bin/agentic-secrets" cli run supabase --delivery-grant-ttl-seconds 0 -- db pull
212212
```
213213

214214
Changing target identity, workspace, config context, origin hint, provenance confidence, delivery mode, or secret alias produces a different persistent authorization scope and requires a fresh local authentication prompt. For short grants, changing action class, command shape, or risk also requires a fresh prompt.
215215

216-
### Optional hcloud Shim
216+
### Optional supabase Shim
217217

218-
If you want the normal `hcloud ...` command to route through Agentic Secrets, install an opt-in shim after registration:
218+
If you want the normal `supabase ...` command to route through Agentic Secrets, install an opt-in shim after registration:
219219

220220
```sh
221-
agentic-secrets cli shim install hcloud --configure-shell
221+
agentic-secrets cli shim install supabase --configure-shell
222222
```
223223

224-
Open a new terminal or restart the tool runner so the shell picks up the shim PATH block, then verify command resolution. If Codex, Claude Code, or another agent app was already running during registration, restart that agent app before using `hcloud` from it.
224+
Open a new terminal or restart the tool runner so the shell picks up the shim PATH block, then verify command resolution. If Codex, Claude Code, or another agent app was already running during registration, restart that agent app before using `supabase` from it.
225225

226226
```sh
227-
command -v hcloud
228-
hcloud version
227+
command -v supabase
228+
supabase version
229229
```
230230

231-
Expected: `command -v hcloud` points under `~/Library/Application Support/AgenticSecrets/LocalInstall/shims/hcloud`.
231+
Expected: `command -v supabase` points under `~/Library/Application Support/AgenticSecrets/LocalInstall/shims/supabase`.
232232

233-
The shim does not replace or modify the Homebrew binary. It is a symlink to the installed `agentic-secrets-shim` binary. The registered target remains the stable native CLI path, such as `/opt/homebrew/bin/hcloud`.
233+
The shim does not replace or modify the Homebrew binary. It is a symlink to the installed `agentic-secrets-shim` binary. The registered target remains the stable native CLI path, such as `/opt/homebrew/bin/supabase`.
234234

235235
Normal commands are routed through the same broker-owned secret delivery path:
236236

237237
```sh
238-
hcloud server list
238+
supabase db pull
239239
```
240240

241241
Global help/version commands pass through to the registered target without resolving or injecting secrets:
242242

243243
```sh
244-
hcloud --help
245-
hcloud server --help
246-
hcloud version
244+
supabase --help
245+
supabase db --help
246+
supabase version
247247
```
248248

249249
The pass-through environment is scrubbed of inherited secret-like variables. This keeps basic inspection commands usable while avoiding token delivery for help/version output.
250250

251251
Pass-through help/version reads only non-secret registry metadata and intentionally avoids the registry Keychain integrity key so it does not prompt for local authentication just to show help or version output. Commands that can receive secrets still verify registry integrity in core before any secret-store read.
252252

253-
### Codex App hcloud Use
253+
### Codex App supabase Use
254254

255255
Codex App may not inherit the same shell startup environment as Terminal. Avoid
256-
putting provider tokens such as `HCLOUD_TOKEN` into `~/.codex/.env`; that would
257-
move secret delivery back into Codex process environment. Instead, keep the token
256+
putting provider secrets such as `SUPABASE_DB_PASSWORD` into `~/.codex/.env`; that would
257+
move secret delivery back into Codex process environment. Instead, keep the password
258258
registered in AgenticSecrets and install the per-CLI shim:
259259

260260
```sh
261-
"$PREFIX/bin/agentic-secrets" cli shim install hcloud --force
261+
"$PREFIX/bin/agentic-secrets" cli shim install supabase --force
262262
```
263263

264264
Then verify from inside Codex App or a Codex-spawned command:
265265

266266
```sh
267-
command -v hcloud
268-
hcloud server list
267+
command -v supabase
268+
supabase db pull
269269
```
270270

271-
Expected: `command -v hcloud` resolves to
272-
`~/Library/Application Support/AgenticSecrets/LocalInstall/shims/hcloud`, and
271+
Expected: `command -v supabase` resolves to
272+
`~/Library/Application Support/AgenticSecrets/LocalInstall/shims/supabase`, and
273273
normal commands route through Agentic Secrets secret delivery.
274274

275275
Remove only the shim:
276276

277277
```sh
278-
agentic-secrets cli shim uninstall hcloud
278+
agentic-secrets cli shim uninstall supabase
279279
```
280280

281-
Registration metadata and secret records remain intact until you run `agentic-secrets cli unregister hcloud --delete-secrets`.
281+
Registration metadata and secret records remain intact until you run `agentic-secrets cli unregister supabase --delete-secrets`.
282282

283-
The default explicit flow does not require a separate `hcloud` shim symlink. The registration stores metadata in Agentic Secrets state and keeps the stable invocation path discovered from `PATH`, such as `/opt/homebrew/bin/hcloud`, plus the target binary identity captured at registration time. The registry JSON is paired with `cli-registry.integrity.json`, an HMAC-SHA256 integrity sidecar whose key is stored in the user's macOS Keychain with `WhenUnlockedThisDeviceOnly` accessibility. Hand-editing either file fails closed before Agentic Secrets asks for local authentication or resolves any secret.
283+
The default explicit flow does not require a separate `supabase` shim symlink. The registration stores metadata in Agentic Secrets state and keeps the stable invocation path discovered from `PATH`, such as `/opt/homebrew/bin/supabase`, plus the target binary identity captured at registration time. The registry JSON is paired with `cli-registry.integrity.json`, an HMAC-SHA256 integrity sidecar whose key is stored in the user's macOS Keychain with `WhenUnlockedThisDeviceOnly` accessibility. Hand-editing either file fails closed before Agentic Secrets asks for local authentication or resolves any secret.
284284

285-
Each run validates the current target against the captured macOS designated requirement when available and otherwise falls back to SHA-256 identity pinning. Homebrew upgrades therefore fail closed until you verify the new binary and refresh target trust through Agentic Secrets; this does not require entering the token again, but it does require local authentication because it changes trusted CLI identity metadata:
285+
Each run validates the current target against the captured macOS designated requirement when available and otherwise falls back to SHA-256 identity pinning. Homebrew upgrades therefore fail closed until you verify the new binary and refresh target trust through Agentic Secrets; this does not require entering the password again, but it does require local authentication because it changes trusted CLI identity metadata:
286286

287287
```sh
288-
"$PREFIX/bin/agentic-secrets" cli trust-refresh hcloud
288+
"$PREFIX/bin/agentic-secrets" cli trust-refresh supabase
289289
```
290290

291291
If the LocalAuthentication prompt is canceled or the target changes between the prompt and the registry write, the trust refresh fails closed and the existing registration remains unchanged. A manually registered versioned Cellar path is also pinned and must be trust-refreshed or registered again after that version is removed.
292292

293293
To remove the registration and its local secret record:
294294

295295
```sh
296-
"$PREFIX/bin/agentic-secrets" cli unregister hcloud --delete-secrets
296+
"$PREFIX/bin/agentic-secrets" cli unregister supabase --delete-secrets
297297
```
298298

299299
## Update

0 commit comments

Comments
 (0)