@scenerok/sdk 0.25.0 → 0.26.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scenerok/sdk",
3
- "version": "0.25.0",
3
+ "version": "0.26.0",
4
4
  "description": "TypeScript-first SceneRok authoring SDK — build IRTimeline for complex agent-authored scenes",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -219,6 +219,18 @@ Notes:
219
219
  render afterwards. A failed draft costs no fee; a draft refused by the
220
220
  balance preflight costs nothing at all.
221
221
 
222
+ ## Permission grants
223
+
224
+ A **third-party** plugin needs a first-run permission grant per account and per
225
+ version before it can run or draft. The grant covers the capabilities the
226
+ version declares (AI providers, network domains, connected accounts, host
227
+ features) and is stored with the version's `capabilitiesHash`. The six
228
+ `@scenerok` first-party plugins are pre-installed and never ask.
229
+
230
+ | MCP result | Meaning | What to do |
231
+ | --- | --- | --- |
232
+ | `error.code: "permission_escalation"` (HTTP 409) | This account has not granted this version's permissions, or the version's `capabilitiesHash` changed since the last grant. `error.details.capabilities[]` lists exactly what is missing and `details.grantUrl` names the run page. | Tell the user which permissions are listed and ask them to open `details.grantUrl`, sign in, and allow them. Then call the same tool again. Do not loop on the retry and do not invent a grant. A `dryRun: true` still works and is free. |
233
+
222
234
  ## Reference
223
235
 
224
236
  - Environments and what they can call: `environments.md`