nesquena-hermes
c1a7668bdf
Merge PR #3091
2026-05-28 19:51:29 +00:00
nesquena-hermes
6719f35930
Merge PR #3094
...
# Conflicts:
# CHANGELOG.md
# api/streaming.py
2026-05-28 19:51:29 +00:00
nesquena-hermes
20f8bc3290
Merge PR #3090
...
# Conflicts:
# CHANGELOG.md
2026-05-28 19:50:10 +00:00
nesquena-hermes
1a6409764a
Merge PR #3093
...
# Conflicts:
# CHANGELOG.md
2026-05-28 19:49:34 +00:00
nesquena-hermes
22db5bbe67
Merge PR #3092
...
# Conflicts:
# CHANGELOG.md
2026-05-28 19:48:56 +00:00
Hermes Agent
b92204a7b7
fix(sidebar): keep newer continuation visible over older snapshot
2026-05-28 13:38:06 -06:00
AJV20
d539d5c079
fix: budget webui prefill context
2026-05-28 15:26:35 -04:00
theseussss
b554fd8078
fix(reasoning): 推理强度补齐 max 档,与 hermes_constants 对齐
...
WebUI 镜像的 VALID_REASONING_EFFORTS 此前止于 xhigh,漏了底层
hermes_constants 已有的 max 档。补齐后端常量、前端命令/下拉/帮助文本,
并同步快照测试。支持 max thinking 的 provider(如 Anthropic)现可在
composer 下拉和 /reasoning 命令中选到 Max。
2026-05-29 03:05:02 +08:00
AJV20
d5b36267f7
Merge remote-tracking branch 'origin/master' into fix/selective-durable-writeback
...
# Conflicts:
# CHANGELOG.md
2026-05-28 14:59:12 -04:00
AJV20
c494e41220
Merge remote-tracking branch 'origin/master' into fix/webui-gateway-context-prefill
...
# Conflicts:
# CHANGELOG.md
2026-05-28 14:52:15 -04:00
AJV20
2cb3c9f10b
Merge remote-tracking branch 'origin/master' into HEAD
...
# Conflicts:
# CHANGELOG.md
# tests/test_workspace_git.py
2026-05-28 14:50:33 -04:00
AJV20
00f4b11227
fix: limit webui durable memory guidance
2026-05-28 14:48:30 -04:00
AJV20
609a0c887b
fix: carry WebUI context through gateway chat
2026-05-28 14:33:32 -04:00
nesquena-hermes
ad9b38c945
Merge PR #3086
...
# Conflicts:
# CHANGELOG.md
2026-05-28 18:27:03 +00:00
nesquena-hermes
88bdc99a49
Merge PR #3085
...
# Conflicts:
# CHANGELOG.md
2026-05-28 18:27:03 +00:00
nesquena-hermes
0a2dabc730
stage-batch36: tighten #3064 MEDIA: token gate to non-user-role messages
...
Per Opus advisor on stage-batch36: skip role='user' messages in
_session_media_token_allows_image_path so a user-injected MEDIA: token
cannot mint an allow-list entry for the user's own request. Preserves
the original use case (assistant/tool emitted artifacts outside the
active workspace) while making the implicit threat model explicit.
Defense-in-depth — the single-user WebUI scope means same-origin user
input already had the same effective access, but multi-user / shared
WebUI deployments would benefit from the restriction.
2026-05-28 18:20:25 +00:00
ai-ag2026
07aed6b7ff
fix(session): preserve subsecond message timestamp order
2026-05-28 19:58:18 +02:00
ai-ag2026
1cd58f6f5a
fix(session): preserve sidecar order in display merges
2026-05-28 19:58:17 +02:00
AJV20
cf6e3111c4
Merge remote-tracking branch 'origin/master' into fix/webui-bugfix-sweep
...
# Conflicts:
# CHANGELOG.md
2026-05-28 13:56:00 -04:00
nesquena-hermes
a3fc305aeb
Merge PR #3077
...
# Conflicts:
# CHANGELOG.md
# tests/test_webui_gateway_chat_backend.py
2026-05-28 17:47:56 +00:00
nesquena-hermes
1c89c7d327
Merge PR #3064
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:35 +00:00
nesquena-hermes
4412aea9e8
Merge PR #3059
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:34 +00:00
nesquena-hermes
921b94a287
Merge PR #3046
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:34 +00:00
nesquena-hermes
c642c1e438
Merge PR #3069
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:34 +00:00
nesquena-hermes
11ea6c3023
Merge PR #3060
2026-05-28 17:47:33 +00:00
nesquena-hermes
007ba46c3f
Merge PR #3048
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:33 +00:00
nesquena-hermes
dc5b4b1697
Merge PR #3037
...
# Conflicts:
# CHANGELOG.md
2026-05-28 17:47:33 +00:00
AJV20
60d4b2d990
fix: harden WebUI bugfix sweep
2026-05-28 13:38:50 -04:00
nesquena-hermes
4058c741b6
Merge PR #3072
...
# Conflicts:
# CHANGELOG.md
2026-05-28 16:11:16 +00:00
nesquena-hermes
50a0d254a3
Merge PR #3047
...
# Conflicts:
# CHANGELOG.md
2026-05-28 16:11:16 +00:00
nesquena-hermes
167ed85e8e
Merge PR #3070
...
# Conflicts:
# CHANGELOG.md
2026-05-28 16:11:16 +00:00
nesquena-hermes
d446a6c304
Merge PR #3049
...
# Conflicts:
# CHANGELOG.md
2026-05-28 16:10:49 +00:00
nesquena-hermes
0fd12b2365
Merge PR #3056
...
# Conflicts:
# CHANGELOG.md
2026-05-28 16:10:12 +00:00
nesquena-hermes
0147f05c0d
Merge PR #3055
2026-05-28 16:09:47 +00:00
nesquena-hermes
b77398abbf
Merge PR #3043
2026-05-28 16:09:45 +00:00
AJV20
8e6ed66815
fix: clarify gateway chat auth errors
2026-05-28 09:59:35 -04:00
AJV20
cbd3704a7f
fix: preserve literal prefill script paths
2026-05-28 09:31:07 -04:00
ai-ag2026
3469a2f898
fix: avoid interruption marker for completed journal runs
2026-05-28 15:19:09 +02:00
AJV20
3f22902423
fix: forward gateway image attachments
2026-05-28 08:40:51 -04:00
AJV20
0458a0a065
fix: report stored upload filenames
2026-05-28 08:33:50 -04:00
AJV20
9e69db9920
fix: show cron sessions in project filter
2026-05-28 08:10:15 -04:00
AJV20
1b5e6f6fae
fix: mirror WebUI prefill env for AI-recent notes
2026-05-28 07:19:31 -04:00
Frank Song
10573ab8aa
Fix session media image rendering
2026-05-28 18:05:01 +08:00
gavinssr
9e5403994c
fix(profiles): write API key to .env instead of config.yaml on profile creation
...
When a user creates a profile through the WebUI and supplies an API key,
the key was written to config.yaml under model.api_key. However, Hermes
Agent's provider layer reads keys from environment variables (.env), not
from config.yaml — making the key invisible to the actual LLM provider.
Additionally, hermes profile show reports .env: not configured when no
.env file exists, regardless of config.yaml contents, giving users the
false impression that their API key was not saved.
Changes:
- Add _PROVIDER_ENV_MAP to resolve provider IDs to .env variable names
(kimi-coding → KIMI_API_KEY, deepseek → DEEPSEEK_API_KEY, etc.)
- Add _write_api_key_to_dotenv() that writes the key to the profile's
.env file under the correct provider-specific variable
- Add _upsert_dotenv_line() helper for idempotent KEY=value writes
- Remove api_key writing from _write_endpoint_to_config()
- Wire _write_api_key_to_dotenv() into create_profile_api()
Fixes: profile created via WebUI shows .env: not configured despite
correct API key being entered in the form.
2026-05-28 15:45:17 +08:00
ai-ag2026
ce59e7ca20
fix: defer stale stream repair for active workers
2026-05-28 09:33:40 +02:00
Frank Song
9190ab4449
Fix empty partial activity tail recency
2026-05-28 15:30:49 +08:00
ai-ag2026
62efbfb13f
fix: use generic title language prompt
2026-05-28 09:14:46 +02:00
ai-ag2026
b046cb42c3
fix: remove German-only fallback title override
2026-05-28 09:09:59 +02:00
ai-ag2026
2aeebf56ac
fix: tighten title language detection
2026-05-28 08:21:58 +02:00
ai-ag2026
f879fd6bc3
fix: add dry-run discoverability safe repair
2026-05-28 08:19:49 +02:00