Contributing to subagents.sh
January 28, 2026 · View on GitHub
Thank you for your interest in contributing to subagents.sh! This project is a marketplace for Claude Code sub-agents, and we welcome contributions from the community.
Ways to Contribute
- Bug Reports: Found a bug? Please report it
- Feature Requests: Have an idea? We'd love to hear it
- Code Contributions: Fix bugs, add features, or improve documentation
- Documentation: Help improve our docs and guides
- Sub-agent Submissions: Share your Claude Code sub-agents
Getting Started
Prerequisites
- Node.js 18+
- npm or yarn
- Supabase CLI (for database development)
- Git
Development Setup
-
Fork and Clone
git clone https://github.com/YOUR_USERNAME/subagents.sh.git cd subagents.sh -
Install Dependencies
npm install -
Environment Setup
cp .env.example .env.local # Edit .env.local with your Supabase credentials -
Database Setup
npm run db:setup npm run db:start -
Start Development Server
npm run devOpen http://localhost:3000 to see the app.
Development Workflow
Branch Naming Convention
feat/description- New featuresfix/description- Bug fixesdocs/description- Documentation changesrefactor/description- Code refactoringtest/description- Test additions/changes
Commit Message Format
We use Conventional Commits:
<type>[optional scope]: <description>
[optional body]
[optional footer]
Types:
feat: New featurefix: Bug fixdocs: Documentation onlystyle: Formatting, missing semicolons, etc.refactor: Code change that neither fixes a bug nor adds a featuretest: Adding missing testschore: Maintenance tasks
Examples:
feat: add GitHub import for sub-agents
fix: resolve search pagination issue
docs: update API documentation
Pull Request Process
-
Create a Feature Branch
git checkout -b feat/your-feature-name -
Make Your Changes
- Write clear, concise code
- Add tests for new features
- Update documentation as needed
-
Run Tests
npm run test:all npm run lint npm run type-check -
Commit Your Changes
git add . git commit -m "feat: your descriptive commit message" -
Push and Create PR
git push origin feat/your-feature-nameThen create a Pull Request on GitHub.
Testing
Running Tests
# Unit tests
npm run test:unit
# Integration tests
npm run test:integration
# End-to-end tests
npm run test:e2e
# All tests
npm run test:all
# With coverage
npm run test:coverage
Writing Tests
- Unit Tests: Test individual components/functions
- Integration Tests: Test API endpoints and database interactions
- E2E Tests: Test complete user workflows
Place tests in:
src/__tests__/unit/- Unit testssrc/__tests__/integration/- Integration testse2e/- End-to-end tests
Code Style
We use ESLint and Prettier for code formatting:
# Lint code
npm run lint
# Fix linting issues
npm run lint:fix
# Format code
npm run format
# Check formatting
npm run format:check
Code Guidelines
- Use TypeScript for type safety
- Follow React best practices
- Use meaningful variable and function names
- Add JSDoc comments for complex functions
- Keep components small and focused
- Use custom hooks for reusable logic
Database Changes
When making database changes:
-
Create Migration
supabase migration new your_migration_name -
Apply Migration
supabase db reset -
Generate Types
npm run db:types -
Test Migration Ensure your migration works on a fresh database.
Security
- Never commit secrets or API keys
- Use environment variables for sensitive data
- Follow security best practices for authentication
- Report security vulnerabilities privately to [security@augmnt.sh]
Documentation
- Update README.md for major changes
- Add JSDoc comments for complex functions
- Update API documentation for endpoint changes
- Include examples in documentation
Bug Reports
When reporting bugs, please include:
- Description: Clear description of the issue
- Steps to Reproduce: Detailed steps
- Expected Behavior: What should happen
- Actual Behavior: What actually happens
- Environment: Browser, OS, Node version
- Screenshots: If applicable
Use our bug report template.
Feature Requests
For feature requests, please include:
- Problem: What problem does this solve?
- Solution: Proposed solution
- Alternatives: Alternative solutions considered
- Use Cases: How would this be used?
Use our feature request template.
Project Structure
src/
├── app/ # Next.js app router pages
├── components/ # React components
│ ├── ui/ # Reusable UI components
│ ├── forms/ # Form components
│ └── layout/ # Layout components
├── lib/ # Utility libraries
│ ├── supabase/ # Database utilities
│ └── github/ # GitHub integration
├── hooks/ # Custom React hooks
├── types/ # TypeScript type definitions
└── __tests__/ # Test files
supabase/
├── migrations/ # Database migrations
└── seed/ # Database seed data
Questions?
- Discord: Join our community
- GitHub Discussions: Use GitHub Discussions for questions
- Email: hello@augmnt.sh
License
By contributing to subagents.sh, you agree that your contributions will be licensed under the MIT License.
Thank you for contributing to subagents.sh!