feat: add Syncthing service for Hermes org-file sync #30

Merged
gortium merged 4 commits from feat/syncthing-org-sync into master 2026-05-19 00:28:59 +00:00
Collaborator

Summary

Add a Syncthing container to the AI compose stack for syncing org-mode files between the user's laptop and the Hermes agent container.

What Changed

New syncthing service in ai/compose.yml:

  • Image: syncthing/syncthing:latest
  • Web UI on 127.0.0.1:8384 (localhost only)
  • TCP sync port 22000
  • UDP discovery port 21027
  • Two shared volumes:
    • org-ro — read-only copy of user's org vault (Syncthing "receive only" from laptop)
    • org-rw — two-way sync inbox (Hermes writes tasks, laptop refiles)

Updated hermes service — added two volume mounts to access the same Syncthing directories:

  • ${DATA}/Syncthing/org-ro:/opt/data/org-ro:ro — agenda read
  • ${DATA}/Syncthing/org-rw:/opt/data/org-rw:rw — task writeback

Post-Merge Setup

  1. Create the directories on the host:

    mkdir -p /mnt/HoardingCow_docker_data/Syncthing/{config,org-ro,org-rw}
    
  2. After deploy, configure Syncthing via the web UI at http://lazyworkhorse.net:8384:

    • Set a web UI password
    • Add the laptop as a device
    • Share org-ro as "Receive Only" folder
    • Share org-rw as "Send & Receive" folder
  3. The ai_stack systemd service needs a port 22000 entry added to the Nix config firewall (separate infra PR).

## Summary Add a Syncthing container to the AI compose stack for syncing org-mode files between the user's laptop and the Hermes agent container. ## What Changed **New `syncthing` service** in `ai/compose.yml`: - Image: `syncthing/syncthing:latest` - Web UI on `127.0.0.1:8384` (localhost only) - TCP sync port `22000` - UDP discovery port `21027` - Two shared volumes: - `org-ro` — read-only copy of user's org vault (Syncthing "receive only" from laptop) - `org-rw` — two-way sync inbox (Hermes writes tasks, laptop refiles) **Updated `hermes` service** — added two volume mounts to access the same Syncthing directories: - `${DATA}/Syncthing/org-ro:/opt/data/org-ro:ro` — agenda read - `${DATA}/Syncthing/org-rw:/opt/data/org-rw:rw` — task writeback ## Post-Merge Setup 1. Create the directories on the host: ``` mkdir -p /mnt/HoardingCow_docker_data/Syncthing/{config,org-ro,org-rw} ``` 2. After deploy, configure Syncthing via the web UI at http://lazyworkhorse.net:8384: - Set a web UI password - Add the laptop as a device - Share `org-ro` as "Receive Only" folder - Share `org-rw` as "Send & Receive" folder 3. The `ai_stack` systemd service needs a port 22000 entry added to the Nix config firewall (separate infra PR).
Hermes added 1 commit 2026-05-15 01:35:58 +00:00
feat: add Syncthing service for Hermes org-file sync
Some checks failed
Build Hermes agent / build (pull_request) Has been cancelled
Build ollama (gfx906) / build (pull_request) Has been cancelled
bcc4b6d157
Hermes added 1 commit 2026-05-15 01:40:07 +00:00
fix: route Syncthing web UI through Traefik with HTTPS
Some checks failed
Build Hermes agent / build (pull_request) Has been cancelled
Build ollama (gfx906) / build (pull_request) Has been cancelled
f9fb28d560
gortium added 2 commits 2026-05-19 00:25:52 +00:00
Fixed syncthing dir path
Some checks failed
Build Hermes agent / build (pull_request) Has been cancelled
Build ollama (gfx906) / build (pull_request) Has been cancelled
6a44120b1a
gortium merged commit d3f2e3b7b9 into master 2026-05-19 00:28:59 +00:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gortium/compose#30
No description provided.