Commit Graph

143 Commits

Author SHA1 Message Date
nesquena-hermes 715017924c Stage 382: PR #2503 2026-05-18 03:45:42 +00:00
nesquena-hermes a27f8c8c24 Merge pull request #2487 from Michaelyklam/docs/issue-1925-approval-clarify-gate
docs(runtime): define approval clarify control gate
2026-05-17 18:22:59 -07:00
Michaelyklam d9e6dcf3ef docs(runtime): define approval clarify control gate 2026-05-18 01:06:26 +00:00
Michael Lam 310d69bed8 docs: inventory agent source boundary 2026-05-17 16:11:29 -07:00
Michael Lam f2c5048741 docs(runtime): define cancel control gate 2026-05-17 11:30:50 -07:00
nesquena-hermes 5cc8b6c654 docs(docker): document agent-image upgrade flow + read-only WebUI source mount
The hermes-agent-src named volume in the two- and three-container compose
files is initialised from the agent image's /opt/hermes on first `up` and
Docker reuses it verbatim on every subsequent `up` — even after a fresh
`docker pull` of the agent image. This was the root cause of #1416 (the
'missing entrypoint' symptom was a stale cached volume hiding the new
image's source tree).

Changes:

- Add an 'Upgrading the agent container' section to docs/docker.md with
  the canonical `down → docker volume rm → pull → up -d` recipe, plus the
  same pointer as a comment block in both multi-container compose files
  near the volume declarations.
- Switch the WebUI's hermes-agent-src mount to `:ro` in both multi-container
  compose files. The WebUI only reads this volume to install the agent's
  Python deps at startup; mounting it read-only enforces that at the kernel
  layer and brings the actual mount mode in line with the existing
  docs/docker.md architecture diagram (which already labelled this edge as
  read-only).
- Align the workspace bind default in both multi-container compose files
  with the single-container convention — `${HERMES_WORKSPACE:-${HOME}/workspace}`
  instead of `${HERMES_WORKSPACE:-~/workspace}` — so the default resolves
  the same way across Linux, macOS, WSL2, and Docker Desktop on Windows.
- Add a 'What the multi-container setup isolates (and what it doesn't)'
  section to docs/docker.md to frame the two/three-container setups as
  process/network/resource isolation, not filesystem isolation, so users
  don't reach for multi-container expecting a trust boundary it doesn't
  provide.
- Cross-link #1416 from the Related issues section.

Adds 9 regression tests in tests/test_docker_docs_and_readonly.py covering:
- :ro on the WebUI side of hermes-agent-src in both files
- agent side stays read-write (still needs to populate /opt/hermes on first run)
- ${HOME} (not ~) in workspace bind defaults in both files
- single-container file already uses ${HOME} (pin to prevent drift)
- docs/docker.md has the 'Upgrading the agent container' section + recipe
- compose files reference docs/docker.md + show the upgrade step inline
- docs/docker.md frames the isolation model honestly

Test suite: 42 passed (33 existing Docker tests + 9 new). No behaviour
change for users who set HERMES_WORKSPACE explicitly, and no migration is
required for existing deployments — Docker rebinds the existing volume
read-only on next `up`. Users upgrading the agent image should now follow
the documented `docker volume rm hermes-agent-src` recipe.

Closes #1416 (documented upgrade procedure) and addresses the read-only
half of the multi-container coupling concern raised on #2453.
2026-05-17 17:18:39 +00:00
Michael Lam 2785065a09 feat: add thinking card copy button 2026-05-17 03:57:54 -07:00
nesquena-hermes e9c6b7f06c Stage 375: PR #2432 — feat(theme): add Catppuccin appearance skin (Latte + Mocha palettes) by @Michaelyklam (closes #2426)
Co-authored-by: Michael Lam <michael@example.local>
2026-05-17 03:35:19 +00:00
Michael Lam b985ca54dc docs: define runtime adapter seam contract 2026-05-17 00:41:20 +00:00
nesquena-hermes 55f2d6792b Stage 372: PR #2407 — docs: advance runtime adapter gate by @Michaelyklam 2026-05-16 23:02:42 +00:00
Hermes Agent 8b4f8b0600 Stage 369: PR #2347 — Preserve live agent timeline across session switches by @franksong2702 2026-05-16 20:03:43 +00:00
Frank Song 574ee36460 Add run journal replay timeline parity checks 2026-05-16 17:52:35 +08:00
Frank Song faedcab739 Preserve live agent timeline across session switches 2026-05-16 14:12:08 +08:00
Frank Song 58a43d7abd Document WebUI run state consistency contract 2026-05-16 05:43:06 +00:00
Hermes Agent d510b8d2d5 Merge pull request #2303 into stage-359
Add assistant question jump buttons (franksong2702, fixes #2246)

# Conflicts:
#	CHANGELOG.md
2026-05-15 14:55:15 +00:00
Hermes Agent f7d98cdf3f Merge pull request #2301 into stage-359
Add cron detail expansion controls (franksong2702, fixes #2289)
2026-05-15 14:55:13 +00:00
Frank Song 05a5ed5af1 Add assistant question jump buttons 2026-05-15 19:39:27 +08:00
Frank Song 079d6b4e86 Add cron detail expansion controls 2026-05-15 18:04:53 +08:00
Jordan SkyLF fb869bbeb3 Add offline banner comparison screenshots 2026-05-15 01:51:35 -07:00
Jordan SkyLF 2601d41149 Add offline banner theme screenshots 2026-05-15 01:03:48 -07:00
Hermes Agent 29c166d813 Merge pull request #2234 into stage-355
fix: refine update summary category handling (Jordan-SkyLF, post-v0.51.61 rebase)

# Conflicts:
#	CHANGELOG.md
2026-05-14 15:15:09 +00:00
Hermes Agent 673a927975 Merge pull request #2238 into stage-355
Improve phone sidebar panel navigation (franksong2702, fixes #2231)
2026-05-14 15:15:06 +00:00
Hermes Agent 116167ce00 Merge pull request #2250 into stage-355
[codex] Fix blank skill detail views (franksong2702, refs #1880)

# Conflicts:
#	CHANGELOG.md
2026-05-14 15:13:46 +00:00
Hermes Agent 6f5f5edb56 Merge pull request #2253 into stage-355
[codex] Show skill detail API errors (franksong2702)

# Conflicts:
#	CHANGELOG.md
2026-05-14 15:13:44 +00:00
Frank Song a56ec43d29 Show skill detail API errors 2026-05-14 22:57:15 +08:00
Frank Song 5ba5551d05 Clarify runtime adapter replay gates 2026-05-14 22:42:15 +08:00
Frank Song 93de0d8c31 Add skill detail screenshot evidence 2026-05-14 22:35:02 +08:00
Frank Song b2b38354db Update runtime adapter RFC gates 2026-05-14 22:34:51 +08:00
Jordan SkyLF a291ffdde6 fix: refine update summary category handling
Keep distinct generated summary categories, route update-summary generation through the configured auxiliary model first, disclose capped large-range summary input, and constrain long summary panels.
2026-05-14 01:07:47 -07:00
Frank Song 6beb59d61f Improve mobile sidebar panel navigation 2026-05-14 15:16:33 +08:00
Hermes Agent efad585b86 Merge pull request #2228 into stage-354
Add model picker to profile creation (franksong2702, refs #749)
2026-05-14 07:15:14 +00:00
Jordan SkyLF afbcc9a6d5 fix: wrap update banner on mobile 2026-05-13 23:51:48 -07:00
Frank Song 8b30ade923 Add profile creation model picker 2026-05-14 12:13:49 +08:00
Hermes Agent bfb62abe35 Merge pull request #2225 into stage-353
Add extra-large Appearance font size option (franksong2702)
2026-05-14 03:43:52 +00:00
Frank Song e2f319d730 Add extra large font size option 2026-05-14 11:09:21 +08:00
Frank Song 3d2f9cf699 Fix Appearance endless scroll label markup 2026-05-14 10:44:16 +08:00
Frank Song 996d4f9a8c Hide session lineage metadata in compact sidebar 2026-05-14 10:14:15 +08:00
Hermes Agent 70f09aaeb6 Merge pull request #2207 into stage-351
feat: add per-target update summaries with separate WebUI/Agent What's-new links (Jordan-SkyLF, fixes #1579)
2026-05-13 23:51:28 +00:00
Jordan SkyLF 25ce490e24 docs: add update banner summary mode screenshots 2026-05-13 16:27:06 -07:00
Jordan SkyLF 7d0a2c3621 docs: refresh update banner screenshots 2026-05-13 16:12:29 -07:00
Jordan SkyLF cfc0f68d23 fix: show update whats-new links for webui and agent 2026-05-13 15:53:01 -07:00
Jordan SkyLF 9b2c402253 Add MCP tools overflow PR screenshots 2026-05-13 15:50:48 -07:00
Frank Song 65fa18c7d9 docs: add agent onboarding entrypoint 2026-05-13 16:47:14 +08:00
Frank Song e177f64e78 Add worktree remove PR screenshots 2026-05-13 09:53:56 +08:00
Hermes Agent 2cccb8abcc Merge pull request #2120 into stage-344
fix: bucket long-range daily token charts (closes #2103)
2026-05-12 16:12:11 +00:00
Michael Lam 442f01bbca docs: document turn journal fsync tradeoff 2026-05-12 04:11:14 -07:00
Michael Lam 245288c00d fix: bucket long-range daily token charts 2026-05-11 23:01:13 -07:00
nesquena-hermes 43677b046d docs(rfcs): add anti-speculative-implementation conventions guidance
When merging PR #2105 (Hermes Run Adapter RFC) the standing concern was
that landing the RFC unconfirmed would invite the speculative-fragment
implementation pattern we just had to put on hold with PR #2071 — well-
written 651-LOC standalone scripts with no callers.

Add a single bullet to the conventions block so the contract is explicit:
an RFC is a design direction, not an invitation to PR fragments against
it. Implementation slices need maintainer confirmation first.

Applied during stage-341 build, not requested from @Michaelyklam — the
guardrail belongs in the conventions doc itself rather than as a one-off
ask on this PR.
2026-05-12 00:05:28 +00:00
Frank Song 2da4f108c5 Clarify worktree session archive/delete semantics
(cherry picked from commit f5c8fb58d1)
2026-05-12 00:05:05 +00:00
Michael Lam de982d40a0 docs: add Hermes run adapter RFC
(cherry picked from commit 95cdaa6a1f)
2026-05-12 00:04:15 +00:00