Files
mcphub/plugins/__init__.py
airano-ir 43fd2201a0 feat(v3.13.0): settings live DB reads, remove Directus/Appwrite, admin stats
Settings fixes:
- MAX_SITES_PER_USER, USER_RATE_LIMIT_PER_MIN/HR now read from DB settings
  table (DB > ENV > default), so dashboard/settings changes apply without
  restart. Sync cache refreshed on every save or delete.
- /api/me reports the live DB value for max_sites_per_user.

Admin improvements:
- Admin users bypass per-user rate limiting entirely (role=admin or ADMIN_EMAILS).
- Admin Overview now shows platform stats: registered users, new users (7d),
  total user sites, available tools.

Plugin cleanup:
- Appwrite and Directus plugins removed from the active registry (8 plugins
  now: WordPress, WooCommerce, WordPress Specialist, Gitea, n8n, Supabase,
  OpenPanel, Coolify). Plugin code is retained for future re-enabling.
- Settings page plugin visibility list updated to match.

Mobile onboarding:
- Stepper steps on narrow viewports stack vertically with correct full border
  and rounded corners on each step.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-20 23:33:20 +02:00

59 lines
2.0 KiB
Python

"""
Plugins package
All project type plugins are here.
F.19.3.2-.3 (2026-05-04): wordpress_advanced sunset — the deprecated
Docker-socket / WP-CLI plugin was removed once
wordpress_specialist absorbed db inspection +
bulk fan-out (companion v2.18.0).
F.19.1 (2026-05-01): WordPress Specialist Plugin added (companion-backed,
no Docker socket).
v2.8.0 (Phase J): Directus CMS Plugin added
v2.6.0 (Phase I): Appwrite Backend Plugin added
v2.5.0 (Phase H): OpenPanel Analytics Plugin added
v2.3.0 (Phase G): Supabase Self-Hosted Plugin added
Note: Appwrite and Directus plugins are retained in the codebase but are
no longer registered by default. They require review and testing before
re-enabling. To restore them, add their imports and registry.register()
calls below.
"""
from plugins.base import BasePlugin, PluginRegistry
from plugins.coolify.plugin import CoolifyPlugin
from plugins.gitea.plugin import GiteaPlugin
from plugins.n8n.plugin import N8nPlugin
from plugins.openpanel.plugin import OpenPanelPlugin
from plugins.supabase.plugin import SupabasePlugin
from plugins.woocommerce.plugin import WooCommercePlugin
from plugins.wordpress.plugin import WordPressPlugin
from plugins.wordpress_specialist.plugin import WordPressSpecialistPlugin
# Create global registry
registry = PluginRegistry()
# Register available plugins (8 active plugins)
registry.register("wordpress", WordPressPlugin)
registry.register("woocommerce", WooCommercePlugin)
registry.register("wordpress_specialist", WordPressSpecialistPlugin)
registry.register("gitea", GiteaPlugin)
registry.register("n8n", N8nPlugin)
registry.register("supabase", SupabasePlugin)
registry.register("openpanel", OpenPanelPlugin)
registry.register("coolify", CoolifyPlugin)
__all__ = [
"BasePlugin",
"PluginRegistry",
"registry",
"WordPressPlugin",
"WooCommercePlugin",
"WordPressSpecialistPlugin",
"GiteaPlugin",
"N8nPlugin",
"SupabasePlugin",
"OpenPanelPlugin",
"CoolifyPlugin",
]