Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
3782518
fix(skills): validate hub bundle paths before install (#3986)
teknium1 Mar 30, 2026
97d6813
fix(cache): use deterministic call_id fallbacks instead of random UUI…
teknium1 Mar 30, 2026
5ceed02
feat(gateway): skill-aware slash commands, paginated /commands, Teleg…
teknium1 Mar 30, 2026
9fd78c7
fix: use SKILLS_DIR not repo path for Telegram menu skill filter (#4005)
teknium1 Mar 30, 2026
da3e22b
fix: cap Telegram menu at 50 commands — API rejects above ~60 (#4006)
teknium1 Mar 30, 2026
0976bf6
feat: add /yolo slash command to toggle dangerous command approvals (…
teknium1 Mar 30, 2026
f3069c6
fix(cli): add missing subprocess.run() timeouts in doctor and status …
teknium1 Mar 30, 2026
60ecde8
fix: fit all 100 commands in Telegram menu with 40-char descriptions …
teknium1 Mar 30, 2026
ea342f2
Fix banner alignment in installer script (#4011)
teknium1 Mar 30, 2026
86250a3
docs: expand terminal backends section + fix docs build (#4016)
teknium1 Mar 30, 2026
158f49f
fix: enforce priority order in Telegram menu — core > plugins > skill…
teknium1 Mar 30, 2026
ed9af6e
fix: create AsyncOpenAI lazily in trajectory_compressor to avoid clos…
teknium1 Mar 30, 2026
7dac75f
fix: prevent context pressure warning spam after compression (#4012)
teknium1 Mar 30, 2026
950f694
feat(browser): add Camofox local anti-detection browser backend (#4008)
teknium1 Mar 30, 2026
7b4fe05
fix(auth): use bearer auth for MiniMax Anthropic endpoints (#4028)
teknium1 Mar 30, 2026
f93637b
feat: add /profile slash command to show active profile (#4027)
teknium1 Mar 30, 2026
bd376fe
fix(docs): improve mobile sidebar navigation
teknium1 Mar 30, 2026
4b35836
fix(auth): use bearer auth for MiniMax Anthropic endpoints (#4028)
teknium1 Mar 30, 2026
72104eb
fix(gateway): honor default for invalid bool-like config values (#4029)
teknium1 Mar 30, 2026
eba8d52
fix: show correct shell config path for macOS/zsh in install script (…
teknium1 Mar 30, 2026
0d10035
refactor: simplify web backend priority detection (#4036)
teknium1 Mar 30, 2026
de368ca
fix(tools): show browser and TTS in reconfigure menu (#4041)
teknium1 Mar 30, 2026
ab62614
ascii-video: add text readability techniques and external layout orac…
SHL0MS Mar 30, 2026
275fcc6
Merge pull request #4054 from NousResearch/ascii-video/text-readabili…
SHL0MS Mar 30, 2026
3d47af0
fix(honcho): write config to instance-local path for profile isolatio…
teknium1 Mar 30, 2026
f007284
fix: rate-limit pairing rejection messages to prevent spam (#4081)
teknium1 Mar 30, 2026
4a7c17f
fix(gateway): read custom_providers context_length in hygiene compres…
teknium1 Mar 31, 2026
13f3e67
ux: show 'Initializing agent...' on first message (#4086)
teknium1 Mar 31, 2026
3c8f910
feat: respect NO_COLOR env var and TERM=dumb (#4079)
SHL0MS Mar 31, 2026
7e0c2c3
docs: comprehensive documentation audit — fix 9 HIGH, 20+ MEDIUM gaps…
teknium1 Mar 31, 2026
07746dc
fix(matrix): E2EE decryption — request keys, auto-trust devices, retr…
teknium1 Mar 31, 2026
11aa44d
docs(telegram): add webhook mode documentation (#4089)
teknium1 Mar 31, 2026
e64b047
chore: prepare Hermes for Homebrew packaging (#4099)
teknium1 Mar 31, 2026
8a794d0
fix(ci): add repo conditionals to prevent fork workflow failures (#4107)
teknium1 Mar 31, 2026
720507e
feat: add post-migration cleanup for OpenClaw directories (#4100)
teknium1 Mar 31, 2026
ffd5d37
fix: treat non-sk-ant- keys as regular API keys, not OAuth tokens (#4…
teknium1 Mar 31, 2026
b2e1a09
fix(anthropic): write scopes field to Claude Code credentials on toke…
teknium1 Mar 31, 2026
44d02f3
docs: restructure site navigation — promote features and platforms to…
teknium1 Mar 31, 2026
f776191
fix: persist compressed context to gateway session after mid-run comp…
teknium1 Mar 31, 2026
1e59d48
feat(api_server): stream tool progress to Open WebUI (#4092)
teknium1 Mar 31, 2026
cdb64a8
fix(security): reject private and loopback IPs in Telegram DoH fallba…
teknium1 Mar 31, 2026
04367e2
fix(cron): stop truncating job IDs in list view (#4132)
teknium1 Mar 31, 2026
45396aa
fix(alibaba): use standard DashScope international endpoint (#4133)
teknium1 Mar 31, 2026
cc63b2d
fix(gateway): remove user-facing compression warnings (#4139)
teknium1 Mar 31, 2026
fb2af3b
docs: document tool progress streaming in API server and Open WebUI (…
teknium1 Mar 31, 2026
83e5249
fix(gateway): use setsid instead of systemd-run --user for /update (s…
teknium1 Mar 31, 2026
54b876a
fix: add actionable guidance to context-exceeded error messages (#4155)
teknium1 Mar 31, 2026
5b0243e
docs: deep quality pass — expand 10 thin pages, fix specific issues (…
teknium1 Mar 31, 2026
fb4b87f
chore: add claude-sonnet-4.6 to OpenRouter and Nous model lists (#4157)
teknium1 Mar 31, 2026
d30ea65
fix: URL-based auth for third-party Anthropic endpoints + CI test fix…
teknium1 Mar 31, 2026
3a68ec3
feat: add Fireworks context length detection support (#4158)
teknium1 Mar 31, 2026
c1ef9b2
fix(cli): ensure on_session_end hook fires on interrupted exits (#4159)
teknium1 Mar 31, 2026
f8e1ee1
Fix profile list model display (#4160)
teknium1 Mar 31, 2026
1bd206e
feat: add /btw command for ephemeral side questions (#4161)
teknium1 Mar 31, 2026
4d7e3c7
fix(tests): provide model name in Codex 401 refresh tests for CI (#4166)
teknium1 Mar 31, 2026
f890a94
refactor: make config.yaml the single source of truth for endpoint UR…
teknium1 Mar 31, 2026
89d8127
fix: setup wizard overwrites custom endpoint config (#4172)
teknium1 Mar 31, 2026
491e79b
refactor: unify setup wizard provider selection with hermes model
teknium1 Mar 31, 2026
ff78ad4
feat: add discord.reactions config option to disable message reaction…
teknium1 Mar 31, 2026
a994cf5
docs: update adding-providers guide for unified setup flow
teknium1 Mar 31, 2026
1bca6f3
fix: save API key to model config for custom endpoints (#4182)
teknium1 Mar 31, 2026
c53a296
feat: add MiniMax M2.7 to hermes model picker and opencode-go (#4208)
teknium1 Mar 31, 2026
086ec55
fix: gate Claude Code credentials behind explicit Hermes config in wi…
teknium1 Mar 31, 2026
50302ed
fix(tools): make browser SSRF check configurable via browser.allow_pr…
nils010485 Mar 31, 2026
2ae50bd
fix(telegram): enforce 32-char limit on command names with collision …
teknium1 Mar 31, 2026
8d59881
feat(auth): same-provider credential pools with rotation, custom endp…
teknium1 Mar 31, 2026
79b2694
fix: _allow_private_urls name collision + stale OPENAI_BASE_URL test …
teknium1 Mar 31, 2026
344239c
feat: auto-detect models from server probe in custom endpoint setup (…
teknium1 Mar 31, 2026
6ddaade
feat(resume): cross-platform /resume with API server support
AmyRavenwolf Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,21 @@ VOICE_TOOLS_OPENAI_KEY=
# Slack allowed users (comma-separated Slack user IDs)
# SLACK_ALLOWED_USERS=

# =============================================================================
# TELEGRAM INTEGRATION
# =============================================================================
# Telegram Bot Token - From @BotFather (https://t.me/BotFather)
# TELEGRAM_BOT_TOKEN=
# TELEGRAM_ALLOWED_USERS= # Comma-separated user IDs
# TELEGRAM_HOME_CHANNEL= # Default chat for cron delivery
# TELEGRAM_HOME_CHANNEL_NAME= # Display name for home channel

# Webhook mode (optional — for cloud deployments like Fly.io/Railway)
# Default is long polling. Setting TELEGRAM_WEBHOOK_URL switches to webhook mode.
# TELEGRAM_WEBHOOK_URL=https://my-app.fly.dev/telegram
# TELEGRAM_WEBHOOK_PORT=8443
# TELEGRAM_WEBHOOK_SECRET= # Recommended for production

# WhatsApp (built-in Baileys bridge — run `hermes whatsapp` to pair)
# WHATSAPP_ENABLED=false
# WHATSAPP_ALLOWED_USERS=15551234567
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/deploy-site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ concurrency:

jobs:
build-and-deploy:
# Only run on the upstream repository, not on forks
if: github.repository == 'NousResearch/hermes-agent'
runs-on: ubuntu-latest
environment:
name: github-pages
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ concurrency:

jobs:
build-and-push:
# Only run on the upstream repository, not on forks
if: github.repository == 'NousResearch/hermes-agent'
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
Expand Down
4 changes: 4 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
graft skills
graft optional-skills
global-exclude __pycache__
global-exclude *.py[cod]
Loading
Loading