Thanks for your interest in Hercules! This document describes how to set up your environment, format your changes, and submit them to the project.
- Code of Conduct
- Environment Setup
- Branch Structure
- Commit Conventions
- Code Style
- Pull Request Process
- Reporting Bugs
By participating in the project, you agree to abide by the Code of Conduct.
- .NET 10 SDK
- Node.js 20+ (for the
hercules-webfrontend) - (optional) Ollama for local inference
git clone https://github.com/<owner>/hercules.git
cd hercules
# Backend
dotnet restore
dotnet build Hercules.slnx
# Frontend
cd hercules-web && npm install && cd ..See more: docs/QUICKSTART.md.
main— stable branch, always builds.feature/<short-name>— new functionality.fix/<short-name>— bug fix.docs/<short-name>— documentation changes.
Create branches from the current main.
We use Conventional Commits:
<type>(<scope>): <short description>
[body — optional]
Types: feat, fix, docs, refactor, test, chore, perf, build, ci.
Examples:
feat(llm): add streaming response support for Ollama
fix(memory): properly escape Cyrillic in user_profile.md
docs(api): describe the /api/skills/{id}/improve endpoint
- Follow the rules in
.editorconfig. nullableis enabled — avoid suppressing warnings without reason.- Comments and user-facing messages are in Russian.
- Type/method names are
PascalCase; local variables/parameters arecamelCase. - Before opening a PR, run:
dotnet build Hercules.slnx -warnaserror dotnet format Hercules.slnx --verify-no-changes
- Type API calls through
src/lib/api.ts. - Use TailwindCSS utility classes; avoid inline styles.
- Create a branch from
main. - Make your changes and ensure the project builds without errors and warnings.
- Update the documentation (
README.md/docs/) when behavior changes. - Open the PR using the template; describe the motivation and how to verify.
- Wait for CI to pass and review to complete.
Open an Issue using the appropriate template. Provide:
- .NET version (
dotnet --version) and OS; - active LLM provider;
- reproduction steps and expected/actual behavior;
- logs or screenshots if available.
Security vulnerabilities — see SECURITY.md (do not open public Issues).