927tanmay
a day ago
nice one, been looking for something like this. how does it handle a harness updating its file format down the line, do you have to manually track each one's internals or is there a more general way you're detecting sessions?
turblety
8 hours ago
Hey, yeah I have two rules:
1. I don't want to extend the the harnesses in any way, not even hooks/plugins/etc 2. I don't want to poll, ever. It must be system events, file system watches
So I have to basically watch each session file from every harness for changes and derive a state from that.
Most CLI's have a file per process with some stats like the pid, state, is idle or not, etc, which is really helpful.
Each agent has a small provider that knows how that specific harness works, and watches it for changes. e.g. ~/.claude/sessions/{pid}.json
Those registries are small and change much less than transcript formats do.
But yeah, I think this will always be a matter of keeping it up to date.
I would like to retain support for older harness versions as I go.