10 Commits
Author SHA1 Message Date
Zachariah K. Sharma e324b2237a Fix Codex default model 2026-06-09 00:59:20 -06:00
Zachariah K. Sharma c645027805 Route APIs through shared Hermes gateway 2026-06-08 20:47:15 -06:00
Zachariah K. Sharma 0c84fa9e4f Fix mounted provider auth discovery 2026-06-08 00:42:47 -06:00
Zachariah K. Sharma 05da1532b6 Fix Portainer Hermes runtime deployment 2026-06-08 00:14:59 -06:00
Zachariah K. SharmaandClaude Sonnet 4.6 74e276af92 fix: bind published ports to loopback and fix runHermes hang
- Ports now bind to HERMES_PUBLISHED_BIND_IP (default 127.0.0.1) so
  NPM on the same host proxies to 127.0.0.1:7843/8645/8646 and direct
  LAN/internet access is blocked without firewall rules
- runHermes: settle promise immediately on timeout (SIGKILL) instead of
  waiting for close event — prevents hanging when hermes spawns children
  that keep stdout/stderr open after the parent is killed
- Add HERMES_ADMIN_COOKIE_SECURE env var to set Secure flag on admin
  session cookie when the admin UI is served over HTTPS
- Document NPM deployment shapes in README

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 21:01:10 -06:00
Zachariah K. SharmaandClaude Sonnet 4.6 10346d178f fix: increase postgres healthcheck start_period for first-boot init
On first deploy postgres must initialize the data directory before it
can accept connections. 10s start_period was too tight; bumped to 30s
with 10 retries to give it enough runway on slower hosts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 03:40:58 -06:00
Zachariah K. SharmaandClaude Sonnet 4.6 e703a84a72 feat: self-contain postgres in docker compose
Embed a postgres:16-alpine service so operators don't need an external
database. DATABASE_URL is now constructed internally via a YAML anchor
from POSTGRES_PASSWORD (default: hermes-change-me). Removed the manual
PostgreSQL setup section from README and updated backup instructions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 02:40:47 -06:00
Zachariah K. SharmaandClaude Sonnet 4.6 dd5318368e feat: route public api traffic through managed gateway
Replace the 3-service compose with a 5-service architecture that puts
api-gateway.cjs (hermes-pre-api, hermes-post-api) in front of internal
upstream services (hermes-pre-upstream, hermes-post-upstream), ensuring
all public API traffic passes through the auth/audit layer. Update
Dockerfile, .env.example, .dockerignore, and add a compose contract test.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 02:12:05 -06:00
Zachariah K. Sharma 6acec6bd2f Deployment 2026-06-06 00:01:28 -06:00
Zachariah K. Sharma b78b25a5a5 Initial Commit 2026-06-05 23:22:08 -06:00