Opyt vs Hermes Agent + cron
Writing this one as a head-to-head would be wrong. Hermes Agent is an MCP client that can “connect to any MCP server via stdio or HTTP transport”, so the correct configuration is Hermes with Opyt, not instead of it. It also already solves the two things that usually stop a hand-built ingest: a scheduler, and full browser automation including local Chrome over CDP. The logged-in session, which is what makes X and Substack hard, is available out of the box.
Where it stops is storage. Its built-in memory is two files with hard character limits: MEMORY.md at 2,200 characters and USER.md at 1,375, injected whole into the system prompt at session start and never changed mid-session. session_search is FTS5 over past conversations in state.db, which is keyword matching over transcripts. That is a good design for remembering how you like to work. It is 3,575 characters, and it is injected whole with no search over it. A knowledge base is not a note.
The scheduling semantics say the same thing. “Cron runs each job in a fresh agent session”, and “the prompt must contain everything the agent needs”; continuity=true injects the job’s own most recent output into the next run. So what carries between nightly runs is the last thing the job said, not a store. The store is still yours to build, and building it is the argument on the build-it-yourself page.
At a glance
| Opyt | Hermes Agent + cron | |
|---|---|---|
| Relationship | An MCP server Hermes can call | An MCP client that hosts Opyt |
| Scheduler | A background job that pulls between sessions | Natural language, intervals, 0 9 * * *, ISO timestamps |
| Logged-in browser | The X and Substack ingesters read your own session | Browserbase, Browser Use, or local Chrome over CDP |
| Built-in memory | 2,830 documents, 115.9 MB, one SQLite file | MEMORY.md 2,200 chars + USER.md 1,375, injected whole |
| Between scheduled runs | The store persists; dedup absorbs a 6-hour overlap | A fresh session; continuity re-injects the job’s own last output |
| Recall over past work | BM25 + cosine over 8,095 vectors | FTS5 over past conversations |
Where Hermes Agent + cron is better
Where Opyt is better
Which one
Run both. Hermes brings the scheduler and the hands, and Opyt brings somewhere for the output to land. The comparison that decides anything is a hand-written ingestion skill against Opyt, both of them inside Hermes, and that argument sits on the build-it-yourself page.
install Opyt free, MIT, five minutes