@microsoft/app-manifest 1.0.2-beta.2025081809.0 → 1.0.2-rc.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.
@@ -0,0 +1,451 @@
1
+ /**
2
+ * The root of the declarative agent manifest document is a JSON object that contains
3
+ * members that describe the declarative agent.
4
+ */
5
+ export interface DeclarativeAgentManifestV1D5 {
6
+ /**
7
+ * Required. Not localizable. The version of the schema this manifest is using.
8
+ */
9
+ version: "v1.5";
10
+ /**
11
+ * Optional. Not localizable.
12
+ */
13
+ id?: string;
14
+ /**
15
+ * Required. Localizable. The name of the declarative agent. It MUST contain at least one
16
+ * nonwhitespace character and MUST be 100 characters or less.
17
+ */
18
+ name: string;
19
+ /**
20
+ * Required. Localizable. The description of the declarative agent. It MUST contain at least
21
+ * one nonwhitespace character and MUST be 1,000 characters or less.
22
+ */
23
+ description: string;
24
+ disclaimer?: Disclaimer;
25
+ /**
26
+ * Optional. Not localizable. The detailed instructions or guidelines on how the declarative
27
+ * agent should behave, its functions, and any behaviors to avoid. It MUST contain at least
28
+ * one nonwhitespace character and MUST be 8,000 characters or less.
29
+ */
30
+ instructions?: string;
31
+ /**
32
+ * Optional. A JSON object that contains configuration settings that modify the behavior of
33
+ * the DA orchestration.
34
+ */
35
+ behavior_overrides?: BehaviorOverrides;
36
+ /**
37
+ * Optional. Contains an array of objects that define capabilities of the declarative agent.
38
+ */
39
+ capabilities?: CapabilityElement[];
40
+ /**
41
+ * Optional. A list of examples of questions that the declarative agent can answer. There
42
+ * MUST NOT be more than six objects in the array.
43
+ */
44
+ conversation_starters?: ConversationStarterElement[];
45
+ /**
46
+ * Optional. A list of objects that identify API plugins that provide actions accessible to
47
+ * the declarative agent.
48
+ */
49
+ actions?: ActionElement[];
50
+ [property: string]: any;
51
+ }
52
+ /**
53
+ * Identifies an API plugin manifest for a plugin used as an action by the declarative agent.
54
+ */
55
+ export interface ActionElement {
56
+ /**
57
+ * Required. Not localizable. A unique identifier for the action. It MAY be represented by a
58
+ * GUID.
59
+ */
60
+ id: string;
61
+ /**
62
+ * Required. Not localizable. A path to the API plugin manifest for this action.
63
+ */
64
+ file: string;
65
+ [property: string]: any;
66
+ }
67
+ /**
68
+ * Optional. A JSON object that contains configuration settings that modify the behavior of
69
+ * the DA orchestration.
70
+ *
71
+ * A JSON object that contains configuration settings that modify the behavior of the DA
72
+ * orchestration.
73
+ */
74
+ export interface BehaviorOverrides {
75
+ /**
76
+ * An object that contains special instructions for the declarative agent.
77
+ */
78
+ special_instructions?: SpecialInstructions;
79
+ /**
80
+ * An object that contains suggestions for behavior overrides for the declarative agent.
81
+ */
82
+ suggestions?: Suggestions;
83
+ [property: string]: any;
84
+ }
85
+ /**
86
+ * An object that contains special instructions for the declarative agent.
87
+ *
88
+ * A JSON object that contains members used for injecting special instructions into the
89
+ * prompt. The object has a discourage_model_knowledge boolean property. If this property is
90
+ * set to true, the DA will be discouraged from using model knowledge when generating
91
+ * responses. The default value is false
92
+ */
93
+ export interface SpecialInstructions {
94
+ /**
95
+ * A boolean value that indicates whether the declarative agent should be discouraged from
96
+ * using model knowledge when generating responses.
97
+ */
98
+ discourage_model_knowledge?: boolean;
99
+ [property: string]: any;
100
+ }
101
+ /**
102
+ * An object that contains suggestions for behavior overrides for the declarative agent.
103
+ *
104
+ * A JSON object that contains configuration settings for the suggestions feature. The
105
+ * object has a required disabled boolean property. If this property is set to true, the
106
+ * suggestions feature will be disabled. The default value is false.
107
+ */
108
+ export interface Suggestions {
109
+ /**
110
+ * A boolean value that indicates whether the suggestions feature is disabled. If this
111
+ * property is set to true, the suggestions feature will be disabled. The default value is
112
+ * false.
113
+ */
114
+ disabled?: boolean;
115
+ [property: string]: any;
116
+ }
117
+ /**
118
+ * Represents a base capability object.
119
+ *
120
+ * Indicates that the declarative agent can search the web for grounding information.
121
+ *
122
+ * Indicates that the declarative agent can search a user's SharePoint and OneDrive for
123
+ * grounding information.
124
+ *
125
+ * Indicates that the declarative agent can search selected Microsoft Graph connectors for
126
+ * grounding information.
127
+ *
128
+ * Indicates that the declarative agent can generate and execute code.
129
+ *
130
+ * Indicates that the declarative agent can images and art based on the text input from the
131
+ * user.
132
+ *
133
+ * Indicates that the declarative agent can search through Teams channels, teams, meetings,
134
+ * 1:1 chats and group chats.
135
+ *
136
+ * A JSON object whose presence indicates that the DA will be able to search within Email
137
+ * Messages in the mailboxes user has access to.
138
+ *
139
+ * Indicates that the DA will be able to search people data in the organization.
140
+ *
141
+ * A JSON object whose presence indicates that the DA will be using tenant/task specific
142
+ * models.
143
+ *
144
+ * Indicates that the DA can search through meetings.
145
+ */
146
+ export interface CapabilityElement {
147
+ /**
148
+ * Required. The name of the capability. Allowed values are WebSearch, CodeInterpreter,
149
+ * OneDriveAndSharePoint, GraphConnectors, TeamsMessages, Dataverse, Email, ScenarioModels,
150
+ * People and GraphicArt.
151
+ *
152
+ * Required. Must be set to WebSearch.
153
+ *
154
+ * Required. Must be set to OneDriveAndSharePoint.
155
+ *
156
+ * Required. Must be set to GraphConnectors.
157
+ *
158
+ * Required. Must be set to CodeInterpreter.
159
+ *
160
+ * Required. Must be set to GraphicArt.
161
+ *
162
+ * Required. Must be set to TeamsMessages.
163
+ *
164
+ * Required: Must be set to Dataverse
165
+ *
166
+ * Required: Must be set to Email
167
+ *
168
+ * Required. Must be set to People.
169
+ *
170
+ * Required. Must be set to the string literal `ScenarioModels`
171
+ *
172
+ * Required. Must be set to Meetings.
173
+ */
174
+ name: Name;
175
+ /**
176
+ * Optional. An array of sites used to constrain the content accessible to the DA to just
177
+ * the content identified via the items of array.
178
+ */
179
+ sites?: SiteElement[];
180
+ /**
181
+ * Optional. An array of objects that identify SharePoint or OneDrive sources using IDs.
182
+ */
183
+ items_by_sharepoint_ids?: ItemsBySharepointIDElement[];
184
+ /**
185
+ * Optional. An array of objects that identify SharePoint or OneDrive sources by URL.
186
+ */
187
+ items_by_url?: ItemsByURLElement[];
188
+ /**
189
+ * Optional. An array of objects that identify the Microsoft Graph connectors available to
190
+ * the declarative agent
191
+ */
192
+ connections?: ConnectionElement[];
193
+ /**
194
+ * This member can be used to constrain the content accessible to the DA to just the content
195
+ * identified via the members of each Teams url
196
+ */
197
+ urls?: URLElement[];
198
+ /**
199
+ * An array of Objects that represent the knowledge sources for the Dataverse in the
200
+ * Declarative Agent
201
+ */
202
+ knowledge_sources?: KnowledgeSourceElement[];
203
+ /**
204
+ * A JSON array of Folder Object. This member can be used to constrain the content
205
+ * accessible to the DA to just the emails present in the folders identified by members of
206
+ * each Folder Object.
207
+ */
208
+ folders?: FolderElement[];
209
+ /**
210
+ * A JSON string that contains SMTP address of the shared mailbox. The presence of this
211
+ * field indicates that the DA constrain its search for relevant emails only to that
212
+ * mailbox. Emails from user's primary mailbox is not searched when this field is present.
213
+ */
214
+ shared_mailbox?: string;
215
+ /**
216
+ * A list of Scenario Model objects denoting supported models
217
+ */
218
+ models?: ModelElement[];
219
+ [property: string]: any;
220
+ }
221
+ /**
222
+ * Identifies a Microsoft Graph connector.
223
+ */
224
+ export interface ConnectionElement {
225
+ /**
226
+ * Required. Not localizable The unique identifier of the Microsoft Graph connector.
227
+ */
228
+ connection_id: string;
229
+ /**
230
+ * KQL based string containing the query filter
231
+ */
232
+ additional_search_terms?: string;
233
+ /**
234
+ * A list of objects to store urls for external items.
235
+ */
236
+ items_by_external_url?: ItemsByExternalURLElement[];
237
+ /**
238
+ * A list of objects to store identifiers for external items
239
+ */
240
+ items_by_external_id?: ItemsByExternalIDElement[];
241
+ /**
242
+ * A list of objects to store the container paths to items within a connection
243
+ */
244
+ items_by_path?: ItemsByPathElement[];
245
+ /**
246
+ * A list of objects to store containers names
247
+ */
248
+ items_by_container_name?: ItemsByContainerNameElement[];
249
+ /**
250
+ * A list of objects to store urls of containers
251
+ */
252
+ items_by_container_url?: ItemsByContainerURLElement[];
253
+ [property: string]: any;
254
+ }
255
+ /**
256
+ * Identifies an item by its container name.
257
+ */
258
+ export interface ItemsByContainerNameElement {
259
+ /**
260
+ * A unique identifier for a container name
261
+ */
262
+ container_name: string;
263
+ [property: string]: any;
264
+ }
265
+ /**
266
+ * Identifies an item by its container URL.
267
+ */
268
+ export interface ItemsByContainerURLElement {
269
+ /**
270
+ * Url for external graph connector item container
271
+ */
272
+ container_url: string;
273
+ [property: string]: any;
274
+ }
275
+ /**
276
+ * Identifies an item by its external ID.
277
+ */
278
+ export interface ItemsByExternalIDElement {
279
+ /**
280
+ * A unique identifier for an external item.
281
+ */
282
+ item_id: string;
283
+ [property: string]: any;
284
+ }
285
+ /**
286
+ * Identifies an item by its external URL.
287
+ */
288
+ export interface ItemsByExternalURLElement {
289
+ /**
290
+ * Url for external graph connector item.
291
+ */
292
+ url: string;
293
+ [property: string]: any;
294
+ }
295
+ /**
296
+ * Identifies an item by its path.
297
+ */
298
+ export interface ItemsByPathElement {
299
+ /**
300
+ * A container path to an external item
301
+ */
302
+ path: string;
303
+ [property: string]: any;
304
+ }
305
+ export interface FolderElement {
306
+ /**
307
+ * A JSON string that identifies an email folder. This can either be id of the folder or one
308
+ * of the well known names.
309
+ */
310
+ folder_id: string;
311
+ [property: string]: any;
312
+ }
313
+ /**
314
+ * Contains one or more object identifiers that identify a SharePoint or OneDrive resource.
315
+ */
316
+ export interface ItemsBySharepointIDElement {
317
+ /**
318
+ * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive site.
319
+ */
320
+ site_id?: string;
321
+ /**
322
+ * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive web.
323
+ */
324
+ web_id?: string;
325
+ /**
326
+ * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive list.
327
+ */
328
+ list_id?: string;
329
+ /**
330
+ * Optional. Not localizable. The GUID identifier of a SharePoint or OneDrive item.
331
+ */
332
+ unique_id?: string;
333
+ /**
334
+ * A JSON String that uniquely identifies a part of a SharePoint item. e.g a OneNote page.
335
+ */
336
+ part_id?: string;
337
+ /**
338
+ * A String that qualifies the kind of part that the "part_id" refers to. Currently this
339
+ * value can only be equal to the string literal: "OneNotePart".
340
+ */
341
+ part_type?: "OneNotePart";
342
+ /**
343
+ * Boolean value indicating whether to enable searching associated sites. This value is only
344
+ * applicable when the site_id value references a SharePoint HubSite.
345
+ */
346
+ search_associated_sites?: boolean;
347
+ }
348
+ /**
349
+ * A String that qualifies the kind of part that the "part_id" refers to. Currently this
350
+ * value can only be equal to the string literal: "OneNotePart".
351
+ */
352
+ /**
353
+ * Represents the URL of a SharePoint or OneDrive resource.
354
+ */
355
+ export interface ItemsByURLElement {
356
+ /**
357
+ * Optional. Not localizable. An absolute URL to a SharePoint or OneDrive resource.
358
+ */
359
+ url?: string;
360
+ }
361
+ export interface KnowledgeSourceElement {
362
+ /**
363
+ * A unique identifier for the host in Dataverse.
364
+ */
365
+ host_name?: string;
366
+ /**
367
+ * A unique identifier that defines the configuration for how the copilot agent interacts
368
+ * with Dataverse knowledge.
369
+ */
370
+ skill?: string;
371
+ /**
372
+ * An array of table_name objects which contain table names in DataVerse to scope the
373
+ * knowledge of the Declarative Agent
374
+ */
375
+ tables?: TableElement[];
376
+ [property: string]: any;
377
+ }
378
+ export interface TableElement {
379
+ /**
380
+ * A string to represent the table name.
381
+ */
382
+ table_name?: string;
383
+ [property: string]: any;
384
+ }
385
+ /**
386
+ * An Object representing a scenario model.
387
+ */
388
+ export interface ModelElement {
389
+ /**
390
+ * A unique ID used to identify a Scenario Model
391
+ */
392
+ id: string;
393
+ [property: string]: any;
394
+ }
395
+ export type Name = "WebSearch" | "CodeInterpreter" | "OneDriveAndSharePoint" | "GraphConnectors" | "GraphicArt" | "TeamsMessages" | "Dataverse" | "Email" | "People" | "ScenarioModels" | "Meetings";
396
+ /**
397
+ * An object that identifies a site used to constrain the content accessible to the
398
+ * declarative agent.
399
+ */
400
+ export interface SiteElement {
401
+ /**
402
+ * An absolute URL to a site.
403
+ */
404
+ url: string;
405
+ [property: string]: any;
406
+ }
407
+ /**
408
+ * Identifies a Teams channel, team or meeting chat
409
+ */
410
+ export interface URLElement {
411
+ /**
412
+ * A string that contains a well formed, Teams url to a Teams channel, team or meeting chat
413
+ * (join url)
414
+ */
415
+ url: string;
416
+ [property: string]: any;
417
+ }
418
+ /**
419
+ * Contains hints that are displayed to the user to demonstrate how they can get started
420
+ * using the declarative agent.
421
+ */
422
+ export interface ConversationStarterElement {
423
+ /**
424
+ * Required. Localizable. A suggestion that the user can use to obtain the desired result
425
+ * from the DC. It MUST contain at least one nonwhitespace character.
426
+ */
427
+ text: string;
428
+ /**
429
+ * Optional. Localizable. A unique title for the conversation starter. It MUST contain at
430
+ * least one nonwhitespace character.
431
+ */
432
+ title?: string;
433
+ [property: string]: any;
434
+ }
435
+ /**
436
+ * An optional JSON object containing a disclaimer message that, if provided, will be
437
+ * displayed to users at the start of a conversation to satisfy legal or compliance
438
+ * requirements. The object contains a required 'text' string property that MUST NOT be null
439
+ * and MUST contain at least 1 non-whitespace character.
440
+ */
441
+ export interface Disclaimer {
442
+ /**
443
+ * A JSON string that contains the disclaimer message. Characters beyond 500 MAY be ignored.
444
+ */
445
+ text: string;
446
+ [property: string]: any;
447
+ }
448
+ export declare class Convert {
449
+ static toDeclarativeAgentManifestV1D5(json: string): DeclarativeAgentManifestV1D5;
450
+ static declarativeAgentManifestV1D5ToJson(value: DeclarativeAgentManifestV1D5): string;
451
+ }