pnpm installRun one of the following commands to setup the environment variables:
./dev-bootstrap.sh
./dev-bootstrap.sh -f # to remove existing .env and .env.local files firstThe script will read the env.*.example files and merge them into a single .env file. Then it will create symlinks for the environment variables in the apps and packages directories. This way the apps and packages can use the environment variables from the same .env file.
The example files already contain the correct values for some environment variables for development purposes. But you still need to add the correct values for the following environment variables in the generated .env file:
| Environment Variable | Description |
|---|---|
| JINA_API_KEY | The API key for the Jina AI API. Get it from the landing page of Jina.ai |
| SERPER_API_KEY | The API key for the Serper API. Create a new free account in Serper.dev |
| OPENAI_API_KEY | The API key for the OpenAI API. Create a new free account in OpenAI |
To run the development database, run the following command:
docker-compose upThis will start the PostgreSQL database.
cd packages/database
pnpm db:migrate:dev && pnpm db:generate
cd ../..When you run pnpm dev, Turbo starts every app’s dev server. Each app is bound to a different port so they can run together:
| App | Port |
|---|---|
| dashboard | 3000 |
| hermes | 3001 |
| agent-auth-api | 8080 |
| agent-data-api | 8081 |
| agent-registry-api | 8082 |
| data-collection agent | 4001 |
| content-generation agent | 4002 |
| delivery agent | 4003 |
pnpm dev --filter=agent-auth-apipnpm dev --filter=agent-data-apipnpm dev --filter=agent-registry-apipnpm dev --filter=dashboardpnpm dev --filter=hermespnpm dev --filter=hermes-workerdocker-compose -f docker-compose-all.yml upThe documentation is built using Speed Docs. To run the documentation server, run the following command:
pnpm docs:devTo build the documentation, run the following command:
pnpm docs:buildKeep the docs updated everytime you make changes to the project.