跳到正文
cccskills
免费在 GitHub 公开

plugin-system

Универсальная система плагинов для приложений на Python. Автоматическое обнаружение, валидация, отказоустойчивость. Нулевые зависимости (только стандартная библиотека Python).

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md4.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

<img src="../banner.png" width="100%" alt="plugin-system banner">

Русский — Официальная русская версия plugin-system.

Система плагинов (Русский)

Отказоустойчивая система плагинов для CLI-приложений на Python. Неисправный плагин никогда не останавливает работу остальной части приложения.

Основные возможности

  • Автоматическое обнаружение: Автоматически находит плагины в директории
  • Валидация: Проверяет name, version, execute() у каждого класса плагина
  • Отказоустойчивость: Сбойные плагины логируются, но не загружаются
  • Нулевые зависимости: Только стандартная библиотека Python

Файлы

scripts/
  plugin_system.py       Core: PluginBase (ABC) + PluginManager
  cli_demo.py            Demo CLI with argparse
  test_plugin_system.py  16+ unit tests
examples/
  hello.py               Hello World plugin
  calculator.py          Calculator plugin
  systeminfo.py          System Info plugin

Быстрый старт

1. Создание плагина

from plugin_system import PluginBase

class MyPlugin(PluginBase):
    name = "MyPlugin"
    version = "1.0.0"

    def execute(self, *args, **kwargs):
        return {"status": "ok", "message": "Hello!"}

2. Использование PluginManager

from plugin_system import PluginManager

manager = PluginManager(plugins_dir="./my_plugins")
plugins = manager.discover_plugins()

# List all plugins (Deutsch)
manager.list_plugins()

# Execute a plugin (Deutsch)
success, result = manager.execute_plugin("MyPlugin", param="value")
if success:
    print(result)

3. Интеграция в ваше приложение

class MyApp:
    def __init__(self):
        self.plugins = PluginManager("./plugins")
        self.plugins.discover_plugins()

    def run_command(self, command, **params):
        success, result = self.plugins.execute_plugin(command, **params)
        return result if success else None

Интерфейс плагина

Каждый плагин должен:

ТребованиеДетали
Наследовать PluginBasefrom plugin_system import PluginBase
Задавать nameАтрибут класса, непустой
Задавать versionАтрибут класса, семантическое версионирование
Реализовывать execute()Произвольные *args, **kwargs

Отказоустойчивость

Тип ошибкиПоведение
SyntaxError в плагинеПлагин пропускается, остальные загружаются
Отсутствие атрибутовПлагин помечается как is_valid=False
Исключение в execute()Возвращает (False, error_message)
Нет плагинов в директорииПустой список, без сбоев

История изменений

1.0.0 (2026-03-12)

  • Миграция из MODULAR_AGENTS/plugins в библиотеку скиллов
  • PluginBase ABC + PluginManager
  • 3 примера плагинов (Hello, Calculator, SystemInfo)
  • 16+ юнит-тестов
  • CLI-демо с argparse

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Akademisches Studien- und Fristenmanagement mit Quellenprüfung, Datenschutz und realistischer Handlungsplanung.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

Aktives Lernen, Erarbeitung von Fachinhalten und strukturierte Erstellung von Synthesen.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

Prüfungsvorbereitung, Selbsttests, Probeklausuren und systematische Fehleranalyse.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

Acceptance & Commitment Therapy (ACT) according to Steven Hayes: Hexaflex model with the six core processes of psychological flexibility.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

Acceptance & Commitment Therapy (ACT) nach Steven Hayes: Hexaflex-Modell mit den sechs Kernprozessen psychischer Flexibilität.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

Terapia de Aceptación y Compromiso (ACT) según Steven Hayes: modelo Hexaflex con los seis procesos nucleares de la flexibilidad psicológica.

中文简介正在准备中。当前显示原文说明。

ellmos-ai/skills82026年10月22日 更新

查看 ellmos-ai 的全部技能

报告此技能的问题