@datalayer/agent-runtimes 1.5.10 â 1.5.12
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-embed/datalayer-app-main.js +9 -9
- package/lib/apps/plugins/pap-sign-in/PapSignInCard.js +30 -4
- package/lib/apps/plugins/pap-sign-in/signIn.d.ts +23 -1
- package/lib/apps/plugins/pap-sign-in/signIn.js +32 -1
- package/lib/examples/AgentA2ATeamExample.js +2 -2
- package/lib/specs/actions.js +1 -0
- package/lib/specs/apps.d.ts +11 -11
- package/lib/specs/apps.js +143 -118
- package/lib/specs/scenes.js +2 -2
- package/lib/specs/teams/teams.js +4 -4
- package/package.json +1 -1
package/lib/specs/apps.js
CHANGED
|
@@ -667,10 +667,10 @@ export const CROP_MONITORING_APP_0_0_1 = {
|
|
|
667
667
|
banner: '',
|
|
668
668
|
setup: ["The agent 'worker-crop-monitoring:0.0.1' is not enabled."],
|
|
669
669
|
};
|
|
670
|
-
export const
|
|
670
|
+
export const CUSTOMER_INTERVIEW_APP_0_0_2 = {
|
|
671
671
|
schema: 'loop.app/v1',
|
|
672
672
|
id: 'customer-interview',
|
|
673
|
-
version: '0.0.
|
|
673
|
+
version: '0.0.2',
|
|
674
674
|
name: 'Customer Interview',
|
|
675
675
|
kind: 'chat',
|
|
676
676
|
description: 'Interviews a customer about what you want to learn, without leading questions, and turns the conversation into insights that each cite what was said.',
|
|
@@ -907,10 +907,10 @@ export const CUSTOMER_INTERVIEW_APP_0_0_1 = {
|
|
|
907
907
|
banner: '',
|
|
908
908
|
setup: [],
|
|
909
909
|
};
|
|
910
|
-
export const
|
|
910
|
+
export const DATA_QUALITY_APP_0_0_2 = {
|
|
911
911
|
schema: 'loop.app/v1',
|
|
912
912
|
id: 'data-quality',
|
|
913
|
-
version: '0.0.
|
|
913
|
+
version: '0.0.2',
|
|
914
914
|
name: 'Data Quality Investigation',
|
|
915
915
|
kind: 'decision',
|
|
916
916
|
description: 'Which anomalies in this dataset should we fix first? For a data team, before a dataset is used for a decision.',
|
|
@@ -1484,13 +1484,13 @@ export const ERRAND_RUNNER_APP_0_0_1 = {
|
|
|
1484
1484
|
},
|
|
1485
1485
|
],
|
|
1486
1486
|
verified: {
|
|
1487
|
-
live: [
|
|
1487
|
+
live: [
|
|
1488
|
+
"Drilled as a pair on r1 on 13 October 2026, its clone and Guest Desk's joined as the Studio joins them, the business shipped at its own domain: asked as itself, the business named nobody; once the person signed in at the business by device code and granted profile:read, asked for them, it named the person by their Datalayer account, with a verified receipt.",
|
|
1489
|
+
],
|
|
1488
1490
|
recorded: [
|
|
1489
1491
|
"The PACT journey is the developers' example (examples/protocols/pact/personal_agent.py) against its local Provider, run in its own tests.",
|
|
1490
1492
|
],
|
|
1491
|
-
unverified: [
|
|
1492
|
-
"Not run live as a pair yet: the Studio's pairing of two copies was not drilled.",
|
|
1493
|
-
],
|
|
1493
|
+
unverified: [],
|
|
1494
1494
|
},
|
|
1495
1495
|
},
|
|
1496
1496
|
record: {
|
|
@@ -1519,8 +1519,8 @@ export const ERRAND_RUNNER_APP_0_0_1 = {
|
|
|
1519
1519
|
documents: [],
|
|
1520
1520
|
alternatives: [],
|
|
1521
1521
|
},
|
|
1522
|
-
enabled:
|
|
1523
|
-
unavailable_because: '
|
|
1522
|
+
enabled: true,
|
|
1523
|
+
unavailable_because: '',
|
|
1524
1524
|
tags: ['example', 'companies'],
|
|
1525
1525
|
icon: 'apps',
|
|
1526
1526
|
emoji: 'đ',
|
|
@@ -1528,10 +1528,10 @@ export const ERRAND_RUNNER_APP_0_0_1 = {
|
|
|
1528
1528
|
banner: '',
|
|
1529
1529
|
setup: [],
|
|
1530
1530
|
};
|
|
1531
|
-
export const
|
|
1531
|
+
export const EVENT_RESPONSE_APP_0_0_2 = {
|
|
1532
1532
|
schema: 'loop.app/v1',
|
|
1533
1533
|
id: 'event-response',
|
|
1534
|
-
version: '0.0.
|
|
1534
|
+
version: '0.0.2',
|
|
1535
1535
|
name: 'Event response',
|
|
1536
1536
|
kind: 'chat',
|
|
1537
1537
|
description: 'Takes word of a live event â a flood, a fire, a storm â asks Disaster assessment for the area affected and the damage and Change detection for what changed on the ground, each over A2A, and reports what they answered, adding no figure of its own.',
|
|
@@ -1669,17 +1669,17 @@ export const EVENT_RESPONSE_APP_0_0_1 = {
|
|
|
1669
1669
|
banner: '',
|
|
1670
1670
|
setup: ["The agent 'worker-event-response:0.0.1' is not enabled."],
|
|
1671
1671
|
};
|
|
1672
|
-
export const
|
|
1672
|
+
export const EXCHANGE_DESK_APP_0_0_2 = {
|
|
1673
1673
|
schema: 'loop.app/v1',
|
|
1674
1674
|
id: 'exchange-desk',
|
|
1675
|
-
version: '0.0.
|
|
1675
|
+
version: '0.0.2',
|
|
1676
1676
|
name: 'Exchange Desk',
|
|
1677
1677
|
kind: 'chat',
|
|
1678
1678
|
description: "Answers people's own agents about their orders and exchanges them, each exchange proposed with its exact terms and done once the person approves.",
|
|
1679
1679
|
owner: 'Datalayer <info@datalayer.io>',
|
|
1680
1680
|
agent: 'cog-crawler:0.0.1',
|
|
1681
1681
|
team: '',
|
|
1682
|
-
instructions: "You are
|
|
1682
|
+
instructions: "You are the desk of the shop Manzanita Outfitters for people's own agents. Answer what anybody may ask before they sign in, and say nothing of an order you were not told. When a person signed in asks to exchange an order for another size, call exchange_order with that order and size at once: the call is shown to them with its exact terms and done only once they approve; the shop checks the order as it is done and says when it cannot be. Never exchange for somebody who has not signed in.",
|
|
1683
1683
|
model: '',
|
|
1684
1684
|
skills: [],
|
|
1685
1685
|
backendTools: [],
|
|
@@ -1688,7 +1688,6 @@ export const EXCHANGE_DESK_APP_0_0_1 = {
|
|
|
1688
1688
|
name: 'exchange_order',
|
|
1689
1689
|
description: 'Exchanges an order for another size, once the person approved it.',
|
|
1690
1690
|
parameters: {
|
|
1691
|
-
type: 'object',
|
|
1692
1691
|
properties: {
|
|
1693
1692
|
order_id: {
|
|
1694
1693
|
type: 'string',
|
|
@@ -1698,6 +1697,7 @@ export const EXCHANGE_DESK_APP_0_0_1 = {
|
|
|
1698
1697
|
},
|
|
1699
1698
|
},
|
|
1700
1699
|
required: ['order_id', 'size'],
|
|
1700
|
+
type: 'object',
|
|
1701
1701
|
},
|
|
1702
1702
|
does: ['write'],
|
|
1703
1703
|
},
|
|
@@ -1780,9 +1780,11 @@ export const EXCHANGE_DESK_APP_0_0_1 = {
|
|
|
1780
1780
|
],
|
|
1781
1781
|
verified: {
|
|
1782
1782
|
live: [],
|
|
1783
|
-
recorded: [
|
|
1783
|
+
recorded: [
|
|
1784
|
+
"Its exchange_order runs in process in Datalayer's own tests against a stand-in for Manzanita's back office: one exchange per confirmed operation, a retry answered as already done.",
|
|
1785
|
+
],
|
|
1784
1786
|
unverified: [
|
|
1785
|
-
'
|
|
1787
|
+
'Drilled on r1 on 13 October 2026, twice: shipped at its own domain, it answered a personal agent signed out, and a person signed in through Datalayer granted orders:read and orders:write. The second time it knew who had signed in, but asked to exchange, it looked for the order first and proposed nothing; it now proposes the exchange at once, and Manzanita checks the order when it is done. Not drilled since.',
|
|
1786
1788
|
],
|
|
1787
1789
|
},
|
|
1788
1790
|
},
|
|
@@ -1813,8 +1815,8 @@ export const EXCHANGE_DESK_APP_0_0_1 = {
|
|
|
1813
1815
|
alternatives: [],
|
|
1814
1816
|
},
|
|
1815
1817
|
enabled: false,
|
|
1816
|
-
unavailable_because:
|
|
1817
|
-
tags: ['example', 'companies'],
|
|
1818
|
+
unavailable_because: 'Its exchange_order is written against the hosted Manzanita and has not been drilled live yet.',
|
|
1819
|
+
tags: ['example', 'companies', 'python'],
|
|
1818
1820
|
icon: 'apps',
|
|
1819
1821
|
emoji: 'đĒ',
|
|
1820
1822
|
avatar: '',
|
|
@@ -1831,7 +1833,7 @@ export const GUEST_DESK_APP_0_0_1 = {
|
|
|
1831
1833
|
owner: 'Datalayer <info@datalayer.io>',
|
|
1832
1834
|
agent: 'cog-crawler:0.0.1',
|
|
1833
1835
|
team: '',
|
|
1834
|
-
instructions: "You answer for the business when a person's own agent asks. Say what the business offers to any agent. Say who the person is here â
|
|
1836
|
+
instructions: "You answer for the business when a person's own agent asks. Say what the business offers to any agent. Say who the person is here â their handle and name, as the request names them â only when the request says they granted profile:read; otherwise say they need to sign in first. Never more than the request carries: no email, which the business is never told.",
|
|
1835
1837
|
model: '',
|
|
1836
1838
|
skills: [],
|
|
1837
1839
|
backendTools: [],
|
|
@@ -1920,13 +1922,13 @@ export const GUEST_DESK_APP_0_0_1 = {
|
|
|
1920
1922
|
},
|
|
1921
1923
|
],
|
|
1922
1924
|
verified: {
|
|
1923
|
-
live: [
|
|
1925
|
+
live: [
|
|
1926
|
+
"Drilled as a pair on r1 on 13 October 2026: two clones joined as the Studio joins them, the business shipped at its own domain with the cloning account as its Brand; asked by Errand Runner's clone as itself, it named nobody; once the person signed in by device code and granted profile:read, it named them by their Datalayer account, with a verified receipt.",
|
|
1927
|
+
],
|
|
1924
1928
|
recorded: [
|
|
1925
1929
|
'A shipped business at its own domain was drilled on r1 on 13 October 2026 (AGENT_PROTOCOLS PR-13): its card naming Datalayer the Provider, a registered personal agent answered alone and for a person who signed in by device code, a stranger refused.',
|
|
1926
1930
|
],
|
|
1927
|
-
unverified: [
|
|
1928
|
-
"Not run live as a pair yet: the Studio's pairing of two copies was not drilled.",
|
|
1929
|
-
],
|
|
1931
|
+
unverified: [],
|
|
1930
1932
|
},
|
|
1931
1933
|
},
|
|
1932
1934
|
record: {
|
|
@@ -1955,8 +1957,8 @@ export const GUEST_DESK_APP_0_0_1 = {
|
|
|
1955
1957
|
documents: [],
|
|
1956
1958
|
alternatives: [],
|
|
1957
1959
|
},
|
|
1958
|
-
enabled:
|
|
1959
|
-
unavailable_because: '
|
|
1960
|
+
enabled: true,
|
|
1961
|
+
unavailable_because: '',
|
|
1960
1962
|
tags: ['example', 'companies'],
|
|
1961
1963
|
icon: 'apps',
|
|
1962
1964
|
emoji: 'đ¨',
|
|
@@ -2286,7 +2288,7 @@ export const LIVE_SHOP_CHAT_APP_0_0_1 = {
|
|
|
2286
2288
|
"The journey is the Personal Agent Protocol SDK's recorded journey conversation-streaming (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
2287
2289
|
],
|
|
2288
2290
|
unverified: [
|
|
2289
|
-
|
|
2291
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in by Device Sign-In, the person's order answered, and the conversation picked up from a new session with nothing said twice; but Datalayer reads the shop's replies a page at a time, each once it is written whole, so none was seen arriving as it was written.",
|
|
2290
2292
|
],
|
|
2291
2293
|
},
|
|
2292
2294
|
},
|
|
@@ -2317,7 +2319,7 @@ export const LIVE_SHOP_CHAT_APP_0_0_1 = {
|
|
|
2317
2319
|
alternatives: [],
|
|
2318
2320
|
},
|
|
2319
2321
|
enabled: false,
|
|
2320
|
-
unavailable_because: "
|
|
2322
|
+
unavailable_because: "Datalayer reads a shop's replies once each is written whole, so an answer arriving as the shop writes it cannot be shown yet.",
|
|
2321
2323
|
tags: ['example', 'companies'],
|
|
2322
2324
|
icon: 'apps',
|
|
2323
2325
|
emoji: 'đŦ',
|
|
@@ -2325,10 +2327,10 @@ export const LIVE_SHOP_CHAT_APP_0_0_1 = {
|
|
|
2325
2327
|
banner: '',
|
|
2326
2328
|
setup: [],
|
|
2327
2329
|
};
|
|
2328
|
-
export const
|
|
2330
|
+
export const MODEL_CHOICE_APP_0_0_2 = {
|
|
2329
2331
|
schema: 'loop.app/v1',
|
|
2330
2332
|
id: 'model-choice',
|
|
2331
|
-
version: '0.0.
|
|
2333
|
+
version: '0.0.2',
|
|
2332
2334
|
name: 'Model Choice',
|
|
2333
2335
|
kind: 'decision',
|
|
2334
2336
|
description: 'Which chat model should this use case run on? For a team choosing a model for one job â a summarizer, a classifier, an agent â from what a benchmark run measured and what a decision model reads in the answers.',
|
|
@@ -2860,13 +2862,15 @@ export const ORDER_DESK_APP_0_0_1 = {
|
|
|
2860
2862
|
},
|
|
2861
2863
|
],
|
|
2862
2864
|
verified: {
|
|
2863
|
-
live: [
|
|
2865
|
+
live: [
|
|
2866
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: discovery and a question answered signed out, then the person signed in both ways it declares â Direct Sign-In through the company's consent page and back to Datalayer, and Device Sign-In with the code entered at its /device page â each granting orders:read and orders:write, and the person's latest order answered for them; disconnected after, revoked at the company.",
|
|
2867
|
+
],
|
|
2864
2868
|
recorded: [
|
|
2865
2869
|
"The journey it takes is the Personal Agent Protocol SDK's demonstration with Manzanita Outfitters, run in the SDK's own tests (personal-agent-protocol 0.10.0).",
|
|
2866
2870
|
"The journey is the Personal Agent Protocol SDK's recorded journey user-with-a-company (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
2867
2871
|
],
|
|
2868
2872
|
unverified: [
|
|
2869
|
-
'
|
|
2873
|
+
"A model's turns in the Studio's Preview were not watched in that drill, and no exchange or return was confirmed live.",
|
|
2870
2874
|
],
|
|
2871
2875
|
},
|
|
2872
2876
|
},
|
|
@@ -2896,8 +2900,8 @@ export const ORDER_DESK_APP_0_0_1 = {
|
|
|
2896
2900
|
documents: [],
|
|
2897
2901
|
alternatives: [],
|
|
2898
2902
|
},
|
|
2899
|
-
enabled:
|
|
2900
|
-
unavailable_because: '
|
|
2903
|
+
enabled: true,
|
|
2904
|
+
unavailable_because: '',
|
|
2901
2905
|
tags: ['example', 'companies'],
|
|
2902
2906
|
icon: 'apps',
|
|
2903
2907
|
emoji: 'đĻ',
|
|
@@ -3023,12 +3027,14 @@ export const ORDER_TRACKER_APP_0_0_1 = {
|
|
|
3023
3027
|
},
|
|
3024
3028
|
],
|
|
3025
3029
|
verified: {
|
|
3026
|
-
live: [
|
|
3030
|
+
live: [
|
|
3031
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: a question answered signed out, the person signed in by Device Sign-In with the code entered at its /device page, granting orders:read alone, and their latest order answered for them; the sign-in erased with the clone (Can read cannot disconnect).",
|
|
3032
|
+
],
|
|
3027
3033
|
recorded: [
|
|
3028
3034
|
"The journey is the Personal Agent Protocol SDK's recorded journey of a sign-in kept for each person (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
3029
3035
|
],
|
|
3030
3036
|
unverified: [
|
|
3031
|
-
'
|
|
3037
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
3032
3038
|
],
|
|
3033
3039
|
},
|
|
3034
3040
|
},
|
|
@@ -3058,8 +3064,8 @@ export const ORDER_TRACKER_APP_0_0_1 = {
|
|
|
3058
3064
|
documents: [],
|
|
3059
3065
|
alternatives: [],
|
|
3060
3066
|
},
|
|
3061
|
-
enabled:
|
|
3062
|
-
unavailable_because:
|
|
3067
|
+
enabled: true,
|
|
3068
|
+
unavailable_because: '',
|
|
3063
3069
|
tags: ['example', 'companies'],
|
|
3064
3070
|
icon: 'apps',
|
|
3065
3071
|
emoji: 'đ',
|
|
@@ -3364,10 +3370,10 @@ export const PIPELINE_REPORT_APP_0_0_1 = {
|
|
|
3364
3370
|
banner: '',
|
|
3365
3371
|
setup: ["The agent 'cog-sales-pipeline-board-report:0.0.1' is not enabled."],
|
|
3366
3372
|
};
|
|
3367
|
-
export const
|
|
3373
|
+
export const QUOTE_CALCULATOR_APP_0_0_5 = {
|
|
3368
3374
|
schema: 'loop.app/v1',
|
|
3369
3375
|
id: 'quote-calculator',
|
|
3370
|
-
version: '0.0.
|
|
3376
|
+
version: '0.0.5',
|
|
3371
3377
|
name: 'Quote Calculator',
|
|
3372
3378
|
kind: 'widget',
|
|
3373
3379
|
description: 'Computes a quote from a number of seats, a plan and a term, and shows how the total is made.',
|
|
@@ -3637,10 +3643,10 @@ export const QUOTE_CALCULATOR_APP_0_0_1 = {
|
|
|
3637
3643
|
banner: '',
|
|
3638
3644
|
setup: [],
|
|
3639
3645
|
};
|
|
3640
|
-
export const
|
|
3646
|
+
export const REPORT_FROM_A_FILE_APP_0_0_4 = {
|
|
3641
3647
|
schema: 'loop.app/v1',
|
|
3642
3648
|
id: 'report-from-a-file',
|
|
3643
|
-
version: '0.0.
|
|
3649
|
+
version: '0.0.4',
|
|
3644
3650
|
name: 'Report from a File',
|
|
3645
3651
|
kind: 'widget',
|
|
3646
3652
|
description: 'Takes a CSV file, analyses it in the sandbox, and gives back a report: what the data holds, what stands out, and what is missing.',
|
|
@@ -3924,7 +3930,7 @@ export const RETURNS_DESK_APP_0_0_1 = {
|
|
|
3924
3930
|
owner: 'Datalayer <info@datalayer.io>',
|
|
3925
3931
|
agent: 'cog-crawler:0.0.1',
|
|
3926
3932
|
team: '',
|
|
3927
|
-
instructions: 'You arrange returns and repairs at Manzanita Outfitters for the person
|
|
3933
|
+
instructions: 'You arrange returns and repairs at Manzanita Outfitters for the person. Ask the shop for a return or a repair through its API, with pap_propose; the shop proposes each one with its terms: show them, word for word, and never confirm on your own; the person approves it on Waiting for you.',
|
|
3928
3934
|
model: '',
|
|
3929
3935
|
skills: [],
|
|
3930
3936
|
backendTools: [],
|
|
@@ -3943,7 +3949,7 @@ export const RETURNS_DESK_APP_0_0_1 = {
|
|
|
3943
3949
|
access: 'write',
|
|
3944
3950
|
as: 'user',
|
|
3945
3951
|
scopes: ['orders:read', 'orders:write'],
|
|
3946
|
-
interfaces: ['agent'],
|
|
3952
|
+
interfaces: ['agent', 'openapi'],
|
|
3947
3953
|
signIn: ['direct', 'device'],
|
|
3948
3954
|
extensions: ['operations'],
|
|
3949
3955
|
},
|
|
@@ -4047,7 +4053,7 @@ export const RETURNS_DESK_APP_0_0_1 = {
|
|
|
4047
4053
|
"The journey is the Personal Agent Protocol SDK's recorded journey operations (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
4048
4054
|
],
|
|
4049
4055
|
unverified: [
|
|
4050
|
-
'
|
|
4056
|
+
'Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in with orders:read and orders:write, an exchange the shop proposed in the conversation was approved on Waiting for you, done once and refused the second time; but the test company proposes returns and repairs only through its API, which this application does not use, so neither was shown.',
|
|
4051
4057
|
],
|
|
4052
4058
|
},
|
|
4053
4059
|
},
|
|
@@ -4078,7 +4084,7 @@ export const RETURNS_DESK_APP_0_0_1 = {
|
|
|
4078
4084
|
alternatives: [],
|
|
4079
4085
|
},
|
|
4080
4086
|
enabled: false,
|
|
4081
|
-
unavailable_because: "It
|
|
4087
|
+
unavailable_because: "It asks the test company Manzanita for returns and repairs through its API, which Datalayer's gateway does not reach yet, so neither can be shown live yet.",
|
|
4082
4088
|
tags: ['example', 'companies'],
|
|
4083
4089
|
icon: 'apps',
|
|
4084
4090
|
emoji: 'âŠī¸',
|
|
@@ -4086,10 +4092,10 @@ export const RETURNS_DESK_APP_0_0_1 = {
|
|
|
4086
4092
|
banner: '',
|
|
4087
4093
|
setup: [],
|
|
4088
4094
|
};
|
|
4089
|
-
export const
|
|
4095
|
+
export const SALES_APP_0_0_2 = {
|
|
4090
4096
|
schema: 'loop.app/v1',
|
|
4091
4097
|
id: 'sales',
|
|
4092
|
-
version: '0.0.
|
|
4098
|
+
version: '0.0.2',
|
|
4093
4099
|
name: 'Sales',
|
|
4094
4100
|
kind: 'chat',
|
|
4095
4101
|
description: "Takes a request for a financial report, such as revenue for a period, open invoices or a customer's balance, asks the Accounting application for it over A2A and hands over what Accounting answered, without adding a figure of its own.",
|
|
@@ -4222,10 +4228,10 @@ export const SALES_APP_0_0_1 = {
|
|
|
4222
4228
|
"The agent 'worker-sales-pipeline-board-report:0.0.1' is not enabled.",
|
|
4223
4229
|
],
|
|
4224
4230
|
};
|
|
4225
|
-
export const
|
|
4231
|
+
export const SHIP_OR_FIX_APP_0_0_2 = {
|
|
4226
4232
|
schema: 'loop.app/v1',
|
|
4227
4233
|
id: 'ship-or-fix',
|
|
4228
|
-
version: '0.0.
|
|
4234
|
+
version: '0.0.2',
|
|
4229
4235
|
name: 'Ship or Fix',
|
|
4230
4236
|
kind: 'decision',
|
|
4231
4237
|
description: 'Which agent configuration should we ship, on the evidence of a benchmark run? For an AI platform team, after every run.',
|
|
@@ -4563,7 +4569,7 @@ export const SHOP_CONCIERGE_APP_0_0_1 = {
|
|
|
4563
4569
|
"The journey is the Personal Agent Protocol SDK's recorded journey conversation-control (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
4564
4570
|
],
|
|
4565
4571
|
unverified: [
|
|
4566
|
-
|
|
4572
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in by Device Sign-In and the person's order answered, but asking for one of the shop's people came back to its agent: nobody works at the test company to take the conversation.",
|
|
4567
4573
|
],
|
|
4568
4574
|
},
|
|
4569
4575
|
},
|
|
@@ -4594,7 +4600,7 @@ export const SHOP_CONCIERGE_APP_0_0_1 = {
|
|
|
4594
4600
|
alternatives: [],
|
|
4595
4601
|
},
|
|
4596
4602
|
enabled: false,
|
|
4597
|
-
unavailable_because: "
|
|
4603
|
+
unavailable_because: "The test company Manzanita's staff, who take a conversation handed to them, are not on duty at the hosted shop yet, so asking for one of its people cannot be shown live yet.",
|
|
4598
4604
|
tags: ['example', 'companies'],
|
|
4599
4605
|
icon: 'apps',
|
|
4600
4606
|
emoji: 'đī¸',
|
|
@@ -4725,7 +4731,7 @@ export const SHOPPING_DESK_APP_0_0_1 = {
|
|
|
4725
4731
|
],
|
|
4726
4732
|
verified: {
|
|
4727
4733
|
live: [
|
|
4728
|
-
"Drilled on r1 on 13 October 2026 against the hosted test merchants, as its Preview
|
|
4734
|
+
"Drilled on r1 on 13 October 2026 against the hosted test merchants, as its Preview reaches the gateway's ucp and acp toolsets: at Example Store (store.examples.datalayer.run) a search, a checkout filled, the exact purchase asked of the person, approved on Waiting for you, bought once and refused a second time, its order read; at Example Outfitters (outfitters.examples.datalayer.run) the same checkout over ACP. Test merchants only: paid with a test instrument.",
|
|
4729
4735
|
],
|
|
4730
4736
|
recorded: [
|
|
4731
4737
|
"The purchase is the developers' UCP example (examples/protocols/ucp/shopping.py) against its local test store, Example Store, run in its own tests.",
|
|
@@ -4889,12 +4895,14 @@ export const SIGN_IN_DESK_APP_0_0_1 = {
|
|
|
4889
4895
|
},
|
|
4890
4896
|
],
|
|
4891
4897
|
verified: {
|
|
4892
|
-
live: [
|
|
4898
|
+
live: [
|
|
4899
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: Mediated Sign-In opened Datalayer's protected page, where the person typed the email and password the company asks, then the one-time code it sent; signed in with orders:read, nothing typed reaching the conversation, and their Ridge Jacket order answered for them.",
|
|
4900
|
+
],
|
|
4893
4901
|
recorded: [
|
|
4894
4902
|
"The journey is the Personal Agent Protocol SDK's recorded journey mediated-sign-in (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
4895
4903
|
],
|
|
4896
4904
|
unverified: [
|
|
4897
|
-
'
|
|
4905
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
4898
4906
|
],
|
|
4899
4907
|
},
|
|
4900
4908
|
},
|
|
@@ -4924,8 +4932,8 @@ export const SIGN_IN_DESK_APP_0_0_1 = {
|
|
|
4924
4932
|
documents: [],
|
|
4925
4933
|
alternatives: [],
|
|
4926
4934
|
},
|
|
4927
|
-
enabled:
|
|
4928
|
-
unavailable_because:
|
|
4935
|
+
enabled: true,
|
|
4936
|
+
unavailable_because: '',
|
|
4929
4937
|
tags: ['example', 'companies'],
|
|
4930
4938
|
icon: 'apps',
|
|
4931
4939
|
emoji: 'đ',
|
|
@@ -5025,12 +5033,14 @@ export const SIGNED_READER_APP_0_0_1 = {
|
|
|
5025
5033
|
},
|
|
5026
5034
|
],
|
|
5027
5035
|
verified: {
|
|
5028
|
-
live: [
|
|
5036
|
+
live: [
|
|
5037
|
+
"Drilled on r1 on 13 October 2026 against the hosted Example Verifier (verify.examples.datalayer.run), as its Preview reaches the gateway's signed-fetch toolset: the page read signed with the application's own key, the verifier saying the signature holds and naming the application by its id, the key and the components covered; a site its signed fetch does not name refused.",
|
|
5038
|
+
],
|
|
5029
5039
|
recorded: [
|
|
5030
|
-
"Example Verifier's checks are the counterparts service's own tests (a request signed with
|
|
5040
|
+
"Example Verifier's checks are the counterparts service's own tests (a request signed with Datalayer's open-source signer verified, an unsigned or tampered one answered the page anyone gets).",
|
|
5031
5041
|
],
|
|
5032
5042
|
unverified: [
|
|
5033
|
-
"
|
|
5043
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
5034
5044
|
],
|
|
5035
5045
|
},
|
|
5036
5046
|
},
|
|
@@ -5060,8 +5070,8 @@ export const SIGNED_READER_APP_0_0_1 = {
|
|
|
5060
5070
|
documents: [],
|
|
5061
5071
|
alternatives: [],
|
|
5062
5072
|
},
|
|
5063
|
-
enabled:
|
|
5064
|
-
unavailable_because:
|
|
5073
|
+
enabled: true,
|
|
5074
|
+
unavailable_because: '',
|
|
5065
5075
|
tags: ['example', 'companies'],
|
|
5066
5076
|
icon: 'apps',
|
|
5067
5077
|
emoji: 'đ',
|
|
@@ -5069,10 +5079,10 @@ export const SIGNED_READER_APP_0_0_1 = {
|
|
|
5069
5079
|
banner: '',
|
|
5070
5080
|
setup: [],
|
|
5071
5081
|
};
|
|
5072
|
-
export const
|
|
5082
|
+
export const SUPPLIER_COMPARISON_APP_0_0_2 = {
|
|
5073
5083
|
schema: 'loop.app/v1',
|
|
5074
5084
|
id: 'supplier-comparison',
|
|
5075
|
-
version: '0.0.
|
|
5085
|
+
version: '0.0.2',
|
|
5076
5086
|
name: 'Supplier Comparison',
|
|
5077
5087
|
kind: 'decision',
|
|
5078
5088
|
description: 'Which supplier should we choose for these orders? For an operations or procurement lead, at each sourcing round.',
|
|
@@ -5274,10 +5284,10 @@ export const SUPPLIER_COMPARISON_APP_0_0_1 = {
|
|
|
5274
5284
|
banner: '',
|
|
5275
5285
|
setup: [],
|
|
5276
5286
|
};
|
|
5277
|
-
export const
|
|
5287
|
+
export const SUPPORT_DESK_APP_0_0_4 = {
|
|
5278
5288
|
schema: 'loop.app/v1',
|
|
5279
5289
|
id: 'support-desk',
|
|
5280
|
-
version: '0.0.
|
|
5290
|
+
version: '0.0.4',
|
|
5281
5291
|
name: 'Support Desk',
|
|
5282
5292
|
kind: 'chat',
|
|
5283
5293
|
description: 'Answers product questions from the documentation it was given, cites the passage, and says when the documentation does not hold the answer.',
|
|
@@ -5700,7 +5710,7 @@ export const TRAVEL_DESK_APP_0_0_1 = {
|
|
|
5700
5710
|
],
|
|
5701
5711
|
verified: {
|
|
5702
5712
|
live: [
|
|
5703
|
-
"Drilled on r1 on 13 October 2026 against the hosted Example Air (air.examples.datalayer.run), as its Preview
|
|
5713
|
+
"Drilled on r1 on 13 October 2026 against the hosted Example Air (air.examples.datalayer.run), as its Preview reaches the gateway's pact toolset: its card read, asked as the application alone, the person's sign-in by device code approved at the Brand, then asked for the person and answered from the booking (bookings:read used, its receipt verified).",
|
|
5704
5714
|
],
|
|
5705
5715
|
recorded: [
|
|
5706
5716
|
"The journey is the developers' PACT example (examples/protocols/pact/personal_agent.py) against its local Provider, Example Air, run in its own tests (version 1.3.112).",
|
|
@@ -5896,32 +5906,32 @@ export const APP_CATALOGUE = {
|
|
|
5896
5906
|
'bookkeeping-desk': BOOKKEEPING_DESK_APP_0_0_1,
|
|
5897
5907
|
'change-detection': CHANGE_DETECTION_APP_0_0_1,
|
|
5898
5908
|
'crop-monitoring': CROP_MONITORING_APP_0_0_1,
|
|
5899
|
-
'customer-interview':
|
|
5900
|
-
'data-quality':
|
|
5909
|
+
'customer-interview': CUSTOMER_INTERVIEW_APP_0_0_2,
|
|
5910
|
+
'data-quality': DATA_QUALITY_APP_0_0_2,
|
|
5901
5911
|
decide: DECIDE_APP_0_0_1,
|
|
5902
5912
|
'disaster-assessment': DISASTER_ASSESSMENT_APP_0_0_1,
|
|
5903
5913
|
'errand-runner': ERRAND_RUNNER_APP_0_0_1,
|
|
5904
|
-
'event-response':
|
|
5905
|
-
'exchange-desk':
|
|
5914
|
+
'event-response': EVENT_RESPONSE_APP_0_0_2,
|
|
5915
|
+
'exchange-desk': EXCHANGE_DESK_APP_0_0_2,
|
|
5906
5916
|
'guest-desk': GUEST_DESK_APP_0_0_1,
|
|
5907
5917
|
'inbox-triage': INBOX_TRIAGE_APP_0_0_1,
|
|
5908
5918
|
'live-shop-chat': LIVE_SHOP_CHAT_APP_0_0_1,
|
|
5909
|
-
'model-choice':
|
|
5919
|
+
'model-choice': MODEL_CHOICE_APP_0_0_2,
|
|
5910
5920
|
'month-end-close': MONTH_END_CLOSE_APP_0_0_1,
|
|
5911
5921
|
'order-desk': ORDER_DESK_APP_0_0_1,
|
|
5912
5922
|
'order-tracker': ORDER_TRACKER_APP_0_0_1,
|
|
5913
5923
|
'pipeline-report': PIPELINE_REPORT_APP_0_0_1,
|
|
5914
|
-
'quote-calculator':
|
|
5915
|
-
'report-from-a-file':
|
|
5924
|
+
'quote-calculator': QUOTE_CALCULATOR_APP_0_0_5,
|
|
5925
|
+
'report-from-a-file': REPORT_FROM_A_FILE_APP_0_0_4,
|
|
5916
5926
|
'returns-desk': RETURNS_DESK_APP_0_0_1,
|
|
5917
|
-
sales:
|
|
5918
|
-
'ship-or-fix':
|
|
5927
|
+
sales: SALES_APP_0_0_2,
|
|
5928
|
+
'ship-or-fix': SHIP_OR_FIX_APP_0_0_2,
|
|
5919
5929
|
'shop-concierge': SHOP_CONCIERGE_APP_0_0_1,
|
|
5920
5930
|
'shopping-desk': SHOPPING_DESK_APP_0_0_1,
|
|
5921
5931
|
'sign-in-desk': SIGN_IN_DESK_APP_0_0_1,
|
|
5922
5932
|
'signed-reader': SIGNED_READER_APP_0_0_1,
|
|
5923
|
-
'supplier-comparison':
|
|
5924
|
-
'support-desk':
|
|
5933
|
+
'supplier-comparison': SUPPLIER_COMPARISON_APP_0_0_2,
|
|
5934
|
+
'support-desk': SUPPORT_DESK_APP_0_0_4,
|
|
5925
5935
|
'travel-desk': TRAVEL_DESK_APP_0_0_1,
|
|
5926
5936
|
'web-research': WEB_RESEARCH_APP_0_0_1,
|
|
5927
5937
|
};
|
|
@@ -6347,6 +6357,7 @@ export const APP_SOURCES = {
|
|
|
6347
6357
|
'customer-interview': {
|
|
6348
6358
|
schema: 'loop.app/v1',
|
|
6349
6359
|
id: 'customer-interview',
|
|
6360
|
+
version: '0.0.2',
|
|
6350
6361
|
name: 'Customer Interview',
|
|
6351
6362
|
kind: 'chat',
|
|
6352
6363
|
description: 'Interviews a customer about what you want to learn, without leading questions, and turns the conversation into insights that each cite what was said.',
|
|
@@ -6522,6 +6533,7 @@ export const APP_SOURCES = {
|
|
|
6522
6533
|
'data-quality': {
|
|
6523
6534
|
schema: 'loop.app/v1',
|
|
6524
6535
|
id: 'data-quality',
|
|
6536
|
+
version: '0.0.2',
|
|
6525
6537
|
name: 'Data Quality Investigation',
|
|
6526
6538
|
kind: 'decision',
|
|
6527
6539
|
description: 'Which anomalies in this dataset should we fix first? For a data team, before a dataset is used for a decision.',
|
|
@@ -6849,12 +6861,12 @@ export const APP_SOURCES = {
|
|
|
6849
6861
|
},
|
|
6850
6862
|
],
|
|
6851
6863
|
verified: {
|
|
6864
|
+
live: [
|
|
6865
|
+
"Drilled as a pair on r1 on 13 October 2026, its clone and Guest Desk's joined as the Studio joins them, the business shipped at its own domain: asked as itself, the business named nobody; once the person signed in at the business by device code and granted profile:read, asked for them, it named the person by their Datalayer account, with a verified receipt.",
|
|
6866
|
+
],
|
|
6852
6867
|
recorded: [
|
|
6853
6868
|
"The PACT journey is the developers' example (examples/protocols/pact/personal_agent.py) against its local Provider, run in its own tests.",
|
|
6854
6869
|
],
|
|
6855
|
-
unverified: [
|
|
6856
|
-
"Not run live as a pair yet: the Studio's pairing of two copies was not drilled.",
|
|
6857
|
-
],
|
|
6858
6870
|
},
|
|
6859
6871
|
},
|
|
6860
6872
|
record: {
|
|
@@ -6864,14 +6876,13 @@ export const APP_SOURCES = {
|
|
|
6864
6876
|
deployment: {
|
|
6865
6877
|
hosted: {},
|
|
6866
6878
|
},
|
|
6867
|
-
enabled: false,
|
|
6868
|
-
unavailable_because: 'It asks the business it is paired with: copy it with Guest Desk, its partner, and the Studio connects them; the pair has not been run live yet.',
|
|
6869
6879
|
tags: ['example', 'companies'],
|
|
6870
6880
|
emoji: 'đ',
|
|
6871
6881
|
},
|
|
6872
6882
|
'event-response': {
|
|
6873
6883
|
schema: 'loop.app/v1',
|
|
6874
6884
|
id: 'event-response',
|
|
6885
|
+
version: '0.0.2',
|
|
6875
6886
|
name: 'Event response',
|
|
6876
6887
|
kind: 'chat',
|
|
6877
6888
|
description: 'Takes word of a live event â a flood, a fire, a storm â asks Disaster assessment for the area affected and the damage and Change detection for what changed on the ground, each over A2A, and reports what they answered, adding no figure of its own.',
|
|
@@ -6948,18 +6959,18 @@ export const APP_SOURCES = {
|
|
|
6948
6959
|
'exchange-desk': {
|
|
6949
6960
|
schema: 'loop.app/v1',
|
|
6950
6961
|
id: 'exchange-desk',
|
|
6962
|
+
version: '0.0.2',
|
|
6951
6963
|
name: 'Exchange Desk',
|
|
6952
6964
|
kind: 'chat',
|
|
6953
6965
|
description: "Answers people's own agents about their orders and exchanges them, each exchange proposed with its exact terms and done once the person approves.",
|
|
6954
6966
|
owner: 'Datalayer <info@datalayer.io>',
|
|
6955
6967
|
agent: 'cog-crawler:0.0.1',
|
|
6956
|
-
instructions: "You are
|
|
6968
|
+
instructions: "You are the desk of the shop Manzanita Outfitters for people's own agents. Answer what anybody may ask before they sign in, and say nothing of an order you were not told. When a person signed in asks to exchange an order for another size, call exchange_order with that order and size at once: the call is shown to them with its exact terms and done only once they approve; the shop checks the order as it is done and says when it cannot be. Never exchange for somebody who has not signed in.",
|
|
6957
6969
|
tools: [
|
|
6958
6970
|
{
|
|
6959
6971
|
name: 'exchange_order',
|
|
6960
6972
|
description: 'Exchanges an order for another size, once the person approved it.',
|
|
6961
6973
|
parameters: {
|
|
6962
|
-
type: 'object',
|
|
6963
6974
|
properties: {
|
|
6964
6975
|
order_id: {
|
|
6965
6976
|
type: 'string',
|
|
@@ -6969,6 +6980,7 @@ export const APP_SOURCES = {
|
|
|
6969
6980
|
},
|
|
6970
6981
|
},
|
|
6971
6982
|
required: ['order_id', 'size'],
|
|
6983
|
+
type: 'object',
|
|
6972
6984
|
},
|
|
6973
6985
|
does: ['write'],
|
|
6974
6986
|
},
|
|
@@ -7013,8 +7025,11 @@ export const APP_SOURCES = {
|
|
|
7013
7025
|
},
|
|
7014
7026
|
],
|
|
7015
7027
|
verified: {
|
|
7028
|
+
recorded: [
|
|
7029
|
+
"Its exchange_order runs in process in Datalayer's own tests against a stand-in for Manzanita's back office: one exchange per confirmed operation, a retry answered as already done.",
|
|
7030
|
+
],
|
|
7016
7031
|
unverified: [
|
|
7017
|
-
'
|
|
7032
|
+
'Drilled on r1 on 13 October 2026, twice: shipped at its own domain, it answered a personal agent signed out, and a person signed in through Datalayer granted orders:read and orders:write. The second time it knew who had signed in, but asked to exchange, it looked for the order first and proposed nothing; it now proposes the exchange at once, and Manzanita checks the order when it is done. Not drilled since.',
|
|
7018
7033
|
],
|
|
7019
7034
|
},
|
|
7020
7035
|
},
|
|
@@ -7026,8 +7041,8 @@ export const APP_SOURCES = {
|
|
|
7026
7041
|
hosted: {},
|
|
7027
7042
|
},
|
|
7028
7043
|
enabled: false,
|
|
7029
|
-
unavailable_because:
|
|
7030
|
-
tags: ['example', 'companies'],
|
|
7044
|
+
unavailable_because: 'Its exchange_order is written against the hosted Manzanita and has not been drilled live yet.',
|
|
7045
|
+
tags: ['example', 'companies', 'python'],
|
|
7031
7046
|
emoji: 'đĒ',
|
|
7032
7047
|
},
|
|
7033
7048
|
'guest-desk': {
|
|
@@ -7038,7 +7053,7 @@ export const APP_SOURCES = {
|
|
|
7038
7053
|
description: "Answers people's own agents for your business, over PACT: what you offer to anyone who asks, and who they are here once they let their agent ask for them.",
|
|
7039
7054
|
owner: 'Datalayer <info@datalayer.io>',
|
|
7040
7055
|
agent: 'cog-crawler:0.0.1',
|
|
7041
|
-
instructions: "You answer for the business when a person's own agent asks. Say what the business offers to any agent. Say who the person is here â
|
|
7056
|
+
instructions: "You answer for the business when a person's own agent asks. Say what the business offers to any agent. Say who the person is here â their handle and name, as the request names them â only when the request says they granted profile:read; otherwise say they need to sign in first. Never more than the request carries: no email, which the business is never told.",
|
|
7042
7057
|
protocols: ['pact'],
|
|
7043
7058
|
pact: {
|
|
7044
7059
|
business: {
|
|
@@ -7088,12 +7103,12 @@ export const APP_SOURCES = {
|
|
|
7088
7103
|
},
|
|
7089
7104
|
],
|
|
7090
7105
|
verified: {
|
|
7106
|
+
live: [
|
|
7107
|
+
"Drilled as a pair on r1 on 13 October 2026: two clones joined as the Studio joins them, the business shipped at its own domain with the cloning account as its Brand; asked by Errand Runner's clone as itself, it named nobody; once the person signed in by device code and granted profile:read, it named them by their Datalayer account, with a verified receipt.",
|
|
7108
|
+
],
|
|
7091
7109
|
recorded: [
|
|
7092
7110
|
'A shipped business at its own domain was drilled on r1 on 13 October 2026 (AGENT_PROTOCOLS PR-13): its card naming Datalayer the Provider, a registered personal agent answered alone and for a person who signed in by device code, a stranger refused.',
|
|
7093
7111
|
],
|
|
7094
|
-
unverified: [
|
|
7095
|
-
"Not run live as a pair yet: the Studio's pairing of two copies was not drilled.",
|
|
7096
|
-
],
|
|
7097
7112
|
},
|
|
7098
7113
|
},
|
|
7099
7114
|
record: {
|
|
@@ -7103,8 +7118,6 @@ export const APP_SOURCES = {
|
|
|
7103
7118
|
deployment: {
|
|
7104
7119
|
hosted: {},
|
|
7105
7120
|
},
|
|
7106
|
-
enabled: false,
|
|
7107
|
-
unavailable_because: 'It answers the personal agents its Maker registers: copy it with Errand Runner, its partner, and the Studio registers it; the pair has not been run live yet.',
|
|
7108
7121
|
tags: ['example', 'companies'],
|
|
7109
7122
|
emoji: 'đ¨',
|
|
7110
7123
|
},
|
|
@@ -7317,7 +7330,7 @@ export const APP_SOURCES = {
|
|
|
7317
7330
|
"The journey is the Personal Agent Protocol SDK's recorded journey conversation-streaming (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
7318
7331
|
],
|
|
7319
7332
|
unverified: [
|
|
7320
|
-
|
|
7333
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in by Device Sign-In, the person's order answered, and the conversation picked up from a new session with nothing said twice; but Datalayer reads the shop's replies a page at a time, each once it is written whole, so none was seen arriving as it was written.",
|
|
7321
7334
|
],
|
|
7322
7335
|
},
|
|
7323
7336
|
},
|
|
@@ -7329,13 +7342,14 @@ export const APP_SOURCES = {
|
|
|
7329
7342
|
hosted: {},
|
|
7330
7343
|
},
|
|
7331
7344
|
enabled: false,
|
|
7332
|
-
unavailable_because: "
|
|
7345
|
+
unavailable_because: "Datalayer reads a shop's replies once each is written whole, so an answer arriving as the shop writes it cannot be shown yet.",
|
|
7333
7346
|
tags: ['example', 'companies'],
|
|
7334
7347
|
emoji: 'đŦ',
|
|
7335
7348
|
},
|
|
7336
7349
|
'model-choice': {
|
|
7337
7350
|
schema: 'loop.app/v1',
|
|
7338
7351
|
id: 'model-choice',
|
|
7352
|
+
version: '0.0.2',
|
|
7339
7353
|
name: 'Model Choice',
|
|
7340
7354
|
kind: 'decision',
|
|
7341
7355
|
description: 'Which chat model should this use case run on? For a team choosing a model for one job â a summarizer, a classifier, an agent â from what a benchmark run measured and what a decision model reads in the answers.',
|
|
@@ -7671,12 +7685,15 @@ export const APP_SOURCES = {
|
|
|
7671
7685
|
},
|
|
7672
7686
|
],
|
|
7673
7687
|
verified: {
|
|
7688
|
+
live: [
|
|
7689
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: discovery and a question answered signed out, then the person signed in both ways it declares â Direct Sign-In through the company's consent page and back to Datalayer, and Device Sign-In with the code entered at its /device page â each granting orders:read and orders:write, and the person's latest order answered for them; disconnected after, revoked at the company.",
|
|
7690
|
+
],
|
|
7674
7691
|
recorded: [
|
|
7675
7692
|
"The journey it takes is the Personal Agent Protocol SDK's demonstration with Manzanita Outfitters, run in the SDK's own tests (personal-agent-protocol 0.10.0).",
|
|
7676
7693
|
"The journey is the Personal Agent Protocol SDK's recorded journey user-with-a-company (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
7677
7694
|
],
|
|
7678
7695
|
unverified: [
|
|
7679
|
-
'
|
|
7696
|
+
"A model's turns in the Studio's Preview were not watched in that drill, and no exchange or return was confirmed live.",
|
|
7680
7697
|
],
|
|
7681
7698
|
},
|
|
7682
7699
|
},
|
|
@@ -7687,8 +7704,6 @@ export const APP_SOURCES = {
|
|
|
7687
7704
|
deployment: {
|
|
7688
7705
|
hosted: {},
|
|
7689
7706
|
},
|
|
7690
|
-
enabled: false,
|
|
7691
|
-
unavailable_because: 'It works with a shop for you through the Personal Agent Protocol, and the services that sign you in at a company are not shipped yet.',
|
|
7692
7707
|
tags: ['example', 'companies'],
|
|
7693
7708
|
emoji: 'đĻ',
|
|
7694
7709
|
},
|
|
@@ -7759,11 +7774,14 @@ export const APP_SOURCES = {
|
|
|
7759
7774
|
},
|
|
7760
7775
|
],
|
|
7761
7776
|
verified: {
|
|
7777
|
+
live: [
|
|
7778
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: a question answered signed out, the person signed in by Device Sign-In with the code entered at its /device page, granting orders:read alone, and their latest order answered for them; the sign-in erased with the clone (Can read cannot disconnect).",
|
|
7779
|
+
],
|
|
7762
7780
|
recorded: [
|
|
7763
7781
|
"The journey is the Personal Agent Protocol SDK's recorded journey of a sign-in kept for each person (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
7764
7782
|
],
|
|
7765
7783
|
unverified: [
|
|
7766
|
-
'
|
|
7784
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
7767
7785
|
],
|
|
7768
7786
|
},
|
|
7769
7787
|
},
|
|
@@ -7774,8 +7792,6 @@ export const APP_SOURCES = {
|
|
|
7774
7792
|
deployment: {
|
|
7775
7793
|
hosted: {},
|
|
7776
7794
|
},
|
|
7777
|
-
enabled: false,
|
|
7778
|
-
unavailable_because: "It is one of the Personal Agent Protocol's recorded journeys written as an application, and it has not run in the Studio against a company yet.",
|
|
7779
7795
|
tags: ['example', 'companies'],
|
|
7780
7796
|
emoji: 'đ',
|
|
7781
7797
|
},
|
|
@@ -8025,6 +8041,7 @@ export const APP_SOURCES = {
|
|
|
8025
8041
|
'quote-calculator': {
|
|
8026
8042
|
schema: 'loop.app/v1',
|
|
8027
8043
|
id: 'quote-calculator',
|
|
8044
|
+
version: '0.0.5',
|
|
8028
8045
|
name: 'Quote Calculator',
|
|
8029
8046
|
kind: 'widget',
|
|
8030
8047
|
description: 'Computes a quote from a number of seats, a plan and a term, and shows how the total is made.',
|
|
@@ -8233,6 +8250,7 @@ export const APP_SOURCES = {
|
|
|
8233
8250
|
'report-from-a-file': {
|
|
8234
8251
|
schema: 'loop.app/v1',
|
|
8235
8252
|
id: 'report-from-a-file',
|
|
8253
|
+
version: '0.0.4',
|
|
8236
8254
|
name: 'Report from a File',
|
|
8237
8255
|
kind: 'widget',
|
|
8238
8256
|
description: 'Takes a CSV file, analyses it in the sandbox, and gives back a report: what the data holds, what stands out, and what is missing.',
|
|
@@ -8446,7 +8464,7 @@ export const APP_SOURCES = {
|
|
|
8446
8464
|
description: 'Arranges returns and repairs at a shop for you, each one done exactly as you approved it, and only once.',
|
|
8447
8465
|
owner: 'Datalayer <info@datalayer.io>',
|
|
8448
8466
|
agent: 'cog-crawler:0.0.1',
|
|
8449
|
-
instructions: 'You arrange returns and repairs at Manzanita Outfitters for the person
|
|
8467
|
+
instructions: 'You arrange returns and repairs at Manzanita Outfitters for the person. Ask the shop for a return or a repair through its API, with pap_propose; the shop proposes each one with its terms: show them, word for word, and never confirm on your own; the person approves it on Waiting for you.',
|
|
8450
8468
|
protocols: ['pap'],
|
|
8451
8469
|
pap: {
|
|
8452
8470
|
profile: 'draft-01',
|
|
@@ -8456,6 +8474,7 @@ export const APP_SOURCES = {
|
|
|
8456
8474
|
company: 'manzanita.examples.datalayer.run',
|
|
8457
8475
|
access: 'write',
|
|
8458
8476
|
scopes: ['orders:read', 'orders:write'],
|
|
8477
|
+
interfaces: ['agent', 'openapi'],
|
|
8459
8478
|
extensions: ['operations'],
|
|
8460
8479
|
},
|
|
8461
8480
|
],
|
|
@@ -8520,7 +8539,7 @@ export const APP_SOURCES = {
|
|
|
8520
8539
|
"The journey is the Personal Agent Protocol SDK's recorded journey operations (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
8521
8540
|
],
|
|
8522
8541
|
unverified: [
|
|
8523
|
-
'
|
|
8542
|
+
'Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in with orders:read and orders:write, an exchange the shop proposed in the conversation was approved on Waiting for you, done once and refused the second time; but the test company proposes returns and repairs only through its API, which this application does not use, so neither was shown.',
|
|
8524
8543
|
],
|
|
8525
8544
|
},
|
|
8526
8545
|
},
|
|
@@ -8532,13 +8551,14 @@ export const APP_SOURCES = {
|
|
|
8532
8551
|
hosted: {},
|
|
8533
8552
|
},
|
|
8534
8553
|
enabled: false,
|
|
8535
|
-
unavailable_because: "It
|
|
8554
|
+
unavailable_because: "It asks the test company Manzanita for returns and repairs through its API, which Datalayer's gateway does not reach yet, so neither can be shown live yet.",
|
|
8536
8555
|
tags: ['example', 'companies'],
|
|
8537
8556
|
emoji: 'âŠī¸',
|
|
8538
8557
|
},
|
|
8539
8558
|
sales: {
|
|
8540
8559
|
schema: 'loop.app/v1',
|
|
8541
8560
|
id: 'sales',
|
|
8561
|
+
version: '0.0.2',
|
|
8542
8562
|
name: 'Sales',
|
|
8543
8563
|
kind: 'chat',
|
|
8544
8564
|
description: "Takes a request for a financial report, such as revenue for a period, open invoices or a customer's balance, asks the Accounting application for it over A2A and hands over what Accounting answered, without adding a figure of its own.",
|
|
@@ -8608,6 +8628,7 @@ export const APP_SOURCES = {
|
|
|
8608
8628
|
'ship-or-fix': {
|
|
8609
8629
|
schema: 'loop.app/v1',
|
|
8610
8630
|
id: 'ship-or-fix',
|
|
8631
|
+
version: '0.0.2',
|
|
8611
8632
|
name: 'Ship or Fix',
|
|
8612
8633
|
kind: 'decision',
|
|
8613
8634
|
description: 'Which agent configuration should we ship, on the evidence of a benchmark run? For an AI platform team, after every run.',
|
|
@@ -8815,7 +8836,7 @@ export const APP_SOURCES = {
|
|
|
8815
8836
|
"The journey is the Personal Agent Protocol SDK's recorded journey conversation-control (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
8816
8837
|
],
|
|
8817
8838
|
unverified: [
|
|
8818
|
-
|
|
8839
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita: signed in by Device Sign-In and the person's order answered, but asking for one of the shop's people came back to its agent: nobody works at the test company to take the conversation.",
|
|
8819
8840
|
],
|
|
8820
8841
|
},
|
|
8821
8842
|
},
|
|
@@ -8827,7 +8848,7 @@ export const APP_SOURCES = {
|
|
|
8827
8848
|
hosted: {},
|
|
8828
8849
|
},
|
|
8829
8850
|
enabled: false,
|
|
8830
|
-
unavailable_because: "
|
|
8851
|
+
unavailable_because: "The test company Manzanita's staff, who take a conversation handed to them, are not on duty at the hosted shop yet, so asking for one of its people cannot be shown live yet.",
|
|
8831
8852
|
tags: ['example', 'companies'],
|
|
8832
8853
|
emoji: 'đī¸',
|
|
8833
8854
|
},
|
|
@@ -8917,7 +8938,7 @@ export const APP_SOURCES = {
|
|
|
8917
8938
|
],
|
|
8918
8939
|
verified: {
|
|
8919
8940
|
live: [
|
|
8920
|
-
"Drilled on r1 on 13 October 2026 against the hosted test merchants, as its Preview
|
|
8941
|
+
"Drilled on r1 on 13 October 2026 against the hosted test merchants, as its Preview reaches the gateway's ucp and acp toolsets: at Example Store (store.examples.datalayer.run) a search, a checkout filled, the exact purchase asked of the person, approved on Waiting for you, bought once and refused a second time, its order read; at Example Outfitters (outfitters.examples.datalayer.run) the same checkout over ACP. Test merchants only: paid with a test instrument.",
|
|
8921
8942
|
],
|
|
8922
8943
|
recorded: [
|
|
8923
8944
|
"The purchase is the developers' UCP example (examples/protocols/ucp/shopping.py) against its local test store, Example Store, run in its own tests.",
|
|
@@ -9005,11 +9026,14 @@ export const APP_SOURCES = {
|
|
|
9005
9026
|
},
|
|
9006
9027
|
],
|
|
9007
9028
|
verified: {
|
|
9029
|
+
live: [
|
|
9030
|
+
"Drilled on r1 on 13 October 2026 against the hosted Manzanita (manzanita.examples.datalayer.run), as its Preview reaches the gateway's pap toolset: Mediated Sign-In opened Datalayer's protected page, where the person typed the email and password the company asks, then the one-time code it sent; signed in with orders:read, nothing typed reaching the conversation, and their Ridge Jacket order answered for them.",
|
|
9031
|
+
],
|
|
9008
9032
|
recorded: [
|
|
9009
9033
|
"The journey is the Personal Agent Protocol SDK's recorded journey mediated-sign-in (Datalayer's protocol examples, personal-agent-protocol 0.16.0), shown as recorded data, not live.",
|
|
9010
9034
|
],
|
|
9011
9035
|
unverified: [
|
|
9012
|
-
'
|
|
9036
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
9013
9037
|
],
|
|
9014
9038
|
},
|
|
9015
9039
|
},
|
|
@@ -9020,8 +9044,6 @@ export const APP_SOURCES = {
|
|
|
9020
9044
|
deployment: {
|
|
9021
9045
|
hosted: {},
|
|
9022
9046
|
},
|
|
9023
|
-
enabled: false,
|
|
9024
|
-
unavailable_because: "It is one of the Personal Agent Protocol's recorded journeys written as an application, and it has not run in the Studio against a company yet.",
|
|
9025
9047
|
tags: ['example', 'companies'],
|
|
9026
9048
|
emoji: 'đ',
|
|
9027
9049
|
},
|
|
@@ -9080,11 +9102,14 @@ export const APP_SOURCES = {
|
|
|
9080
9102
|
},
|
|
9081
9103
|
],
|
|
9082
9104
|
verified: {
|
|
9105
|
+
live: [
|
|
9106
|
+
"Drilled on r1 on 13 October 2026 against the hosted Example Verifier (verify.examples.datalayer.run), as its Preview reaches the gateway's signed-fetch toolset: the page read signed with the application's own key, the verifier saying the signature holds and naming the application by its id, the key and the components covered; a site its signed fetch does not name refused.",
|
|
9107
|
+
],
|
|
9083
9108
|
recorded: [
|
|
9084
|
-
"Example Verifier's checks are the counterparts service's own tests (a request signed with
|
|
9109
|
+
"Example Verifier's checks are the counterparts service's own tests (a request signed with Datalayer's open-source signer verified, an unsigned or tampered one answered the page anyone gets).",
|
|
9085
9110
|
],
|
|
9086
9111
|
unverified: [
|
|
9087
|
-
"
|
|
9112
|
+
"A model's turns in the Studio's Preview were not watched in that drill.",
|
|
9088
9113
|
],
|
|
9089
9114
|
},
|
|
9090
9115
|
},
|
|
@@ -9095,14 +9120,13 @@ export const APP_SOURCES = {
|
|
|
9095
9120
|
deployment: {
|
|
9096
9121
|
hosted: {},
|
|
9097
9122
|
},
|
|
9098
|
-
enabled: false,
|
|
9099
|
-
unavailable_because: "It reads Example Verifier through the gateway's signed fetch, which is not deployed yet.",
|
|
9100
9123
|
tags: ['example', 'companies'],
|
|
9101
9124
|
emoji: 'đ',
|
|
9102
9125
|
},
|
|
9103
9126
|
'supplier-comparison': {
|
|
9104
9127
|
schema: 'loop.app/v1',
|
|
9105
9128
|
id: 'supplier-comparison',
|
|
9129
|
+
version: '0.0.2',
|
|
9106
9130
|
name: 'Supplier Comparison',
|
|
9107
9131
|
kind: 'decision',
|
|
9108
9132
|
description: 'Which supplier should we choose for these orders? For an operations or procurement lead, at each sourcing round.',
|
|
@@ -9226,6 +9250,7 @@ export const APP_SOURCES = {
|
|
|
9226
9250
|
'support-desk': {
|
|
9227
9251
|
schema: 'loop.app/v1',
|
|
9228
9252
|
id: 'support-desk',
|
|
9253
|
+
version: '0.0.4',
|
|
9229
9254
|
name: 'Support Desk',
|
|
9230
9255
|
kind: 'chat',
|
|
9231
9256
|
description: 'Answers product questions from the documentation it was given, cites the passage, and says when the documentation does not hold the answer.',
|
|
@@ -9538,7 +9563,7 @@ export const APP_SOURCES = {
|
|
|
9538
9563
|
],
|
|
9539
9564
|
verified: {
|
|
9540
9565
|
live: [
|
|
9541
|
-
"Drilled on r1 on 13 October 2026 against the hosted Example Air (air.examples.datalayer.run), as its Preview
|
|
9566
|
+
"Drilled on r1 on 13 October 2026 against the hosted Example Air (air.examples.datalayer.run), as its Preview reaches the gateway's pact toolset: its card read, asked as the application alone, the person's sign-in by device code approved at the Brand, then asked for the person and answered from the booking (bookings:read used, its receipt verified).",
|
|
9542
9567
|
],
|
|
9543
9568
|
recorded: [
|
|
9544
9569
|
"The journey is the developers' PACT example (examples/protocols/pact/personal_agent.py) against its local Provider, Example Air, run in its own tests (version 1.3.112).",
|
|
@@ -9654,7 +9679,7 @@ export const APP_BUILT = {
|
|
|
9654
9679
|
'disaster-assessment': 'written',
|
|
9655
9680
|
'errand-runner': 'written',
|
|
9656
9681
|
'event-response': 'written',
|
|
9657
|
-
'exchange-desk': '
|
|
9682
|
+
'exchange-desk': 'python',
|
|
9658
9683
|
'guest-desk': 'written',
|
|
9659
9684
|
'inbox-triage': 'written',
|
|
9660
9685
|
'live-shop-chat': 'written',
|