@hasna/skills 0.8.1 → 0.8.2
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 +42 -0
- package/bin/index.js +2210 -728
- package/bin/mcp.js +1828 -378
- package/bin/migrate.js +1 -1
- package/bin/server.js +226 -226
- package/bin/worker.js +189 -189
- package/dist/admin-contract.js +8 -8
- package/dist/index.js +168 -168
- package/dist/lib/execution-secrets.d.ts +40 -0
- package/dist/lib/selected-run.d.ts +19 -0
- package/dist/sdk/index.d.ts +2 -0
- package/dist/sdk/index.js +38969 -25185
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -324,6 +324,48 @@ are explicitly changed or a new session starts.
|
|
|
324
324
|
|
|
325
325
|
## Executable skills
|
|
326
326
|
|
|
327
|
+
For a selected local executable that declares `runtime.env`, prepare a binding
|
|
328
|
+
template using the configured Skills and Secrets clients:
|
|
329
|
+
|
|
330
|
+
```bash
|
|
331
|
+
skills run --target local --selection-profile default \
|
|
332
|
+
--secret-bindings-template --json your-skill@1.0.0 > bindings.json
|
|
333
|
+
# Fill each empty entry in bindings with its reviewed vault key, never its value.
|
|
334
|
+
skills run --target local --selection-profile default \
|
|
335
|
+
--secret-bindings ./bindings.json --input '{"requested":"work"}' \
|
|
336
|
+
--json your-skill@1.0.0
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
The template contains no credential values and does not execute the skill or
|
|
340
|
+
read the declared secrets. Keep the reviewed file in your private configuration,
|
|
341
|
+
outside the skill bundle and agent discovery directories. It uses
|
|
342
|
+
`hasna.skills-secret-bindings.v1` and binds the exact Skills authority, workspace,
|
|
343
|
+
profile ID and revision, canonical skill name, version and bundle digest, plus
|
|
344
|
+
the current station ID (`HASNA_STATION`, otherwise the hostname), canonical
|
|
345
|
+
working directory and independently configured Secrets `/v1` authority. Its
|
|
346
|
+
`bindings` object maps each declared environment name to one vault key. Changing
|
|
347
|
+
any bound field requires reviewing a fresh template. These are explicit local
|
|
348
|
+
execution grants; selection sync does not distribute or implicitly approve them.
|
|
349
|
+
|
|
350
|
+
The CLI validates the complete binding before fetching values through
|
|
351
|
+
`@hasna/secrets`. It resolves current values for each run, checks returned keys
|
|
352
|
+
and expiry, and injects only the declared variables into the child process.
|
|
353
|
+
Missing, extra, stale or mismatched bindings refuse execution; a failing vault
|
|
354
|
+
read never falls back to an ambient value or a local vault. Wrapping `skills run`
|
|
355
|
+
in `secrets exec` alone does not bind a declared variable. Runtime controls such
|
|
356
|
+
as `PATH`, `NODE_OPTIONS` and `SKILLS_INPUT_JSON` cannot be credential names.
|
|
357
|
+
Bindings require an explicit local target and a fresh API selection; they cannot
|
|
358
|
+
be used with cached, cloud or legacy remote execution. No S3 deployment is required.
|
|
359
|
+
|
|
360
|
+
Run receipts retain references and scope, never resolved values or captured
|
|
361
|
+
output. Returned child output redacts literal, JSON-escaped, base64 and URL-encoded
|
|
362
|
+
forms of injected values. This limits accidental disclosure; local execution
|
|
363
|
+
has the calling user's filesystem and network access and is not a sandbox for
|
|
364
|
+
hostile code. Review the exact executable and grant only the credentials its
|
|
365
|
+
effects require. Cloud admission and cloud credential delivery remain separate.
|
|
366
|
+
SDK callers use `resolveSelectedRun`, `prepareSelectedSecretBindings` and
|
|
367
|
+
`executeSelectedLocal(selected, { secretBindings })` through `@hasna/skills/sdk`.
|
|
368
|
+
|
|
327
369
|
```bash
|
|
328
370
|
skills capabilities --json
|
|
329
371
|
skills run --target cloud --selection-profile default \
|