← kvnw.dev

ProtonCLI exists because Spectre needed a way into my email. That was the real problem. ProtonMail is a strong environment for privacy and security, but from an agent systems perspective it is also a sealed surface. Spectre could not search it, read from it, send through it, or build any meaningful workflow around it because there was no usable interface between the agent and the mailbox.

So I built one. ProtonCLI gave Spectre a command-line layer over ProtonMail through ProtonMail Bridge, with search, reads, sends, folders, and structured output that could actually be used inside a larger system. The important part was not “email in the terminal.” The important part was giving an agent a real way to operate inside one of the most valuable information environments I have.

Making email legible to an agent

The shape of the tool mattered. It was not enough to expose a few commands. Spectre needed something it could reason through reliably: a query language, predictable output, and a model of the mailbox that could be searched and understood instead of just manually browsed. Once the interface had those properties, ProtonMail stopped being a closed destination and started becoming an accessible surface inside a much larger system.

That is where the indexed database and query model mattered. Once email becomes queryable and structured, it stops being just correspondence and starts becoming context. Now an agent can look for the right thread, find what matters, reconstruct why it matters, and use that information as part of a broader workflow instead of treating the inbox like a dead end.

The point was never terminal access by itself. The point was giving Spectre eyes on email.

Why this changed the system

This was one of those projects where the leverage was much larger than the surface area. ProtonCLI is a relatively compact tool, but it changed what Spectre could be. Without it, Spectre had no access to one of the most important streams of information in my life. With it, the system could search mail, read relevant context, draft around that context, and start acting with a much fuller understanding of what was actually going on.

That is the difference between an agent that feels impressive and one that feels useful. Utility comes from access. If the system cannot reach the environments where real information lives, it cannot do much more than gesture at intelligence. ProtonCLI solved that problem for ProtonMail.

Why I care about tools like this

I like projects like this because they change the shape of a larger system. ProtonCLI is not interesting to me as a standalone email client replacement. It is interesting because it turns a previously closed environment into part of an agent’s working world. Once that interface exists, it becomes another durable capability in the kit.

That pattern matters more and more the further I push systems like Spectre. If an important environment does not expose the surface the agent needs, the answer is often to build it. Not for novelty, but because access is what turns intelligence into action.