The chatbot that pays every merged PR. Join us in building a self-funding repository for the usage-based economy.
All contributors are welcome to join the Toolkit community! See our list of good first issues to find a starting point.
Every merged PR will get paid on Merit Systems. For more information on how payouts work, see this section of the landing page.
We also have a Discord Community to discuss all things Toolkit!
- Node.js 18+ - if you do not have node installed, install it here
- pnpm - if you do not have pnpm installed, run
npm i -g pnpm
- Docker or Podman
- You can install Docker Desktop for free here
The dev
script will automatically configure everything for you
# Clone the repository
git clone https://github.com/jasonhedman/toolkit.dev.git
cd toolkit.dev
# Run the automated setup
pnpm dev
The setup script will:
- Create your
.env.local
file with all necessary environment variables - Install dependencies
- Automatically set up the database, Redis, and Blob Storage using Docker/Podman (unless external database is configured)
- Run database migrations
- Run the app
If you prefer to set up manually:
git clone https://github.com/jasonhedman/toolkit.dev.git
cd toolkit.dev
This will set up your .env.local
, install dependencies, start the required Docker containers, set up your database, and run the development server.
pnpm dev
Toolkit uses OpenRouter for inference. Get a key here and add it to your .env.local
OPENROUTER_API_KEY=<your API key>
Toolkit uses Auth.js for user authentication.
In local development you have the option of logging in as a guest (this is not available in production).
You can also add these providers:
We would love to see more auth providers integrated. Feel free to add any from the Auth.js supported providers list!
Many of our Toolkits require extra keys. You can run Toolkit without these keys, but if you want to use a certain Toolkit locally, you will need to do some additional configuration
Toolkit uses Exa for web search. Get an API key here and add it to your .env
EXA_API_KEY=<your API key>
Toolkit uses E2B for secure code execution. Get an API key here and add it to your .env
E2B_API_KEY=<your API key>
Toolkit uses Mem0 for memory storage and retrieval. Get an API key here
MEM0_API_KEY=<your API key>
To use the Image Toolkit, you will need a key to generate images and a key to store images
We currently support
- OpenAI
- xAI
- FAL AI
- Luma AI
- Fireworks AI
# At least one of these is required for image gen
OPENAI_API_KEY=
XAI_API_KEY=
FAL_API_KEY=
FIREWORKS_API_KEY=
LUMA_API_KEY=
src/
├── app/ # Next.js App Router
├── components/ # React components
├── lib/ # Utility functions
├── server/ # tRPC server and database
├── toolkits/ # Extensible toolkit system
└── env.js # Environment validation
Toolkit.dev's modular architecture makes it easy to add new toolkits. Check out the Toolkit Development Guide for detailed instructions.
# Push schema changes
pnpm db:push
# Generate Prisma client
pnpm db:generate
# Open database studio
pnpm db:studio
This project is licensed under the MIT License - see the LICENSE file for details.