Files
aitbc/docs/apps/plugins/plugin-marketplace.md
aitbc 522655ef92
Some checks failed
API Endpoint Tests / test-api-endpoints (push) Successful in 10s
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
CLI Tests / test-cli (push) Failing after 4s
Documentation Validation / validate-docs (push) Successful in 8s
Documentation Validation / validate-policies-strict (push) Successful in 4s
Integration Tests / test-service-integration (push) Successful in 38s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
Security Scanning / security-scan (push) Successful in 40s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 15s
Smart Contract Tests / lint-solidity (push) Successful in 8s
Move blockchain app READMEs to centralized documentation
- Relocate blockchain-event-bridge README content to docs/apps/blockchain/blockchain-event-bridge.md
- Relocate blockchain-explorer README content to docs/apps/blockchain/blockchain-explorer.md
- Replace app READMEs with redirect notices pointing to new documentation location
- Consolidate documentation in central docs/ directory for better organization
2026-04-23 12:24:48 +02:00

4.7 KiB

Plugin Marketplace

Status

Operational

Overview

Marketplace plugin for discovering, installing, and managing AITBC plugins and extensions.

Architecture

Core Components

  • Plugin Catalog: Catalog of available plugins
  • Plugin Installer: Handles plugin installation and updates
  • Dependency Manager: Manages plugin dependencies
  • Version Manager: Handles plugin versioning
  • License Manager: Manages plugin licenses

Quick Start (End Users)

Prerequisites

  • Python 3.13+
  • Internet access for plugin downloads
  • Sufficient disk space for plugins

Installation

cd /opt/aitbc/apps/plugin-marketplace
.venv/bin/pip install -r requirements.txt

Configuration

Set environment variables in .env:

PLUGIN_REGISTRY_URL=https://plugins.aitbc.com
INSTALLATION_PATH=/opt/aitbc/plugins
AUTO_UPDATE_ENABLED=false

Running the Service

.venv/bin/python main.py

Developer Guide

Development Setup

  1. Clone the repository
  2. Create virtual environment: python -m venv .venv
  3. Install dependencies: pip install -r requirements.txt
  4. Configure plugin registry
  5. Run tests: pytest tests/

Project Structure

plugin-marketplace/
├── src/
│   ├── plugin_catalog/       # Plugin catalog
│   ├── plugin_installer/    # Plugin installation
│   ├── dependency_manager/  # Dependency management
│   ├── version_manager/      # Version management
│   └── license_manager/     # License management
├── tests/                   # Test suite
└── pyproject.toml           # Project configuration

Testing

# Run all tests
pytest tests/

# Run installer tests
pytest tests/test_installer.py

# Run dependency manager tests
pytest tests/test_dependencies.py

API Reference

Plugin Catalog

List Plugins

GET /api/v1/marketplace/plugins?category=analytics&limit=20

Get Plugin Details

GET /api/v1/marketplace/plugins/{plugin_id}

Search Plugins

POST /api/v1/marketplace/plugins/search
Content-Type: application/json

{
  "query": "analytics",
  "filters": {
    "category": "string",
    "version": "string"
  }
}

Plugin Installation

Install Plugin

POST /api/v1/marketplace/plugins/install
Content-Type: application/json

{
  "plugin_id": "string",
  "version": "string",
  "auto_dependencies": true
}

Uninstall Plugin

DELETE /api/v1/marketplace/plugins/{plugin_id}

Update Plugin

POST /api/v1/marketplace/plugins/{plugin_id}/update
Content-Type: application/json

{
  "version": "string"
}

Get Installation Status

GET /api/v1/marketplace/plugins/{plugin_id}/status

Dependencies

Get Plugin Dependencies

GET /api/v1/marketplace/plugins/{plugin_id}/dependencies

Resolve Dependencies

POST /api/v1/marketplace/dependencies/resolve
Content-Type: application/json

{
  "plugin_ids": ["plugin1", "plugin2"]
}

Versions

List Plugin Versions

GET /api/v1/marketplace/plugins/{plugin_id}/versions

Get Version Compatibility

GET /api/v1/marketplace/plugins/{plugin_id}/compatibility?version=1.0.0

Licenses

Validate License

POST /api/v1/marketplace/licenses/validate
Content-Type: application/json

{
  "plugin_id": "string",
  "license_key": "string"
}

Get License Info

GET /api/v1/marketplace/plugins/{plugin_id}/license

Configuration

Environment Variables

  • PLUGIN_REGISTRY_URL: URL for plugin registry
  • INSTALLATION_PATH: Path for plugin installation
  • AUTO_UPDATE_ENABLED: Enable automatic plugin updates
  • MAX_CONCURRENT_INSTALLS: Maximum concurrent installations

Plugin Categories

  • Analytics: Data analysis and reporting plugins
  • Security: Security scanning and monitoring plugins
  • Infrastructure: Infrastructure management plugins
  • Trading: Trading and exchange plugins

Installation Parameters

  • Installation Path: Directory for plugin installation
  • Dependency Resolution: Automatic dependency handling
  • Version Constraints: Version compatibility checks

Troubleshooting

Plugin installation failed: Check plugin compatibility and dependencies.

License validation failed: Verify license key and plugin ID.

Dependency resolution failed: Check dependency conflicts and versions.

Auto-update not working: Verify auto-update configuration and registry connectivity.

Security Notes

  • Validate plugin signatures before installation
  • Scan plugins for security vulnerabilities
  • Use HTTPS for plugin downloads
  • Implement plugin sandboxing
  • Regularly update plugins for security patches
  • Monitor for malicious plugin behavior