lua-cli 3.51.0 → 3.52.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/docs/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # lua-cli v3.51.0
1
+ # lua-cli v3.52.0
2
2
 
3
- Welcome to the comprehensive API documentation for lua-cli v3.51.0. This guide covers every API, class, and function exported by the package.
3
+ Welcome to the comprehensive API documentation for lua-cli v3.52.0. This guide covers every API, class, and function exported by the package.
4
4
 
5
5
  ## 📚 Documentation Index
6
6
 
@@ -263,7 +263,7 @@ Each API doc includes:
263
263
 
264
264
  ---
265
265
 
266
- **Version:** 3.51.0
266
+ **Version:** 3.52.0
267
267
  **Last Updated:** October 2026
268
268
 
269
269
  ---
package/docs/api/Data.md CHANGED
@@ -318,7 +318,12 @@ const names = await map.collections();
318
318
  ### Managing shared collections (org admins)
319
319
 
320
320
  Created and managed through the admin API (`members:manage` to list, `members:assign-role` to change). Every id in
321
- `readers` / `writers` must be a live agent of the organization; explicit ids only, never `*`.
321
+ `readers` / `writers` must be a live agent of the organization; explicit ids only, never `*`. On `PUT` that applies to
322
+ ids being added: an id already on the same list is exempt, so sending the lists back as read always works. If its
323
+ agent has been deleted it is dropped from the saved list (and named in the audit row); if it was archived or moved to
324
+ another organization it stays, has no access while it is, and works again if the agent is restored or moved back.
325
+ A `PUT` that races another change to the same collection answers 409 `shared_data_collection_changed`: read the
326
+ lists again and resend.
322
327
 
323
328
  ```http
324
329
  GET /admin/orgs/:orgId/shared-collections
@@ -327,6 +332,38 @@ PUT /admin/orgs/:orgId/shared-collections/:name { "readers": [...], "writers
327
332
  DELETE /admin/orgs/:orgId/shared-collections/:name (access ends at once; entries are purged; irreversible)
328
333
  ```
329
334
 
335
+ `installableBy` (optional on `POST` and `PUT`) lists the marketplace templates whose installs may join the collection
336
+ by themselves, each up to a `maxAccess` of `read` or `write`:
337
+
338
+ ```json
339
+ {
340
+ "readers": [],
341
+ "writers": ["<admin-agent-id>"],
342
+ "installableBy": [{ "templateId": "<template-id>", "maxAccess": "read" }]
343
+ }
344
+ ```
345
+
346
+ A template that is not listed never joins on its own. A `write` join also needs the installing user to hold
347
+ `members:assign-role` on the organization. Omitting `installableBy` on `PUT` keeps the stored list; `[]` clears it.
348
+ Changing it does not touch agents already on `readers` / `writers`.
349
+
350
+ A template declares the collections its installed copies need in `lua.skill.yaml`:
351
+
352
+ ```yaml
353
+ template:
354
+ sharedData:
355
+ - name: firm_admin
356
+ access: read # or write
357
+ ```
358
+
359
+ On install the platform adds the new agent to each listed collection when an org admin has put the template on its
360
+ `installableBy` (and, for `write`, the installing user holds `members:assign-role`). Anything else is reported as
361
+ `needs-approval` with a reason in the install result and on the installed template's setup status; once an admin fixes
362
+ it, `POST /agents/:agentId/templates/:templateId/setup/retry` (run by an admin for a `write` join) joins it. A template
363
+ never creates a collection. Uninstall removes only what that install added. Changing `sharedData` in a new template
364
+ version asks installers to consent again; the change applies on their next install or setup retry. Older lua-cli
365
+ versions drop the section when publishing.
366
+
330
367
  A change applies to the next `Data.shared` call. Re-creating a deleted name starts an empty collection.
331
368
 
332
369
  ## DataEntryInstance
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lua-cli",
3
- "version": "3.51.0",
3
+ "version": "3.52.0",
4
4
  "description": "Build, test, and deploy AI agents with custom tools, webhooks, and scheduled jobs. Features LuaAgent unified configuration, streaming chat, and batch deployment.",
5
5
  "readmeFilename": "README.md",
6
6
  "main": "dist/api-exports.js",
@@ -20,7 +20,7 @@
20
20
  "inquirer": "^12.9.6",
21
21
  "stripe": "^17.5.0",
22
22
  "js-yaml": "^4.1.0",
23
- "lua-cli": "^3.51.0",
23
+ "lua-cli": "^3.52.0",
24
24
  "openai": "^5.23.0",
25
25
  "uuid": "^13.0.0",
26
26
  "zod": "^3.24.1"