Use secrets without seeing them (exec / http)
secret_useRuns commands or HTTPS requests with secrets resolved only at use; each new action needs approval, and outputs are redacted.
Instructions
Runs an action with secrets resolved inside this server at the moment of use. exec: argv without shell (secrets via env or stdin), or a shell script where ${secret:name} becomes an env var. http: request to an allowlisted https host with ${secret:name} in url/headers/body. Every NEW action (exact fingerprint) needs the person's approval on a local page that shows the literal action; they may choose to remember it. Output is redacted (raw, base64, hex, url-encoded, quoted variants) and size-limited.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | ||
| env | No | exec: env vars for the child; values may contain ${secret:name} | |
| url | No | http: https URL on an allowlisted host | |
| body | No | http: body; may contain ${secret:name} | |
| names | No | secrets used (optional; derived from ${secret:...} references) | |
| shell | No | exec: POSIX sh script; ${secret:name} becomes an env var reference inside the child | |
| stdin | No | exec: stdin for the child; may contain ${secret:name} | |
| action | Yes | ||
| method | No | http: method (default GET) | |
| command | No | exec: argv, run WITHOUT a shell; ${secret:..} not allowed here | |
| headers | No | http: headers; values may contain ${secret:name} | |
| timeout_ms | No | ||
| redact_env_files | No |