{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://squeebot.lunasqu.ee/pkg/plugin.schema.json", "title": "plugin", "description": "Squeebot plugin definition", "type": "object", "properties": { "main": { "type": "string", "description": "Plugin's entry file, must export a class that extends Plugin" }, "name": { "type": "string", "description": "Name of the plugin" }, "description": { "type": "string", "description": "A short description of the plugin's functions" }, "tags": { "type": "array", "description": "A list of descriptive tags", "items": { "type": "string" } }, "version": { "type": "string", "description": "Semantic version(ing)" }, "dependencies": { "type": "array", "description": "A list of plugin dependencies. ? suffix denotes optional.", "items": { "type": "string" } }, "npmDependencies": { "type": "array", "description": "A list of NPM dependencies, package@version format", "items": { "type": "string" } } }, "required": ["main", "name", "version"] }