slowlp
← Blog
Story 2026.06.11 · 9 min read

If It Doesn't Pile Up Automatically, You Won't Collect It

CLI only worked at my desk, and remote kept trying to edit my wiki, so I moved to Hermes

Story

I was working on automating how raw data got collected when I typed out a line:

“working on automating raw data, but the stuff from Claude chat looks pretty hard to automate~”

Even when I was talking to the same AI, how hard it was to get that conversation into the wiki depended entirely on where I’d had it. Closing that gap is what this piece is about.

CLI is automatic, web chat is manual

Claude Code (CLI) sessions land in ~/.claude/projects as jsonl in real time. A script grabs only the diffs and it’s done. Zero manual work. When I dumped my whole scattered chat history into the CLI, it was because that channel piles up on its own.

Web chat was the opposite. claude.ai has no API to pull conversations out. You request a zip through [Settings → Export data], wait for the email, download it, and load it in by hand. On top of that, the export doesn’t even say which project a conversation belonged to. A path that needs your hands is a path you eventually stop walking. The best I could do was settle for a monthly export, or just give up on it.

The problem: almost all of my actual thinking happens on my phone and in web chat. The conversations worth keeping were concentrated exactly where nothing piled up automatically.

So change the channel

Instead of straining to drag the export out, just move the conversation to a channel that gets captured automatically in the first place.

“hmm~ so should I connect mobile and the agent to solve this? then it’ll pile up on the PC”

That was the starting point. So I looked at Claude’s remote feature first.

Remote was more of a hassle than I expected

Once I dug in, remote didn’t run in the cloud. Even when I attached from mobile, execution still happened on my own PC’s daemon. So yes, the jsonl does pile up on the PC, which is actually good for automation. But that also means my PC has to stay on, holding that daemon. The moment the laptop sleeps, the session drops. Auth kept expiring too, demanding a re-login every time I tried to attach from mobile.

The thing that really bugged me was something else. When I launched a session from inside the wiki folder, the CLAUDE.md there pushed the agent into “wiki maintenance mode.” I just wanted to sort out a thought, but it kept trying to edit and tidy files. I came to chat and it showed up to work. And mixing chat sessions with wiki-work sessions in the same bucket became noise later when it was time to digest.

Remote control as a format was just uncomfortable. I wanted to toss off a quick line from my phone, but it kept turning into “remotely operating my PC.”

Why not just chat through a messenger

Searching around, I found Hermes. It said you could chat with an agent through a messenger. That was it. Throw a line into Discord, which I already use on my phone, and the Hermes instance running on the server picks it up, reads the wiki, answers, and the conversation gets collected into raw on its own. (How I actually built that loop is written up separately.)

I don’t have to keep my PC on. The server runs 24/7. It’s not remote control — it’s just sending a message.

The OAuth wall, and the workaround

I hit a block right away.

“trying out hermes but oauth doesn’t work ;;; might just have to switch to openai ;”

Turns out Hermes hadn’t implemented Claude subscription OAuth yet. There was only a feature request open; it wasn’t in the code. To use Claude, the only way was to wire it up with an API key instead of OAuth. So that’s the workaround I took to connect Claude. I’d chat, the chat got collected into second, and since it’s an agent it could even digest on its own.

One more snag. Hermes couldn’t do web search. Reading only the wiki, it couldn’t verify things like “is that still true right now?” So I attached a search backend. I picked Tavily: no card required, free up to 1,000 calls a month, plenty for personal use.

Setup was one line: hermes config set tools.tool_search.backend_id tavily. I tripped here once. If you use the short path like tool_search..., it creates a junk key at the top level that gets ignored, so it doesn’t take. You have to set the full path, tools.tool_search..., for it to actually apply.

Once search was on, it became “a chat that’s also automatically collected.” Ask, get an answer that reaches out to the web when needed, and have that conversation pile up as an asset.

In the end the channels split in two

Here’s how I use it now. Code work happens in the laptop CLI; it piles up automatically anyway. Thinking and idle chatter go through Hermes (Discord): throw a line from the phone and the server picks it up. The entrance split itself by intent.

Before deciding where to throw a thought, I check whether it gets collected automatically. If it’s manual, I won’t gather it in the end. CLI and remote both got stuck right there. A single entrance where one line from the phone piles up on its own is what turned scattered conversations into an asset.

From the project
Hermes LIVE
Thoughts dropped into Discord automatically accumulate in the second brain.
View →
COMMENTS