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
- 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
4.7 KiB
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
- Clone the repository
- Create virtual environment:
python -m venv .venv - Install dependencies:
pip install -r requirements.txt - Configure plugin registry
- 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 registryINSTALLATION_PATH: Path for plugin installationAUTO_UPDATE_ENABLED: Enable automatic plugin updatesMAX_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