This guide will help you run Hercules locally in just a few minutes.
- .NET 10 SDK —
dotnet --versionshould show10.x - Node.js 20+ — only if you need the web interface
- Access to at least one LLM provider:
- YandexGPT (key + Yandex Cloud folderId), or
- Ollama Cloud (API key), or
- Ollama Local (
ollama serveonlocalhost:11434)
git clone https://github.com/<owner>/hercules.git
cd hercules
dotnet restore
dotnet build Hercules.slnxOpen appsettings.json and set the active provider and keys. Example for local Ollama:
It's best to pass secrets via environment variables:
export HERCULES_Llm__Provider=yandexgpt
export HERCULES_Llm__YandexGpt__ApiKey=***
export HERCULES_Llm__YandexGpt__FolderId=***dotnet run --project HerculesEnter a query in the REPL. Repeat the same query 3 times — the agent will propose creating a skill.
# Terminal 1 — backend (port :5000)
dotnet run --project Hercules.WebApi
# Terminal 2 — frontend (port :4321)
cd hercules-web
npm install
cp .env.example .env # adjust PUBLIC_API_BASE / PUBLIC_API_KEY if needed
npm run devOpen http://localhost:4321.
export HERCULES_Telegram__Enabled=true
export HERCULES_Telegram__BotToken=<token from @BotFather>
dotnet run --project Hercules -- --telegram- Architecture — how the agent is structured
- Configuration — all parameters
- API — REST endpoint reference
{ "Llm": { "Provider": "ollama-local", "OllamaLocal": { "Endpoint": "http://localhost:11434/v1", "Model": "llama3.1" } } }