hermes-agent/skills
Jérôme Benoit c34d3f4807 fix(skills): factor HERMES_HOME resolution into shared _hermes_home helper
The three google-workspace scripts (setup.py, google_api.py, gws_bridge.py)
each had their own way of resolving HERMES_HOME:

- setup.py imported hermes_constants (crashes outside Hermes process)
- google_api.py used os.getenv inline (no strip, no empty handling)
- gws_bridge.py defined its own local get_hermes_home() (duplicate)

Extract the common logic into _hermes_home.py which:
- Delegates to hermes_constants when available (profile support, etc.)
- Falls back to os.getenv with .strip() + empty-as-unset handling
- Provides display_hermes_home() with ~/ shortening for profiles

All three scripts now import from _hermes_home instead of duplicating.

7 regression tests cover the fallback path: env var override, default
~/.hermes, empty env var, display shortening, profile paths, and
custom non-home paths.

Closes #12722
2026-04-24 16:45:27 -07:00
..
apple feat: secure skill env setup on load (core #688) 2026-03-13 03:14:04 -07:00
autonomous-ai-agents refactor(commands): drop /provider, /plan handler, and clean up slash registry (#15047) 2026-04-24 03:10:52 -07:00
creative feat(skills): add design-md skill for Google's DESIGN.md spec (#14876) 2026-04-23 21:51:19 -07:00
data-science feat: restore ACP server implementation from PR #949 (#1254) 2026-03-14 00:09:05 -07:00
devops/webhook-subscriptions feat(webhook): direct delivery mode for zero-LLM push notifications (#12473) 2026-04-19 05:18:19 -07:00
diagramming refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
dogfood refactor: remove browser_close tool — auto-cleanup handles it (#5792) 2026-04-07 03:28:44 -07:00
domain refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
email feat: secure skill env setup on load (core #688) 2026-03-13 03:14:04 -07:00
feeds refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
gaming feat: add pokemon-player skill with battle-tested gameplay tips 2026-03-09 20:29:38 -07:00
gifs refactor: reorganize skills into sub-categories 2026-03-09 03:35:53 -07:00
github fix: five HERMES_HOME profile-isolation leaks (#10570) 2026-04-15 17:09:41 -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 skills: move 7 niche mlops/mcp skills to optional (#12474) 2026-04-19 05:14:17 -07:00
media feat(spotify): consolidate tools (9→7), add spotify skill, surface in hermes setup (#15154) 2026-04-24 06:14:51 -07:00
mlops chore: fix lint 2026-04-24 12:32:10 -04:00
note-taking refactor: update Obsidian vault path handling 2026-02-25 20:24:51 -08:00
productivity fix(skills): factor HERMES_HOME resolution into shared _hermes_home helper 2026-04-24 16:45:27 -07:00
red-teaming/godmode fix: five HERMES_HOME profile-isolation leaks (#10570) 2026-04-15 17:09:41 -07:00
research chore: fix lint 2026-04-24 12:32:10 -04:00
smart-home feat: secure skill env setup on load (core #688) 2026-03-13 03:14:04 -07:00
social-media docs(xurl skill): document UsernameNotFound workaround (xurl v1.1.0) (#13458) 2026-04-21 03:09:10 -07:00
software-development refactor(skills): consolidate code verification skills into one (#4854) 2026-04-03 14:13:27 -07:00