jointrashposs/content/en/docs/4.for-developers/plugin/create-plugin.md
かっこかり 6040f4902b
New Crowdin updates (#83)
* New translations ja-jp.yml (French)

* New translations share-form.md (French)

* New translations ja-jp.yml (Italian)

* New translations share-form.md (Italian)

* New translations ja-jp.yml (Korean)

* New translations 1.about-misskey.md (Korean)

* New translations reaction.md (Korean)

* New translations share-form.md (Korean)

* New translations 1.index.md (Korean)

* New translations announcement.md (Korean)

* New translations ftt.md (Korean)

* New translations role.md (Korean)

* New translations 1.index.md (Korean)

* New translations bash.md (Korean)

* New translations docker.md (Korean)

* New translations manual.md (Korean)

* New translations ubuntu-manual.md (Korean)

* New translations 1.index.md (Korean)

* New translations 1.index.md (Korean)

* New translations global-timeline.md (Korean)

* New translations home-timeline.md (Korean)

* New translations hybrid-timeline.md (Korean)

* New translations index.md (Korean)

* New translations local-timeline.md (Korean)

* New translations main.md (Korean)

* New translations 5.releases.md (Korean)

* New translations endpoints.md (Korean)

* New translations ja-jp.yml (Polish)

* New translations share-form.md (Polish)

* New translations ja-jp.yml (Chinese Simplified)

* New translations share-form.md (Chinese Simplified)

* New translations share-form.md (Chinese Traditional)

* New translations 5.releases.md (Chinese Traditional)

* New translations ja-jp.yml (English)

* New translations 1.index.md (English)

* New translations ads.md (English)

* New translations antenna.md (English)

* New translations charts.md (English)

* New translations clip.md (English)

* New translations share-form.md (English)

* New translations create-plugin.md (English)

* New translations plugin-api-reference.md (English)

* New translations publish-on-your-website.md (English)

* New translations ja-jp.yml (Indonesian)

* New translations share-form.md (Indonesian)
2023-12-26 12:57:24 +09:00

1.6 KiB

Creating Plugins

The plugin feature of the Misskey Web Client allows you to extend the client and add various features to it. This document describes how to create a Plugin.

AiScript

Plugins are scripts written using AiScript.

Metadata

Plugins must use AiScript's metadata feature to define the plugin's metadata as the default.Example of some metadata are:

/// @ 0.12.4
### {
  name: "Plugin Name"
  version: "4.2.1"
  author: "Plugin Author"
  description: "Plugin Description"
}

Metadata is an object that contains the following properties:

name

Plugin name

author

Plugin author

version

Plugin version.A number must be specified.

description

Plugin description

permissions

Permissions required by the plugin.Used when making requests to the Misskey API.

config

An object representing the plugin's settings. Keys are setting names and values are any of the below properties.

type

A string representing the setting's value type.Can be either a string, number, or boolean.

label

Setting name displayed to users

description

Description of the setting

default

Default value of the setting

API

Misskey Web exposes APIs for Plugins, which can be used to extend client functionality. Please refer to the Plugin API Reference for information on what APIs are available.

Distributing Plugins

Starting with v2023.11.0, you can install plugins directly from your website with one click.

If you want to provide plugin installation functionality, you will need to implement an API on your site.For more information, please see here.