hermes-agent/skills
Teknium eeb747de25 feat(sessions): opt-in per-session JSON snapshot writer
PR #29182 deleted the per-session JSON snapshot writer outright because
state.db is canonical and the snapshots had no in-tree consumer.  Some
users have external tooling that reads `~/.hermes/sessions/session_{sid}.json`
directly, so reintroduce the writer behind a config flag that defaults
to off.

- Add `sessions.write_json_snapshots` (default False) to DEFAULT_CONFIG
- Restore `AIAgent._save_session_log` + `_clean_session_content` as
  gated methods.  When the flag is off the call is a fast no-op; when
  on, the writer behaves as before (atomic write, truncation guard
  preserved, REASONING_SCRATCHPAD → think tag normalization)
- Re-derive the target path from `agent.session_id` on each call so
  `/branch` and `/compress` re-points happen automatically — no need
  to restore the explicit re-point bookkeeping at call sites
- Wire the single call site in `_persist_session` (the cleanup-on-exit
  hook).  Did NOT restore the 7 intra-turn calls the original PR deleted
  — those were redundant writes within the same turn that doubled disk
  I/O without adding any persistence guarantee `_persist_session` does
  not already provide
- Read the flag once at agent init via `load_config()`, cache as
  `agent._session_json_enabled`
- Update `TestNoSessionJsonSnapshot` → `TestSessionJsonSnapshotOptIn`
  to pin behavior: default off (no file), opt-in true (file written),
  no-op method on default agents, logs_dir retained unconditionally
- Update CONTRIBUTING.md and the bundled `hermes-agent` skill to
  document the flag and its default
2026-05-20 11:44:10 -07:00
..
apple feat(computer-use): cua-driver backend, universal any-model schema 2026-05-08 11:07:38 -07:00
autonomous-ai-agents feat(sessions): opt-in per-session JSON snapshot writer 2026-05-20 11:44:10 -07:00
creative chore(skills/baoyu-article-illustrator): tighten description, add platforms, regen docs 2026-05-18 18:28:56 -07:00
data-science feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
devops feat(kanban): configure worktree paths and branches 2026-05-18 21:33:08 -07:00
diagramming refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
dogfood feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
domain refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
email feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
gaming feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
gifs refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
github feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
index-cache Release set of skills 2026-02-25 05:21:17 -08:00
inference-sh feat(gateway): skill-aware slash commands, paginated /commands, Telegram 100-cap (#3934) 2026-03-30 10:57:30 -07:00
mcp feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
media feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
mlops chore(skills): move heavy training skills + outlines to optional-skills (#22912) 2026-05-09 18:44:12 -07:00
note-taking feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
productivity fix(skills): add timeout to Google OAuth urlopen calls 2026-05-19 00:11:44 -07:00
red-teaming/godmode feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
research chore: ruff auto-fix PLR6201 resweep — tuple → set in membership tests (#27355) 2026-05-17 02:29:41 -07:00
smart-home feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
social-media docs(skills): compress 74 built-in skill descriptions to <=60 chars 2026-04-26 21:50:56 -07:00
software-development feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00
yuanbao feat(skills): declare platforms frontmatter for all 79 undeclared built-in skills 2026-05-08 14:27:40 -07:00