Thank you for your interest in contributing to the SperaxOS Plugin Delivery ecosystem! This guide will help you get started.
Every plugin requires TWO files or the build will fail:
| File | Location | Required |
|---|---|---|
| Plugin definition | src/your-plugin.json |
✅ Yes |
| Locale file | locales/your-plugin.en-US.json |
✅ Yes |
Then run:
export OPENAI_API_KEY=your-key
bun run format # Generates all locale translations
bun run build # Verify it worksSee Submitting a Plugin for full details.
- Code of Conduct
- Getting Started
- Development Setup
- Submitting a Plugin
- Contributing Code
- Style Guidelines
Be respectful, inclusive, and constructive. We're building tools for the crypto/DeFi community together.
git clone https://github.com/nirholas/plugin.delivery.git
cd plugins
bun installplugins/
├── packages/
│ ├── sdk/ # @sperax/plugin-sdk
│ └── gateway/ # @sperax/chat-plugins-gateway
├── templates/ # Plugin starter templates
├── docs/ # Documentation
├── public/ # Plugin index files
├── src/ # Plugin source files
└── scripts/ # Build scripts
bun run testbun run buildbun run devThis starts a local Vercel dev server at http://localhost:3000.
- Create a Plugin Submission issue
- Provide your manifest URL and details
- We'll review and add it to the index
- Fork the repository
- Add your plugin to
src/your-plugin.json:
{
"identifier": "your-plugin",
"author": "your-name",
"createdAt": "2025-01-01",
"manifest": "https://your-domain.com/manifest.json",
"meta": {
"title": "Your Plugin",
"description": "What it does",
"avatar": "🔌",
"tags": ["category"]
}
}- Run
bun run buildto regenerate the index - Submit a PR
- ✅ Valid JSON manifest
- ✅ Working API endpoints
- ✅ Tested in SperaxOS
- ✅ Clear documentation
- ✅ No malicious code
feature/description- New featuresfix/description- Bug fixesdocs/description- Documentationplugin/name- New plugins
Use conventional commits:
feat: add new plugin type
fix: resolve manifest validation
docs: update SDK guide
plugin: add dexscreener integration
- Fork and create a branch
- Make changes
- Run tests:
bun run test - Run lint:
bun run lint - Submit PR with clear description
- Use strict mode
- Prefer
constoverlet - Use async/await over promises
- Export types explicitly
- 2-space indentation
- Trailing newline
- No trailing commas
- Use Markdown
- Include code examples
- Keep it concise
- GitHub Issues: github.com/nirholas/plugins/issues
- Twitter/X: @nichxbt
By contributing, you agree that your contributions will be licensed under the MIT License.
Please read and follow our Code of Conduct.