The xyOps Plugin Marketplace lets you discover and install community plugins to extend the platform. Plugins are cloud-hosted code libraries that self-download and execute, with metadata for discovery and configuration.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/pixlcore/xyops/llms.txt
Use this file to discover all available pages before exploring further.
The marketplace doesn’t host plugins directly—it provides a search mechanism. Plugins are hosted on package repositories like NPM, PyPI, or GitHub.
Discovering plugins
Access the marketplace by clicking Marketplace in the sidebar. Browse available plugins and view:- Plugin description and use cases
- Installation command
- Required dependencies
- Author and source repository
- Ratings and downloads
Installing a plugin
Publishing plugins
Share your custom plugins with the xyOps community by publishing to the marketplace.Requirements
Your plugin must:- Be free to use - No purchase required (free tier of paid services is okay)
- Be hosted on GitHub - Public repository with tagged releases
- Have a launch command - Self-download and execute (npx, uvx, go run, docker run)
- Use OSI-approved license - Open source with OSI-approved license
- Declare data collection - Document any user data or metrics collected
- Be legal and family-friendly - No violations of law or terms of service
Launch commands
Your plugin must support self-download and execution in a single command.- npx (Node.js)
- uvx (Python)
- go run (Go)
- docker run (Docker)
Plugin metadata
Export your plugin from the xyOps UI to generate metadata in xyOps Portable Data Format.Create and test your plugin
Build your plugin locally and test it with events. Ensure it works reliably and handles errors gracefully.
Add metadata to repository
Save the XYPDF file as
xyops-plugin.json in your repository root. Tag a release version.Submit to marketplace
Open a pull request to the xyops-marketplace repository with your plugin metadata.
README requirements
Your repository must include a README.md with:- Description - What the plugin does and key use cases
- Installation - How to install from the marketplace
- Configuration - Parameter descriptions and examples
- Requirements - Dependencies (Node.js version, external tools, etc.)
- Usage examples - Real-world scenarios
- Data collection notice - If applicable, describe what data is collected
- License - Link to your OSI-approved license
Marketplace configuration
xyOps administrators can configure the marketplace inconfig.json:
~/workspace/source/sample_conf/config.json:129-135.
Enable or disable the marketplace feature
URL to the marketplace index (JSON file listing all plugins)
Template for fetching plugin files from repositories
Cache time-to-live in seconds for marketplace metadata
Plugin examples
Database backup
Automated database dumps to S3 with encryption and rotation
API monitoring
Custom monitor plugin for tracking API response times and error rates
Slack notifier
Rich Slack notifications with job details and server metrics
Video transcoding
FFmpeg-based video processing with progress tracking
Git deployer
Automated Git pulls and deployment hooks for continuous delivery
Log aggregator
Collect and ship logs to external services like Elasticsearch
Security considerations
Before installing a plugin:
- Review the source code - Check the GitHub repository for malicious code
- Check the license - Ensure it’s OSI-approved and compatible with your use case
- Verify dependencies - Review what packages the plugin installs
- Read the README - Understand what data is collected and where it’s sent
- Test in staging - Install in a non-production environment first
Plugin permissions
Plugins run with the same permissions as the xySat worker process. They can:- Read and write files in the job temp directory
- Execute system commands
- Access network resources
- Read environment variables (including secrets assigned to the plugin)
- Modify other jobs’ files
- Access the xyOps database
- Change system configuration
- Execute code outside their temp directory
Troubleshooting
Plugin won't install
Plugin won't install
Check requirements: Ensure the target servers have the required runtime (Node.js, Python, Go, Docker).Verify network access: Plugins download from external repositories. Check firewall rules and airgap settings.Check logs: Review
/opt/xyops/logs/Error.log for installation errors.Plugin fails to execute
Plugin fails to execute
Test the launch command: Run the plugin command manually on a target server to see raw errors.Check parameter values: Ensure required parameters are set and valid.Review job logs: Job logs show STDOUT/STDERR from the plugin for debugging.
Plugin runs but reports errors
Plugin runs but reports errors
Check secrets: If the plugin uses secrets, ensure they’re assigned and accessible.Verify external services: Test connectivity to APIs or databases the plugin depends on.Update the plugin: Check if a newer version fixes the issue.
See also
- Plugins - Plugin development guide
- Secrets - Secure credential management
- Data Formats - Wire protocol specification