instabox 0.8.17 → 0.8.18

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/cli/SHA256SUMS CHANGED
@@ -1,6 +1,6 @@
1
- aef3f9ecd81d98f885dfc725e71e54814afe42aad46aca9d6c1c9a28cc49f28d instabox-darwin-amd64
2
- 0dd36466e8756b4d03e378cc7df9c79427ff262a7cceafdd61df2175f73acce5 instabox-darwin-arm64
3
- 1754a618058aaa1246d97c1b735bfd3f6d2bf90832b477a28c1f2e197a8cef09 instabox-linux-amd64
4
- ae3c05a503453820c55d06a9e5c11afd60a9d11f51854a8558e77570631a9930 instabox-linux-arm64
5
- 0b148c783e198fca451bf5336d6c2b183acc4dc7dd98462713df3e1b5535b042 instabox-windows-amd64.exe
6
- d5f6413e8bef7f73becd58513b4b967b568a707a24dd6fbbc07273f76d87b0a2 instabox-windows-arm64.exe
1
+ 99f38470f262805adc7c6f94d5e72ef18ae715e4cd775527a9b01ad1fa2be8c8 instabox-darwin-amd64
2
+ 2ffdbf8e50bdde3c370937242d955e11a7f63ace9ef47bbd389c026e30ca18af instabox-darwin-arm64
3
+ 34ec16aebb95d2234e86c82b84f8192b3e727d5c03e002cafe18a8eb576ff692 instabox-linux-amd64
4
+ 851b0766143deed6e4227530c0674b7d4e3f676793dd71a3395cc7c8599989df instabox-linux-arm64
5
+ 4199c159c141794423d0d3f751cae9c8ee97e24bf17a459d076d17dba5f0b442 instabox-windows-amd64.exe
6
+ 43225a4f46d0cfa3e39bb6c37e815dd927b79ac4252d3649e83adeae70ef93e2 instabox-windows-arm64.exe
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instabox",
3
- "version": "0.8.17",
3
+ "version": "0.8.18",
4
4
  "description": "A cloud box for your coding agent, the instabox CLI and its agent skills in one command: npx instabox@latest",
5
5
  "type": "module",
6
6
  "bin": {
@@ -114,6 +114,7 @@ Secrets replace the Vault, which is legacy and will be retired: save every new A
114
114
  instabox secrets ls --org team # metadata only
115
115
  instabox secrets show work # selection and proxy status
116
116
  instabox secrets set SERVICE_API_KEY --org team --host api.example.com
117
+ instabox secrets set ANTHROPIC_API_KEY --org team --ai anthropic
117
118
  instabox secrets import .env --org team --host api.example.com # every value gets these hosts
118
119
  instabox create --name app --org team --secrets SERVICE_API_KEY
119
120
  instabox secrets select work --secrets SERVICE_API_KEY,OTHER_API_KEY
@@ -124,6 +125,7 @@ instabox create --name tenant --no-vault --secrets none
124
125
  - Values for `set` come from stdin or a hidden prompt. Never print a credential or put its value into agent output, chat, command arguments, or logs. Before asking for a credential, check metadata with `secrets ls --org <org>` and `secrets show <box>`. A silent check such as `test "${NAME+x}" = x` tests that the placeholder is present without revealing it; it does not prove the upstream accepts the credential.
125
126
  - `--host` is optional and repeatable. Give each exact hostname the credential may be sent to; without `--host` (or with `--host '*'`) every public HTTPS destination is allowed. Schemes, ports, paths, IP addresses, and partial wildcards such as `*.example.com` are rejected. Use the service's API host, such as `api.openai.com`, never a guess from the credential's value.
126
127
  - Org commands default to the signed-in user's personal org. Use `--org` for a team, and select only Secrets from the box's org. Value, host and deletion changes require the org owner/admin: a sign-in, or headless the workspace's own API key with `workspace:admin` in `INSTABOX_API_KEY` (org commands then default to the key's org; `secrets rm` needs `--yes` without a terminal). A personal org's key and keys with only machine scopes can inspect metadata and manage sandbox selections, but cannot change Secret values (`403 missing_scope`). No key or session can retrieve a value.
128
+ - For model provider keys use `--ai anthropic|openai|gemini|openrouter` (repeatable, combinable with `--host`): it scopes the key to `api.anthropic.com`, `api.openai.com`, `generativelanguage.googleapis.com` or `openrouter.ai`. The box only sees a placeholder, in its environment and in any file a tool writes, so the real key is never on its disk or in snapshots. Gemini keys must go in the `x-goog-api-key` header, not `?key=`. To block a box from all Secrets, `secrets select BOX --secrets none`; unblock with `--secrets all` or names. When the server records usage, `secrets show BOX` lists each Secret's proxied and denied request counts.
127
129
  - `secrets select BOX --secrets` replaces the box's selection: `all`, `none`, comma-separated names, or a JSON array (which allows a Secret literally named `all` or `none`). Keep existing names when adding one.
128
130
  - Placeholders work only in HTTPS request headers on port 443 to the allowed hosts. Apart from Basic auth in `Authorization`, which the proxy decodes and re-encodes, do not hash, encode, or sign with a placeholder; other traffic carries the placeholder unchanged.
129
131
  - Rotating a value keeps its placeholder, so running clients need no change. Newly selected names appear in new shells that load the managed environment; restart existing applications to pick them up.