Skip to content
AstrBot
Main Navigation HomeBlogRoadmapHTTP API

English

简体中文

English

简体中文

Toggle dark mode

Intro & DeployMessaging PlatformsAI IntegrationUsageDevelopment
Sidebar Navigation

Introduction

What is AstrBot

Community

FAQ

Deployment

Package Manager

Desktop Client

One-click Launcher

Docker

Kubernetes

BT Panel

1Panel

Manual

Other Deployments

CasaOS

Compshare GPU

Community-provided Deployment

Support Us

Messaging Platforms

Quick Start

QQ Official Bot

Websockets

Webhook

OneBot v11

WeCom Application

WeCom AI Bot

WeChat Official Account

Personal WeChat

Lark

DingTalk

Telegram

LINE

Slack

Mattermost

Misskey

Discord

KOOK

Satori

Connect Satori

Using server-satori

Community-provided

Matrix

VoceChat

AI Integration

✨ Model Providers

MiraRouter

NewAPI

ShengSuanYun

AIHubMix

PPIO Cloud

SiliconFlow

TokenPony

302.AI

Ollama

LMStudio

⚙️ Agent Runners

Built-in Agent Runner

Dify

Coze

Alibaba Bailian

DeerFlow

Usage

WebUI

AstrBot CLI

Built-in Commands

Plugins

Plugins

MCP

Skills

AstrBot Built-in AI

Agent Sandbox

SubAgent Orchestration

Proactive Capabilities

Web Search

Knowledge Base

Context Compression

Custom Rules

Agent Execution Mode

Unified Webhook Mode

Development

Plugin Development

🌠 Getting Started

Minimal Example

Listen to Message Events

Send Messages

Plugin Configuration

Plugin Views

Plugin Internationalization

AI

Storage

HTML to Image

Session Control

Publish Plugin

Plugin Market Specification

Versions

2026-06-27

Platform Adapter Integration

AstrBot HTTP API

API Scope–Endpoint Reference

AstrBot Configuration File

Others

Diagnostics

Self-hosted HTML to Image

Open Source Summer

OSPP 2025

On this page

AstrBot Plugins ​

Plugins are extensions that add features to AstrBot. They can introduce chat commands, connect external services, or give AI agents new tools without requiring changes to AstrBot itself.

For example, if you want your bot to check the weather, subscribe to updates, generate images, or interact with a service in chat, look for a suitable plugin in the market. Using plugins usually requires no programming. Writing or modifying a plugin does.

This guide starts with installation and everyday use. If you want to build a plugin, go to the Plugin Development Guide.

What are plugins, and what can they do? ​

AstrBot handles the basics: receiving messages, connecting models, and managing conversations. Plugins use AstrBot's APIs to add functionality to these workflows. In development documentation and code, plugins are also called Stars.

CapabilityHow it works and examples
Chat commandsA specific command triggers a feature, such as retrieving information, generating content, or performing an administration task. Each plugin defines its command names and arguments.
AI toolsAn agent can call tools to perform tasks such as retrieving data from a service. Users describe their needs in natural language, and the model decides whether to call a tool.
Message processingPlugins listen for messages or other events, respond to matching content, or modify AI requests and responses.
External integrationsPlugins connect third-party APIs, databases, or business systems. Some require an API key, account, or service URL.
Management pages and skillsPlugins can provide their own WebUI pages and bundle Skills that guide agents through particular tasks.

These are capabilities of the plugin system; individual plugins do not necessarily provide all of them. Check the author's documentation for features, supported platforms, model requirements, and configuration.

Do all plugins need AI?

Command and message-processing plugins do not necessarily need an AI model. Plugins that provide AI tools typically require a model that supports tool calling and a persona that allows the relevant tools. Installing a plugin does not make every feature participate in every conversation automatically.

Getting started: install your first plugin ​

For your first plugin, use the plugin market and follow the complete workflow below.

1. Open the plugin market ​

In the AstrBot WebUI, select Extensions in the sidebar, open the Plugins tab, and switch to AstrBot Plugin Market.

  • Installed: manage plugins installed in this AstrBot instance.
  • AstrBot Plugin Market: browse, search for, and install plugins.

The same workspace has Skills, MCP Servers, and Handlers tabs for skills, MCP servers, and registered commands, tools, and other handlers.

2. Choose a suitable plugin ​

Search by plugin name or a keyword describing the feature you want. You can also filter by categories such as AI enhancement, entertainment, productivity, integrations, utilities, and others. Open a plugin's details and check:

  • Features and usage: whether it meets your needs and whether you use it through commands, natural language, or another trigger.
  • Supported platforms: whether it works with your messaging platform. Some features depend on platform-specific APIs.
  • AstrBot version requirements: whether your installed version is compatible.
  • Configuration and dependencies: whether it needs an API key, external service, additional program, or particular deployment environment.

If the description is incomplete, open the repository and read its README and usage documentation. Stars, downloads, and update dates can help you browse, but they do not replace compatibility checks or usage instructions.

3. Install and check that it loads ​

Click Install, confirm the installation source, and wait for the operation to finish. Return to Installed, find the plugin, and check that it is open and has no loading errors.

If it appears under Failed to Load Plugins, read the error, follow the troubleshooting advice, and click Reload after fixing the problem.

4. Configure the plugin ​

If configuration is required, click the gear icon (Configure) on the plugin card, fill in the parameters described by its author, and save. External integrations may need an API key, service URL, or subscription target.

Skip this step if the plugin has no additional settings. Credentials requested by a plugin belong in its configuration, rather than unrelated model settings.

5. Try its simplest feature ​

On a messaging platform connected to AstrBot, follow the plugin's instructions to test a basic feature:

  • Command plugins: send the documented command and arguments. Send /help to see currently enabled commands, or manage them under Extensions → Handlers → Command.
  • AI tool plugins: describe your request to the bot. Check that the current model supports tool calling and that the current persona allows the tool.
  • Event-based plugins: trigger the documented event, such as sending a message that matches a rule.

Command prefixes

Examples here use the default / prefix. If you changed the wake prefix to !, use !help and the corresponding prefix for plugin commands. Some commands require AstrBot administrator permissions; check the plugin documentation and command management settings.

The plugin market ​

The market is a place to discover and install community plugins. Installed plugins are managed on the Installed page; they run in your AstrBot environment, rather than in the market.

The market provides search, categories, and sorting. Beginners can usually use the default plugin source. If needed, use plugin source management to add or switch custom sources. A source determines the plugin list you browse; adding a source does not install all its plugins.

Understand the source before installing

Plugins run in AstrBot's Python environment. Install plugins from sources you trust. Inclusion in the market does not guarantee stability or security. Agent local isolation settings restrict agent execution; they do not automatically isolate arbitrary plugin code.

For authors, Submit My Extension at the bottom of the market opens the AstrBot Cloud publishing page. See Publishing Plugins for the full process.

Install from a repository or file ​

You can manually install a plugin that is not listed in the market, or a specific package supplied by its author. Click the Install (+) button in the lower-right corner of the installed plugins or market page.

Install from a URL ​

  1. Select Install from URL.
  2. Enter the plugin's Git repository URL supplied by its author, such as https://github.com/author/plugin-repository.
  3. Confirm the source, install, and check its status on the Installed page.

Use the code repository URL, rather than a tutorial, a WebUI address, or an arbitrary webpage.

Install from a file ​

  1. Obtain the plugin's .zip package from its author.
  2. Select Install from File, upload the ZIP, and install it.
  3. Check that it loads, then configure and use it as documented.

The archive must contain a complete AstrBot plugin. A standalone Python file, MCP configuration, or Skills archive is not a plugin installation package. Installing from a file also does not guarantee offline operation: installing dependencies or accessing external services may still require network access.

Configuration and management ​

Plugin settings and availability ​

The following settings control different things:

LocationWhat it controls
Extensions → Plugins → the plugin's gear iconThe plugin's own parameters, such as service URLs, credentials, and feature switches. These are typically shared across the AstrBot instance; a plugin may implement more specific settings itself.
Config → select a profile → PluginWhich plugins that profile can use. By default, it uses all plugins that have not been closed; you can select a subset. Save the profile after changes.
The persona's capabilities settingsWhich tools and skills the current persona can use. For plugins with AI tools, check that the relevant tool is allowed here.
Extensions → HandlersRegistered commands, function tools, and other handlers. Commands can have their own enabled state, name, and permission settings.

First check that the plugin is open, then check the profile and persona used by the current conversation. Selecting a closed plugin in a profile does not open it. If you route platforms or conversations to different profiles, edit the one that actually applies.

Update, reload, close, or delete ​

On the Installed page, you can:

ActionWhen to use it
UpdateDownload the author's new code. Read the changes first and back up configuration and data for important plugins.
ReloadLoad the existing code again, for example after fixing dependencies or editing code. Reloading does not download a new version.
Open / Close pluginActivate or stop the plugin. Close it when you temporarily do not need it, keeping its files for later use.
HandlersInspect the commands, tools, and other handlers registered by the plugin.
DeleteUninstall a plugin. The dialog lets you separately choose whether to also delete its configuration and persistent data.

Pay attention to the options for deleting plugin configuration files and persistent data. Leave the corresponding option unchecked if you want to retain settings or business data.

Plugins, MCP, and Skills ​

ExtensionMain purposeLearn more
PluginsPython extensions integrated into AstrBot's message and AI workflows, with commands, tools, event handlers, pages, and more.This page and the Plugin Development Guide
MCPConnect independent tool services through the MCP protocol so models can call their tools.MCP
SkillsProvide task instructions, workflows, reference materials, and scripts to guide an agent.Skills

They can work together. A plugin may provide tools and bundle a Skill explaining how to use them. Plugin-bundled Skills appear under Extensions → Skills and can be enabled or disabled. Their files are managed by the plugin and cannot be edited or deleted directly through the local Skills page.

Troubleshooting ​

Installation fails, or the market does not load ​

Read the error and logs in the installation dialog. For download timeouts or connection failures, check whether the device or container running AstrBot can reach the plugin source, code repository, and dependency download services. Access from your browser does not prove that AstrBot's environment can reach them.

For URL installations, check the repository address. For file installations, check that the ZIP is complete. If a version incompatibility warning appears, check the requirements and choose compatible AstrBot and plugin versions.

A plugin fails to load ​

Read the error under Failed to Load Plugins, or open Data & Logs → Logs for details.

  • Missing Python dependency: install the dependency as documented by the plugin. The logs page also provides a Pip package installation option. Install into the Python environment actually running AstrBot; with Docker, installing only on the host is insufficient.
  • Missing external program or service: configure the required program, account, or service according to the plugin documentation.
  • Code errors or incompatible versions: check the plugin and AstrBot versions, review known issues, and contact the author if necessary.

After fixing the problem, click Reload. You do not need to restart the entire AstrBot process just to reload a failed plugin.

Installation succeeds, but the bot does not respond ​

Check in this order:

  1. The plugin is open and has no loading errors.
  2. The profile applied to the current conversation allows it.
  3. Its parameters are complete and any external service is available.
  4. The command name, prefix, arguments, platform, and permissions match the instructions.
  5. For AI tools, the current model supports tool calling and the current persona allows the relevant tools.

Not every plugin has chat commands, and the model does not call every available tool for every message. Start with the author's simplest example before trying more complex requests.

How do I report a problem? ​

Use the plugin repository's Issues page or the author's stated support channel. Include the AstrBot version, plugin version, messaging platform, deployment method, reproduction steps, and relevant error logs. Do not publish API keys, tokens, or other credentials.

Develop your own plugin ​

If existing plugins do not meet your needs, you can build one in Python. Basic Python and Git / GitHub experience is recommended. Follow this learning path:

  1. Create a project: follow the Plugin Development Guide and create a repository from the helloworld template. An astrbot_plugin_ name prefix is recommended.
  2. Set up development: place the repository in AstrBot's data/plugins/<plugin-directory>/ and fill in metadata.yaml so AstrBot can identify its name, version, author, and other metadata.
  3. Build a minimal feature: start with a command that receives a message and replies. See Message Event Listening and Sending Messages, then test with your bot.
  4. Add capabilities gradually: introduce AI tools and model interaction, plugin configuration, data storage, or plugin pages as needed. Reload through the WebUI after code changes.
  5. Document usage: describe features, installation, commands or tools, configuration, dependencies, supported platforms, and version requirements in the README. Declare required Python dependencies and complete the plugin metadata.
  6. Publish: push the code to GitHub and follow the publishing guide to submit through AstrBot Cloud. Publishing requires an AstrBot Cloud account.

The development guide covers environment setup and API usage in detail. For a first plugin, get a simple command working before adding configuration, tools, or external services; this makes problems easier to diagnose.

Edit this page on GitHub

Last updated:

Pager
PreviousBuilt-in Commands
NextMCP

Deployed on Rainyun Logo