Compare commits
merge into: seb/hermes-agent:sid/dead-code-remove
seb/hermes-agent:main
seb/hermes-agent:ethie/e2e
seb/hermes-agent:hermes/hermes-0f8a2d57
seb/hermes-agent:fix/resume-follows-compression-tip
seb/hermes-agent:hermes/hermes-76de4391
seb/hermes-agent:hermes/notify-cli-tui-supersede
seb/hermes-agent:fix/dashboard-ds-button-api
seb/hermes-agent:hermes/hermes-afb6a269
seb/hermes-agent:dependabot/npm_and_yarn/website/undici-7.28.0
seb/hermes-agent:dependabot/npm_and_yarn/dompurify-3.4.11
seb/hermes-agent:feat/relay-inbound-ws
seb/hermes-agent:feat/cron-scheduler-provider-chronos
seb/hermes-agent:feat/multiplex-gateway
seb/hermes-agent:fix/ns501-multipart-upload-salvage
seb/hermes-agent:dependabot/uv/starlette-1.3.1
seb/hermes-agent:dependabot/uv/python-multipart-0.0.31
seb/hermes-agent:hermes/hermes-11bc708e
seb/hermes-agent:feat/raft-platform-plugin
seb/hermes-agent:cline-port/parallel-tool-call-guidance
seb/hermes-agent:dependabot/npm_and_yarn/website/webpack-dev-server-5.2.5
seb/hermes-agent:bb/pets-gen
seb/hermes-agent:bb/pets
seb/hermes-agent:salvage/oauth-system-prompt-relocation
seb/hermes-agent:fix/ns506-session-db-durability
seb/hermes-agent:feat/remove-legacy-dashboard-session-token
seb/hermes-agent:codex-port/mcp-default-timeout-300
seb/hermes-agent:feat/opentui-copy-button
seb/hermes-agent:feat/opentui-native-engine
seb/hermes-agent:fix/cli-worktree-lock
seb/hermes-agent:fix/clarify-choices-docstring
seb/hermes-agent:feat/provider-reported-cost
seb/hermes-agent:fix/desktop-subagent-streaming
seb/hermes-agent:hermes/hermes-0184cf20
seb/hermes-agent:dependabot/github_actions/actions-minor-patch-d188ce17e4
seb/hermes-agent:dependabot/uv/tornado-6.5.7
seb/hermes-agent:dependabot/npm_and_yarn/website/dompurify-3.4.10
seb/hermes-agent:dependabot/npm_and_yarn/website/launch-editor-2.14.1
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/protobufjs-7.6.4
seb/hermes-agent:bb/food-delivery
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/ws-8.21.0
seb/hermes-agent:dependabot/uv/pytest-9.0.3
seb/hermes-agent:salvage/xiaomi-mimo-base-url-routing
seb/hermes-agent:salvage/xiaomi-mimo-thinking-replay
seb/hermes-agent:hermes/hermes-d13b1ab7
seb/hermes-agent:salvage/xiaomi-mimo-vision-tool-routing
seb/hermes-agent:salvage/xiaomi-mimo-accounting-errors
seb/hermes-agent:salvage/windows-uia-computer-use
seb/hermes-agent:feat/image-generate-image-input
seb/hermes-agent:openclaw-port/telegram-typing-cooldown
seb/hermes-agent:openclaw-port/web-url-whitespace
seb/hermes-agent:nanoclaw-port/uninstall-dry-run
seb/hermes-agent:nanoclaw-port/docker-network-toggle
seb/hermes-agent:ironclaw-port/memory-null-target-4547
seb/hermes-agent:feat/iron-proxy
seb/hermes-agent:feat/openrouter-fusion-model-slugs
seb/hermes-agent:fix/telegram-rich-messages-opt-in
seb/hermes-agent:fix/codex-bounded-leak-scan
seb/hermes-agent:claude-code-inspired/safe-mode
seb/hermes-agent:claude-code-inspired/title-language
seb/hermes-agent:claude-code-inspired/shell-startup-write-deny
seb/hermes-agent:nanoclaw-port/upload-trace-v2
seb/hermes-agent:feat/opentui-memory-window
seb/hermes-agent:hermes/hermes-0a703936
seb/hermes-agent:hermes/hermes-9bdf8753
seb/hermes-agent:revert-45263-bb/desktop-chat-autoscroll
seb/hermes-agent:dependabot/uv/tornado-6.5.6
seb/hermes-agent:feat/web-grounding-citations
seb/hermes-agent:platform-support-tiers
seb/hermes-agent:hermes-e2e
seb/hermes-agent:ethie/node-bundle
seb/hermes-agent:fix/worktree-prune-data-loss
seb/hermes-agent:ethie/ws-api-move
seb/hermes-agent:bb/desktop-served-token
seb/hermes-agent:austin/fix/types-node-lockfile
seb/hermes-agent:fix/coding-context-followup
seb/hermes-agent:fix/windows-update-respawn-pythonw
seb/hermes-agent:hermes/hermes-4e3ec235
seb/hermes-agent:test-save-durations-fix
seb/hermes-agent:dependabot/uv/cbor2-5.9.0
seb/hermes-agent:dependabot/uv/pygments-2.20.0
seb/hermes-agent:desktop-cmd-ctrl-2
seb/hermes-agent:feat/desktop-remote-filesystem
seb/hermes-agent:feat/gateway-relay-adapter
seb/hermes-agent:bb/model-routing
seb/hermes-agent:extend-hook-registry-for-plugins
seb/hermes-agent:feat/desktop-worktree-sessions
seb/hermes-agent:hermes-ts6
seb/hermes-agent:fix/terminal-env-sync-test
seb/hermes-agent:refactor/concurrent-gate-fixture-scope
seb/hermes-agent:feat/debug-share-nous-s3
seb/hermes-agent:feat/tui-plugins-hub
seb/hermes-agent:fix/plugins-slash-command-discovery
seb/hermes-agent:bb/desktop-terminal-bottom
seb/hermes-agent:feat/plugin-subdir-install
seb/hermes-agent:fix/photon-test-package-init
seb/hermes-agent:ethie/nix-faster
seb/hermes-agent:feat/desktop-remote-update-skew
seb/hermes-agent:feat/apify-plugin
seb/hermes-agent:feat/dynamic-workflow-skill
seb/hermes-agent:hermes/hermes-8d223d48
seb/hermes-agent:hermes/hermes-b9598731
seb/hermes-agent:worktree-desktop-surface-slash-commands
seb/hermes-agent:migrate/platforms-to-plugins
seb/hermes-agent:hermes/hermes-87ac0a8e
seb/hermes-agent:salvage/pr-39244
seb/hermes-agent:salvage/pr-41166
seb/hermes-agent:salvage/pr-41076
seb/hermes-agent:salvage/pr-39749
seb/hermes-agent:salvage/pr-41151
seb/hermes-agent:salvage/pr-41063
seb/hermes-agent:salvage/pr-41048
seb/hermes-agent:salvage/pr-38049
seb/hermes-agent:salvage/pr-38063
seb/hermes-agent:salvage/pr-38184
seb/hermes-agent:salvage/pr-39198
seb/hermes-agent:salvage/pr-39608
seb/hermes-agent:salvage/pr-39624
seb/hermes-agent:salvage/pr-41091
seb/hermes-agent:salvage/pr-41113
seb/hermes-agent:salvage/pr-41131
seb/hermes-agent:salvage/pr-41024
seb/hermes-agent:hermes/hermes-e2178603
seb/hermes-agent:feat/recipes-skill-automations
seb/hermes-agent:feat/proactive-monitor
seb/hermes-agent:bb/cron-history-timeout
seb/hermes-agent:fix/windows-update-gateway-respawn-breakaway
seb/hermes-agent:bb/desktop-install-update-ui
seb/hermes-agent:bb/vite-worktree-fs-allow
seb/hermes-agent:salvage/40531-mermaid-preview
seb/hermes-agent:salvage/40534-tool-exit-not-error
seb/hermes-agent:salvage/40242-oauth-header-test
seb/hermes-agent:salvage/40430-cron-cli-tests
seb/hermes-agent:salvage/40363-desktop-cwd-default
seb/hermes-agent:salvage/40264-clarify-mention-strip
seb/hermes-agent:salvage/40273-banner-width
seb/hermes-agent:salvage/40346-plugins-list-entrypoints
seb/hermes-agent:salvage/40303-timestamp-format
seb/hermes-agent:salvage/40431-hook-thread-chattype
seb/hermes-agent:salvage/40413-40299-macos-launchd-reliability
seb/hermes-agent:salvage/40490-lazydeps-tui-prompt
seb/hermes-agent:emo/preseve-shallow
seb/hermes-agent:bb/desktop-remote-image-upload
seb/hermes-agent:bb/desktop-update-slash
seb/hermes-agent:bb/version-slash-command
seb/hermes-agent:bb/docs-remote-backend-update-skew
seb/hermes-agent:bb/backend-contract-bump-profile-routing
seb/hermes-agent:bb/docs-desktop-macos-gatekeeper
seb/hermes-agent:bb/update-reexec-after-pull
seb/hermes-agent:dependabot/npm_and_yarn/website/postcss-8.5.15
seb/hermes-agent:fix/onboarding-skip-on-stale-env-var
seb/hermes-agent:ethie/windows-installer-fixes
seb/hermes-agent:bb/desktop-send-to-all
seb/hermes-agent:salvage/pr-9190
seb/hermes-agent:ethie/slash-prompt-start-only
seb/hermes-agent:opencode-port/respect-disabled-compaction-on-overflow
seb/hermes-agent:fix/node-fhs-root-hardening
seb/hermes-agent:fix/node-symlink-fhs-root-install
seb/hermes-agent:feat/dashboard-auth-self-hosted-oidc
seb/hermes-agent:bb/coding-agent-harness-analysis
seb/hermes-agent:feat/dashboard-register
seb/hermes-agent:fix/docker-tty-zero-dim-pty
seb/hermes-agent:hermes/hermes-040df651
seb/hermes-agent:gemini-cli-port/config-corruption-backup
seb/hermes-agent:plugin-sdk-auth
seb/hermes-agent:hermes/hermes-6c420680
seb/hermes-agent:hermes/hermes-aba10f53
seb/hermes-agent:hermes/hermes-de0d15b6
seb/hermes-agent:dependabot/github_actions/docker/setup-buildx-action-4.1.0
seb/hermes-agent:fix/slash-keyboard-selection
seb/hermes-agent:dashboard-internal-ws-credential
seb/hermes-agent:pr-37665
seb/hermes-agent:pr-37660
seb/hermes-agent:ethie/uv-salvage
seb/hermes-agent:bb/installer-trusted-uv-resolution
seb/hermes-agent:hermes/hermes-780defc4
seb/hermes-agent:ethie/oh-god
seb/hermes-agent:hermes/hermes-d1511484
seb/hermes-agent:bb/desktop-install-path-clarity
seb/hermes-agent:feat/gateway-lazy-platform-import
seb/hermes-agent:hermes/hermes-a963c25d
seb/hermes-agent:feat/blank-slate-setup
seb/hermes-agent:hermes/curator-usage-cli
seb/hermes-agent:ethie/win-exe-only
seb/hermes-agent:bb/tui-ansi-height-desync
seb/hermes-agent:bb/clarify-prompt-timeout-stuck
seb/hermes-agent:revert-34333-feat/nvidia-skills-tap
seb/hermes-agent:fix/tui-mouse-x10-prompt-leak
seb/hermes-agent:hermes/hermes-d44c5398
seb/hermes-agent:hermes/hermes-368c2379
seb/hermes-agent:bb/gui-mainmerge-tmp
seb/hermes-agent:hermes/gateway-replace-fix
seb/hermes-agent:hermes/hermes-21eb0ce1
seb/hermes-agent:fix/dev-dep-setuptools
seb/hermes-agent:fix/packaging-test-setuptools-dep
seb/hermes-agent:hermes/hermes-2747755a
seb/hermes-agent:docs/video-gen-nous-gateway
seb/hermes-agent:ethie/fix-nix-develop
seb/hermes-agent:v2026.5.29.1
seb/hermes-agent:docs/execute-code-hermes-env-passthrough
seb/hermes-agent:hermes/hermes-135cadfb
seb/hermes-agent:hermes/sec-tier1-32130
seb/hermes-agent:hermes/hermes-2b79b6da
seb/hermes-agent:opencode-port/responses-failed-error-detail
seb/hermes-agent:hermes-events-bus
seb/hermes-agent:perf/fts-optimize
seb/hermes-agent:release/v0.15.0-strip-gui
seb/hermes-agent:fix/nix-gateway-install-env
seb/hermes-agent:hermes/hermes-737ba78e
seb/hermes-agent:ethie/docker-simplify-tagging
seb/hermes-agent:dependabot/github_actions/actions/deploy-pages-5.0.0
seb/hermes-agent:feat/15268-pricing-nous-xai
seb/hermes-agent:hermes/fix-copilot-auth-test
seb/hermes-agent:fix/update-detects-parent-shim-as-running
seb/hermes-agent:docker_s6
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/multi-f792d6d6d9
seb/hermes-agent:hermes/hermes-5fdb1cc4
seb/hermes-agent:bb/tui-ctrlj-newline
seb/hermes-agent:sid/tool-gateway-implement
seb/hermes-agent:hermes/hermes-aa200214
seb/hermes-agent:feat/dashboard-typography-and-contrast
seb/hermes-agent:ethie/faster-tests-fake-main
seb/hermes-agent:fix/vision-dimension-cap
seb/hermes-agent:hermes/hermes-09fb88ef
seb/hermes-agent:ziliang-review-fork-inherit-toolsets
seb/hermes-agent:salvage-8306-webhook-secret
seb/hermes-agent:hermes/hermes-5db05717
seb/hermes-agent:hermes/hermes-a5904da7
seb/hermes-agent:refactor/stop-writing-gateway-jsonl-transcripts
seb/hermes-agent:refactor/stop-writing-session-json-snapshots
seb/hermes-agent:hermes/hermes-72b329fd
seb/hermes-agent:hermes/hermes-008bccbc
seb/hermes-agent:hermes/firecrawl-integration-tag-telemetry-gated
seb/hermes-agent:hermes/hermes-63babeb7
seb/hermes-agent:hermes/hermes-5e533958
seb/hermes-agent:hermes/hermes-8d7d912f
seb/hermes-agent:brooklyn/gui-installer-prereqs
seb/hermes-agent:hermes/hermes-429c1355
seb/hermes-agent:bb/tui-mouse-burst-swallow
seb/hermes-agent:feat/session_search_modes
seb/hermes-agent:hermes/hermes-5ac74b48
seb/hermes-agent:bb/cli-resize-duplication
seb/hermes-agent:salvage/pr-23780
seb/hermes-agent:lsp-plugin
seb/hermes-agent:austin/fix/minimax-oauth
seb/hermes-agent:bb/lsp-lint
seb/hermes-agent:hermes/hermes-4fa48a27
seb/hermes-agent:salvage/pr-22685
seb/hermes-agent:feat/session-handoff
seb/hermes-agent:feat/codex-mcp-preset
seb/hermes-agent:feat/codex-cli-provider
seb/hermes-agent:hermes/hermes-3b90958e
seb/hermes-agent:perf/honcho-shutdown
seb/hermes-agent:hermes/hermes-b2e6c99b
seb/hermes-agent:austin/feat/google-oauth-provider
seb/hermes-agent:bb/gui-gateway-attach-wiring
seb/hermes-agent:bb/tui-gateway-attach-core
seb/hermes-agent:hermes/hermes-e239855c
seb/hermes-agent:fix/windows-uv-python-install-stderr
seb/hermes-agent:bb/windows-cli-tui-native-main
seb/hermes-agent:feat/trust-engine
seb/hermes-agent:feat/watchers
seb/hermes-agent:bb/widget-grid-slots
seb/hermes-agent:hermes/hermes-1c84a997
seb/hermes-agent:feat/browser-coordinate-click
seb/hermes-agent:cline-port/openrouter-qwen-cache-control
seb/hermes-agent:fix/ty-1
seb/hermes-agent:hermes/hermes-fee7225c
seb/hermes-agent:hermes/hermes-9ddf5187
seb/hermes-agent:codex-port/hook-output-spill
seb/hermes-agent:fix/terminal-safety-filter-false-positives
seb/hermes-agent:fix/gateway-remove-stale-code-self-restart
seb/hermes-agent:kilocode-port/compact-strip-media
seb/hermes-agent:fix/stale-cwd-recovery
seb/hermes-agent:feat/hermes-send
seb/hermes-agent:kanban_hermes_home
seb/hermes-agent:hermes/hermes-fabc46fe
seb/hermes-agent:feat/tinyfish-browser-provider
seb/hermes-agent:hermes/hermes-96962c19
seb/hermes-agent:claude-code-inspired/session-recap
seb/hermes-agent:fix/lazy-session-creation
seb/hermes-agent:hermes/hermes-3c2988b0
seb/hermes-agent:opencode-port/invalid-mcp-url
seb/hermes-agent:opencode-port/moonshot-ref-siblings
seb/hermes-agent:bb/docker-tui-prebuilt
seb/hermes-agent:fix/aux-anthropic-url-regression-test
seb/hermes-agent:vbrunet/2026_04_15-terminal-title-updates
seb/hermes-agent:bb/theme
seb/hermes-agent:cline-port/gateway-memory-monitor
seb/hermes-agent:gemini-cli-port/exit-delete-session
seb/hermes-agent:bb/tui-copy-on-select
seb/hermes-agent:feat/comfyui-skill-v3
seb/hermes-agent:hermes/hermes-dd91e6b2
seb/hermes-agent:feat/provider-modules
seb/hermes-agent:hermes/hermes-dab6fbf1
seb/hermes-agent:feat/comfyui-skill-v2
seb/hermes-agent:vbrunet/2026_04_29-terminal-titles
seb/hermes-agent:feat/kanban-standing
seb/hermes-agent:bb/tui-reload-env
seb/hermes-agent:bb/learning-ledger
seb/hermes-agent:bb/tui-status-ticker-width
seb/hermes-agent:fix/plugin-loader-sys-modules-registration
seb/hermes-agent:fix/deprecate-extrapackages-nix
seb/hermes-agent:hermes/hermes-c8604b32
seb/hermes-agent:fix/chat-tab-persistence
seb/hermes-agent:feat/langfuse-plugin
seb/hermes-agent:kilocode-port/subagent-cost-rollup
seb/hermes-agent:fix/analytics-include-cache-tokens
seb/hermes-agent:hermes/hermes-8fedd55b
seb/hermes-agent:bb/fix-tui-input-selection
seb/hermes-agent:bb/p2-mru-resume-order
seb/hermes-agent:hermes/hermes-2c880154
seb/hermes-agent:hermes/hermes-8b414b52
seb/hermes-agent:nanoclaw-port/signal-groupv2
seb/hermes-agent:hermes/hermes-d7874f79
seb/hermes-agent:hermes/curator-infra
seb/hermes-agent:bb/tui-perf-fix
seb/hermes-agent:feature/tui-showroom
seb/hermes-agent:bb/base-gui
seb/hermes-agent:investigate/fix-tui-container-ink-bundle
seb/hermes-agent:fix/flush-memories-context-overflow
seb/hermes-agent:design/compression-eval-harness
seb/hermes-agent:fix/stop-interrupt-retry-loop
seb/hermes-agent:fix/model-switch-custom-endpoint
seb/hermes-agent:fix/web-env-validation
seb/hermes-agent:fix/hindsight-blank-nuke
seb/hermes-agent:fix/setup-vision-blank
seb/hermes-agent:sid/discord-context-injection
seb/hermes-agent:sid/discord-tool-split
seb/hermes-agent:sid/fix-tools-config-save
seb/hermes-agent:sid/fix-platform-tool-loading
seb/hermes-agent:hermes/hermes-6c37b3dd
seb/hermes-agent:hermes/hermes-9d07c44f
seb/hermes-agent:alice/nous-portal-recommended-models
seb/hermes-agent:onboarding
seb/hermes-agent:sid/restructure-pr1-acp
seb/hermes-agent:bb/tui-web-chat
seb/hermes-agent:opencode-port/configurable-tool-output-limits
seb/hermes-agent:hermes/hermes-34b3f52d
seb/hermes-agent:sid/types-and-lints
seb/hermes-agent:sid/foundational-restructure
seb/hermes-agent:feat/dashboard-chat
seb/hermes-agent:gemini-cli-port/ssl-retry-patterns
seb/hermes-agent:cline-port/anthropic-cache-tokens-top-level
seb/hermes-agent:nemo-gym-changes
seb/hermes-agent:fix/schema-reconciliation
seb/hermes-agent:fix/upgrade-agent-browser-0.26
seb/hermes-agent:feat/ssrf-allow-private-urls
seb/hermes-agent:feat/volcengine-byteplus
seb/hermes-agent:refactor/unify-transport-dispatch
seb/hermes-agent:feat/require-mention-channels
seb/hermes-agent:remove-nous-free-allowlist
seb/hermes-agent:codex-port/ignore-user-config-flags
seb/hermes-agent:bb/tui-mouse-toggle
seb/hermes-agent:feat/td-skill-update
seb/hermes-agent:feat/bedrock-transport
seb/hermes-agent:feat/chat-completions-transport
seb/hermes-agent:hermes/hermes-bb7c1b2e
seb/hermes-agent:kilocode-port/filter-non-tool-openrouter-models
seb/hermes-agent:fix/kimi-drop-temperature
seb/hermes-agent:bb/tui-elapsed-lastmsg-8541
seb/hermes-agent:feat/transport-types
seb/hermes-agent:refactor/extract-codex-adapter
seb/hermes-agent:ironclaw-port/url-and-form-redaction
seb/hermes-agent:openclaw-port/display-tool-call-tags-strip
seb/hermes-agent:openclaw-port/anthropic-max-tokens-guard
seb/hermes-agent:openclaw-port/compaction-credential-redaction
seb/hermes-agent:sid/workspace-salvage
seb/hermes-agent:chore/ci-path-filters
seb/hermes-agent:chore/remove-stale-docs
seb/hermes-agent:feat/native-gemini-provider
seb/hermes-agent:salvage/helix4u-zai-setup
seb/hermes-agent:hermes/hermes-150d8cf8
seb/hermes-agent:hermes/browser-dialog
seb/hermes-agent:fix/minimax-glm-token-compression
seb/hermes-agent:salvage/nvidia-nim-max-tokens
seb/hermes-agent:fix/nix-web-dashboard
seb/hermes-agent:feat/comfyui-skill
seb/hermes-agent:hermes/hermes-9c0eed69
seb/hermes-agent:fix/mcp-oauth-bidirectional-generator-bridge
seb/hermes-agent:claude-code-inspired/dangerous-cmd-hardening
seb/hermes-agent:fix/test-backoff-timers
seb/hermes-agent:ci/matrix-split-v2
seb/hermes-agent:fix/test-reduction-batch-2
seb/hermes-agent:feat/searxng-backend
seb/hermes-agent:opencode-port/sessions-export-sanitize
seb/hermes-agent:dashboard-show-remote-gateway-url
seb/hermes-agent:hermes/gemini-oauth-30b2099d
seb/hermes-agent:feat/gemini-tts-salvage
seb/hermes-agent:feat/ungate-tool-gateway
seb/hermes-agent:xai-media-tools
seb/hermes-agent:fix/ci-test-failures
seb/hermes-agent:hermes/hermes-9d38280f
seb/hermes-agent:gemini-cli-port/strategic-reevaluation
seb/hermes-agent:fix/client-cache-fd-exhaustion
seb/hermes-agent:salvage/watch-notification-routing
seb/hermes-agent:hermes/hermes-5d6c3d3e
seb/hermes-agent:fix/dashboard-analytics-accuracy
seb/hermes-agent:hermes/hermes-9a00cfa2
seb/hermes-agent:hermes/hermes-050c727e
seb/hermes-agent:hermes/hermes-4a9b24c3
seb/hermes-agent:codex-port/mcp-parallel-tool-calls
seb/hermes-agent:gateway-plugin-loading
seb/hermes-agent:max_paperclips/gateway-plugin-loading
seb/hermes-agent:feat/remote-gateway-health-probe
seb/hermes-agent:compaction-secrets-preservation
seb/hermes-agent:fix/dashboard-routing
seb/hermes-agent:update-issue-templates-debug-share
seb/hermes-agent:sid/tb2-evals
seb/hermes-agent:feat/deep-research-skill
seb/hermes-agent:hermes/hermes-1b2e5f73
seb/hermes-agent:hermes/hermes-9e793b91
seb/hermes-agent:fix/feishu-identity-model
seb/hermes-agent:fix/web-cron-page-schedule-object
seb/hermes-agent:ironclaw-port/telegram-utf16-splitting
seb/hermes-agent:nanoclaw-port/session-artifact-cleanup
seb/hermes-agent:openclaw-port/reject-weak-gateway-creds
seb/hermes-agent:openclaw-port/matrix-mentions-user-ids
seb/hermes-agent:fix/gateway-no-systemctl
seb/hermes-agent:skill/github-code-review-mcp-tools
seb/hermes-agent:chore/remove-sha-docker-tag
seb/hermes-agent:feat/gateway-mcp-config-watcher
seb/hermes-agent:hermes/hermes-1f7bfa9e
seb/hermes-agent:feat/file-sync-back
seb/hermes-agent:fix/modal-ssh-upload-bugs
seb/hermes-agent:hermes/salvage-7558
seb/hermes-agent:hermes/hermes-72401910
seb/hermes-agent:hermes/hermes-925eff6a
seb/hermes-agent:hermes/hermes-c965583d
seb/hermes-agent:hermes/hermes-9c0ad5d9
seb/hermes-agent:hermes/hermes-905d6262
seb/hermes-agent:hermes/hermes-070e5a43
seb/hermes-agent:hermes/hermes-c382c827
seb/hermes-agent:hermes/hermes-7052b79e
seb/hermes-agent:hermes/hermes-e08f4d67
seb/hermes-agent:hermes/hermes-566f8c6d
seb/hermes-agent:hermes/hermes-4fdb3d23
seb/hermes-agent:hermes/hermes-67b0d759
seb/hermes-agent:hermes/hermes-b5e135be
seb/hermes-agent:hermes/hermes-2d3cc746
seb/hermes-agent:hermes/hermes-80a283e0
seb/hermes-agent:hermes/hermes-83dfcdfa
seb/hermes-agent:hermes/hermes-efa38736
seb/hermes-agent:hermes/hermes-c78b9811
seb/hermes-agent:hermes/hermes-ffc6cfa8
seb/hermes-agent:hermes/hermes-a50b945e
seb/hermes-agent:twilio-auth-fix
seb/hermes-agent:fix/claw-migrate-warn-running-gateway
seb/hermes-agent:hermes/hermes-f6cda1f0
seb/hermes-agent:hermes/hermes-524779d7
seb/hermes-agent:hermes/hermes-da2f08b5
seb/hermes-agent:hermes/hermes-672624fb
seb/hermes-agent:hermes/hermes-28292000
seb/hermes-agent:hermes/hermes-ec496c80
seb/hermes-agent:hermes/hermes-f43decdf
seb/hermes-agent:hermes/hermes-5bef3224
seb/hermes-agent:hermes/hermes-17ae0c29
seb/hermes-agent:fix/claw-migrate-improve-warnings
seb/hermes-agent:fix/claw-migrate-json-env-keys
seb/hermes-agent:fix/claw-migrate-workspace-main-paths
seb/hermes-agent:fix/claw-migrate-schema-drift
seb/hermes-agent:fix/matrix-memorycryptostore-args
seb/hermes-agent:fix/claw-migrate-tts-microsoft
seb/hermes-agent:fix/claw-migrate-nested-channel-tokens
seb/hermes-agent:hermes/hermes-ea68d311
seb/hermes-agent:hermes/hermes-38060157
seb/hermes-agent:hermes/hermes-0224a8b2
seb/hermes-agent:hermes/hermes-b092dccf
seb/hermes-agent:hermes/hermes-03da22bc
seb/hermes-agent:hermes/bucket3
seb/hermes-agent:hermes/hermes-2e0dc4f3
seb/hermes-agent:salvage/bucket-st
seb/hermes-agent:hermes/hermes-ebb65d1b
seb/hermes-agent:hermes/hermes-d0d52697
seb/hermes-agent:hermes/hermes-b17bdb8e
seb/hermes-agent:hermes/hermes-bc33645d
seb/hermes-agent:salvage/bucket-p
seb/hermes-agent:hermes/hermes-4a5220fe
seb/hermes-agent:hermes/hermes-7f8c199a
seb/hermes-agent:hermes/hermes-fefa061a
seb/hermes-agent:feat/mautrix-migration
seb/hermes-agent:hermes/hermes-7e4c9931
seb/hermes-agent:hermes/hermes-dc4200fd
seb/hermes-agent:salvage/bucket-o
seb/hermes-agent:feat/container-aware-cli
seb/hermes-agent:fix/daytona-bulk-upload-config-bridge-7362
seb/hermes-agent:claude-code-inspired/context-breakdown
seb/hermes-agent:hermes/hermes-1bd9e323
seb/hermes-agent:hermes/hermes-17b93f0b
seb/hermes-agent:hermes/hermes-9d5d8704
seb/hermes-agent:salvage/bucket-n
seb/hermes-agent:api-server-enforce-key
seb/hermes-agent:hermes/hermes-f8dcb6dd
seb/hermes-agent:hermes/hermes-c7787b3d
seb/hermes-agent:salvage/bucket-m
seb/hermes-agent:hermes/hermes-30126ac0
seb/hermes-agent:terminate-zombie-processes
seb/hermes-agent:hermes/hermes-ead3c84e
seb/hermes-agent:hermes/hermes-f1c0a201
seb/hermes-agent:salvage/bucket-i
seb/hermes-agent:hermes/hermes-11e9b74a
seb/hermes-agent:hermes/hermes-90f54154
seb/hermes-agent:hermes/hermes-2376d00b
seb/hermes-agent:hermes/hermes-8f5f6063
seb/hermes-agent:salvage/bucket-l
seb/hermes-agent:hermes/hermes-84ed614f
seb/hermes-agent:hermes/hermes-0f8490c2
seb/hermes-agent:hermes/hermes-2a3d0461
seb/hermes-agent:salvage/bucket-k
seb/hermes-agent:hermes/hermes-62b22a1e
seb/hermes-agent:hermes/hermes-26f90bd3
seb/hermes-agent:security/bucket-j
seb/hermes-agent:hermes/hermes-7ef33568
seb/hermes-agent:hermes/hermes-3ffcbfb5
seb/hermes-agent:hermes/hermes-6584b1e4
seb/hermes-agent:hermes/hermes-d9d67691
seb/hermes-agent:hermes/hermes-cde3c240
seb/hermes-agent:hermes/hermes-27e1fc16
seb/hermes-agent:hermes/hermes-5f2c8429
seb/hermes-agent:hermes/hermes-8dbb2cec
seb/hermes-agent:hermes/hermes-bbf55c16
seb/hermes-agent:hermes/hermes-a21aa249
seb/hermes-agent:hermes/hermes-eafa085a
seb/hermes-agent:hermes/hermes-4b558854
seb/hermes-agent:hermes/hermes-0687c6d6
seb/hermes-agent:hermes/hermes-33e13b6f
seb/hermes-agent:hermes/hermes-1fd9f435
seb/hermes-agent:hermes/hermes-1bb7ea55
seb/hermes-agent:hermes/hermes-57ea0a16
seb/hermes-agent:hermes/hermes-5bbf4839
seb/hermes-agent:hermes/hermes-617689ff
seb/hermes-agent:hermes/hermes-5cfcdf33
seb/hermes-agent:hermes/hermes-05b0c02e
seb/hermes-agent:hermes/hermes-115318ed
seb/hermes-agent:hermes/hermes-f454d397
seb/hermes-agent:hermes/hermes-43ae98f3
seb/hermes-agent:hermes/hermes-87f37874
seb/hermes-agent:hermes/hermes-bbe6a8b7
seb/hermes-agent:hermes/hermes-2556be1e
seb/hermes-agent:hermes/hermes-8494816d
seb/hermes-agent:hermes/hermes-0d0bfa89
seb/hermes-agent:hermes/hermes-c711558a
seb/hermes-agent:hermes/hermes-7aad138d
seb/hermes-agent:hermes/hermes-4b6801c7
seb/hermes-agent:hermes/hermes-374f99bc
seb/hermes-agent:hermes/hermes-605d722e
seb/hermes-agent:hermes/hermes-c546e7a1
seb/hermes-agent:hermes/hermes-62b6865d
seb/hermes-agent:hermes/hermes-f8a6248b
seb/hermes-agent:hermes/hermes-fe654944
seb/hermes-agent:hermes/hermes-d4ece6c2
seb/hermes-agent:fix/stream-think-tag-false-positive
seb/hermes-agent:hermes/hermes-d0607f0a
seb/hermes-agent:hermes/hermes-1c7df171
seb/hermes-agent:fix/oauth-issue2-nous-pool-refresh-sync-authstore
seb/hermes-agent:hermes/hermes-95b15f6e
seb/hermes-agent:hermes/hermes-e201f931
seb/hermes-agent:opencode-port/alibaba-rate-limit-retry
seb/hermes-agent:fix/oauth-issue1-nous-entry-needs-refresh
seb/hermes-agent:fix/oauth-issue5-is-expiring-none-handling
seb/hermes-agent:fix/oauth-issue4-anthropic-proactive-sync-hermes-pkce
seb/hermes-agent:fix/oauth-issue3-codex-proactive-sync-before-refresh
seb/hermes-agent:sid/dead-code-remove
seb/hermes-agent:hermes/hermes-8c64f471
seb/hermes-agent:hermes/hermes-ff5ba265
seb/hermes-agent:hermes/hermes-71aea4c5
seb/hermes-agent:hermes/hermes-1b5bb607
seb/hermes-agent:hermes/hermes-25b83dfd
seb/hermes-agent:fix/nix-shared-state-perms
seb/hermes-agent:hermes/hermes-30ac05a4
seb/hermes-agent:hermes/hermes-731d3033
seb/hermes-agent:hermes/hermes-41d14a2c
seb/hermes-agent:hermes/hermes-3f221b1b
seb/hermes-agent:hermes/hermes-e873511f
seb/hermes-agent:hermes/hermes-41cd011b
seb/hermes-agent:hermes/hermes-f409204f
seb/hermes-agent:hermes/hermes-bcf93c03
seb/hermes-agent:hermes/hermes-2f44469d
seb/hermes-agent:hermes/hermes-3466ee98
seb/hermes-agent:hermes/hermes-398baa59
seb/hermes-agent:hermes/hermes-1ff40dac
seb/hermes-agent:hermes/hermes-0429963a
seb/hermes-agent:hermes/hermes-ff89d9af
seb/hermes-agent:hermes/hermes-de843a22
seb/hermes-agent:hermes/hermes-037596df
seb/hermes-agent:hermes/hermes-e77cdbbf
seb/hermes-agent:hermes/hermes-135e8d93
seb/hermes-agent:hermes/hermes-f2a81adb
seb/hermes-agent:hermes/hermes-2447adad
seb/hermes-agent:hermes/hermes-005912a8
seb/hermes-agent:hermes/hermes-1845cad9
seb/hermes-agent:hermes/hermes-d5c0fd3b
seb/hermes-agent:hermes/hermes-b5d8eff0
seb/hermes-agent:hermes/hermes-5df3920d
seb/hermes-agent:hermes/hermes-b0a4b31e
seb/hermes-agent:hermes/hermes-063b6e1d
seb/hermes-agent:hermes/hermes-98aa7b3a
seb/hermes-agent:hermes/hermes-1fa6ad8f
seb/hermes-agent:hermes/hermes-485d498c
seb/hermes-agent:hermes/hermes-e77429d5
seb/hermes-agent:hermes/hermes-1d8a5754
seb/hermes-agent:sid/unified-file-sync
seb/hermes-agent:hermes/hermes-38cb19c4
seb/hermes-agent:hermes/hermes-54fe23ca
seb/hermes-agent:fix/nix-add-to-system-packages-complete
seb/hermes-agent:hermes/hermes-947c24f7
seb/hermes-agent:sid/unified-terminal-envs
seb/hermes-agent:hermes/hermes-9085f0bb
seb/hermes-agent:hermes/hermes-6b365d9a
seb/hermes-agent:hermes/hermes-4923821d
seb/hermes-agent:hermes/hermes-4e231d00
seb/hermes-agent:hermes/hermes-554a02fe
seb/hermes-agent:hermes/hermes-016048ea
seb/hermes-agent:feat/worldsim-skill
seb/hermes-agent:hermes/hermes-6b456629
seb/hermes-agent:hermes/hermes-f845dfbe
seb/hermes-agent:hermes/hermes-83d3c1db
seb/hermes-agent:hermes/hermes-8452ab09
seb/hermes-agent:hermes/hermes-9f84a11f
seb/hermes-agent:hermes/hermes-53abd2ba
seb/hermes-agent:hermes/hermes-ef18f2ae
seb/hermes-agent:hermes/hermes-7d888e8c
seb/hermes-agent:hermes/hermes-7bf50ef1
seb/hermes-agent:hermes/hermes-f400edfe
seb/hermes-agent:hermes/hermes-27761e13
seb/hermes-agent:hermes/hermes-d07e864e
seb/hermes-agent:hermes/hermes-e3aca6ef
seb/hermes-agent:hermes/hermes-c7eda492
seb/hermes-agent:sid/tool-result-fixes
seb/hermes-agent:hermes/hermes-87470f33
seb/hermes-agent:hermes/hermes-ef25015a
seb/hermes-agent:hermes/hermes-fb3680fc
seb/hermes-agent:hermes/hermes-476720eb
seb/hermes-agent:hermes/hermes-7d70fb12
seb/hermes-agent:hermes/hermes-2f2a1403
seb/hermes-agent:hermes/hermes-c81d4c5a
seb/hermes-agent:hermes/hermes-3ff117b3
seb/hermes-agent:hermes/hermes-5e970516
seb/hermes-agent:hermes/hermes-cabfdb4f
seb/hermes-agent:sid/restructure-tests
seb/hermes-agent:hermes/hermes-701b2186
seb/hermes-agent:rm/add-portal-link
seb/hermes-agent:hermes/hermes-81f85bb4
seb/hermes-agent:hermes/hermes-822a0590
seb/hermes-agent:hermes/hermes-d623dc00
seb/hermes-agent:hermes/hermes-37b5ec52
seb/hermes-agent:hermes/hermes-fef87f31
seb/hermes-agent:hermes/hermes-f1e32b74
seb/hermes-agent:hermes/hermes-756f7e33
seb/hermes-agent:salvage/5752-nous-free-tier-gating
seb/hermes-agent:feat/nous-free-tier-model-gating
seb/hermes-agent:switch-managed-browser-to-browser-use
seb/hermes-agent:hermes/hermes-7697425c
seb/hermes-agent:hermes/hermes-53b01c86
seb/hermes-agent:hermes/hermes-81d3384e
seb/hermes-agent:hermes/hermes-86122627
seb/hermes-agent:hermes/hermes-03d7aa21
seb/hermes-agent:hermes/hermes-b34c1567
seb/hermes-agent:hermes/hermes-694ff34e
seb/hermes-agent:hermes/hermes-b93afb56
seb/hermes-agent:hermes/hermes-c1ef09e3
seb/hermes-agent:fix/portal-env-var-ignored-during-login
seb/hermes-agent:hermes/hermes-479681ef
seb/hermes-agent:hermes/hermes-cd5ac32c
seb/hermes-agent:hermes/hermes-71aaf6c8
seb/hermes-agent:hermes/hermes-f177c8f0
seb/hermes-agent:hermes/hermes-db0c54fb
seb/hermes-agent:sid/unified-execution
seb/hermes-agent:hermes/hermes-35bfb4c2
seb/hermes-agent:hermes/hermes-47b24166
seb/hermes-agent:hermes/hermes-e5557d16
seb/hermes-agent:hermes/hermes-b809b68d
seb/hermes-agent:sid/nix-fixes-nits
seb/hermes-agent:taubench_eval
seb/hermes-agent:feat/firecrawl-browser-provider
seb/hermes-agent:hermes/hermes-7a93e2c7
seb/hermes-agent:hermes/hermes-8cc55056
seb/hermes-agent:hermes/hermes-838c5b76
seb/hermes-agent:workdir-quote-escape
seb/hermes-agent:hermes/hermes-c4a8b829
seb/hermes-agent:rm/browser-use-tool-gateway
seb/hermes-agent:hermes/hermes-ac0ac8da
seb/hermes-agent:hermes/hermes-ba679ba8
seb/hermes-agent:hermes/hermes-b692993b
seb/hermes-agent:hermes/hermes-ce719117
seb/hermes-agent:hermes/hermes-0bc806a5
seb/hermes-agent:hermes/hermes-00399121
seb/hermes-agent:hermes/hermes-5a282295
seb/hermes-agent:fix/various-qa
seb/hermes-agent:hermes/hermes-3ef4d555
seb/hermes-agent:hermes/hermes-ef6f7818
seb/hermes-agent:hermes/hermes-be07ee70
seb/hermes-agent:hermes/hermes-c0614333
seb/hermes-agent:hermes/hermes-3c9f4a9e
seb/hermes-agent:hermes/hermes-39d533b8
seb/hermes-agent:hermes/hermes-d6f63ade
seb/hermes-agent:hermes/hermes-f47156c2
seb/hermes-agent:hermes/hermes-533d3bd8
seb/hermes-agent:hermes/hermes-2e42b3a2
seb/hermes-agent:fix/research-paper-writing-gaps
seb/hermes-agent:hermes/hermes-7c95bd3c
seb/hermes-agent:hermes/hermes-626ac686
seb/hermes-agent:hermes/hermes-0d7c99a6
seb/hermes-agent:fix/nous-portal-env-override
seb/hermes-agent:hermes/hermes-80f0ff01
seb/hermes-agent:hermes/hermes-8bb0c65b
seb/hermes-agent:feat/model-pricing-display
seb/hermes-agent:hermes/hermes-03bdbe18
seb/hermes-agent:hermes/hermes-84dbce0e
seb/hermes-agent:hermes/hermes-c6eacd11
seb/hermes-agent:hermes/hermes-25bce159
seb/hermes-agent:hermes/hermes-1e6ea4d6
seb/hermes-agent:hermes/hermes-bae00f49
seb/hermes-agent:hermes/hermes-40531417
seb/hermes-agent:hermes/hermes-f9d9e542
seb/hermes-agent:hermes/hermes-8e46c8ba
seb/hermes-agent:hermes/hermes-3d0a599a
seb/hermes-agent:hermes/hermes-c0119f86
seb/hermes-agent:hermes/hermes-7fbab92d
seb/hermes-agent:hermes/hermes-32facb3d
seb/hermes-agent:hermes/hermes-d0aa7802
seb/hermes-agent:hermes/hermes-4ff7e90f
seb/hermes-agent:hermes/hermes-3667f42f
seb/hermes-agent:feat/model-provider-overhaul
seb/hermes-agent:hermes/hermes-1a69af68
seb/hermes-agent:hermes/hermes-c035e060
seb/hermes-agent:hermes/hermes-466467d8
seb/hermes-agent:hermes/hermes-95f1173a
seb/hermes-agent:hermes/hermes-208cc6d6
seb/hermes-agent:hermes/hermes-1e826e60
seb/hermes-agent:hermes/hermes-f2f17778
seb/hermes-agent:hermes/hermes-a7ac7c42
seb/hermes-agent:hermes/hermes-db023341
seb/hermes-agent:hermes/hermes-8c57ca22
seb/hermes-agent:hermes/hermes-511b79a5
seb/hermes-agent:hermes/hermes-931dc358
seb/hermes-agent:feat/fix-plugin-cache-prefix
seb/hermes-agent:hermes/hermes-3329bd98
seb/hermes-agent:salvage/hindsight-5044
seb/hermes-agent:hermes/hermes-0971565e
seb/hermes-agent:hermes/hermes-eba4b946
seb/hermes-agent:hermes/hermes-ff50f5ae
seb/hermes-agent:hermes/hermes-feb2ec9d
seb/hermes-agent:hermes/hermes-a82207c8
seb/hermes-agent:hermes/hermes-1e1d81f5
seb/hermes-agent:hermes/hermes-766150bd
seb/hermes-agent:hermes/hermes-cc1cea2c
seb/hermes-agent:hermes/hermes-5cbeeeb5
seb/hermes-agent:hermes/hermes-3eaaba2c
seb/hermes-agent:hermes/hermes-d307e4ae
seb/hermes-agent:claude-code-inspired/session-branch
seb/hermes-agent:hermes/hermes-70885193
seb/hermes-agent:hermes/hermes-8eea7e1a
seb/hermes-agent:hermes/hermes-36a59267
seb/hermes-agent:hermes/hermes-31074029
seb/hermes-agent:hermes/hermes-10baf9e9
seb/hermes-agent:hermes/hermes-4d7efb1e
seb/hermes-agent:hermes/hermes-3b5d0490
seb/hermes-agent:hermes/hermes-97fe1e3c
seb/hermes-agent:hermes/hermes-b19afd39
seb/hermes-agent:hermes/hermes-669f5444
seb/hermes-agent:feat/docker-env-vars
seb/hermes-agent:hermes/hermes-5deaba3e
seb/hermes-agent:hermes/hermes-368f91f8
seb/hermes-agent:hermes/hermes-b9588524
seb/hermes-agent:feat/acp-mcp-server-registration
seb/hermes-agent:opencode-port/language-aware-compression
seb/hermes-agent:hermes/hermes-50668d84
seb/hermes-agent:hermes/hermes-376c741f
seb/hermes-agent:hermes/hermes-7cbc527e
seb/hermes-agent:hermes/hermes-7ab21fac
seb/hermes-agent:hermes/hermes-623833b1
seb/hermes-agent:hermes/hermes-7de32281
seb/hermes-agent:hermes/hermes-921b394b
seb/hermes-agent:hermes/hermes-dc0f1ff6
seb/hermes-agent:hermes/hermes-9a801eb5
seb/hermes-agent:hermes/hermes-ad6e6820
seb/hermes-agent:hermes/hermes-8b18afb8
seb/hermes-agent:rewbs/tool-use-charge-to-subscription
seb/hermes-agent:gemini-cli-port/stale-browser-snapshot-superseding
seb/hermes-agent:hermes/hermes-91844716
seb/hermes-agent:hermes/hermes-f55316e0
seb/hermes-agent:hermes/hermes-76f7e5cd
seb/hermes-agent:hermes/hermes-cc622e18
seb/hermes-agent:hermes/hermes-79b25268
seb/hermes-agent:hermes/hermes-f4786c9c
seb/hermes-agent:hermes/hermes-41d468a2
seb/hermes-agent:hermes/hermes-701ad555
seb/hermes-agent:hermes/hermes-35337734
seb/hermes-agent:hermes/hermes-e10e6bf0
seb/hermes-agent:hermes/hermes-8a2494d5
seb/hermes-agent:hermes/hermes-385d033c
seb/hermes-agent:hermes/hermes-2c786d88
seb/hermes-agent:hermes/hermes-24c5a56c
seb/hermes-agent:hermes/hermes-a8a19433
seb/hermes-agent:hermes/hermes-dadddde3
seb/hermes-agent:hermes/hermes-99d28812
seb/hermes-agent:hermes/hermes-98ff0c21
seb/hermes-agent:hermes/hermes-abdd86e5
seb/hermes-agent:hermes/hermes-3090d6ac
seb/hermes-agent:hermes/hermes-eaa694be
seb/hermes-agent:sid/pwn-bench
seb/hermes-agent:hermes/hermes-578d1b94
seb/hermes-agent:hermes/hermes-da1d3af1
seb/hermes-agent:hermes/hermes-88866ac7
seb/hermes-agent:hermes/hermes-5c3ebbce
seb/hermes-agent:hermes/hermes-b6eff376
seb/hermes-agent:hermes-d0598e72
seb/hermes-agent:hermes/hermes-940f3eca
seb/hermes-agent:hermes/hermes-e87583c1
seb/hermes-agent:hermes/hermes-bf538de7
seb/hermes-agent:hermes/hermes-f75b7c8e
seb/hermes-agent:sid/pwn-bench-dojo-id-fix
seb/hermes-agent:hermes/hermes-b2abefdf
seb/hermes-agent:hermes/hermes-f0221ac3
seb/hermes-agent:hermes/hermes-a866ff99
seb/hermes-agent:hermes/hermes-f091e3b8
seb/hermes-agent:hermes/hermes-cd7257f9
seb/hermes-agent:hermes/hermes-9b1dadd7
seb/hermes-agent:hermes/hermes-b7b6ec54
seb/hermes-agent:hermes/hermes-4ce879fa
seb/hermes-agent:hermes/hermes-c815228d
seb/hermes-agent:hermes/hermes-3bd17b7b
seb/hermes-agent:fix/minimax-aux-model-pricing
seb/hermes-agent:fix/npm-ci-update
seb/hermes-agent:fix/uv-lock-exa-py
seb/hermes-agent:feat/secrets-phase1
seb/hermes-agent:ascii-video/text-readability-and-layout-oracle
seb/hermes-agent:hermes/hermes-76df6a95
seb/hermes-agent:hermes/hermes-ac2495d7
seb/hermes-agent:hermes/hermes-bf2cd279
seb/hermes-agent:hermes/hermes-8e764fde
seb/hermes-agent:hermes/hermes-b6f1eb21
seb/hermes-agent:hermes/hermes-3d9ccfec
seb/hermes-agent:hermes/hermes-deb3d2ef
seb/hermes-agent:endless_terminals_integration
seb/hermes-agent:hermes/hermes-4b23f322
seb/hermes-agent:feat/web-ui
seb/hermes-agent:hermes/hermes-6835494f
seb/hermes-agent:fix/anthropic-whatsapp
seb/hermes-agent:feat/rate-limiter
seb/hermes-agent:hermes/hermes-b8e0ec91
seb/hermes-agent:hermes/hermes-af1b4b23
seb/hermes-agent:hermes/hermes-164a52cc
seb/hermes-agent:feat/ci-improvements
seb/hermes-agent:feat/agent-resilience
seb/hermes-agent:feat/cron-script-gate
seb/hermes-agent:hermes/hermes-0d76d7cd
seb/hermes-agent:hermes/hermes-e6f1d362
seb/hermes-agent:hermes/hermes-b8464e26
seb/hermes-agent:hermes/hermes-ea354159
seb/hermes-agent:hermes/hermes-ab59de22
seb/hermes-agent:hermes/hermes-ec5223e1
seb/hermes-agent:hermes/hermes-b351df6b
seb/hermes-agent:docker
seb/hermes-agent:feat/keystore-wallet
seb/hermes-agent:hermes/hermes-f4f0292e
seb/hermes-agent:hermes/hermes-97c48e70
seb/hermes-agent:fix/uv-lock-version
seb/hermes-agent:fix/unify-permissions
seb/hermes-agent:hermes/hermes-51f7b6b6
seb/hermes-agent:hermes/hermes-135af169
seb/hermes-agent:hermes/hermes-a403a780
seb/hermes-agent:hermes/hermes-5e6ebebb
seb/hermes-agent:hermes/hermes-f5a4cd91
seb/hermes-agent:hermes/hermes-03f7719f
seb/hermes-agent:hermes/hermes-8a2f15b3
seb/hermes-agent:hermes/hermes-5a68ad9d
seb/hermes-agent:hermes/hermes-a2b72b01
seb/hermes-agent:feat/gpt-tool-steering
seb/hermes-agent:hermes/hermes-37947bdb
seb/hermes-agent:hermes/hermes-9420d6a3
seb/hermes-agent:hermes/hermes-6c7a1441
seb/hermes-agent:hermes/hermes-86f614ec
seb/hermes-agent:hermes/hermes-4f6a1f8e
seb/hermes-agent:hermes/hermes-caea5692
seb/hermes-agent:hermes/hermes-f8f80cce
seb/hermes-agent:hermes/hermes-5ef8201d
seb/hermes-agent:hermes/hermes-140430f8
seb/hermes-agent:feat/suffix-path-apt-provision
seb/hermes-agent:hermes/hermes-64c3ceb2
seb/hermes-agent:hermes/hermes-cd318db6
seb/hermes-agent:hermes/hermes-dd753a5f
seb/hermes-agent:hermes/hermes-dfd0d467
seb/hermes-agent:hermes/hermes-7e1dfbda
seb/hermes-agent:fix/api-server-toolset
seb/hermes-agent:hermes/hermes-93060758
seb/hermes-agent:hermes/hermes-ad9511d6
seb/hermes-agent:hermes/hermes-6dfb41ea
seb/hermes-agent:hermes/hermes-52a54135
seb/hermes-agent:hermes/hermes-203498f3
seb/hermes-agent:hermes/hermes-998d1c81
seb/hermes-agent:hermes/hermes-7d7ac769
seb/hermes-agent:hermes/hermes-d877fbc1
seb/hermes-agent:hermes/hermes-9f3f51e2
seb/hermes-agent:hermes/hermes-0b98b356
seb/hermes-agent:chore/remove-pkce-oauth
seb/hermes-agent:hermes/hermes-2cdc8d39
seb/hermes-agent:hermes/hermes-c75e42c8
seb/hermes-agent:hermes/hermes-e483085e
seb/hermes-agent:sid/remove-drift-check
seb/hermes-agent:sid/nix-flake
seb/hermes-agent:hermes/hermes-ac86d935
seb/hermes-agent:hermes/hermes-4e5b94c3
seb/hermes-agent:hermes/hermes-84f0446e
seb/hermes-agent:docs/hooks-page-update
seb/hermes-agent:hermes/hermes-aff6c48a
seb/hermes-agent:hermes/hermes-ae6184d3
seb/hermes-agent:hermes/hermes-afb547e5
seb/hermes-agent:hermes/hermes-0f4e765c
seb/hermes-agent:hermes/hermes-baa39faf
seb/hermes-agent:hermes/hermes-gateway-context
seb/hermes-agent:hermes/hermes-3c0e357d
seb/hermes-agent:hermes/hermes-ab0f07ce
seb/hermes-agent:hermes/hermes-e6c9dba2
seb/hermes-agent:hermes/hermes-1817ce8d
seb/hermes-agent:hermes/hermes-764f7842
seb/hermes-agent:hermes/hermes-e26fa01d
seb/hermes-agent:hermes/hermes-e8325591
seb/hermes-agent:hermes/hermes-46839e2f
seb/hermes-agent:hermes/hermes-28b19313
seb/hermes-agent:hermes/hermes-11fd857d
seb/hermes-agent:hermes/hermes-1b7b3ffb
seb/hermes-agent:hermes/hermes-1e53b883
seb/hermes-agent:hermes/hermes-c6c58b20
seb/hermes-agent:fix/toolset-deselection
seb/hermes-agent:fix/media-paths-spaces
seb/hermes-agent:fix/media-spaces-2
seb/hermes-agent:fix/approval-yaml-off
seb/hermes-agent:hermes/hermes-a2fa4544
seb/hermes-agent:hermes/hermes-d58d97b5
seb/hermes-agent:hermes/hermes-f9506ecc
seb/hermes-agent:hermes/hermes-dc116992
seb/hermes-agent:hermes/hermes-81afb1bb
seb/hermes-agent:hermes/hermes-31d7db3b
seb/hermes-agent:hermes/hermes-5d6932ba
seb/hermes-agent:hermes/hermes-40b195db
seb/hermes-agent:hermes/hermes-0fa141a3
seb/hermes-agent:feat/streaming-default
seb/hermes-agent:feat/context-file-priority
seb/hermes-agent:hermes/hermes-3369cdb1
seb/hermes-agent:streaming-plus-reasoning
seb/hermes-agent:fix/event-loop-closed-delegate
seb/hermes-agent:hermes/hermes-7ea545bf
seb/hermes-agent:hermes/hermes-3d7c23c9
seb/hermes-agent:hermes/hermes-4a7e401e
seb/hermes-agent:hermes/hermes-b313983a
seb/hermes-agent:hermes/hermes-6757a563
seb/hermes-agent:hermes/hermes-e83093f0
seb/hermes-agent:hermes/hermes-14b05543
seb/hermes-agent:hermes/hermes-54c1fc70
seb/hermes-agent:hermes/hermes-f1230adf
seb/hermes-agent:hermes/hermes-9c2a5d00
seb/hermes-agent:fix/custom-endpoint-context-length
seb/hermes-agent:hermes/hermes-51eb4292
seb/hermes-agent:hermes/hermes-9dc2e46c
seb/hermes-agent:fix/anthropic-compatible-api-mode
seb/hermes-agent:hermes/hermes-6193ae92
seb/hermes-agent:hermes/hermes-b29f73b2
seb/hermes-agent:hermes/hermes-ba3c8fa1
seb/hermes-agent:hermes/hermes-562a3784
seb/hermes-agent:fix/whatsapp-reply-prefix-bridging
seb/hermes-agent:hermes/hermes-eab76047
seb/hermes-agent:feat/whatsapp-reply-prefix
seb/hermes-agent:feat/unauthorized-dm-behavior
seb/hermes-agent:fix/cron-oneshot-grace
seb/hermes-agent:hermes/hermes-8112c8c8
seb/hermes-agent:fix/browser-command-registry
seb/hermes-agent:feat/cron-silent-suppression
seb/hermes-agent:fix/agent-created-skill-policy
seb/hermes-agent:hermes/hermes-e2084cc7
seb/hermes-agent:hermes/hermes-c954a38b
seb/hermes-agent:hermes/hermes-8058968e
seb/hermes-agent:hermes/hermes-0d5a11f5
seb/hermes-agent:hermes/hermes-09305421
seb/hermes-agent:hermes/hermes-0ed29ee7
seb/hermes-agent:hermes/hermes-4c573e36
seb/hermes-agent:hermes/hermes-044b5de9
seb/hermes-agent:hermes/hermes-48646def
seb/hermes-agent:fix/gateway-platform-hardening
seb/hermes-agent:fix/tool-handler-safety
seb/hermes-agent:hermes/hermes-31dc9875
seb/hermes-agent:fix/defensive-hardening
seb/hermes-agent:hermes/hermes-3fc35e7b
seb/hermes-agent:hermes/hermes-c91521bf
seb/hermes-agent:hermes/hermes-835076ca
seb/hermes-agent:fix/cron-timezone-naive-iso
seb/hermes-agent:hermes/hermes-5a9e8a78
seb/hermes-agent:fix/memory-tool-file-locking
seb/hermes-agent:fix/model-metadata-fuzzy-match
seb/hermes-agent:fix/compression-attempts-persist
seb/hermes-agent:fix/run-agent-role-violations
seb/hermes-agent:fix/browser-session-race
seb/hermes-agent:fix/compressor-consecutive-role-violation
seb/hermes-agent:fix/messaging-toolset-missing
seb/hermes-agent:fix/length-continue-retries-reset
seb/hermes-agent:fix/cron-double-load-jobs
seb/hermes-agent:fix/anthropic-tool-choice-none
seb/hermes-agent:fix/auxiliary-is-nous-reset
seb/hermes-agent:fix/matrix-mattermost-mark-connected
seb/hermes-agent:fix/dingtalk-requirements-check
seb/hermes-agent:fix/hermes-state-thread-locks
seb/hermes-agent:fix/anthropic-adapter-merge-content-loss
seb/hermes-agent:fix/gateway-yaml-pii-redaction
seb/hermes-agent:fix/redacting-formatter-import
seb/hermes-agent:fix/nous-model-fetch-kwargs
seb/hermes-agent:fix/gateway-skill-command-nameref
seb/hermes-agent:hermes/hermes-ee292dec
seb/hermes-agent:hermes/hermes-ac005632
seb/hermes-agent:feat/mattermost-matrix-adapters
seb/hermes-agent:hermes/hermes-923bc090
seb/hermes-agent:hermes/hermes-f685e964
seb/hermes-agent:hermes/hermes-3218df83
seb/hermes-agent:hermes/hermes-6bb9911e
seb/hermes-agent:hermes/hermes-1eba1f1d
seb/hermes-agent:fix/discord-thread-persistence
seb/hermes-agent:hermes/hermes-a86162db
seb/hermes-agent:hermes/hermes-6891ac11
seb/hermes-agent:hermes/hermes-c3e4cd9f
seb/hermes-agent:hermes/hermes-8f33e910
seb/hermes-agent:hermes/hermes-93b81725
seb/hermes-agent:hermes/hermes-733cf6a3
seb/hermes-agent:shloms/ascii-video-v3
seb/hermes-agent:fix/anthropic-oauth-compat
seb/hermes-agent:hermes/hermes-a098c323
seb/hermes-agent:hermes/hermes-6360cdf9
seb/hermes-agent:hermes/hermes-84930008
seb/hermes-agent:fix/smart-model-routing
seb/hermes-agent:hermes/hermes-81c07511
seb/hermes-agent:hermes/hermes-865f6958
seb/hermes-agent:fix/1445-docker-cwd-optin
seb/hermes-agent:hermes/hermes-adbf9508
seb/hermes-agent:fix/814-group-session-isolation
seb/hermes-agent:fix/1033-telegram-voice-fallback
seb/hermes-agent:fix/setup-curses
seb/hermes-agent:fix/ssh-preflight-check
seb/hermes-agent:fix/openrouter-reasoning-gate
seb/hermes-agent:fix/custom-endpoint-verification
seb/hermes-agent:fix/telegram-chunk-mdv2
seb/hermes-agent:fix/status-token-counts
seb/hermes-agent:fix/honcho-seed-identity
seb/hermes-agent:fix/mcp-auto-reload
seb/hermes-agent:rewbs/feat-vercel-log-analysis-loop-skill
seb/hermes-agent:fix/tirith-startup-noise
seb/hermes-agent:fix/docker-explicit-forward-env
seb/hermes-agent:sid/persistent-backend
seb/hermes-agent:fix/1071-dict-tool-args
seb/hermes-agent:hermes/hermes-60456cd2
seb/hermes-agent:fix/1219-cron-thread-context
seb/hermes-agent:fix/1244-env-override
seb/hermes-agent:fix/1336-discord-voice-reliability
seb/hermes-agent:fix/1414-gateway-shutdown-restart
seb/hermes-agent:fix/1412-session-delete-prefix
seb/hermes-agent:fix/1409-photo-burst-interrupts
seb/hermes-agent:fix/1247-preserve-mcp-toolsets
seb/hermes-agent:fix/1264-env-secret-blocklist
seb/hermes-agent:fix/1056-dm-session-isolation
seb/hermes-agent:hermes/gws-hybrid
seb/hermes-agent:hermes/hermes-daa73839
seb/hermes-agent:hermes/slack-thread-docs
seb/hermes-agent:hermes/hermes-45b79a59-clawhub-search
seb/hermes-agent:hermes/hermes-8bb24bf8
seb/hermes-agent:hermes/hermes-7ef7cb6a
seb/hermes-agent:hermes/hermes-eca4a640
seb/hermes-agent:hermes/hermes-629f8bde
seb/hermes-agent:hermes/hermes-aa701810
seb/hermes-agent:hermes/hermes-0fadff1b
seb/hermes-agent:hermes/hermes-45b79a59-pr1087
seb/hermes-agent:hermes/hermes-45b79a59
seb/hermes-agent:hermes/plan-workspace-storage
seb/hermes-agent:fix/retry-history-replacement
seb/hermes-agent:hermes/hermes-51c02bb3
seb/hermes-agent:hermes/hermes-39158886-docs
seb/hermes-agent:hermes/hermes-781f9235-docs
seb/hermes-agent:hermes/hermes-39158886-scope-prompts
seb/hermes-agent:hermes/hermes-781f9235
seb/hermes-agent:hermes/hermes-39158886
seb/hermes-agent:feat/aux-delegation-direct-endpoints
seb/hermes-agent:hermes/hermes-cf8340fc
seb/hermes-agent:hermes/hermes-f1104def
seb/hermes-agent:fix/cron-same-target-send-suppression
seb/hermes-agent:hermes/hermes-ec1096a3
seb/hermes-agent:hermes/hermes-1fc28d17
seb/hermes-agent:hermes/hermes-048e6599
seb/hermes-agent:hermes/hermes-771dc4f8
seb/hermes-agent:salvage/pr-977-mcp-stdio
seb/hermes-agent:hermes/hermes-3702edad
seb/hermes-agent:hermes/hermes-f48b210a
seb/hermes-agent:hermes/hermes-cc060dd9
seb/hermes-agent:hermes/hermes-24af4d63
seb/hermes-agent:hermes/hermes-8ea7cef0
seb/hermes-agent:hermes/hermes-720acdad
seb/hermes-agent:hermes/hermes-645b95a6
seb/hermes-agent:fix/worktree-terminal-requirements
seb/hermes-agent:fix/file-tool-log-noise
seb/hermes-agent:hermes/hermes-07d947aa
seb/hermes-agent:feat/cache-aware-context-compaction
seb/hermes-agent:hermes/hermes-50716de4
seb/hermes-agent:hermes/hermes-7c22e5c1
seb/hermes-agent:hermes/hermes-31d07af4
seb/hermes-agent:fix/honcho-cache-stability
seb/hermes-agent:hermes/hermes-e0e71a89
seb/hermes-agent:hermes/hermes-6299a8b2
seb/hermes-agent:hermes/hermes-294208e8
seb/hermes-agent:hermes/hermes-447d1ebd
seb/hermes-agent:hermes/hermes-4cde5efa
seb/hermes-agent:hermes/hermes-80175760
seb/hermes-agent:hermes/hermes-1ba70e80
seb/hermes-agent:fix/hygiene-threshold
seb/hermes-agent:fix/compression-session-sync
seb/hermes-agent:hermes/hermes-6ec3b1a9
seb/hermes-agent:fix/packaging-bugs
seb/hermes-agent:hermes/hermes-42bc21fb
seb/hermes-agent:hermes/hermes-d28bf447
seb/hermes-agent:hermes/hermes-f47f71c0
seb/hermes-agent:hermes/hermes-e31afb4d
seb/hermes-agent:hermes/hermes-7ade10b5
seb/hermes-agent:hermes/hermes-c877bdeb
seb/hermes-agent:hermes/hermes-3ea433e3
seb/hermes-agent:sid/xitter-skill
seb/hermes-agent:hermes/hermes-465f3702
seb/hermes-agent:hermes/hermes-4b9773d6
seb/hermes-agent:feat/optional-rl-training
seb/hermes-agent:hermes/hermes-3a9bd319
seb/hermes-agent:hermes/hermes-5da06378
seb/hermes-agent:hermes/hermes-37fb78aa
seb/hermes-agent:hermes/hermes-cf9f7d54
seb/hermes-agent:voice/default-soul
seb/hermes-agent:fix/landing-page
seb/hermes-agent:feat/devex-tooling
seb/hermes-agent:feat/phone-call-tool
seb/hermes-agent:hermes/hermes-74edaf38
seb/hermes-agent:hermes/hermes-b86fddbe
seb/hermes-agent:hermes/hermes-106e92b2
seb/hermes-agent:hermes/hermes-20ea56c0
seb/hermes-agent:fix/smart-vision-setup
seb/hermes-agent:fix/cron-naive-timestamps
seb/hermes-agent:hermes/hermes-7ac629f4
seb/hermes-agent:hermes/hermes-ece5a45c
seb/hermes-agent:feat/streaming
seb/hermes-agent:feat/custom-compaction-prompt-config
seb/hermes-agent:fix/multimodal-compress-content
seb/hermes-agent:feat/codex-handoff-prefix
seb/hermes-agent:feat/codex-compaction-prompt
seb/hermes-agent:hermes/hermes-98b7f9b9
seb/hermes-agent:hermes/hermes-ecb374ec
seb/hermes-agent:hermes/hermes-90ec9b1f
seb/hermes-agent:hermes/hermes-5f68598a
seb/hermes-agent:hermes/hermes-b0162f8d
seb/hermes-agent:feat/show-full-dangerous-command
seb/hermes-agent:hermes/hermes-21d8bacc
seb/hermes-agent:hermes/hermes-281ff8aa
seb/hermes-agent:hermes/hermes-3d744afd
seb/hermes-agent:hermes/hermes-1a683351
seb/hermes-agent:feat/checkpoint-rollback
seb/hermes-agent:hermes/hermes-5ab2a29e
seb/hermes-agent:add-upstream-atropos-tool-use-changes
seb/hermes-agent:hermes/hermes-b611b2fe
seb/hermes-agent:hermes/hermes-0cbb57e2
seb/hermes-agent:fix/vision-test-flake
seb/hermes-agent:feat/parallelize-tests
seb/hermes-agent:feat/devex-help
seb/hermes-agent:feat/streaming-tui
seb/hermes-agent:hermes/hermes-d2f5523a
seb/hermes-agent:feat/telegram-send-document
seb/hermes-agent:optional-builtin
seb/hermes-agent:feat/budget-pressure-via-tool-result
seb/hermes-agent:hermes/hermes-e56c0f70
seb/hermes-agent:feat/discord-allow-bots
seb/hermes-agent:feat/file-permissions-hardening
seb/hermes-agent:feat/configurable-compaction-protection
seb/hermes-agent:feat/head-tail-truncation-execute-code
seb/hermes-agent:hermes/hermes-c53b7cba
seb/hermes-agent:hermes/hermes-abbf790e
seb/hermes-agent:hermes/hermes-f8d56335
seb/hermes-agent:hermes/hermes-3cd7c62d
seb/hermes-agent:hermes/hermes-2cb83eed
seb/hermes-agent:feat/bell-on-complete
seb/hermes-agent:hermes/hermes-cfe83dd1
seb/hermes-agent:pass-session-id
seb/hermes-agent:fuck-it-ship-it
seb/hermes-agent:feat/session-naming
seb/hermes-agent:revert-659-feat/skill-prerequisites
seb/hermes-agent:custom_auxiliary_models
seb/hermes-agent:rewbs/nous-key-remint-attempt-on-401
seb/hermes-agent:feat/modular-setup-wizard
seb/hermes-agent:feat/insights
seb/hermes-agent:feat/modal
seb/hermes-agent:feature/obliteratus-skill
seb/hermes-agent:endless-terminal-new
seb/hermes-agent:fix-widescreen-prompt-box
seb/hermes-agent:fix/none-content-pattern
seb/hermes-agent:rewbs/fix-nous-refresh-token-rotation-on-key-mint-failure
seb/hermes-agent:rewbs/nous-portal-integration
seb/hermes-agent:nomad-backend-fanout-pr3
seb/hermes-agent:terminal-backend-fanout-pr2
seb/hermes-agent:atropos-integrations-pr
seb/hermes-agent:atropos-integrations
seb/hermes-agent:endless-terminals
seb/hermes-agent:atropos-hermes-agent
seb/hermes-agent:modal-integration
seb/hermes-agent:rl-capabilities
seb/hermes-agent:macbook-tests
seb/hermes-agent:architecture-planning
seb/hermes-agent:add-prokletor
seb/hermes-agent:asyncio
seb/hermes-agent:thought-sig
seb/hermes-agent:profiling
seb/hermes-agent:simplify-terminal
seb/hermes-agent:cluster-fail
seb/hermes-agent:tc-logging
seb/hermes-agent:update-snapshot-id
seb/hermes-agent:test
seb/hermes-agent:fix-leakage
seb/hermes-agent:fix-terminal
seb/hermes-agent:UI
seb/hermes-agent:add-morph-snapshot
seb/hermes-agent:terminal
seb/hermes-agent:backup/precopystrip-20260616-2058
seb/hermes-agent:backup/opentui-prestrip-20260616-1950
seb/hermes-agent:v2026.6.5
seb/hermes-agent:v2026.5.29.2
seb/hermes-agent:clean-before-remerge
seb/hermes-agent:v2026.5.29
seb/hermes-agent:merge-commit-backup
seb/hermes-agent:premerge-oh-god
seb/hermes-agent:v2026.5.28
seb/hermes-agent:v2026.5.16
seb/hermes-agent:desktop-pr20059-installers
seb/hermes-agent:v2026.5.7
seb/hermes-agent:v2026.4.30
seb/hermes-agent:v2026.4.23
seb/hermes-agent:v2026.4.16
seb/hermes-agent:v2026.4.13
seb/hermes-agent:v2026.4.8
seb/hermes-agent:v2026.4.3
seb/hermes-agent:v2026.3.30
seb/hermes-agent:v2026.3.28
seb/hermes-agent:v2026.3.23
seb/hermes-agent:v2026.3.17
seb/hermes-agent:v2026.3.12
...
pull from: seb/hermes-agent:hermes/hermes-6bb9911e
seb/hermes-agent:ethie/e2e
seb/hermes-agent:hermes/hermes-0f8a2d57
seb/hermes-agent:fix/resume-follows-compression-tip
seb/hermes-agent:hermes/hermes-76de4391
seb/hermes-agent:main
seb/hermes-agent:hermes/notify-cli-tui-supersede
seb/hermes-agent:fix/dashboard-ds-button-api
seb/hermes-agent:hermes/hermes-afb6a269
seb/hermes-agent:dependabot/npm_and_yarn/website/undici-7.28.0
seb/hermes-agent:dependabot/npm_and_yarn/dompurify-3.4.11
seb/hermes-agent:feat/relay-inbound-ws
seb/hermes-agent:feat/cron-scheduler-provider-chronos
seb/hermes-agent:feat/multiplex-gateway
seb/hermes-agent:fix/ns501-multipart-upload-salvage
seb/hermes-agent:dependabot/uv/starlette-1.3.1
seb/hermes-agent:dependabot/uv/python-multipart-0.0.31
seb/hermes-agent:hermes/hermes-11bc708e
seb/hermes-agent:feat/raft-platform-plugin
seb/hermes-agent:cline-port/parallel-tool-call-guidance
seb/hermes-agent:dependabot/npm_and_yarn/website/webpack-dev-server-5.2.5
seb/hermes-agent:bb/pets-gen
seb/hermes-agent:bb/pets
seb/hermes-agent:salvage/oauth-system-prompt-relocation
seb/hermes-agent:fix/ns506-session-db-durability
seb/hermes-agent:feat/remove-legacy-dashboard-session-token
seb/hermes-agent:codex-port/mcp-default-timeout-300
seb/hermes-agent:feat/opentui-copy-button
seb/hermes-agent:feat/opentui-native-engine
seb/hermes-agent:fix/cli-worktree-lock
seb/hermes-agent:fix/clarify-choices-docstring
seb/hermes-agent:feat/provider-reported-cost
seb/hermes-agent:fix/desktop-subagent-streaming
seb/hermes-agent:hermes/hermes-0184cf20
seb/hermes-agent:dependabot/github_actions/actions-minor-patch-d188ce17e4
seb/hermes-agent:dependabot/uv/tornado-6.5.7
seb/hermes-agent:dependabot/npm_and_yarn/website/dompurify-3.4.10
seb/hermes-agent:dependabot/npm_and_yarn/website/launch-editor-2.14.1
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/protobufjs-7.6.4
seb/hermes-agent:bb/food-delivery
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/ws-8.21.0
seb/hermes-agent:dependabot/uv/pytest-9.0.3
seb/hermes-agent:salvage/xiaomi-mimo-base-url-routing
seb/hermes-agent:salvage/xiaomi-mimo-thinking-replay
seb/hermes-agent:hermes/hermes-d13b1ab7
seb/hermes-agent:salvage/xiaomi-mimo-vision-tool-routing
seb/hermes-agent:salvage/xiaomi-mimo-accounting-errors
seb/hermes-agent:salvage/windows-uia-computer-use
seb/hermes-agent:feat/image-generate-image-input
seb/hermes-agent:openclaw-port/telegram-typing-cooldown
seb/hermes-agent:openclaw-port/web-url-whitespace
seb/hermes-agent:nanoclaw-port/uninstall-dry-run
seb/hermes-agent:nanoclaw-port/docker-network-toggle
seb/hermes-agent:ironclaw-port/memory-null-target-4547
seb/hermes-agent:feat/iron-proxy
seb/hermes-agent:feat/openrouter-fusion-model-slugs
seb/hermes-agent:fix/telegram-rich-messages-opt-in
seb/hermes-agent:fix/codex-bounded-leak-scan
seb/hermes-agent:claude-code-inspired/safe-mode
seb/hermes-agent:claude-code-inspired/title-language
seb/hermes-agent:claude-code-inspired/shell-startup-write-deny
seb/hermes-agent:nanoclaw-port/upload-trace-v2
seb/hermes-agent:feat/opentui-memory-window
seb/hermes-agent:hermes/hermes-0a703936
seb/hermes-agent:hermes/hermes-9bdf8753
seb/hermes-agent:revert-45263-bb/desktop-chat-autoscroll
seb/hermes-agent:dependabot/uv/tornado-6.5.6
seb/hermes-agent:feat/web-grounding-citations
seb/hermes-agent:platform-support-tiers
seb/hermes-agent:hermes-e2e
seb/hermes-agent:ethie/node-bundle
seb/hermes-agent:fix/worktree-prune-data-loss
seb/hermes-agent:ethie/ws-api-move
seb/hermes-agent:bb/desktop-served-token
seb/hermes-agent:austin/fix/types-node-lockfile
seb/hermes-agent:fix/coding-context-followup
seb/hermes-agent:fix/windows-update-respawn-pythonw
seb/hermes-agent:hermes/hermes-4e3ec235
seb/hermes-agent:test-save-durations-fix
seb/hermes-agent:dependabot/uv/cbor2-5.9.0
seb/hermes-agent:dependabot/uv/pygments-2.20.0
seb/hermes-agent:desktop-cmd-ctrl-2
seb/hermes-agent:feat/desktop-remote-filesystem
seb/hermes-agent:feat/gateway-relay-adapter
seb/hermes-agent:bb/model-routing
seb/hermes-agent:extend-hook-registry-for-plugins
seb/hermes-agent:feat/desktop-worktree-sessions
seb/hermes-agent:hermes-ts6
seb/hermes-agent:fix/terminal-env-sync-test
seb/hermes-agent:refactor/concurrent-gate-fixture-scope
seb/hermes-agent:feat/debug-share-nous-s3
seb/hermes-agent:feat/tui-plugins-hub
seb/hermes-agent:fix/plugins-slash-command-discovery
seb/hermes-agent:bb/desktop-terminal-bottom
seb/hermes-agent:feat/plugin-subdir-install
seb/hermes-agent:fix/photon-test-package-init
seb/hermes-agent:ethie/nix-faster
seb/hermes-agent:feat/desktop-remote-update-skew
seb/hermes-agent:feat/apify-plugin
seb/hermes-agent:feat/dynamic-workflow-skill
seb/hermes-agent:hermes/hermes-8d223d48
seb/hermes-agent:hermes/hermes-b9598731
seb/hermes-agent:worktree-desktop-surface-slash-commands
seb/hermes-agent:migrate/platforms-to-plugins
seb/hermes-agent:hermes/hermes-87ac0a8e
seb/hermes-agent:salvage/pr-39244
seb/hermes-agent:salvage/pr-41166
seb/hermes-agent:salvage/pr-41076
seb/hermes-agent:salvage/pr-39749
seb/hermes-agent:salvage/pr-41151
seb/hermes-agent:salvage/pr-41063
seb/hermes-agent:salvage/pr-41048
seb/hermes-agent:salvage/pr-38049
seb/hermes-agent:salvage/pr-38063
seb/hermes-agent:salvage/pr-38184
seb/hermes-agent:salvage/pr-39198
seb/hermes-agent:salvage/pr-39608
seb/hermes-agent:salvage/pr-39624
seb/hermes-agent:salvage/pr-41091
seb/hermes-agent:salvage/pr-41113
seb/hermes-agent:salvage/pr-41131
seb/hermes-agent:salvage/pr-41024
seb/hermes-agent:hermes/hermes-e2178603
seb/hermes-agent:feat/recipes-skill-automations
seb/hermes-agent:feat/proactive-monitor
seb/hermes-agent:bb/cron-history-timeout
seb/hermes-agent:fix/windows-update-gateway-respawn-breakaway
seb/hermes-agent:bb/desktop-install-update-ui
seb/hermes-agent:bb/vite-worktree-fs-allow
seb/hermes-agent:salvage/40531-mermaid-preview
seb/hermes-agent:salvage/40534-tool-exit-not-error
seb/hermes-agent:salvage/40242-oauth-header-test
seb/hermes-agent:salvage/40430-cron-cli-tests
seb/hermes-agent:salvage/40363-desktop-cwd-default
seb/hermes-agent:salvage/40264-clarify-mention-strip
seb/hermes-agent:salvage/40273-banner-width
seb/hermes-agent:salvage/40346-plugins-list-entrypoints
seb/hermes-agent:salvage/40303-timestamp-format
seb/hermes-agent:salvage/40431-hook-thread-chattype
seb/hermes-agent:salvage/40413-40299-macos-launchd-reliability
seb/hermes-agent:salvage/40490-lazydeps-tui-prompt
seb/hermes-agent:emo/preseve-shallow
seb/hermes-agent:bb/desktop-remote-image-upload
seb/hermes-agent:bb/desktop-update-slash
seb/hermes-agent:bb/version-slash-command
seb/hermes-agent:bb/docs-remote-backend-update-skew
seb/hermes-agent:bb/backend-contract-bump-profile-routing
seb/hermes-agent:bb/docs-desktop-macos-gatekeeper
seb/hermes-agent:bb/update-reexec-after-pull
seb/hermes-agent:dependabot/npm_and_yarn/website/postcss-8.5.15
seb/hermes-agent:fix/onboarding-skip-on-stale-env-var
seb/hermes-agent:ethie/windows-installer-fixes
seb/hermes-agent:bb/desktop-send-to-all
seb/hermes-agent:salvage/pr-9190
seb/hermes-agent:ethie/slash-prompt-start-only
seb/hermes-agent:opencode-port/respect-disabled-compaction-on-overflow
seb/hermes-agent:fix/node-fhs-root-hardening
seb/hermes-agent:fix/node-symlink-fhs-root-install
seb/hermes-agent:feat/dashboard-auth-self-hosted-oidc
seb/hermes-agent:bb/coding-agent-harness-analysis
seb/hermes-agent:feat/dashboard-register
seb/hermes-agent:fix/docker-tty-zero-dim-pty
seb/hermes-agent:hermes/hermes-040df651
seb/hermes-agent:gemini-cli-port/config-corruption-backup
seb/hermes-agent:plugin-sdk-auth
seb/hermes-agent:hermes/hermes-6c420680
seb/hermes-agent:hermes/hermes-aba10f53
seb/hermes-agent:hermes/hermes-de0d15b6
seb/hermes-agent:dependabot/github_actions/docker/setup-buildx-action-4.1.0
seb/hermes-agent:fix/slash-keyboard-selection
seb/hermes-agent:dashboard-internal-ws-credential
seb/hermes-agent:pr-37665
seb/hermes-agent:pr-37660
seb/hermes-agent:ethie/uv-salvage
seb/hermes-agent:bb/installer-trusted-uv-resolution
seb/hermes-agent:hermes/hermes-780defc4
seb/hermes-agent:ethie/oh-god
seb/hermes-agent:hermes/hermes-d1511484
seb/hermes-agent:bb/desktop-install-path-clarity
seb/hermes-agent:feat/gateway-lazy-platform-import
seb/hermes-agent:hermes/hermes-a963c25d
seb/hermes-agent:feat/blank-slate-setup
seb/hermes-agent:hermes/curator-usage-cli
seb/hermes-agent:ethie/win-exe-only
seb/hermes-agent:bb/tui-ansi-height-desync
seb/hermes-agent:bb/clarify-prompt-timeout-stuck
seb/hermes-agent:revert-34333-feat/nvidia-skills-tap
seb/hermes-agent:fix/tui-mouse-x10-prompt-leak
seb/hermes-agent:hermes/hermes-d44c5398
seb/hermes-agent:hermes/hermes-368c2379
seb/hermes-agent:bb/gui-mainmerge-tmp
seb/hermes-agent:hermes/gateway-replace-fix
seb/hermes-agent:hermes/hermes-21eb0ce1
seb/hermes-agent:fix/dev-dep-setuptools
seb/hermes-agent:fix/packaging-test-setuptools-dep
seb/hermes-agent:hermes/hermes-2747755a
seb/hermes-agent:docs/video-gen-nous-gateway
seb/hermes-agent:ethie/fix-nix-develop
seb/hermes-agent:v2026.5.29.1
seb/hermes-agent:docs/execute-code-hermes-env-passthrough
seb/hermes-agent:hermes/hermes-135cadfb
seb/hermes-agent:hermes/sec-tier1-32130
seb/hermes-agent:hermes/hermes-2b79b6da
seb/hermes-agent:opencode-port/responses-failed-error-detail
seb/hermes-agent:hermes-events-bus
seb/hermes-agent:perf/fts-optimize
seb/hermes-agent:release/v0.15.0-strip-gui
seb/hermes-agent:fix/nix-gateway-install-env
seb/hermes-agent:hermes/hermes-737ba78e
seb/hermes-agent:ethie/docker-simplify-tagging
seb/hermes-agent:dependabot/github_actions/actions/deploy-pages-5.0.0
seb/hermes-agent:feat/15268-pricing-nous-xai
seb/hermes-agent:hermes/fix-copilot-auth-test
seb/hermes-agent:fix/update-detects-parent-shim-as-running
seb/hermes-agent:docker_s6
seb/hermes-agent:dependabot/npm_and_yarn/scripts/whatsapp-bridge/multi-f792d6d6d9
seb/hermes-agent:hermes/hermes-5fdb1cc4
seb/hermes-agent:bb/tui-ctrlj-newline
seb/hermes-agent:sid/tool-gateway-implement
seb/hermes-agent:hermes/hermes-aa200214
seb/hermes-agent:feat/dashboard-typography-and-contrast
seb/hermes-agent:ethie/faster-tests-fake-main
seb/hermes-agent:fix/vision-dimension-cap
seb/hermes-agent:hermes/hermes-09fb88ef
seb/hermes-agent:ziliang-review-fork-inherit-toolsets
seb/hermes-agent:salvage-8306-webhook-secret
seb/hermes-agent:hermes/hermes-5db05717
seb/hermes-agent:hermes/hermes-a5904da7
seb/hermes-agent:refactor/stop-writing-gateway-jsonl-transcripts
seb/hermes-agent:refactor/stop-writing-session-json-snapshots
seb/hermes-agent:hermes/hermes-72b329fd
seb/hermes-agent:hermes/hermes-008bccbc
seb/hermes-agent:hermes/firecrawl-integration-tag-telemetry-gated
seb/hermes-agent:hermes/hermes-63babeb7
seb/hermes-agent:hermes/hermes-5e533958
seb/hermes-agent:hermes/hermes-8d7d912f
seb/hermes-agent:brooklyn/gui-installer-prereqs
seb/hermes-agent:hermes/hermes-429c1355
seb/hermes-agent:bb/tui-mouse-burst-swallow
seb/hermes-agent:feat/session_search_modes
seb/hermes-agent:hermes/hermes-5ac74b48
seb/hermes-agent:bb/cli-resize-duplication
seb/hermes-agent:salvage/pr-23780
seb/hermes-agent:lsp-plugin
seb/hermes-agent:austin/fix/minimax-oauth
seb/hermes-agent:bb/lsp-lint
seb/hermes-agent:hermes/hermes-4fa48a27
seb/hermes-agent:salvage/pr-22685
seb/hermes-agent:feat/session-handoff
seb/hermes-agent:feat/codex-mcp-preset
seb/hermes-agent:feat/codex-cli-provider
seb/hermes-agent:hermes/hermes-3b90958e
seb/hermes-agent:perf/honcho-shutdown
seb/hermes-agent:hermes/hermes-b2e6c99b
seb/hermes-agent:austin/feat/google-oauth-provider
seb/hermes-agent:bb/gui-gateway-attach-wiring
seb/hermes-agent:bb/tui-gateway-attach-core
seb/hermes-agent:hermes/hermes-e239855c
seb/hermes-agent:fix/windows-uv-python-install-stderr
seb/hermes-agent:bb/windows-cli-tui-native-main
seb/hermes-agent:feat/trust-engine
seb/hermes-agent:feat/watchers
seb/hermes-agent:bb/widget-grid-slots
seb/hermes-agent:hermes/hermes-1c84a997
seb/hermes-agent:feat/browser-coordinate-click
seb/hermes-agent:cline-port/openrouter-qwen-cache-control
seb/hermes-agent:fix/ty-1
seb/hermes-agent:hermes/hermes-fee7225c
seb/hermes-agent:hermes/hermes-9ddf5187
seb/hermes-agent:codex-port/hook-output-spill
seb/hermes-agent:fix/terminal-safety-filter-false-positives
seb/hermes-agent:fix/gateway-remove-stale-code-self-restart
seb/hermes-agent:kilocode-port/compact-strip-media
seb/hermes-agent:fix/stale-cwd-recovery
seb/hermes-agent:feat/hermes-send
seb/hermes-agent:kanban_hermes_home
seb/hermes-agent:hermes/hermes-fabc46fe
seb/hermes-agent:feat/tinyfish-browser-provider
seb/hermes-agent:hermes/hermes-96962c19
seb/hermes-agent:claude-code-inspired/session-recap
seb/hermes-agent:fix/lazy-session-creation
seb/hermes-agent:hermes/hermes-3c2988b0
seb/hermes-agent:opencode-port/invalid-mcp-url
seb/hermes-agent:opencode-port/moonshot-ref-siblings
seb/hermes-agent:bb/docker-tui-prebuilt
seb/hermes-agent:fix/aux-anthropic-url-regression-test
seb/hermes-agent:vbrunet/2026_04_15-terminal-title-updates
seb/hermes-agent:bb/theme
seb/hermes-agent:cline-port/gateway-memory-monitor
seb/hermes-agent:gemini-cli-port/exit-delete-session
seb/hermes-agent:bb/tui-copy-on-select
seb/hermes-agent:feat/comfyui-skill-v3
seb/hermes-agent:hermes/hermes-dd91e6b2
seb/hermes-agent:feat/provider-modules
seb/hermes-agent:hermes/hermes-dab6fbf1
seb/hermes-agent:feat/comfyui-skill-v2
seb/hermes-agent:vbrunet/2026_04_29-terminal-titles
seb/hermes-agent:feat/kanban-standing
seb/hermes-agent:bb/tui-reload-env
seb/hermes-agent:bb/learning-ledger
seb/hermes-agent:bb/tui-status-ticker-width
seb/hermes-agent:fix/plugin-loader-sys-modules-registration
seb/hermes-agent:fix/deprecate-extrapackages-nix
seb/hermes-agent:hermes/hermes-c8604b32
seb/hermes-agent:fix/chat-tab-persistence
seb/hermes-agent:feat/langfuse-plugin
seb/hermes-agent:kilocode-port/subagent-cost-rollup
seb/hermes-agent:fix/analytics-include-cache-tokens
seb/hermes-agent:hermes/hermes-8fedd55b
seb/hermes-agent:bb/fix-tui-input-selection
seb/hermes-agent:bb/p2-mru-resume-order
seb/hermes-agent:hermes/hermes-2c880154
seb/hermes-agent:hermes/hermes-8b414b52
seb/hermes-agent:nanoclaw-port/signal-groupv2
seb/hermes-agent:hermes/hermes-d7874f79
seb/hermes-agent:hermes/curator-infra
seb/hermes-agent:bb/tui-perf-fix
seb/hermes-agent:feature/tui-showroom
seb/hermes-agent:bb/base-gui
seb/hermes-agent:investigate/fix-tui-container-ink-bundle
seb/hermes-agent:fix/flush-memories-context-overflow
seb/hermes-agent:design/compression-eval-harness
seb/hermes-agent:fix/stop-interrupt-retry-loop
seb/hermes-agent:fix/model-switch-custom-endpoint
seb/hermes-agent:fix/web-env-validation
seb/hermes-agent:fix/hindsight-blank-nuke
seb/hermes-agent:fix/setup-vision-blank
seb/hermes-agent:sid/discord-context-injection
seb/hermes-agent:sid/discord-tool-split
seb/hermes-agent:sid/fix-tools-config-save
seb/hermes-agent:sid/fix-platform-tool-loading
seb/hermes-agent:hermes/hermes-6c37b3dd
seb/hermes-agent:hermes/hermes-9d07c44f
seb/hermes-agent:alice/nous-portal-recommended-models
seb/hermes-agent:onboarding
seb/hermes-agent:sid/restructure-pr1-acp
seb/hermes-agent:bb/tui-web-chat
seb/hermes-agent:opencode-port/configurable-tool-output-limits
seb/hermes-agent:hermes/hermes-34b3f52d
seb/hermes-agent:sid/types-and-lints
seb/hermes-agent:sid/foundational-restructure
seb/hermes-agent:feat/dashboard-chat
seb/hermes-agent:gemini-cli-port/ssl-retry-patterns
seb/hermes-agent:cline-port/anthropic-cache-tokens-top-level
seb/hermes-agent:nemo-gym-changes
seb/hermes-agent:fix/schema-reconciliation
seb/hermes-agent:fix/upgrade-agent-browser-0.26
seb/hermes-agent:feat/ssrf-allow-private-urls
seb/hermes-agent:feat/volcengine-byteplus
seb/hermes-agent:refactor/unify-transport-dispatch
seb/hermes-agent:feat/require-mention-channels
seb/hermes-agent:remove-nous-free-allowlist
seb/hermes-agent:codex-port/ignore-user-config-flags
seb/hermes-agent:bb/tui-mouse-toggle
seb/hermes-agent:feat/td-skill-update
seb/hermes-agent:feat/bedrock-transport
seb/hermes-agent:feat/chat-completions-transport
seb/hermes-agent:hermes/hermes-bb7c1b2e
seb/hermes-agent:kilocode-port/filter-non-tool-openrouter-models
seb/hermes-agent:fix/kimi-drop-temperature
seb/hermes-agent:bb/tui-elapsed-lastmsg-8541
seb/hermes-agent:feat/transport-types
seb/hermes-agent:refactor/extract-codex-adapter
seb/hermes-agent:ironclaw-port/url-and-form-redaction
seb/hermes-agent:openclaw-port/display-tool-call-tags-strip
seb/hermes-agent:openclaw-port/anthropic-max-tokens-guard
seb/hermes-agent:openclaw-port/compaction-credential-redaction
seb/hermes-agent:sid/workspace-salvage
seb/hermes-agent:chore/ci-path-filters
seb/hermes-agent:chore/remove-stale-docs
seb/hermes-agent:feat/native-gemini-provider
seb/hermes-agent:salvage/helix4u-zai-setup
seb/hermes-agent:hermes/hermes-150d8cf8
seb/hermes-agent:hermes/browser-dialog
seb/hermes-agent:fix/minimax-glm-token-compression
seb/hermes-agent:salvage/nvidia-nim-max-tokens
seb/hermes-agent:fix/nix-web-dashboard
seb/hermes-agent:feat/comfyui-skill
seb/hermes-agent:hermes/hermes-9c0eed69
seb/hermes-agent:fix/mcp-oauth-bidirectional-generator-bridge
seb/hermes-agent:claude-code-inspired/dangerous-cmd-hardening
seb/hermes-agent:fix/test-backoff-timers
seb/hermes-agent:ci/matrix-split-v2
seb/hermes-agent:fix/test-reduction-batch-2
seb/hermes-agent:feat/searxng-backend
seb/hermes-agent:opencode-port/sessions-export-sanitize
seb/hermes-agent:dashboard-show-remote-gateway-url
seb/hermes-agent:hermes/gemini-oauth-30b2099d
seb/hermes-agent:feat/gemini-tts-salvage
seb/hermes-agent:feat/ungate-tool-gateway
seb/hermes-agent:xai-media-tools
seb/hermes-agent:fix/ci-test-failures
seb/hermes-agent:hermes/hermes-9d38280f
seb/hermes-agent:gemini-cli-port/strategic-reevaluation
seb/hermes-agent:fix/client-cache-fd-exhaustion
seb/hermes-agent:salvage/watch-notification-routing
seb/hermes-agent:hermes/hermes-5d6c3d3e
seb/hermes-agent:fix/dashboard-analytics-accuracy
seb/hermes-agent:hermes/hermes-9a00cfa2
seb/hermes-agent:hermes/hermes-050c727e
seb/hermes-agent:hermes/hermes-4a9b24c3
seb/hermes-agent:codex-port/mcp-parallel-tool-calls
seb/hermes-agent:gateway-plugin-loading
seb/hermes-agent:max_paperclips/gateway-plugin-loading
seb/hermes-agent:feat/remote-gateway-health-probe
seb/hermes-agent:compaction-secrets-preservation
seb/hermes-agent:fix/dashboard-routing
seb/hermes-agent:update-issue-templates-debug-share
seb/hermes-agent:sid/tb2-evals
seb/hermes-agent:feat/deep-research-skill
seb/hermes-agent:hermes/hermes-1b2e5f73
seb/hermes-agent:hermes/hermes-9e793b91
seb/hermes-agent:fix/feishu-identity-model
seb/hermes-agent:fix/web-cron-page-schedule-object
seb/hermes-agent:ironclaw-port/telegram-utf16-splitting
seb/hermes-agent:nanoclaw-port/session-artifact-cleanup
seb/hermes-agent:openclaw-port/reject-weak-gateway-creds
seb/hermes-agent:openclaw-port/matrix-mentions-user-ids
seb/hermes-agent:fix/gateway-no-systemctl
seb/hermes-agent:skill/github-code-review-mcp-tools
seb/hermes-agent:chore/remove-sha-docker-tag
seb/hermes-agent:feat/gateway-mcp-config-watcher
seb/hermes-agent:hermes/hermes-1f7bfa9e
seb/hermes-agent:feat/file-sync-back
seb/hermes-agent:fix/modal-ssh-upload-bugs
seb/hermes-agent:hermes/salvage-7558
seb/hermes-agent:hermes/hermes-72401910
seb/hermes-agent:hermes/hermes-925eff6a
seb/hermes-agent:hermes/hermes-c965583d
seb/hermes-agent:hermes/hermes-9c0ad5d9
seb/hermes-agent:hermes/hermes-905d6262
seb/hermes-agent:hermes/hermes-070e5a43
seb/hermes-agent:hermes/hermes-c382c827
seb/hermes-agent:hermes/hermes-7052b79e
seb/hermes-agent:hermes/hermes-e08f4d67
seb/hermes-agent:hermes/hermes-566f8c6d
seb/hermes-agent:hermes/hermes-4fdb3d23
seb/hermes-agent:hermes/hermes-67b0d759
seb/hermes-agent:hermes/hermes-b5e135be
seb/hermes-agent:hermes/hermes-2d3cc746
seb/hermes-agent:hermes/hermes-80a283e0
seb/hermes-agent:hermes/hermes-83dfcdfa
seb/hermes-agent:hermes/hermes-efa38736
seb/hermes-agent:hermes/hermes-c78b9811
seb/hermes-agent:hermes/hermes-ffc6cfa8
seb/hermes-agent:hermes/hermes-a50b945e
seb/hermes-agent:twilio-auth-fix
seb/hermes-agent:fix/claw-migrate-warn-running-gateway
seb/hermes-agent:hermes/hermes-f6cda1f0
seb/hermes-agent:hermes/hermes-524779d7
seb/hermes-agent:hermes/hermes-da2f08b5
seb/hermes-agent:hermes/hermes-672624fb
seb/hermes-agent:hermes/hermes-28292000
seb/hermes-agent:hermes/hermes-ec496c80
seb/hermes-agent:hermes/hermes-f43decdf
seb/hermes-agent:hermes/hermes-5bef3224
seb/hermes-agent:hermes/hermes-17ae0c29
seb/hermes-agent:fix/claw-migrate-improve-warnings
seb/hermes-agent:fix/claw-migrate-json-env-keys
seb/hermes-agent:fix/claw-migrate-workspace-main-paths
seb/hermes-agent:fix/claw-migrate-schema-drift
seb/hermes-agent:fix/matrix-memorycryptostore-args
seb/hermes-agent:fix/claw-migrate-tts-microsoft
seb/hermes-agent:fix/claw-migrate-nested-channel-tokens
seb/hermes-agent:hermes/hermes-ea68d311
seb/hermes-agent:hermes/hermes-38060157
seb/hermes-agent:hermes/hermes-0224a8b2
seb/hermes-agent:hermes/hermes-b092dccf
seb/hermes-agent:hermes/hermes-03da22bc
seb/hermes-agent:hermes/bucket3
seb/hermes-agent:hermes/hermes-2e0dc4f3
seb/hermes-agent:salvage/bucket-st
seb/hermes-agent:hermes/hermes-ebb65d1b
seb/hermes-agent:hermes/hermes-d0d52697
seb/hermes-agent:hermes/hermes-b17bdb8e
seb/hermes-agent:hermes/hermes-bc33645d
seb/hermes-agent:salvage/bucket-p
seb/hermes-agent:hermes/hermes-4a5220fe
seb/hermes-agent:hermes/hermes-7f8c199a
seb/hermes-agent:hermes/hermes-fefa061a
seb/hermes-agent:feat/mautrix-migration
seb/hermes-agent:hermes/hermes-7e4c9931
seb/hermes-agent:hermes/hermes-dc4200fd
seb/hermes-agent:salvage/bucket-o
seb/hermes-agent:feat/container-aware-cli
seb/hermes-agent:fix/daytona-bulk-upload-config-bridge-7362
seb/hermes-agent:claude-code-inspired/context-breakdown
seb/hermes-agent:hermes/hermes-1bd9e323
seb/hermes-agent:hermes/hermes-17b93f0b
seb/hermes-agent:hermes/hermes-9d5d8704
seb/hermes-agent:salvage/bucket-n
seb/hermes-agent:api-server-enforce-key
seb/hermes-agent:hermes/hermes-f8dcb6dd
seb/hermes-agent:hermes/hermes-c7787b3d
seb/hermes-agent:salvage/bucket-m
seb/hermes-agent:hermes/hermes-30126ac0
seb/hermes-agent:terminate-zombie-processes
seb/hermes-agent:hermes/hermes-ead3c84e
seb/hermes-agent:hermes/hermes-f1c0a201
seb/hermes-agent:salvage/bucket-i
seb/hermes-agent:hermes/hermes-11e9b74a
seb/hermes-agent:hermes/hermes-90f54154
seb/hermes-agent:hermes/hermes-2376d00b
seb/hermes-agent:hermes/hermes-8f5f6063
seb/hermes-agent:salvage/bucket-l
seb/hermes-agent:hermes/hermes-84ed614f
seb/hermes-agent:hermes/hermes-0f8490c2
seb/hermes-agent:hermes/hermes-2a3d0461
seb/hermes-agent:salvage/bucket-k
seb/hermes-agent:hermes/hermes-62b22a1e
seb/hermes-agent:hermes/hermes-26f90bd3
seb/hermes-agent:security/bucket-j
seb/hermes-agent:hermes/hermes-7ef33568
seb/hermes-agent:hermes/hermes-3ffcbfb5
seb/hermes-agent:hermes/hermes-6584b1e4
seb/hermes-agent:hermes/hermes-d9d67691
seb/hermes-agent:hermes/hermes-cde3c240
seb/hermes-agent:hermes/hermes-27e1fc16
seb/hermes-agent:hermes/hermes-5f2c8429
seb/hermes-agent:hermes/hermes-8dbb2cec
seb/hermes-agent:hermes/hermes-bbf55c16
seb/hermes-agent:hermes/hermes-a21aa249
seb/hermes-agent:hermes/hermes-eafa085a
seb/hermes-agent:hermes/hermes-4b558854
seb/hermes-agent:hermes/hermes-0687c6d6
seb/hermes-agent:hermes/hermes-33e13b6f
seb/hermes-agent:hermes/hermes-1fd9f435
seb/hermes-agent:hermes/hermes-1bb7ea55
seb/hermes-agent:hermes/hermes-57ea0a16
seb/hermes-agent:hermes/hermes-5bbf4839
seb/hermes-agent:hermes/hermes-617689ff
seb/hermes-agent:hermes/hermes-5cfcdf33
seb/hermes-agent:hermes/hermes-05b0c02e
seb/hermes-agent:hermes/hermes-115318ed
seb/hermes-agent:hermes/hermes-f454d397
seb/hermes-agent:hermes/hermes-43ae98f3
seb/hermes-agent:hermes/hermes-87f37874
seb/hermes-agent:hermes/hermes-bbe6a8b7
seb/hermes-agent:hermes/hermes-2556be1e
seb/hermes-agent:hermes/hermes-8494816d
seb/hermes-agent:hermes/hermes-0d0bfa89
seb/hermes-agent:hermes/hermes-c711558a
seb/hermes-agent:hermes/hermes-7aad138d
seb/hermes-agent:hermes/hermes-4b6801c7
seb/hermes-agent:hermes/hermes-374f99bc
seb/hermes-agent:hermes/hermes-605d722e
seb/hermes-agent:hermes/hermes-c546e7a1
seb/hermes-agent:hermes/hermes-62b6865d
seb/hermes-agent:hermes/hermes-f8a6248b
seb/hermes-agent:hermes/hermes-fe654944
seb/hermes-agent:hermes/hermes-d4ece6c2
seb/hermes-agent:fix/stream-think-tag-false-positive
seb/hermes-agent:hermes/hermes-d0607f0a
seb/hermes-agent:hermes/hermes-1c7df171
seb/hermes-agent:fix/oauth-issue2-nous-pool-refresh-sync-authstore
seb/hermes-agent:hermes/hermes-95b15f6e
seb/hermes-agent:hermes/hermes-e201f931
seb/hermes-agent:opencode-port/alibaba-rate-limit-retry
seb/hermes-agent:fix/oauth-issue1-nous-entry-needs-refresh
seb/hermes-agent:fix/oauth-issue5-is-expiring-none-handling
seb/hermes-agent:fix/oauth-issue4-anthropic-proactive-sync-hermes-pkce
seb/hermes-agent:fix/oauth-issue3-codex-proactive-sync-before-refresh
seb/hermes-agent:sid/dead-code-remove
seb/hermes-agent:hermes/hermes-8c64f471
seb/hermes-agent:hermes/hermes-ff5ba265
seb/hermes-agent:hermes/hermes-71aea4c5
seb/hermes-agent:hermes/hermes-1b5bb607
seb/hermes-agent:hermes/hermes-25b83dfd
seb/hermes-agent:fix/nix-shared-state-perms
seb/hermes-agent:hermes/hermes-30ac05a4
seb/hermes-agent:hermes/hermes-731d3033
seb/hermes-agent:hermes/hermes-41d14a2c
seb/hermes-agent:hermes/hermes-3f221b1b
seb/hermes-agent:hermes/hermes-e873511f
seb/hermes-agent:hermes/hermes-41cd011b
seb/hermes-agent:hermes/hermes-f409204f
seb/hermes-agent:hermes/hermes-bcf93c03
seb/hermes-agent:hermes/hermes-2f44469d
seb/hermes-agent:hermes/hermes-3466ee98
seb/hermes-agent:hermes/hermes-398baa59
seb/hermes-agent:hermes/hermes-1ff40dac
seb/hermes-agent:hermes/hermes-0429963a
seb/hermes-agent:hermes/hermes-ff89d9af
seb/hermes-agent:hermes/hermes-de843a22
seb/hermes-agent:hermes/hermes-037596df
seb/hermes-agent:hermes/hermes-e77cdbbf
seb/hermes-agent:hermes/hermes-135e8d93
seb/hermes-agent:hermes/hermes-f2a81adb
seb/hermes-agent:hermes/hermes-2447adad
seb/hermes-agent:hermes/hermes-005912a8
seb/hermes-agent:hermes/hermes-1845cad9
seb/hermes-agent:hermes/hermes-d5c0fd3b
seb/hermes-agent:hermes/hermes-b5d8eff0
seb/hermes-agent:hermes/hermes-5df3920d
seb/hermes-agent:hermes/hermes-b0a4b31e
seb/hermes-agent:hermes/hermes-063b6e1d
seb/hermes-agent:hermes/hermes-98aa7b3a
seb/hermes-agent:hermes/hermes-1fa6ad8f
seb/hermes-agent:hermes/hermes-485d498c
seb/hermes-agent:hermes/hermes-e77429d5
seb/hermes-agent:hermes/hermes-1d8a5754
seb/hermes-agent:sid/unified-file-sync
seb/hermes-agent:hermes/hermes-38cb19c4
seb/hermes-agent:hermes/hermes-54fe23ca
seb/hermes-agent:fix/nix-add-to-system-packages-complete
seb/hermes-agent:hermes/hermes-947c24f7
seb/hermes-agent:sid/unified-terminal-envs
seb/hermes-agent:hermes/hermes-9085f0bb
seb/hermes-agent:hermes/hermes-6b365d9a
seb/hermes-agent:hermes/hermes-4923821d
seb/hermes-agent:hermes/hermes-4e231d00
seb/hermes-agent:hermes/hermes-554a02fe
seb/hermes-agent:hermes/hermes-016048ea
seb/hermes-agent:feat/worldsim-skill
seb/hermes-agent:hermes/hermes-6b456629
seb/hermes-agent:hermes/hermes-f845dfbe
seb/hermes-agent:hermes/hermes-83d3c1db
seb/hermes-agent:hermes/hermes-8452ab09
seb/hermes-agent:hermes/hermes-9f84a11f
seb/hermes-agent:hermes/hermes-53abd2ba
seb/hermes-agent:hermes/hermes-ef18f2ae
seb/hermes-agent:hermes/hermes-7d888e8c
seb/hermes-agent:hermes/hermes-7bf50ef1
seb/hermes-agent:hermes/hermes-f400edfe
seb/hermes-agent:hermes/hermes-27761e13
seb/hermes-agent:hermes/hermes-d07e864e
seb/hermes-agent:hermes/hermes-e3aca6ef
seb/hermes-agent:hermes/hermes-c7eda492
seb/hermes-agent:sid/tool-result-fixes
seb/hermes-agent:hermes/hermes-87470f33
seb/hermes-agent:hermes/hermes-ef25015a
seb/hermes-agent:hermes/hermes-fb3680fc
seb/hermes-agent:hermes/hermes-476720eb
seb/hermes-agent:hermes/hermes-7d70fb12
seb/hermes-agent:hermes/hermes-2f2a1403
seb/hermes-agent:hermes/hermes-c81d4c5a
seb/hermes-agent:hermes/hermes-3ff117b3
seb/hermes-agent:hermes/hermes-5e970516
seb/hermes-agent:hermes/hermes-cabfdb4f
seb/hermes-agent:sid/restructure-tests
seb/hermes-agent:hermes/hermes-701b2186
seb/hermes-agent:rm/add-portal-link
seb/hermes-agent:hermes/hermes-81f85bb4
seb/hermes-agent:hermes/hermes-822a0590
seb/hermes-agent:hermes/hermes-d623dc00
seb/hermes-agent:hermes/hermes-37b5ec52
seb/hermes-agent:hermes/hermes-fef87f31
seb/hermes-agent:hermes/hermes-f1e32b74
seb/hermes-agent:hermes/hermes-756f7e33
seb/hermes-agent:salvage/5752-nous-free-tier-gating
seb/hermes-agent:feat/nous-free-tier-model-gating
seb/hermes-agent:switch-managed-browser-to-browser-use
seb/hermes-agent:hermes/hermes-7697425c
seb/hermes-agent:hermes/hermes-53b01c86
seb/hermes-agent:hermes/hermes-81d3384e
seb/hermes-agent:hermes/hermes-86122627
seb/hermes-agent:hermes/hermes-03d7aa21
seb/hermes-agent:hermes/hermes-b34c1567
seb/hermes-agent:hermes/hermes-694ff34e
seb/hermes-agent:hermes/hermes-b93afb56
seb/hermes-agent:hermes/hermes-c1ef09e3
seb/hermes-agent:fix/portal-env-var-ignored-during-login
seb/hermes-agent:hermes/hermes-479681ef
seb/hermes-agent:hermes/hermes-cd5ac32c
seb/hermes-agent:hermes/hermes-71aaf6c8
seb/hermes-agent:hermes/hermes-f177c8f0
seb/hermes-agent:hermes/hermes-db0c54fb
seb/hermes-agent:sid/unified-execution
seb/hermes-agent:hermes/hermes-35bfb4c2
seb/hermes-agent:hermes/hermes-47b24166
seb/hermes-agent:hermes/hermes-e5557d16
seb/hermes-agent:hermes/hermes-b809b68d
seb/hermes-agent:sid/nix-fixes-nits
seb/hermes-agent:taubench_eval
seb/hermes-agent:feat/firecrawl-browser-provider
seb/hermes-agent:hermes/hermes-7a93e2c7
seb/hermes-agent:hermes/hermes-8cc55056
seb/hermes-agent:hermes/hermes-838c5b76
seb/hermes-agent:workdir-quote-escape
seb/hermes-agent:hermes/hermes-c4a8b829
seb/hermes-agent:rm/browser-use-tool-gateway
seb/hermes-agent:hermes/hermes-ac0ac8da
seb/hermes-agent:hermes/hermes-ba679ba8
seb/hermes-agent:hermes/hermes-b692993b
seb/hermes-agent:hermes/hermes-ce719117
seb/hermes-agent:hermes/hermes-0bc806a5
seb/hermes-agent:hermes/hermes-00399121
seb/hermes-agent:hermes/hermes-5a282295
seb/hermes-agent:fix/various-qa
seb/hermes-agent:hermes/hermes-3ef4d555
seb/hermes-agent:hermes/hermes-ef6f7818
seb/hermes-agent:hermes/hermes-be07ee70
seb/hermes-agent:hermes/hermes-c0614333
seb/hermes-agent:hermes/hermes-3c9f4a9e
seb/hermes-agent:hermes/hermes-39d533b8
seb/hermes-agent:hermes/hermes-d6f63ade
seb/hermes-agent:hermes/hermes-f47156c2
seb/hermes-agent:hermes/hermes-533d3bd8
seb/hermes-agent:hermes/hermes-2e42b3a2
seb/hermes-agent:fix/research-paper-writing-gaps
seb/hermes-agent:hermes/hermes-7c95bd3c
seb/hermes-agent:hermes/hermes-626ac686
seb/hermes-agent:hermes/hermes-0d7c99a6
seb/hermes-agent:fix/nous-portal-env-override
seb/hermes-agent:hermes/hermes-80f0ff01
seb/hermes-agent:hermes/hermes-8bb0c65b
seb/hermes-agent:feat/model-pricing-display
seb/hermes-agent:hermes/hermes-03bdbe18
seb/hermes-agent:hermes/hermes-84dbce0e
seb/hermes-agent:hermes/hermes-c6eacd11
seb/hermes-agent:hermes/hermes-25bce159
seb/hermes-agent:hermes/hermes-1e6ea4d6
seb/hermes-agent:hermes/hermes-bae00f49
seb/hermes-agent:hermes/hermes-40531417
seb/hermes-agent:hermes/hermes-f9d9e542
seb/hermes-agent:hermes/hermes-8e46c8ba
seb/hermes-agent:hermes/hermes-3d0a599a
seb/hermes-agent:hermes/hermes-c0119f86
seb/hermes-agent:hermes/hermes-7fbab92d
seb/hermes-agent:hermes/hermes-32facb3d
seb/hermes-agent:hermes/hermes-d0aa7802
seb/hermes-agent:hermes/hermes-4ff7e90f
seb/hermes-agent:hermes/hermes-3667f42f
seb/hermes-agent:feat/model-provider-overhaul
seb/hermes-agent:hermes/hermes-1a69af68
seb/hermes-agent:hermes/hermes-c035e060
seb/hermes-agent:hermes/hermes-466467d8
seb/hermes-agent:hermes/hermes-95f1173a
seb/hermes-agent:hermes/hermes-208cc6d6
seb/hermes-agent:hermes/hermes-1e826e60
seb/hermes-agent:hermes/hermes-f2f17778
seb/hermes-agent:hermes/hermes-a7ac7c42
seb/hermes-agent:hermes/hermes-db023341
seb/hermes-agent:hermes/hermes-8c57ca22
seb/hermes-agent:hermes/hermes-511b79a5
seb/hermes-agent:hermes/hermes-931dc358
seb/hermes-agent:feat/fix-plugin-cache-prefix
seb/hermes-agent:hermes/hermes-3329bd98
seb/hermes-agent:salvage/hindsight-5044
seb/hermes-agent:hermes/hermes-0971565e
seb/hermes-agent:hermes/hermes-eba4b946
seb/hermes-agent:hermes/hermes-ff50f5ae
seb/hermes-agent:hermes/hermes-feb2ec9d
seb/hermes-agent:hermes/hermes-a82207c8
seb/hermes-agent:hermes/hermes-1e1d81f5
seb/hermes-agent:hermes/hermes-766150bd
seb/hermes-agent:hermes/hermes-cc1cea2c
seb/hermes-agent:hermes/hermes-5cbeeeb5
seb/hermes-agent:hermes/hermes-3eaaba2c
seb/hermes-agent:hermes/hermes-d307e4ae
seb/hermes-agent:claude-code-inspired/session-branch
seb/hermes-agent:hermes/hermes-70885193
seb/hermes-agent:hermes/hermes-8eea7e1a
seb/hermes-agent:hermes/hermes-36a59267
seb/hermes-agent:hermes/hermes-31074029
seb/hermes-agent:hermes/hermes-10baf9e9
seb/hermes-agent:hermes/hermes-4d7efb1e
seb/hermes-agent:hermes/hermes-3b5d0490
seb/hermes-agent:hermes/hermes-97fe1e3c
seb/hermes-agent:hermes/hermes-b19afd39
seb/hermes-agent:hermes/hermes-669f5444
seb/hermes-agent:feat/docker-env-vars
seb/hermes-agent:hermes/hermes-5deaba3e
seb/hermes-agent:hermes/hermes-368f91f8
seb/hermes-agent:hermes/hermes-b9588524
seb/hermes-agent:feat/acp-mcp-server-registration
seb/hermes-agent:opencode-port/language-aware-compression
seb/hermes-agent:hermes/hermes-50668d84
seb/hermes-agent:hermes/hermes-376c741f
seb/hermes-agent:hermes/hermes-7cbc527e
seb/hermes-agent:hermes/hermes-7ab21fac
seb/hermes-agent:hermes/hermes-623833b1
seb/hermes-agent:hermes/hermes-7de32281
seb/hermes-agent:hermes/hermes-921b394b
seb/hermes-agent:hermes/hermes-dc0f1ff6
seb/hermes-agent:hermes/hermes-9a801eb5
seb/hermes-agent:hermes/hermes-ad6e6820
seb/hermes-agent:hermes/hermes-8b18afb8
seb/hermes-agent:rewbs/tool-use-charge-to-subscription
seb/hermes-agent:gemini-cli-port/stale-browser-snapshot-superseding
seb/hermes-agent:hermes/hermes-91844716
seb/hermes-agent:hermes/hermes-f55316e0
seb/hermes-agent:hermes/hermes-76f7e5cd
seb/hermes-agent:hermes/hermes-cc622e18
seb/hermes-agent:hermes/hermes-79b25268
seb/hermes-agent:hermes/hermes-f4786c9c
seb/hermes-agent:hermes/hermes-41d468a2
seb/hermes-agent:hermes/hermes-701ad555
seb/hermes-agent:hermes/hermes-35337734
seb/hermes-agent:hermes/hermes-e10e6bf0
seb/hermes-agent:hermes/hermes-8a2494d5
seb/hermes-agent:hermes/hermes-385d033c
seb/hermes-agent:hermes/hermes-2c786d88
seb/hermes-agent:hermes/hermes-24c5a56c
seb/hermes-agent:hermes/hermes-a8a19433
seb/hermes-agent:hermes/hermes-dadddde3
seb/hermes-agent:hermes/hermes-99d28812
seb/hermes-agent:hermes/hermes-98ff0c21
seb/hermes-agent:hermes/hermes-abdd86e5
seb/hermes-agent:hermes/hermes-3090d6ac
seb/hermes-agent:hermes/hermes-eaa694be
seb/hermes-agent:sid/pwn-bench
seb/hermes-agent:hermes/hermes-578d1b94
seb/hermes-agent:hermes/hermes-da1d3af1
seb/hermes-agent:hermes/hermes-88866ac7
seb/hermes-agent:hermes/hermes-5c3ebbce
seb/hermes-agent:hermes/hermes-b6eff376
seb/hermes-agent:hermes-d0598e72
seb/hermes-agent:hermes/hermes-940f3eca
seb/hermes-agent:hermes/hermes-e87583c1
seb/hermes-agent:hermes/hermes-bf538de7
seb/hermes-agent:hermes/hermes-f75b7c8e
seb/hermes-agent:sid/pwn-bench-dojo-id-fix
seb/hermes-agent:hermes/hermes-b2abefdf
seb/hermes-agent:hermes/hermes-f0221ac3
seb/hermes-agent:hermes/hermes-a866ff99
seb/hermes-agent:hermes/hermes-f091e3b8
seb/hermes-agent:hermes/hermes-cd7257f9
seb/hermes-agent:hermes/hermes-9b1dadd7
seb/hermes-agent:hermes/hermes-b7b6ec54
seb/hermes-agent:hermes/hermes-4ce879fa
seb/hermes-agent:hermes/hermes-c815228d
seb/hermes-agent:hermes/hermes-3bd17b7b
seb/hermes-agent:fix/minimax-aux-model-pricing
seb/hermes-agent:fix/npm-ci-update
seb/hermes-agent:fix/uv-lock-exa-py
seb/hermes-agent:feat/secrets-phase1
seb/hermes-agent:ascii-video/text-readability-and-layout-oracle
seb/hermes-agent:hermes/hermes-76df6a95
seb/hermes-agent:hermes/hermes-ac2495d7
seb/hermes-agent:hermes/hermes-bf2cd279
seb/hermes-agent:hermes/hermes-8e764fde
seb/hermes-agent:hermes/hermes-b6f1eb21
seb/hermes-agent:hermes/hermes-3d9ccfec
seb/hermes-agent:hermes/hermes-deb3d2ef
seb/hermes-agent:endless_terminals_integration
seb/hermes-agent:hermes/hermes-4b23f322
seb/hermes-agent:feat/web-ui
seb/hermes-agent:hermes/hermes-6835494f
seb/hermes-agent:fix/anthropic-whatsapp
seb/hermes-agent:feat/rate-limiter
seb/hermes-agent:hermes/hermes-b8e0ec91
seb/hermes-agent:hermes/hermes-af1b4b23
seb/hermes-agent:hermes/hermes-164a52cc
seb/hermes-agent:feat/ci-improvements
seb/hermes-agent:feat/agent-resilience
seb/hermes-agent:feat/cron-script-gate
seb/hermes-agent:hermes/hermes-0d76d7cd
seb/hermes-agent:hermes/hermes-e6f1d362
seb/hermes-agent:hermes/hermes-b8464e26
seb/hermes-agent:hermes/hermes-ea354159
seb/hermes-agent:hermes/hermes-ab59de22
seb/hermes-agent:hermes/hermes-ec5223e1
seb/hermes-agent:hermes/hermes-b351df6b
seb/hermes-agent:docker
seb/hermes-agent:feat/keystore-wallet
seb/hermes-agent:hermes/hermes-f4f0292e
seb/hermes-agent:hermes/hermes-97c48e70
seb/hermes-agent:fix/uv-lock-version
seb/hermes-agent:fix/unify-permissions
seb/hermes-agent:hermes/hermes-51f7b6b6
seb/hermes-agent:hermes/hermes-135af169
seb/hermes-agent:hermes/hermes-a403a780
seb/hermes-agent:hermes/hermes-5e6ebebb
seb/hermes-agent:hermes/hermes-f5a4cd91
seb/hermes-agent:hermes/hermes-03f7719f
seb/hermes-agent:hermes/hermes-8a2f15b3
seb/hermes-agent:hermes/hermes-5a68ad9d
seb/hermes-agent:hermes/hermes-a2b72b01
seb/hermes-agent:feat/gpt-tool-steering
seb/hermes-agent:hermes/hermes-37947bdb
seb/hermes-agent:hermes/hermes-9420d6a3
seb/hermes-agent:hermes/hermes-6c7a1441
seb/hermes-agent:hermes/hermes-86f614ec
seb/hermes-agent:hermes/hermes-4f6a1f8e
seb/hermes-agent:hermes/hermes-caea5692
seb/hermes-agent:hermes/hermes-f8f80cce
seb/hermes-agent:hermes/hermes-5ef8201d
seb/hermes-agent:hermes/hermes-140430f8
seb/hermes-agent:feat/suffix-path-apt-provision
seb/hermes-agent:hermes/hermes-64c3ceb2
seb/hermes-agent:hermes/hermes-cd318db6
seb/hermes-agent:hermes/hermes-dd753a5f
seb/hermes-agent:hermes/hermes-dfd0d467
seb/hermes-agent:hermes/hermes-7e1dfbda
seb/hermes-agent:fix/api-server-toolset
seb/hermes-agent:hermes/hermes-93060758
seb/hermes-agent:hermes/hermes-ad9511d6
seb/hermes-agent:hermes/hermes-6dfb41ea
seb/hermes-agent:hermes/hermes-52a54135
seb/hermes-agent:hermes/hermes-203498f3
seb/hermes-agent:hermes/hermes-998d1c81
seb/hermes-agent:hermes/hermes-7d7ac769
seb/hermes-agent:hermes/hermes-d877fbc1
seb/hermes-agent:hermes/hermes-9f3f51e2
seb/hermes-agent:hermes/hermes-0b98b356
seb/hermes-agent:chore/remove-pkce-oauth
seb/hermes-agent:hermes/hermes-2cdc8d39
seb/hermes-agent:hermes/hermes-c75e42c8
seb/hermes-agent:hermes/hermes-e483085e
seb/hermes-agent:sid/remove-drift-check
seb/hermes-agent:sid/nix-flake
seb/hermes-agent:hermes/hermes-ac86d935
seb/hermes-agent:hermes/hermes-4e5b94c3
seb/hermes-agent:hermes/hermes-84f0446e
seb/hermes-agent:docs/hooks-page-update
seb/hermes-agent:hermes/hermes-aff6c48a
seb/hermes-agent:hermes/hermes-ae6184d3
seb/hermes-agent:hermes/hermes-afb547e5
seb/hermes-agent:hermes/hermes-0f4e765c
seb/hermes-agent:hermes/hermes-baa39faf
seb/hermes-agent:hermes/hermes-gateway-context
seb/hermes-agent:hermes/hermes-3c0e357d
seb/hermes-agent:hermes/hermes-ab0f07ce
seb/hermes-agent:hermes/hermes-e6c9dba2
seb/hermes-agent:hermes/hermes-1817ce8d
seb/hermes-agent:hermes/hermes-764f7842
seb/hermes-agent:hermes/hermes-e26fa01d
seb/hermes-agent:hermes/hermes-e8325591
seb/hermes-agent:hermes/hermes-46839e2f
seb/hermes-agent:hermes/hermes-28b19313
seb/hermes-agent:hermes/hermes-11fd857d
seb/hermes-agent:hermes/hermes-1b7b3ffb
seb/hermes-agent:hermes/hermes-1e53b883
seb/hermes-agent:hermes/hermes-c6c58b20
seb/hermes-agent:fix/toolset-deselection
seb/hermes-agent:fix/media-paths-spaces
seb/hermes-agent:fix/media-spaces-2
seb/hermes-agent:fix/approval-yaml-off
seb/hermes-agent:hermes/hermes-a2fa4544
seb/hermes-agent:hermes/hermes-d58d97b5
seb/hermes-agent:hermes/hermes-f9506ecc
seb/hermes-agent:hermes/hermes-dc116992
seb/hermes-agent:hermes/hermes-81afb1bb
seb/hermes-agent:hermes/hermes-31d7db3b
seb/hermes-agent:hermes/hermes-5d6932ba
seb/hermes-agent:hermes/hermes-40b195db
seb/hermes-agent:hermes/hermes-0fa141a3
seb/hermes-agent:feat/streaming-default
seb/hermes-agent:feat/context-file-priority
seb/hermes-agent:hermes/hermes-3369cdb1
seb/hermes-agent:streaming-plus-reasoning
seb/hermes-agent:fix/event-loop-closed-delegate
seb/hermes-agent:hermes/hermes-7ea545bf
seb/hermes-agent:hermes/hermes-3d7c23c9
seb/hermes-agent:hermes/hermes-4a7e401e
seb/hermes-agent:hermes/hermes-b313983a
seb/hermes-agent:hermes/hermes-6757a563
seb/hermes-agent:hermes/hermes-e83093f0
seb/hermes-agent:hermes/hermes-14b05543
seb/hermes-agent:hermes/hermes-54c1fc70
seb/hermes-agent:hermes/hermes-f1230adf
seb/hermes-agent:hermes/hermes-9c2a5d00
seb/hermes-agent:fix/custom-endpoint-context-length
seb/hermes-agent:hermes/hermes-51eb4292
seb/hermes-agent:hermes/hermes-9dc2e46c
seb/hermes-agent:fix/anthropic-compatible-api-mode
seb/hermes-agent:hermes/hermes-6193ae92
seb/hermes-agent:hermes/hermes-b29f73b2
seb/hermes-agent:hermes/hermes-ba3c8fa1
seb/hermes-agent:hermes/hermes-562a3784
seb/hermes-agent:fix/whatsapp-reply-prefix-bridging
seb/hermes-agent:hermes/hermes-eab76047
seb/hermes-agent:feat/whatsapp-reply-prefix
seb/hermes-agent:feat/unauthorized-dm-behavior
seb/hermes-agent:fix/cron-oneshot-grace
seb/hermes-agent:hermes/hermes-8112c8c8
seb/hermes-agent:fix/browser-command-registry
seb/hermes-agent:feat/cron-silent-suppression
seb/hermes-agent:fix/agent-created-skill-policy
seb/hermes-agent:hermes/hermes-e2084cc7
seb/hermes-agent:hermes/hermes-c954a38b
seb/hermes-agent:hermes/hermes-8058968e
seb/hermes-agent:hermes/hermes-0d5a11f5
seb/hermes-agent:hermes/hermes-09305421
seb/hermes-agent:hermes/hermes-0ed29ee7
seb/hermes-agent:hermes/hermes-4c573e36
seb/hermes-agent:hermes/hermes-044b5de9
seb/hermes-agent:hermes/hermes-48646def
seb/hermes-agent:fix/gateway-platform-hardening
seb/hermes-agent:fix/tool-handler-safety
seb/hermes-agent:hermes/hermes-31dc9875
seb/hermes-agent:fix/defensive-hardening
seb/hermes-agent:hermes/hermes-3fc35e7b
seb/hermes-agent:hermes/hermes-c91521bf
seb/hermes-agent:hermes/hermes-835076ca
seb/hermes-agent:fix/cron-timezone-naive-iso
seb/hermes-agent:hermes/hermes-5a9e8a78
seb/hermes-agent:fix/memory-tool-file-locking
seb/hermes-agent:fix/model-metadata-fuzzy-match
seb/hermes-agent:fix/compression-attempts-persist
seb/hermes-agent:fix/run-agent-role-violations
seb/hermes-agent:fix/browser-session-race
seb/hermes-agent:fix/compressor-consecutive-role-violation
seb/hermes-agent:fix/messaging-toolset-missing
seb/hermes-agent:fix/length-continue-retries-reset
seb/hermes-agent:fix/cron-double-load-jobs
seb/hermes-agent:fix/anthropic-tool-choice-none
seb/hermes-agent:fix/auxiliary-is-nous-reset
seb/hermes-agent:fix/matrix-mattermost-mark-connected
seb/hermes-agent:fix/dingtalk-requirements-check
seb/hermes-agent:fix/hermes-state-thread-locks
seb/hermes-agent:fix/anthropic-adapter-merge-content-loss
seb/hermes-agent:fix/gateway-yaml-pii-redaction
seb/hermes-agent:fix/redacting-formatter-import
seb/hermes-agent:fix/nous-model-fetch-kwargs
seb/hermes-agent:fix/gateway-skill-command-nameref
seb/hermes-agent:hermes/hermes-ee292dec
seb/hermes-agent:hermes/hermes-ac005632
seb/hermes-agent:feat/mattermost-matrix-adapters
seb/hermes-agent:hermes/hermes-923bc090
seb/hermes-agent:hermes/hermes-f685e964
seb/hermes-agent:hermes/hermes-3218df83
seb/hermes-agent:hermes/hermes-6bb9911e
seb/hermes-agent:hermes/hermes-1eba1f1d
seb/hermes-agent:fix/discord-thread-persistence
seb/hermes-agent:hermes/hermes-a86162db
seb/hermes-agent:hermes/hermes-6891ac11
seb/hermes-agent:hermes/hermes-c3e4cd9f
seb/hermes-agent:hermes/hermes-8f33e910
seb/hermes-agent:hermes/hermes-93b81725
seb/hermes-agent:hermes/hermes-733cf6a3
seb/hermes-agent:shloms/ascii-video-v3
seb/hermes-agent:fix/anthropic-oauth-compat
seb/hermes-agent:hermes/hermes-a098c323
seb/hermes-agent:hermes/hermes-6360cdf9
seb/hermes-agent:hermes/hermes-84930008
seb/hermes-agent:fix/smart-model-routing
seb/hermes-agent:hermes/hermes-81c07511
seb/hermes-agent:hermes/hermes-865f6958
seb/hermes-agent:fix/1445-docker-cwd-optin
seb/hermes-agent:hermes/hermes-adbf9508
seb/hermes-agent:fix/814-group-session-isolation
seb/hermes-agent:fix/1033-telegram-voice-fallback
seb/hermes-agent:fix/setup-curses
seb/hermes-agent:fix/ssh-preflight-check
seb/hermes-agent:fix/openrouter-reasoning-gate
seb/hermes-agent:fix/custom-endpoint-verification
seb/hermes-agent:fix/telegram-chunk-mdv2
seb/hermes-agent:fix/status-token-counts
seb/hermes-agent:fix/honcho-seed-identity
seb/hermes-agent:fix/mcp-auto-reload
seb/hermes-agent:rewbs/feat-vercel-log-analysis-loop-skill
seb/hermes-agent:fix/tirith-startup-noise
seb/hermes-agent:fix/docker-explicit-forward-env
seb/hermes-agent:sid/persistent-backend
seb/hermes-agent:fix/1071-dict-tool-args
seb/hermes-agent:hermes/hermes-60456cd2
seb/hermes-agent:fix/1219-cron-thread-context
seb/hermes-agent:fix/1244-env-override
seb/hermes-agent:fix/1336-discord-voice-reliability
seb/hermes-agent:fix/1414-gateway-shutdown-restart
seb/hermes-agent:fix/1412-session-delete-prefix
seb/hermes-agent:fix/1409-photo-burst-interrupts
seb/hermes-agent:fix/1247-preserve-mcp-toolsets
seb/hermes-agent:fix/1264-env-secret-blocklist
seb/hermes-agent:fix/1056-dm-session-isolation
seb/hermes-agent:hermes/gws-hybrid
seb/hermes-agent:hermes/hermes-daa73839
seb/hermes-agent:hermes/slack-thread-docs
seb/hermes-agent:hermes/hermes-45b79a59-clawhub-search
seb/hermes-agent:hermes/hermes-8bb24bf8
seb/hermes-agent:hermes/hermes-7ef7cb6a
seb/hermes-agent:hermes/hermes-eca4a640
seb/hermes-agent:hermes/hermes-629f8bde
seb/hermes-agent:hermes/hermes-aa701810
seb/hermes-agent:hermes/hermes-0fadff1b
seb/hermes-agent:hermes/hermes-45b79a59-pr1087
seb/hermes-agent:hermes/hermes-45b79a59
seb/hermes-agent:hermes/plan-workspace-storage
seb/hermes-agent:fix/retry-history-replacement
seb/hermes-agent:hermes/hermes-51c02bb3
seb/hermes-agent:hermes/hermes-39158886-docs
seb/hermes-agent:hermes/hermes-781f9235-docs
seb/hermes-agent:hermes/hermes-39158886-scope-prompts
seb/hermes-agent:hermes/hermes-781f9235
seb/hermes-agent:hermes/hermes-39158886
seb/hermes-agent:feat/aux-delegation-direct-endpoints
seb/hermes-agent:hermes/hermes-cf8340fc
seb/hermes-agent:hermes/hermes-f1104def
seb/hermes-agent:fix/cron-same-target-send-suppression
seb/hermes-agent:hermes/hermes-ec1096a3
seb/hermes-agent:hermes/hermes-1fc28d17
seb/hermes-agent:hermes/hermes-048e6599
seb/hermes-agent:hermes/hermes-771dc4f8
seb/hermes-agent:salvage/pr-977-mcp-stdio
seb/hermes-agent:hermes/hermes-3702edad
seb/hermes-agent:hermes/hermes-f48b210a
seb/hermes-agent:hermes/hermes-cc060dd9
seb/hermes-agent:hermes/hermes-24af4d63
seb/hermes-agent:hermes/hermes-8ea7cef0
seb/hermes-agent:hermes/hermes-720acdad
seb/hermes-agent:hermes/hermes-645b95a6
seb/hermes-agent:fix/worktree-terminal-requirements
seb/hermes-agent:fix/file-tool-log-noise
seb/hermes-agent:hermes/hermes-07d947aa
seb/hermes-agent:feat/cache-aware-context-compaction
seb/hermes-agent:hermes/hermes-50716de4
seb/hermes-agent:hermes/hermes-7c22e5c1
seb/hermes-agent:hermes/hermes-31d07af4
seb/hermes-agent:fix/honcho-cache-stability
seb/hermes-agent:hermes/hermes-e0e71a89
seb/hermes-agent:hermes/hermes-6299a8b2
seb/hermes-agent:hermes/hermes-294208e8
seb/hermes-agent:hermes/hermes-447d1ebd
seb/hermes-agent:hermes/hermes-4cde5efa
seb/hermes-agent:hermes/hermes-80175760
seb/hermes-agent:hermes/hermes-1ba70e80
seb/hermes-agent:fix/hygiene-threshold
seb/hermes-agent:fix/compression-session-sync
seb/hermes-agent:hermes/hermes-6ec3b1a9
seb/hermes-agent:fix/packaging-bugs
seb/hermes-agent:hermes/hermes-42bc21fb
seb/hermes-agent:hermes/hermes-d28bf447
seb/hermes-agent:hermes/hermes-f47f71c0
seb/hermes-agent:hermes/hermes-e31afb4d
seb/hermes-agent:hermes/hermes-7ade10b5
seb/hermes-agent:hermes/hermes-c877bdeb
seb/hermes-agent:hermes/hermes-3ea433e3
seb/hermes-agent:sid/xitter-skill
seb/hermes-agent:hermes/hermes-465f3702
seb/hermes-agent:hermes/hermes-4b9773d6
seb/hermes-agent:feat/optional-rl-training
seb/hermes-agent:hermes/hermes-3a9bd319
seb/hermes-agent:hermes/hermes-5da06378
seb/hermes-agent:hermes/hermes-37fb78aa
seb/hermes-agent:hermes/hermes-cf9f7d54
seb/hermes-agent:voice/default-soul
seb/hermes-agent:fix/landing-page
seb/hermes-agent:feat/devex-tooling
seb/hermes-agent:feat/phone-call-tool
seb/hermes-agent:hermes/hermes-74edaf38
seb/hermes-agent:hermes/hermes-b86fddbe
seb/hermes-agent:hermes/hermes-106e92b2
seb/hermes-agent:hermes/hermes-20ea56c0
seb/hermes-agent:fix/smart-vision-setup
seb/hermes-agent:fix/cron-naive-timestamps
seb/hermes-agent:hermes/hermes-7ac629f4
seb/hermes-agent:hermes/hermes-ece5a45c
seb/hermes-agent:feat/streaming
seb/hermes-agent:feat/custom-compaction-prompt-config
seb/hermes-agent:fix/multimodal-compress-content
seb/hermes-agent:feat/codex-handoff-prefix
seb/hermes-agent:feat/codex-compaction-prompt
seb/hermes-agent:hermes/hermes-98b7f9b9
seb/hermes-agent:hermes/hermes-ecb374ec
seb/hermes-agent:hermes/hermes-90ec9b1f
seb/hermes-agent:hermes/hermes-5f68598a
seb/hermes-agent:hermes/hermes-b0162f8d
seb/hermes-agent:feat/show-full-dangerous-command
seb/hermes-agent:hermes/hermes-21d8bacc
seb/hermes-agent:hermes/hermes-281ff8aa
seb/hermes-agent:hermes/hermes-3d744afd
seb/hermes-agent:hermes/hermes-1a683351
seb/hermes-agent:feat/checkpoint-rollback
seb/hermes-agent:hermes/hermes-5ab2a29e
seb/hermes-agent:add-upstream-atropos-tool-use-changes
seb/hermes-agent:hermes/hermes-b611b2fe
seb/hermes-agent:hermes/hermes-0cbb57e2
seb/hermes-agent:fix/vision-test-flake
seb/hermes-agent:feat/parallelize-tests
seb/hermes-agent:feat/devex-help
seb/hermes-agent:feat/streaming-tui
seb/hermes-agent:hermes/hermes-d2f5523a
seb/hermes-agent:feat/telegram-send-document
seb/hermes-agent:optional-builtin
seb/hermes-agent:feat/budget-pressure-via-tool-result
seb/hermes-agent:hermes/hermes-e56c0f70
seb/hermes-agent:feat/discord-allow-bots
seb/hermes-agent:feat/file-permissions-hardening
seb/hermes-agent:feat/configurable-compaction-protection
seb/hermes-agent:feat/head-tail-truncation-execute-code
seb/hermes-agent:hermes/hermes-c53b7cba
seb/hermes-agent:hermes/hermes-abbf790e
seb/hermes-agent:hermes/hermes-f8d56335
seb/hermes-agent:hermes/hermes-3cd7c62d
seb/hermes-agent:hermes/hermes-2cb83eed
seb/hermes-agent:feat/bell-on-complete
seb/hermes-agent:hermes/hermes-cfe83dd1
seb/hermes-agent:pass-session-id
seb/hermes-agent:fuck-it-ship-it
seb/hermes-agent:feat/session-naming
seb/hermes-agent:revert-659-feat/skill-prerequisites
seb/hermes-agent:custom_auxiliary_models
seb/hermes-agent:rewbs/nous-key-remint-attempt-on-401
seb/hermes-agent:feat/modular-setup-wizard
seb/hermes-agent:feat/insights
seb/hermes-agent:feat/modal
seb/hermes-agent:feature/obliteratus-skill
seb/hermes-agent:endless-terminal-new
seb/hermes-agent:fix-widescreen-prompt-box
seb/hermes-agent:fix/none-content-pattern
seb/hermes-agent:rewbs/fix-nous-refresh-token-rotation-on-key-mint-failure
seb/hermes-agent:rewbs/nous-portal-integration
seb/hermes-agent:nomad-backend-fanout-pr3
seb/hermes-agent:terminal-backend-fanout-pr2
seb/hermes-agent:atropos-integrations-pr
seb/hermes-agent:atropos-integrations
seb/hermes-agent:endless-terminals
seb/hermes-agent:atropos-hermes-agent
seb/hermes-agent:modal-integration
seb/hermes-agent:rl-capabilities
seb/hermes-agent:macbook-tests
seb/hermes-agent:architecture-planning
seb/hermes-agent:add-prokletor
seb/hermes-agent:asyncio
seb/hermes-agent:thought-sig
seb/hermes-agent:profiling
seb/hermes-agent:simplify-terminal
seb/hermes-agent:cluster-fail
seb/hermes-agent:tc-logging
seb/hermes-agent:update-snapshot-id
seb/hermes-agent:test
seb/hermes-agent:fix-leakage
seb/hermes-agent:fix-terminal
seb/hermes-agent:UI
seb/hermes-agent:add-morph-snapshot
seb/hermes-agent:terminal
seb/hermes-agent:backup/precopystrip-20260616-2058
seb/hermes-agent:backup/opentui-prestrip-20260616-1950
seb/hermes-agent:v2026.6.5
seb/hermes-agent:v2026.5.29.2
seb/hermes-agent:clean-before-remerge
seb/hermes-agent:v2026.5.29
seb/hermes-agent:merge-commit-backup
seb/hermes-agent:premerge-oh-god
seb/hermes-agent:v2026.5.28
seb/hermes-agent:v2026.5.16
seb/hermes-agent:desktop-pr20059-installers
seb/hermes-agent:v2026.5.7
seb/hermes-agent:v2026.4.30
seb/hermes-agent:v2026.4.23
seb/hermes-agent:v2026.4.16
seb/hermes-agent:v2026.4.13
seb/hermes-agent:v2026.4.8
seb/hermes-agent:v2026.4.3
seb/hermes-agent:v2026.3.30
seb/hermes-agent:v2026.3.28
seb/hermes-agent:v2026.3.23
seb/hermes-agent:v2026.3.17
seb/hermes-agent:v2026.3.12
30
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
b9ff134f73 |
feat: add Tavily setup support (#1113)
Register TAVILY_API_KEY across the configuration and setup flow: - OPTIONAL_ENV_VARS metadata (config.py) - ENV_VARS_BY_VERSION migration at version 10 - hermes config / hermes status display - hermes tools web provider selection - Setup summary - Config version bump 9 → 10 Cherry-picked from PR #1113 by kshitijk4poor. Fixed migration version (7 → 10) and resolved merge conflicts with current main. Closes #1069 |
||
|
|
77da011b25 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
46894c4486 |
fix: detect Claude Code version dynamically for OAuth user-agent
The _CLAUDE_CODE_VERSION was hardcoded to '2.1.2' but Anthropic rejects OAuth requests when the spoofed user-agent version is too far behind the current Claude Code release. The error is a generic 400 with just 'Error' as the message, making it very hard to diagnose. Fix: detect the installed version via 'claude --version' at import time, falling back to a bumped static constant (2.1.74) when Claude Code isn't installed. This means users who keep Claude Code updated never hit stale-version rejections. Reported by Jack — changing the version string to match the installed claude binary fixed persistent OAuth 400 errors immediately. |
||
|
|
f2d9e409bf | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
87048ba541 |
fix(whatsapp): support LID format in self-chat mode (#1556)
WhatsApp now uses LID (Linked Identity Device) format alongside classic @s.whatsapp.net. Self-chat detection checked only the classic format, breaking self-chat mode for users on newer WhatsApp versions. - Check both sock.user.id and sock.user.lid for self-chat detection - Accept 'append' message type in addition to 'notify' (self-chat messages arrive as 'append') - Track sent message IDs to prevent echo-back loops with media - Add WHATSAPP_DEBUG env var for troubleshooting Based on PR #1556 by jcorrego (manually applied due to cherry-pick conflicts). |
||
|
|
6229e48000 |
fix: email send_typing metadata param + ☤ Hermes staff symbol
- email.py: add missing metadata parameter to send_typing() to match BasePlatformAdapter signature (PR #1431 by @ItsChoudhry) - README.md: ⚕ → ☤ — the caduceus is Hermes's staff, not the medical Staff of Asclepius (PR #1420 by @rianczerwinski) |
||
|
|
926afb4685 |
fix(docker): add explicit env allowlist for container credentials (#1436)
Docker terminal sessions are secret-dark by default. This adds terminal.docker_forward_env as an explicit allowlist for env vars that may be forwarded into Docker containers. Values resolve from the current shell first, then fall back to ~/.hermes/.env. Only variables the user explicitly lists are forwarded — nothing is auto-exposed. Cherry-picked from PR #1449 by @teknium1, conflict-resolved onto current main. Fixes #1436 Supersedes #1439 |
||
|
|
e6083209f2 |
refactor(tts): replace NeuTTS optional skill with built-in provider + setup flow
Remove the optional skill (redundant now that NeuTTS is a built-in TTS provider). Replace neutts_cli dependency with a standalone synthesis helper (tools/neutts_synth.py) that calls the neutts Python API directly in a subprocess. Add TTS provider selection to hermes setup: - 'hermes setup' now prompts for TTS provider after model selection - 'hermes setup tts' available as standalone section - Selecting NeuTTS checks for deps and offers to install: espeak-ng (system) + neutts[all] (pip) - ElevenLabs/OpenAI selections prompt for API keys - Tool status display shows NeuTTS install state Changes: - Remove optional-skills/mlops/models/neutts/ (skill + CLI scaffold) - Add tools/neutts_synth.py (standalone synthesis subprocess helper) - Move jo.wav/jo.txt to tools/neutts_samples/ (bundled default voice) - Refactor _generate_neutts() — uses neutts API via subprocess, no neutts_cli dependency, config-driven ref_audio/ref_text/model/device - Add TTS setup to hermes_cli/setup.py (SETUP_SECTIONS, tool status) - Update config.py defaults (ref_audio, ref_text, model, device) |
||
|
|
8e8b35e868 |
perf: use ripgrep for file search (200x faster than find)
search_files(target='files') now uses rg --files -g instead of find. Ripgrep respects .gitignore, excludes hidden dirs by default, and has parallel directory traversal — ~200x faster on wide trees (0.14s vs 34s benchmarked on 164-repo tree). Falls back to find when rg is unavailable, preserving hidden-dir exclusion and BSD find compatibility. Salvaged from PR #1464 by @light-merlin-dark (Merlin) — adapted to preserve hidden-dir exclusion added since the original PR. |
||
|
|
83f3dfc7c2 |
fix: recognize Claude Code OAuth credentials in startup gate (#1455)
The _has_any_provider_configured() startup check didn't look for Claude Code OAuth credentials (~/.claude/.credentials.json). Users with only Claude Code auth got the setup wizard instead of starting. Cherry-picked from PR #1455 by kshitijk4poor. |
||
|
|
fe01f0b122 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
d4810d8c4b |
feat(gateway): inject reply-to message context for out-of-session replies (#1594)
When a user replies to a Telegram message, check if the quoted text exists in the current session transcript. If missing (from cron jobs, background tasks, or old sessions), prepend [Replying to: "..."] to the message so the agent has context about what's being referenced. - Add reply_to_text field to MessageEvent (base.py) - Populate from Telegram's reply_to_message (text or caption) - Inject context in _handle_message when not found in history Based on PR #1596 by anpicasso (cherry-picked reply-to feature only, excluded unrelated /server command and background delegation changes). |
||
|
|
fb83d5d86d | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
753f94a44d |
fix(gateway): /model shows active fallback model instead of config default (#1615)
When the agent falls back to a different model (e.g. due to rate limiting), /model still showed the config default. Now tracks the effective model/provider after each agent run and displays it. Cleared when the primary model succeeds again or the user explicitly switches via /model. Cherry-picked from PR #1616 by MaxKerkula. Added hasattr guard for test compatibility. |
||
|
|
b76f4b2110 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
ef7c41b58f |
fix(gateway): cap interrupt recursion depth to prevent resource exhaustion (#816)
When a user sends multiple messages while the agent keeps failing, _run_agent() calls itself recursively with no depth limit. This can exhaust stack/memory if the agent is in a failure loop. Add _MAX_INTERRUPT_DEPTH = 3. When exceeded, the pending message is logged and the current result is returned instead of recursing deeper. The log handler duplication bug described in #816 was already fixed separately (AIAgent.__init__ deduplicates handlers). |
||
|
|
6da65dc9f0 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
95076d7e57 |
fix(security): block sandbox backend creds from subprocess env (#1264)
Add Modal and Daytona sandbox credentials to the subprocess env blocklist so they're not leaked to agent terminal sessions via printenv/env. Cherry-picked from PR #1571 by ygd58. |
||
|
|
3bd0fa2bab | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
f824116ff9 |
fix(claw): warn when API keys are skipped during OpenClaw migration (#1580)
When --migrate-secrets is not passed (the default), API keys like OPENROUTER_API_KEY are silently skipped with no warning. Users don't realize their keys weren't migrated until the agent fails to connect. Add a post-migration warning with actionable instructions: either re-run with --migrate-secrets or add the key manually via hermes config set. Cherry-picked from PR #1593 by ygd58. |
||
|
|
1b48ce9578 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
4cfecd41a6 |
fix(cli): flush stdout during agent loop to prevent macOS display freeze (#1624)
The interrupt polling loop in chat() waited on the queue without invalidating the prompt_toolkit renderer. On macOS, the StdoutProxy buffer only flushed on input events, causing the CLI to appear frozen during tool execution until the user typed a key. Fix: call _invalidate() on each queue timeout (every ~100ms, throttled to 150ms) to force the renderer to flush buffered agent output. |
||
|
|
afc9ad0b31 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
667395ddd3 |
fix(approval): show full command in dangerous command approval (#1553)
Previously the command was truncated to 80 chars in CLI (with a [v]iew full option), 500 chars in Discord embeds, and missing entirely in Telegram/Slack approval messages. Now the full command is always displayed everywhere: - CLI: removed 80-char truncation and [v]iew full menu option - Gateway (TG/Slack): approval_required message includes full command in a code block - Discord: embed shows full command up to 4096-char limit - Windows: skip SIGALRM-based test timeout (Unix-only) - Updated tests: replaced view-flow tests with direct approval tests Cherry-picked from PR #1566 by crazywriter1. |
||
|
|
9b7dbb1a49 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
993abca05c |
fix(tools): chunk long messages in send_message_tool before dispatch (#1552)
Long messages sent via send_message tool or cron delivery silently failed when exceeding platform limits. Gateway adapters handle this via truncate_message(), but the standalone senders in send_message_tool bypassed that entirely. - Apply truncate_message() chunking in _send_to_platform() before dispatching to individual platform senders - Remove naive message[i:i+2000] character split in _send_discord() in favor of centralized smart splitting - Attach media files to last chunk only for Telegram - Add regression tests for chunking and media placement Cherry-picked from PR #1557 by llbn. |
||
|
|
a1425d7fb5 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
26b2fc360f |
fix(skills): detect prompt injection patterns and block cache file reads
Adds two security layers to prevent prompt injection via skills hub cache files (#1558): 1. read_file: blocks direct reads of ~/.hermes/skills/.hub/ directory (index-cache, catalog files). The 3.5MB clawhub_catalog_v1.json was the original injection vector — untrusted skill descriptions in the catalog contained adversarial text that the model executed. 2. skill_view: warns when skills are loaded from outside the trusted ~/.hermes/skills/ directory, and detects common injection patterns in skill content ("ignore previous instructions", "<system>", etc.). Cherry-picked from PR #1562 by ygd58. |
||
|
|
e1e702abc5 | Merge remote-tracking branch 'origin/main' into hermes/hermes-6bb9911e | ||
|
|
75a2b77b0d |
fix: prevent infinite 400 failure loop on context overflow (#1630)
When a gateway session exceeds the model's context window, Anthropic may return a generic 400 invalid_request_error with just 'Error' as the message. This bypassed the phrase-based context-length detection, causing the agent to treat it as a non-retryable client error. Worse, the failed user message was still persisted to the transcript, making the session even larger on each attempt — creating an infinite loop. Three-layer fix: 1. run_agent.py — Fallback heuristic: when a 400 error has a very short generic message AND the session is large (>40% of context or >80 messages), treat it as a probable context overflow and trigger compression instead of aborting. 2. run_agent.py + gateway/run.py — Don't persist failed messages: when the agent returns failed=True before generating any response, skip writing the user's message to the transcript/DB. This prevents the session from growing on each failure. 3. gateway/run.py — Smarter error messages: detect context-overflow failures and suggest /compact or /reset specifically, instead of a generic 'try again' that will fail identically. |
6 changed files with 52 additions and 3 deletions
+12
-2
@@ -357,7 +357,7 @@ DEFAULT_CONFIG = {
|
||||
},
|
||||
|
||||
# Config schema version - bump this when adding new required fields
|
||||
"_config_version": 9,
|
||||
"_config_version": 10,
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
@@ -371,6 +371,7 @@ ENV_VARS_BY_VERSION: Dict[int, List[str]] = {
|
||||
4: ["VOICE_TOOLS_OPENAI_KEY", "ELEVENLABS_API_KEY"],
|
||||
5: ["WHATSAPP_ENABLED", "WHATSAPP_MODE", "WHATSAPP_ALLOWED_USERS",
|
||||
"SLACK_BOT_TOKEN", "SLACK_APP_TOKEN", "SLACK_ALLOWED_USERS"],
|
||||
10: ["TAVILY_API_KEY"],
|
||||
}
|
||||
|
||||
# Required environment variables with metadata for migration prompts.
|
||||
@@ -550,6 +551,14 @@ OPTIONAL_ENV_VARS = {
|
||||
"password": True,
|
||||
"category": "tool",
|
||||
},
|
||||
"TAVILY_API_KEY": {
|
||||
"description": "Tavily API key for Tavily-based research skills and integrations",
|
||||
"prompt": "Tavily API key",
|
||||
"url": "https://app.tavily.com/home",
|
||||
"tools": ["tavily skills", "research integrations"],
|
||||
"password": True,
|
||||
"category": "tool",
|
||||
},
|
||||
"FIRECRAWL_API_URL": {
|
||||
"description": "Firecrawl API URL for self-hosted instances (optional)",
|
||||
"prompt": "Firecrawl API URL (leave empty for cloud)",
|
||||
@@ -1450,6 +1459,7 @@ def show_config():
|
||||
("OPENROUTER_API_KEY", "OpenRouter"),
|
||||
("VOICE_TOOLS_OPENAI_KEY", "OpenAI (STT/TTS)"),
|
||||
("FIRECRAWL_API_KEY", "Firecrawl"),
|
||||
("TAVILY_API_KEY", "Tavily"),
|
||||
("BROWSERBASE_API_KEY", "Browserbase"),
|
||||
("BROWSER_USE_API_KEY", "Browser Use"),
|
||||
("FAL_KEY", "FAL"),
|
||||
@@ -1598,7 +1608,7 @@ def set_config_value(key: str, value: str):
|
||||
# Check if it's an API key (goes to .env)
|
||||
api_keys = [
|
||||
'OPENROUTER_API_KEY', 'OPENAI_API_KEY', 'ANTHROPIC_API_KEY', 'VOICE_TOOLS_OPENAI_KEY',
|
||||
'FIRECRAWL_API_KEY', 'FIRECRAWL_API_URL', 'BROWSERBASE_API_KEY', 'BROWSERBASE_PROJECT_ID', 'BROWSER_USE_API_KEY',
|
||||
'FIRECRAWL_API_KEY', 'TAVILY_API_KEY', 'FIRECRAWL_API_URL', 'BROWSERBASE_API_KEY', 'BROWSERBASE_PROJECT_ID', 'BROWSER_USE_API_KEY',
|
||||
'FAL_KEY', 'TELEGRAM_BOT_TOKEN', 'DISCORD_BOT_TOKEN',
|
||||
'TERMINAL_SSH_HOST', 'TERMINAL_SSH_USER', 'TERMINAL_SSH_KEY',
|
||||
'SUDO_PASSWORD', 'SLACK_BOT_TOKEN', 'SLACK_APP_TOKEN',
|
||||
|
||||
@@ -450,6 +450,12 @@ def _print_setup_summary(config: dict, hermes_home):
|
||||
else:
|
||||
tool_status.append(("Web Search & Extract", False, "FIRECRAWL_API_KEY"))
|
||||
|
||||
# Tavily (skills / integrations)
|
||||
if get_env_value("TAVILY_API_KEY"):
|
||||
tool_status.append(("Tavily Research Integrations", True, None))
|
||||
else:
|
||||
tool_status.append(("Tavily Research Integrations", False, "TAVILY_API_KEY"))
|
||||
|
||||
# Browser tools (local Chromium or Browserbase cloud)
|
||||
import shutil
|
||||
|
||||
|
||||
@@ -120,6 +120,7 @@ def show_status(args):
|
||||
"MiniMax": "MINIMAX_API_KEY",
|
||||
"MiniMax-CN": "MINIMAX_CN_API_KEY",
|
||||
"Firecrawl": "FIRECRAWL_API_KEY",
|
||||
"Tavily": "TAVILY_API_KEY",
|
||||
"Browserbase": "BROWSERBASE_API_KEY", # Optional — local browser works without this
|
||||
"FAL": "FAL_KEY",
|
||||
"Tinker": "TINKER_API_KEY",
|
||||
|
||||
@@ -150,9 +150,16 @@ TOOL_CATEGORIES = {
|
||||
"web": {
|
||||
"name": "Web Search & Extract",
|
||||
"setup_title": "Select Search Provider",
|
||||
"setup_note": "A free DuckDuckGo search skill is also included — skip this if you don't need Firecrawl.",
|
||||
"setup_note": "A free DuckDuckGo search skill is also included, and Tavily-based skills/integrations can be configured here too.",
|
||||
"icon": "🔍",
|
||||
"providers": [
|
||||
{
|
||||
"name": "Tavily",
|
||||
"tag": "Search-first research for Tavily-based skills and integrations",
|
||||
"env_vars": [
|
||||
{"key": "TAVILY_API_KEY", "prompt": "Tavily API key", "url": "https://app.tavily.com/home"},
|
||||
],
|
||||
},
|
||||
{
|
||||
"name": "Firecrawl Cloud",
|
||||
"tag": "Recommended - hosted service",
|
||||
|
||||
@@ -8,6 +8,8 @@ import yaml
|
||||
|
||||
from hermes_cli.config import (
|
||||
DEFAULT_CONFIG,
|
||||
ENV_VARS_BY_VERSION,
|
||||
OPTIONAL_ENV_VARS,
|
||||
get_hermes_home,
|
||||
ensure_hermes_home,
|
||||
load_config,
|
||||
@@ -345,3 +347,12 @@ class TestAnthropicTokenMigration:
|
||||
}):
|
||||
migrate_config(interactive=False, quiet=True)
|
||||
assert load_env().get("ANTHROPIC_TOKEN") == "current-token"
|
||||
|
||||
|
||||
class TestOptionalToolKeys:
|
||||
def test_tavily_api_key_is_registered_for_setup_and_migration(self):
|
||||
tavily = OPTIONAL_ENV_VARS["TAVILY_API_KEY"]
|
||||
assert tavily["prompt"] == "Tavily API key"
|
||||
assert tavily["category"] == "tool"
|
||||
assert "research" in tavily["description"].lower()
|
||||
assert "TAVILY_API_KEY" in ENV_VARS_BY_VERSION[10]
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
from types import SimpleNamespace
|
||||
|
||||
from hermes_cli.status import show_status
|
||||
|
||||
|
||||
def test_show_status_includes_tavily_key(monkeypatch, capsys, tmp_path):
|
||||
monkeypatch.setenv("HERMES_HOME", str(tmp_path))
|
||||
monkeypatch.setenv("TAVILY_API_KEY", "tvly-1234567890abcdef")
|
||||
|
||||
show_status(SimpleNamespace(all=False, deep=False))
|
||||
|
||||
output = capsys.readouterr().out
|
||||
assert "Tavily" in output
|
||||
assert "tvly...cdef" in output
|
||||
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.