@datalayer/agent-runtimes 1.5.3 → 1.5.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.
@@ -11,6 +11,7 @@ export const CROP_MONITORING_SCENE_0_0_1 = {
11
11
  tags: ['example', 'scene', 'earthdata', 'agriculture', 'a2a'],
12
12
  icon: 'globe',
13
13
  emoji: '🛰️',
14
+ kind: 'team',
14
15
  team: 'crop-monitoring:0.0.1',
15
16
  entry: 'crop-monitoring',
16
17
  cast: [
@@ -276,6 +277,9 @@ export const CROP_MONITORING_SCENE_0_0_1 = {
276
277
  'crop-monitoring': 'DATALAYER_DEMO_SCENE_CROP_MONITORING_CROP_MONITORING_A2A_URL',
277
278
  },
278
279
  },
280
+ actors: [],
281
+ lines: [],
282
+ live: '',
279
283
  setup: ["The agent 'worker-crop-monitoring:0.0.1' is not enabled."],
280
284
  played: {
281
285
  at: '2026-10-09T17:40:33+00:00',
@@ -320,6 +324,7 @@ export const DISASTER_ASSESSMENT_SCENE_0_0_1 = {
320
324
  tags: ['example', 'scene', 'earthdata', 'disaster', 'insurance', 'a2a'],
321
325
  icon: 'alert',
322
326
  emoji: '🚨',
327
+ kind: 'team',
323
328
  team: 'disaster-assessment:0.0.1',
324
329
  entry: 'event-response',
325
330
  cast: [
@@ -693,6 +698,9 @@ export const DISASTER_ASSESSMENT_SCENE_0_0_1 = {
693
698
  'change-detection': 'DATALAYER_DEMO_SCENE_DISASTER_ASSESSMENT_CHANGE_DETECTION_A2A_URL',
694
699
  },
695
700
  },
701
+ actors: [],
702
+ lines: [],
703
+ live: '',
696
704
  setup: [
697
705
  "The agent 'worker-event-response:0.0.1' is not enabled.",
698
706
  "The agent 'worker-disaster-assessment:0.0.1' is not enabled.",
@@ -741,6 +749,7 @@ export const MONTH_END_CLOSE_SCENE_0_0_1 = {
741
749
  tags: ['example', 'scene', 'odoo', 'finance', 'a2a'],
742
750
  icon: 'calendar',
743
751
  emoji: '📒',
752
+ kind: 'team',
744
753
  team: 'month-end-close:0.0.1',
745
754
  entry: 'month-end-close',
746
755
  cast: [
@@ -1003,6 +1012,9 @@ export const MONTH_END_CLOSE_SCENE_0_0_1 = {
1003
1012
  'month-end-close': 'DATALAYER_DEMO_SCENE_MONTH_END_CLOSE_MONTH_END_CLOSE_A2A_URL',
1004
1013
  },
1005
1014
  },
1015
+ actors: [],
1016
+ lines: [],
1017
+ live: '',
1006
1018
  setup: [
1007
1019
  "The agent 'worker-month-end-close:0.0.1' is not enabled.",
1008
1020
  "The MCP server 'odoo-accounting:0.0.1' is not enabled.",
@@ -1041,6 +1053,682 @@ export const MONTH_END_CLOSE_SCENE_0_0_1 = {
1041
1053
  runtime: '1.3.93',
1042
1054
  },
1043
1055
  };
1056
+ export const PAP_A_PERSON_AND_A_COMPANY_SCENE_0_0_1 = {
1057
+ schema: 'loop.scene/v1',
1058
+ id: 'pap-a-person-and-a-company',
1059
+ version: '0.0.1',
1060
+ name: 'A Person and a Company',
1061
+ description: 'Ada’s agent asks a shop about her order, and she signs in at the shop itself.',
1062
+ tags: ['stage', 'pap', 'slice-1'],
1063
+ icon: 'people',
1064
+ emoji: '🧥',
1065
+ kind: 'scripted',
1066
+ team: '',
1067
+ entry: '',
1068
+ cast: [],
1069
+ setting: {
1070
+ systems: [],
1071
+ period: '',
1072
+ language: '',
1073
+ assumes: '',
1074
+ },
1075
+ script: [],
1076
+ stage: {
1077
+ positions: {},
1078
+ opensFirst: '',
1079
+ transcript: {
1080
+ tools: true,
1081
+ narration: true,
1082
+ },
1083
+ inspectors: [],
1084
+ restsAfter: '',
1085
+ pace: 'steady',
1086
+ },
1087
+ audience: {
1088
+ who: 'signed-in',
1089
+ ceilingPerAsk: 0.0,
1090
+ asksADay: 0,
1091
+ },
1092
+ rehearsal: {
1093
+ beats: [],
1094
+ within: '',
1095
+ verified: {
1096
+ live: [],
1097
+ recorded: [],
1098
+ unverified: [],
1099
+ },
1100
+ },
1101
+ deployment: {
1102
+ account: '',
1103
+ page: '',
1104
+ addresses: {},
1105
+ },
1106
+ actors: [
1107
+ {
1108
+ id: 'ada',
1109
+ name: 'Ada',
1110
+ face: '🧑',
1111
+ is: 'the person',
1112
+ },
1113
+ {
1114
+ id: 'agent',
1115
+ name: 'Her agent',
1116
+ face: '🤖',
1117
+ is: 'an application on Datalayer, working for Ada',
1118
+ },
1119
+ {
1120
+ id: 'manzanita',
1121
+ name: 'Manzanita Outfitters',
1122
+ face: '🧥',
1123
+ is: 'a company, at manzanita.example',
1124
+ },
1125
+ ],
1126
+ lines: [
1127
+ {
1128
+ from: 'ada',
1129
+ to: 'agent',
1130
+ says: '“Has my Ridge Jacket from Manzanita arrived?”',
1131
+ how: '',
1132
+ },
1133
+ {
1134
+ from: 'agent',
1135
+ to: '',
1136
+ says: 'Finds Manzanita Outfitters by its domain and checks it is who it says.',
1137
+ card: {
1138
+ kind: 'found',
1139
+ title: 'Manzanita Outfitters',
1140
+ rows: [
1141
+ ['Its domain', 'manzanita.example'],
1142
+ ['Signs its sign-ins as', 'manzanita.example'],
1143
+ ['How a person signs in', 'With a code, or in a protected form'],
1144
+ ['It offers', 'See your orders · Exchange and return items'],
1145
+ ],
1146
+ lines: [],
1147
+ },
1148
+ how: 'The agent reads the page every company publishes for personal agents and checks that the domain and who signs its sign-ins belong together.',
1149
+ },
1150
+ {
1151
+ from: 'agent',
1152
+ to: 'manzanita',
1153
+ says: 'Asks, before anybody signed in: “Where is Ada’s Ridge Jacket order?”',
1154
+ how: 'A conversation starts with the company’s own agent; nobody is signed in yet, so it answers only what anybody may ask.',
1155
+ },
1156
+ {
1157
+ from: 'manzanita',
1158
+ to: 'agent',
1159
+ says: '“I can look that up once you sign in to your Manzanita account.”',
1160
+ how: 'The company asks for a sign-in and names what it needs: See your orders.',
1161
+ },
1162
+ {
1163
+ from: 'agent',
1164
+ to: 'ada',
1165
+ says: 'Asks Ada to sign in at Manzanita, on Manzanita’s own page.',
1166
+ card: {
1167
+ kind: 'sign-in',
1168
+ title: 'Sign in at Manzanita Outfitters',
1169
+ rows: [],
1170
+ lines: [
1171
+ 'Your agent asks to see your orders.',
1172
+ 'You sign in on manzanita.example: your agent never sees your password.',
1173
+ 'You can keep fewer permissions than it asks for.',
1174
+ ],
1175
+ },
1176
+ how: '',
1177
+ turn: {
1178
+ yes: 'Sign in at Manzanita',
1179
+ no: '',
1180
+ declined: '',
1181
+ },
1182
+ },
1183
+ {
1184
+ from: 'ada',
1185
+ to: 'manzanita',
1186
+ says: 'Signs in on Manzanita’s page and allows “See your orders”.',
1187
+ how: 'The company gives the agent a sign-in of its own, for Ada and for this agent only; Datalayer keeps it, out of the agent’s reach.',
1188
+ },
1189
+ {
1190
+ from: 'manzanita',
1191
+ to: 'agent',
1192
+ says: '“Your order ord_7Hk2: Ridge Jacket, size M, delivered.”',
1193
+ how: '',
1194
+ },
1195
+ {
1196
+ from: 'agent',
1197
+ to: 'ada',
1198
+ says: '“Yes: your Ridge Jacket, size M, was delivered.”',
1199
+ how: '',
1200
+ },
1201
+ {
1202
+ from: 'agent',
1203
+ to: '',
1204
+ says: 'Keeps a record of what it did, for Ada and for whoever built it.',
1205
+ card: {
1206
+ kind: 'record',
1207
+ title: 'Activity',
1208
+ rows: [
1209
+ ['Signed in at', 'Manzanita Outfitters, for Ada'],
1210
+ ['Allowed', 'See your orders'],
1211
+ ['Read', 'Order ord_7Hk2'],
1212
+ ],
1213
+ lines: [],
1214
+ },
1215
+ how: 'Ada sees it under In your name, and ends it there with Disconnect.',
1216
+ },
1217
+ ],
1218
+ live: 'Connecting an application to a company is built in the Studio (its Connections card); signing in at a company through Datalayer waits for the services to be shipped.',
1219
+ setup: [],
1220
+ };
1221
+ export const PAP_APPROVE_ONCE_SCENE_0_0_1 = {
1222
+ schema: 'loop.scene/v1',
1223
+ id: 'pap-approve-once',
1224
+ version: '0.0.1',
1225
+ name: 'A Change, Approved Once',
1226
+ description: 'The shop proposes an exchange; Ada approves its exact terms, and it is done once.',
1227
+ tags: ['stage', 'pap', 'slice-2'],
1228
+ icon: 'people',
1229
+ emoji: '🔁',
1230
+ kind: 'scripted',
1231
+ team: '',
1232
+ entry: '',
1233
+ cast: [],
1234
+ setting: {
1235
+ systems: [],
1236
+ period: '',
1237
+ language: '',
1238
+ assumes: '',
1239
+ },
1240
+ script: [],
1241
+ stage: {
1242
+ positions: {},
1243
+ opensFirst: '',
1244
+ transcript: {
1245
+ tools: true,
1246
+ narration: true,
1247
+ },
1248
+ inspectors: [],
1249
+ restsAfter: '',
1250
+ pace: 'steady',
1251
+ },
1252
+ audience: {
1253
+ who: 'signed-in',
1254
+ ceilingPerAsk: 0.0,
1255
+ asksADay: 0,
1256
+ },
1257
+ rehearsal: {
1258
+ beats: [],
1259
+ within: '',
1260
+ verified: {
1261
+ live: [],
1262
+ recorded: [],
1263
+ unverified: [],
1264
+ },
1265
+ },
1266
+ deployment: {
1267
+ account: '',
1268
+ page: '',
1269
+ addresses: {},
1270
+ },
1271
+ actors: [
1272
+ {
1273
+ id: 'ada',
1274
+ name: 'Ada',
1275
+ face: '🧑',
1276
+ is: 'the person',
1277
+ },
1278
+ {
1279
+ id: 'agent',
1280
+ name: 'Her agent',
1281
+ face: '🤖',
1282
+ is: 'an application on Datalayer, working for Ada',
1283
+ },
1284
+ {
1285
+ id: 'manzanita',
1286
+ name: 'Manzanita Outfitters',
1287
+ face: '🧥',
1288
+ is: 'a company, at manzanita.example',
1289
+ },
1290
+ ],
1291
+ lines: [
1292
+ {
1293
+ from: 'ada',
1294
+ to: 'agent',
1295
+ says: '“It is not warm enough: exchange it for the insulated one.”',
1296
+ how: '',
1297
+ },
1298
+ {
1299
+ from: 'agent',
1300
+ to: 'manzanita',
1301
+ says: 'Asks for the exchange, signed in as Ada.',
1302
+ how: '',
1303
+ },
1304
+ {
1305
+ from: 'manzanita',
1306
+ to: 'agent',
1307
+ says: '“The insulated Ridge Jacket is in stock. Here is the exchange.”',
1308
+ how: 'The company does not do it yet: it proposes it, with its exact terms and a version.',
1309
+ },
1310
+ {
1311
+ from: 'agent',
1312
+ to: 'ada',
1313
+ says: 'Its rule says Ask me first: it waits for Ada.',
1314
+ card: {
1315
+ kind: 'approval',
1316
+ title: 'Manzanita Outfitters asks you to confirm',
1317
+ rows: [
1318
+ ['Order', 'ord_7Hk2'],
1319
+ ['Price difference', 'USD 70.00'],
1320
+ ['Version', '1'],
1321
+ ],
1322
+ lines: [
1323
+ 'Exchange the Ridge Jacket (M) from order ord_7Hk2 for the insulated Ridge Jacket (M), USD 70.00 more.',
1324
+ ],
1325
+ },
1326
+ how: 'The summary is the company’s own sentence, never the model’s; approving version 1 never approves a version 2.',
1327
+ turn: {
1328
+ yes: 'Approve',
1329
+ no: 'Decline',
1330
+ declined: 'Ada declined: her agent tells Manzanita no, and nothing is exchanged.',
1331
+ },
1332
+ },
1333
+ {
1334
+ from: 'agent',
1335
+ to: 'manzanita',
1336
+ says: 'Confirms version 1, exactly as Ada approved it.',
1337
+ how: 'Datalayer writes down that it confirms before it does: asked again, it reads the outcome back instead of sending it twice.',
1338
+ },
1339
+ {
1340
+ from: 'manzanita',
1341
+ to: 'agent',
1342
+ says: '“Exchanged the Ridge Jacket (M) for the insulated Ridge Jacket (M). USD 70.00 charged to the card ending 4242; a return label was emailed.”',
1343
+ how: '',
1344
+ },
1345
+ {
1346
+ from: 'agent',
1347
+ to: 'ada',
1348
+ says: 'Tells Ada what the company says it did, in its words.',
1349
+ card: {
1350
+ kind: 'done',
1351
+ title: 'Done, once',
1352
+ rows: [],
1353
+ lines: [
1354
+ 'Exchanged the Ridge Jacket (M) for the insulated Ridge Jacket (M). USD 70.00 charged to the card ending 4242; a return label was emailed.',
1355
+ ],
1356
+ },
1357
+ how: '',
1358
+ },
1359
+ ],
1360
+ live: 'The approval card on Waiting for you is built in the Studio; a company’s exchange approved through Datalayer waits for the services to be shipped.',
1361
+ setup: [],
1362
+ };
1363
+ export const PAP_TWO_COMPANIES_SCENE_0_0_1 = {
1364
+ schema: 'loop.scene/v1',
1365
+ id: 'pap-two-companies',
1366
+ version: '0.0.1',
1367
+ name: 'Two Companies Together',
1368
+ description: 'An accounting firm pays a bill at Ada’s bank, and every payment is Ada’s approval.',
1369
+ tags: ['stage', 'pap', 'slice-4'],
1370
+ icon: 'people',
1371
+ emoji: '🏦',
1372
+ kind: 'scripted',
1373
+ team: '',
1374
+ entry: '',
1375
+ cast: [],
1376
+ setting: {
1377
+ systems: [],
1378
+ period: '',
1379
+ language: '',
1380
+ assumes: '',
1381
+ },
1382
+ script: [],
1383
+ stage: {
1384
+ positions: {},
1385
+ opensFirst: '',
1386
+ transcript: {
1387
+ tools: true,
1388
+ narration: true,
1389
+ },
1390
+ inspectors: [],
1391
+ restsAfter: '',
1392
+ pace: 'steady',
1393
+ },
1394
+ audience: {
1395
+ who: 'signed-in',
1396
+ ceilingPerAsk: 0.0,
1397
+ asksADay: 0,
1398
+ },
1399
+ rehearsal: {
1400
+ beats: [],
1401
+ within: '',
1402
+ verified: {
1403
+ live: [],
1404
+ recorded: [],
1405
+ unverified: [],
1406
+ },
1407
+ },
1408
+ deployment: {
1409
+ account: '',
1410
+ page: '',
1411
+ addresses: {},
1412
+ },
1413
+ actors: [
1414
+ {
1415
+ id: 'ada',
1416
+ name: 'Ada',
1417
+ face: '🧑',
1418
+ is: 'the person',
1419
+ },
1420
+ {
1421
+ id: 'atlas',
1422
+ name: 'Atlas',
1423
+ face: '🤖',
1424
+ is: 'Ada’s agent',
1425
+ },
1426
+ {
1427
+ id: 'ledgerly',
1428
+ name: 'Ledgerly',
1429
+ face: '📒',
1430
+ is: 'an accounting firm: a company to Ada, an agent at her bank',
1431
+ },
1432
+ {
1433
+ id: 'northwind',
1434
+ name: 'Northwind Bank',
1435
+ face: '🏦',
1436
+ is: 'Ada’s bank',
1437
+ },
1438
+ ],
1439
+ lines: [
1440
+ {
1441
+ from: 'ada',
1442
+ to: 'atlas',
1443
+ says: '“Ask Ledgerly to pay invoice INV-0042.”',
1444
+ how: '',
1445
+ },
1446
+ {
1447
+ from: 'atlas',
1448
+ to: 'ledgerly',
1449
+ says: 'Asks Ledgerly, signed in as Ada.',
1450
+ how: 'To Atlas, Ledgerly is a company like any other.',
1451
+ },
1452
+ {
1453
+ from: 'ledgerly',
1454
+ to: 'ada',
1455
+ says: 'Needs Ada’s Northwind account first: Ada approves Ledgerly on Northwind’s own page.',
1456
+ card: {
1457
+ kind: 'sign-in',
1458
+ title: 'Let Ledgerly connect to your Northwind account',
1459
+ rows: [],
1460
+ lines: [
1461
+ 'On northwind.example, with a code Ledgerly shows you: Ledgerly never sees your bank password.',
1462
+ ],
1463
+ },
1464
+ how: 'To Northwind, Ledgerly is a personal agent acting for Ada, with an identity of its own.',
1465
+ turn: {
1466
+ yes: 'Approve at Northwind',
1467
+ no: '',
1468
+ declined: '',
1469
+ },
1470
+ },
1471
+ {
1472
+ from: 'northwind',
1473
+ to: 'ledgerly',
1474
+ says: '“Ready to pay INV-0042.”',
1475
+ how: 'The bank proposes the payment; it does not make it yet.',
1476
+ },
1477
+ {
1478
+ from: 'ledgerly',
1479
+ to: 'ada',
1480
+ says: 'Passes the bank’s proposal on, quoting it as written.',
1481
+ card: {
1482
+ kind: 'approval',
1483
+ title: 'Ledgerly asks you to confirm',
1484
+ rows: [
1485
+ ['Amount', 'EUR 1250.00'],
1486
+ ['To', 'Acme GmbH'],
1487
+ ['Invoice', 'INV-0042'],
1488
+ ],
1489
+ lines: [
1490
+ 'At Northwind Bank: Pay EUR 1250.00 to Acme GmbH for INV-0042 from the current account DE89 3704 0044 0532 0130 00, today. Payments cannot be recalled once sent.',
1491
+ ],
1492
+ },
1493
+ how: '',
1494
+ turn: {
1495
+ yes: 'Approve',
1496
+ no: 'Decline',
1497
+ declined: 'Ada declined: Ledgerly tells the bank no, and nothing is paid.',
1498
+ },
1499
+ },
1500
+ {
1501
+ from: 'ledgerly',
1502
+ to: 'northwind',
1503
+ says: 'Confirms at the bank the exact version Ada approved, as approved by Ada.',
1504
+ how: '',
1505
+ },
1506
+ {
1507
+ from: 'northwind',
1508
+ to: 'ledgerly',
1509
+ says: '“Sent EUR 1250.00 to Acme GmbH for INV-0042 from DE89 3704 0044 0532 0130 00. Bank reference NW-0001.”',
1510
+ how: '',
1511
+ },
1512
+ {
1513
+ from: 'ada',
1514
+ to: 'atlas',
1515
+ says: '“Allow Ledgerly to pay Acme without asking, within limits.”',
1516
+ how: '',
1517
+ },
1518
+ {
1519
+ from: 'ledgerly',
1520
+ to: 'ada',
1521
+ says: 'Even a permission given in advance is something Ada approves.',
1522
+ card: {
1523
+ kind: 'approval',
1524
+ title: 'Ledgerly asks you to confirm',
1525
+ rows: [
1526
+ ['Up to', 'EUR 2000.00 each'],
1527
+ ['At most', '5 payments'],
1528
+ ['For', '30 days'],
1529
+ ],
1530
+ lines: [
1531
+ 'Let Ledgerly pay Acme GmbH from your Northwind account without asking, up to EUR 2000.00 each, at most 5 payments, for 30 days.',
1532
+ ],
1533
+ },
1534
+ how: '',
1535
+ turn: {
1536
+ yes: 'Approve',
1537
+ no: 'Decline',
1538
+ declined: 'Ada declined: Ledgerly asks her again for every payment.',
1539
+ },
1540
+ },
1541
+ {
1542
+ from: 'ledgerly',
1543
+ to: 'ada',
1544
+ says: 'INV-0043, EUR 980.00, is within the limits: Ledgerly pays it and tells Ada what was done.',
1545
+ how: 'Approved in advance: the bank is told it was, never that Ada approved this one.',
1546
+ },
1547
+ {
1548
+ from: 'ledgerly',
1549
+ to: 'ada',
1550
+ says: 'INV-0044, EUR 3400.00, is beyond them: Ledgerly asks Ada again.',
1551
+ card: {
1552
+ kind: 'done',
1553
+ title: 'Within limits, done; beyond them, asked',
1554
+ rows: [],
1555
+ lines: [
1556
+ 'INV-0043 paid under your permission (1 of 5 used).',
1557
+ 'INV-0044 waits for your approval.',
1558
+ ],
1559
+ },
1560
+ how: '',
1561
+ },
1562
+ ],
1563
+ live: 'Two companies working together is the open-source SDK’s demonstration; on Datalayer it waits for both roles to be shipped.',
1564
+ setup: [],
1565
+ };
1566
+ export const PAP_YOUR_APPLICATION_A_COMPANY_SCENE_0_0_1 = {
1567
+ schema: 'loop.scene/v1',
1568
+ id: 'pap-your-application-a-company',
1569
+ version: '0.0.1',
1570
+ name: 'Your Application, a Company',
1571
+ description: 'An application built in the Studio answers people’s own agents as a company does.',
1572
+ tags: ['stage', 'pap', 'slice-3'],
1573
+ icon: 'people',
1574
+ emoji: '🏪',
1575
+ kind: 'scripted',
1576
+ team: '',
1577
+ entry: '',
1578
+ cast: [],
1579
+ setting: {
1580
+ systems: [],
1581
+ period: '',
1582
+ language: '',
1583
+ assumes: '',
1584
+ },
1585
+ script: [],
1586
+ stage: {
1587
+ positions: {},
1588
+ opensFirst: '',
1589
+ transcript: {
1590
+ tools: true,
1591
+ narration: true,
1592
+ },
1593
+ inspectors: [],
1594
+ restsAfter: '',
1595
+ pace: 'steady',
1596
+ },
1597
+ audience: {
1598
+ who: 'signed-in',
1599
+ ceilingPerAsk: 0.0,
1600
+ asksADay: 0,
1601
+ },
1602
+ rehearsal: {
1603
+ beats: [],
1604
+ within: '',
1605
+ verified: {
1606
+ live: [],
1607
+ recorded: [],
1608
+ unverified: [],
1609
+ },
1610
+ },
1611
+ deployment: {
1612
+ account: '',
1613
+ page: '',
1614
+ addresses: {},
1615
+ },
1616
+ actors: [
1617
+ {
1618
+ id: 'maker',
1619
+ name: 'Maker',
1620
+ face: '🛠️',
1621
+ is: 'who builds the application',
1622
+ },
1623
+ {
1624
+ id: 'app',
1625
+ name: 'Exchange desk',
1626
+ face: '🏪',
1627
+ is: 'an application on Datalayer',
1628
+ },
1629
+ {
1630
+ id: 'visitor-agent',
1631
+ name: 'Sam’s agent',
1632
+ face: '🤖',
1633
+ is: 'somebody’s personal agent',
1634
+ },
1635
+ {
1636
+ id: 'sam',
1637
+ name: 'Sam',
1638
+ face: '🧑',
1639
+ is: 'a customer',
1640
+ },
1641
+ ],
1642
+ lines: [
1643
+ {
1644
+ from: 'maker',
1645
+ to: 'app',
1646
+ says: 'Turns on Lets personal agents work with it, offers orders:read and orders:write, and names what it does once a person confirms: orders.exchange.',
1647
+ card: {
1648
+ kind: 'found',
1649
+ title: 'What becomes public at Ship',
1650
+ rows: [],
1651
+ lines: [
1652
+ 'Its own domain, exchange-desk.apps.datalayer.ai, with the page personal agents read first.',
1653
+ 'How personal agents reach it: its agent, its API and its server for agents.',
1654
+ 'What changes something is proposed to the person and done only with their approval.',
1655
+ ],
1656
+ },
1657
+ how: '',
1658
+ },
1659
+ {
1660
+ from: 'visitor-agent',
1661
+ to: 'app',
1662
+ says: 'Finds Exchange desk by its domain and asks, before Sam signed in: “Do you exchange jackets?”',
1663
+ how: 'The application answers what anybody may ask, as its Maker allowed.',
1664
+ },
1665
+ {
1666
+ from: 'app',
1667
+ to: 'visitor-agent',
1668
+ says: '“Yes. Sign in to see your orders.”',
1669
+ how: '',
1670
+ },
1671
+ {
1672
+ from: 'visitor-agent',
1673
+ to: 'sam',
1674
+ says: 'Asks Sam to sign in at Exchange desk, with his Datalayer account.',
1675
+ card: {
1676
+ kind: 'sign-in',
1677
+ title: 'Sign in at Exchange desk',
1678
+ rows: [],
1679
+ lines: [
1680
+ 'With your Datalayer account, on Datalayer’s page: the agent never sees your password.',
1681
+ ],
1682
+ },
1683
+ how: '',
1684
+ turn: {
1685
+ yes: 'Sign in with Datalayer',
1686
+ no: '',
1687
+ declined: '',
1688
+ },
1689
+ },
1690
+ {
1691
+ from: 'app',
1692
+ to: 'visitor-agent',
1693
+ says: 'Proposes the exchange in the Maker’s own words: “Exchange order ord_7Hk2 for size L.”',
1694
+ card: {
1695
+ kind: 'approval',
1696
+ title: 'Exchange desk asks you to confirm',
1697
+ rows: [
1698
+ ['Order', 'ord_7Hk2'],
1699
+ ['Size', 'L'],
1700
+ ['Version', '1'],
1701
+ ],
1702
+ lines: ['Exchange order ord_7Hk2 for size L.'],
1703
+ },
1704
+ how: 'The model gives the terms; the sentence is the Maker’s, written once in the Studio.',
1705
+ turn: {
1706
+ yes: 'Approve',
1707
+ no: 'Decline',
1708
+ declined: 'Sam declined: Exchange desk does nothing.',
1709
+ },
1710
+ },
1711
+ {
1712
+ from: 'app',
1713
+ to: '',
1714
+ says: 'Does it once, with its own code, with exactly the terms Sam approved.',
1715
+ card: {
1716
+ kind: 'record',
1717
+ title: 'Activity of Exchange desk',
1718
+ rows: [
1719
+ ['Personal agent', 'Sam’s agent'],
1720
+ ['Proposed', 'orders.exchange, version 1'],
1721
+ ['Approved by', 'Sam'],
1722
+ ['Done', 'Once'],
1723
+ ],
1724
+ lines: [],
1725
+ },
1726
+ how: '',
1727
+ },
1728
+ ],
1729
+ live: 'The Studio’s card to make an application a company is built; its own domain and the company answering on Datalayer wait for the services to be shipped.',
1730
+ setup: [],
1731
+ };
1044
1732
  export const SALES_AND_ACCOUNTING_SCENE_0_0_1 = {
1045
1733
  schema: 'loop.scene/v1',
1046
1734
  id: 'sales-and-accounting',
@@ -1050,6 +1738,7 @@ export const SALES_AND_ACCOUNTING_SCENE_0_0_1 = {
1050
1738
  tags: ['example', 'scene', 'odoo', 'finance', 'a2a'],
1051
1739
  icon: 'people',
1052
1740
  emoji: '🤝',
1741
+ kind: 'team',
1053
1742
  team: 'sales-and-accounting:0.0.1',
1054
1743
  entry: 'sales',
1055
1744
  cast: [
@@ -1377,6 +2066,9 @@ export const SALES_AND_ACCOUNTING_SCENE_0_0_1 = {
1377
2066
  accounting: 'DATALAYER_DEMO_TEAM_ACCOUNTING_A2A_URL',
1378
2067
  },
1379
2068
  },
2069
+ actors: [],
2070
+ lines: [],
2071
+ live: '',
1380
2072
  setup: [
1381
2073
  "The agent 'worker-sales-pipeline-board-report:0.0.1' is not enabled.",
1382
2074
  "The agent 'worker-accountant:0.0.1' is not enabled.",
@@ -1420,6 +2112,10 @@ export const SCENE_CATALOGUE = {
1420
2112
  'crop-monitoring': CROP_MONITORING_SCENE_0_0_1,
1421
2113
  'disaster-assessment': DISASTER_ASSESSMENT_SCENE_0_0_1,
1422
2114
  'month-end-close': MONTH_END_CLOSE_SCENE_0_0_1,
2115
+ 'pap-a-person-and-a-company': PAP_A_PERSON_AND_A_COMPANY_SCENE_0_0_1,
2116
+ 'pap-approve-once': PAP_APPROVE_ONCE_SCENE_0_0_1,
2117
+ 'pap-two-companies': PAP_TWO_COMPANIES_SCENE_0_0_1,
2118
+ 'pap-your-application-a-company': PAP_YOUR_APPLICATION_A_COMPANY_SCENE_0_0_1,
1423
2119
  'sales-and-accounting': SALES_AND_ACCOUNTING_SCENE_0_0_1,
1424
2120
  };
1425
2121
  /** A scene, by `id` or `id:version`, or undefined. */