@lotics/app-sdk 0.123.4 → 0.123.6
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/dist/index.js +8 -0
- package/docs/ai.md +3 -3
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6562,6 +6562,14 @@ var TOOL_INPUT_SEMANTICS = {
|
|
|
6562
6562
|
// `fields` is keyed by field; the tool resolves it at execute.
|
|
6563
6563
|
conflicts: { kind: "dynamic" }
|
|
6564
6564
|
},
|
|
6565
|
+
save_record: {
|
|
6566
|
+
table_id: { kind: "table_ref", rows: "change" },
|
|
6567
|
+
match: { kind: "record_data", table_from: "table_id" },
|
|
6568
|
+
set: { kind: "record_data", table_from: "table_id" },
|
|
6569
|
+
add_to: { kind: "record_data", table_from: "table_id" },
|
|
6570
|
+
// Each entry names its own child table and fields; the tool resolves them at execute.
|
|
6571
|
+
lines: { kind: "dynamic" }
|
|
6572
|
+
},
|
|
6565
6573
|
delete_records: {
|
|
6566
6574
|
// THE ONE CALL THAT TAKES ROWS. Every column of the row goes with it, so
|
|
6567
6575
|
// nothing field-keyed can carry the fact and it rides the table position —
|
package/docs/ai.md
CHANGED
|
@@ -336,11 +336,11 @@ This hook is a **one-way push of data the app already showed this member**. (Cha
|
|
|
336
336
|
|
|
337
337
|
### The chat can also USE the app, not just be told about it
|
|
338
338
|
|
|
339
|
-
|
|
340
|
-
|
|
339
|
+
A member's chat agent can also **call the declared aliases of any app that member
|
|
340
|
+
can use** (the open app when a call names none): named queries via `run_app_query`, workflows via
|
|
341
341
|
`run_app_workflow`. This adds no exposure: every declared alias is already
|
|
342
342
|
callable by that member ([the devtools test](./security.md#the-devtools-test)).
|
|
343
|
-
It is gated
|
|
343
|
+
It is gated on `app:use` when the call is made, and runs under the app's OWNER authority with
|
|
344
344
|
`is_current_member` bound to the MEMBER, exactly as the app's own UI does.
|
|
345
345
|
|
|
346
346
|
The agent is handed a **catalog** of those aliases — each one's `description`
|
package/package.json
CHANGED