May 27, 2026 · 7 min
A daily inbox brief, written by your agent
The thing a personal Hermes box is uniquely good at is running something for you in the background and handing you the result. The classic shape of this is the morning brief: every day at 7am, the agent pulls the things you care about, makes sense of them, and leaves a one-screen summary you can read in the time it takes a kettle to boil.
Here is one way to set it up using inbox triage as the example. The same pattern works for portfolio summaries, calendar digests, news, sports, anything.
What you need
A meraGPT box (the Quickstart covers it), an LLM provider key set up in Hermes ( how to add one; the default gemini-2.5-flash-lite is plenty for triage), and IMAP credentials for the inbox you want looked at. Gmail works with an app password.
1. Teach the agent how to read your inbox
In Hermes, paste your IMAP details into a session and ask the agent to write a small Python helper that fetches unread messages from the last 24 hours. Something like:
I want a Python function fetch_recent(server, user, password, since_hours=24)
that returns a list of {sender, subject, body, received_at} for unread
messages received in the last <since_hours> hours.Hermes will write the function, run it on the box, and promote it into a reusable skill. From now on the agent knows how to look at your inbox.
2. Decide what “triage” means to you
Write the rules in plain English. A useful starting point:
For each new message: - "Urgent" if it mentions a deadline, money, my name, or a real person I've corresponded with before. - "FYI" if it's an automated notification I usually read but don't act on. - "Skip" if it's a newsletter, promotion, or noise. Output: a markdown list grouped by category, urgent first, with a one-sentence summary of each message and the sender's name.
Ask Hermes to save this as a skill called triage_inbox. Run it once manually to make sure the output looks right. Tune the rules until it does.
3. Schedule it
Open the CRON tab in Hermes and add a new job:
name: morning_brief
when: 0 7 * * * (every day at 7am, box timezone)
prompt: Use the fetch_recent skill on my IMAP account to get the last
24 hours of mail. Run triage_inbox on the result. Reply with
the triaged markdown and nothing else.Hermes runs the job in the background and stores the result as a session you can read in the dashboard.
4. Deliver it where you actually look
Reading it in the Hermes dashboard works but it’s not where you want to be at 7am. The two deliveries people actually stick with are Telegram and plain email. If you’ve set up the Telegram gateway already, just append “send the result to my Telegram” to the cron prompt and it lands in the same thread as the rest of your chats. If you’d rather have it in email, ask Hermes once to write a small SMTP helper; the agent picks the skill up from memory after the first run and you can add “email me the result” to every future job.
5. Refine over a week
The first few briefs will be a bit off. That’s the point. Read each one, tell Hermes what you’d have categorised differently, and ask it to update the triage skill. The whole reason to host the agent rather than open a chat tab each morning is that this loop happens in one place, with memory of every previous correction. After a week the brief is yours.
Cost
With Gemini Flash Lite on OpenRouter, a hundred-message triage costs roughly a tenth of a cent per run. That’s about 30 cents a month for a daily brief. The $7 meraGPT fee covers the always-on box that lets the cron actually fire.
Adapt it
Same shape works for plenty of other things. A portfolio brief at market open. A news digest at lunch. A calendar wrap-up at 6pm. Swap the IMAP fetch for an arXiv RSS reader, a price watcher, or your own API and the rest of the recipe is unchanged. The official Hermes docs go deeper on the skill format and cron internals.