UNPKG

@openfloor/protocol

Version:

Open Floor Protocol implementation for JavaScript/TypeScript - enables interoperable multi-agent conversations

111 lines (110 loc) 4.34 kB
{ "$id": "https://github.com/open-voice-interoperability/docs/tree/main/schemas/assistant-manifest/1.0.0/assistant-manifest-schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "description": "A representation of an 'assistant manifest’ - a standard format for publishing the identity and capability of an Open-Floor agent.", "type": "object", "required": [ "identification","capabilities" ], "properties": { "identification": { "required": ["serviceUrl" , "organization", "conversationalName" ], "properties": { "speakerUri": { "$ref": "#/$defs/uri", "description": "The unique identity of the agent." }, "serviceUrl": { "$ref": "#/$defs/url", "description": "The endpoint of the conversational assistant." }, "organization": { "type": "string", "description": "The name of the organization administering this assistant." }, "conversationalName": { "type": "string", "description": "The 'given name' of the conversational agent." }, "department": { "type": "string", "description": "The department within the organization." }, "role": { "type": "string", "description": "The 'job title', or 'role' of the assistant." }, "synopsis": { "type": "string", "description": "A sentence signposting the who the assistant is and their area of expertise." } } }, "capabilities": { "type": "array", "description": "A list of capabilities supported by this endpoint.", "items" : { "type" : "object", "description": "One of the capabilities supported by this endpoint.", "required": ["keyphrases" , "descriptions" ], "properties" : { "keyphrases": { "type": "array", "description": "A list of searchable key phrases.", "items" : { "type": "string", "description": "A searchable key phrase" } }, "languages": { "type": "array", "description": "A list of the languages supported by this capability.", "items" : { "type": "string", "description": "A language supported by this capability" } }, "descriptions": { "type": "array", "description": "A set of searchable texts, in no particular order, describing the services and capabilities of the assistant.", "items" : { "type": "string", "description": "A searchable text describing one of the services or capabilities of the assistant." } }, "supportedLayers": { "type" : "object", "description": "The input and output capabilities supported by this endpoint.", "required": ["input" , "output" ], "properties" : { "input": { "type": "array", "description": "A list of the dialogEvent layers supported as input for this capability.", "items" : { "type": "string", "description": "A dialogEvent input layer supported by this capability" } }, "output": { "type": "array", "description": "A list of the dialogEvent layers supported as output for this capability.", "items" : { "type": "string", "description": "A dialogEvent output layer supported by this capability" } } } } } } } }, "$defs": { "url": { "type": "string", "description": "Any valid URL" }, "uri": { "type": "string", "description": "Any valid URI" } } }