Hermes Agent

Hermes Agent is a personal agent rather than a coding assistant. It drives a real terminal and browser, lives where you already communicate, and is built around continuity: what it learns in one session is available in the next.

Technology

What it is

Hermes Agent is an open source personal AI agent from Nous Research. It runs as a command line tool, a desktop application, and through messaging platforms, is model-agnostic rather than tied to one provider, learns across sessions, and drives a real terminal and a real browser.

The category matters. Most agent harnesses in wide use are coding agents, which is a specific problem with specific affordances: a repository, tests, a compiler, and a clear notion of whether a change worked. A personal agent has none of that structure and a much wider surface, which makes it a harder design problem in several respects.

Personal agents are a different problem

The differences are worth enumerating, because they explain design decisions that look strange if you assume a coding agent.

There is no test suite

A coding agent can check its own work by running tests. A personal agent researching a topic, drafting a message, or booking something has no automatic verification. Correctness is a matter of judgment, which pushes far more weight onto the approval and review mechanisms.

The domain is unbounded

A coding agent works in a repository. A personal agent works across email, calendars, documents, the web, local files, and whatever else you connect. Tool selection quality degrades as the surface grows, which makes scoping tools per task more important rather than less.

Actions are frequently irreversible

A bad code change is reverted with a command. A message sent to the wrong person is not. This shifts the default from act-and-check toward propose-and-confirm for anything that leaves the machine.

Context is personal and long-lived

A coding agent can re-derive most of what it needs from the repository. A personal agent's useful context is preferences, relationships, ongoing situations, and history, none of which can be re-derived. This is why continuity is the organizing concern rather than a feature.

Learning across sessions

The claim that an agent learns across sessions covers several distinct capabilities, and separating them clarifies what is actually hard.

Recalling facts. Preferences, names, recurring details. The easiest form, and the one most systems implement.

Recalling conclusions. Not what was said but what was decided, and why. Much more useful and harder, because it requires distinguishing a conclusion from the conversation that produced it.

Recalling corrections. The things you told it to stop doing. This is where continuity is most noticeable in daily use, because an agent that repeats a corrected behavior is worse than one that never knew.

Resuming work. Picking up a task that was left half-finished, with the reasoning intact rather than restarting.

The design tension throughout is what to keep. Storing everything produces a memory full of noise, and noise degrades every retrieval, so the agent gets worse as it accumulates. Storing too little means the promise is not delivered. The harness layer's recommendation applies: writing to long-term memory should require a reason, and what is written should be reviewable and correctable by the person it is about.

Where it lives

Hermes Agent runs in a terminal, in a desktop application, and through messaging platforms. The messaging surface is the one that changes the character of the tool.

An agent reachable in the chat application you already use is available at the moment you think of something, rather than requiring you to switch to it. For a personal agent that difference determines whether it is used at all: the value of a task assistant collapses if using it is itself a task.

The corresponding cost is the one the perimeter argument describes. A messaging surface means requests arrive from a platform rather than from a keyboard, potentially from a channel with several people in it. The questions of who may send it work, under whose authority that work runs, and what requires confirmation move from implicit to load-bearing. Any deployment on a shared channel should have explicit answers.

Driving a real terminal and browser

Hermes Agent drives an actual terminal and an actual browser rather than only calling APIs. This is a significant capability decision with a clear tradeoff.

The benefit is coverage. Most of what a person does on a computer has no API. Sites without one, internal tools, forms, and applications that assume a human at a keyboard are all reachable by an agent that can drive a browser and are not reachable otherwise. An agent restricted to well-designed APIs is restricted to a small slice of actual work.

The cost is that both are broad, general capabilities of exactly the kind that makes bounding difficult. A terminal can run anything the user can. A browser session carries logged-in credentials for everything the browser is signed into. Neither is a narrow tool with a constrained argument surface, which is the shape that makes tool-level enforcement straightforward.

There is also an injection dimension worth naming. A browser reads web pages, and web pages can contain text addressed to an agent. Content retrieved from a page is data, never instruction, and a system that blurs that line is exploitable by anyone who can publish. The same applies to command output. This is a general property of the execution layer, and browser automation is where it is most exposed.

Model agnosticism in a personal agent

Hermes Agent is model-agnostic, which is worth examining specifically for personal use because the motivations differ from the enterprise case.

The privacy motivation is stronger here. A personal agent's context is personal: messages, documents, calendars, and the accumulated memory of your situation. Being able to point some or all of that at a local model is a materially different privacy posture from having no choice.

The cost motivation is also stronger. A personal agent running continuously, checking things on a schedule and maintaining background work, generates steady usage that is not tied to a business justification. Routing routine steps to a cheap or free model is what makes always-on affordable for an individual.

The connection to Nous Research's own open-weight models is relevant here. An agent from an organization that publishes downloadable weights can be run end to end on artifacts you possess, which is a coherent position rather than a marketing one. It is equally able to use frontier hosted models where those are the better choice, and both should be true at once in a well-built system.

Skills and capability

Hermes Agent supports Agent Skills, the portable folder format for packaging procedural knowledge.

For a personal agent this format fits unusually well, because personal workflows are idiosyncratic. How you want a weekly review structured, what your travel preferences are, how to handle a particular recurring situation, what your writing conventions are. None of this belongs in a product, and all of it is exactly what a skill expresses.

The portability benefit is real for individuals too, not only organizations. Skills written for a personal agent are usable by the coding agent, and by whatever replaces either in two years. The alternative is a set of carefully tuned system prompts that die with the tool.

What always-on changes

An agent that works while you sleep is a genuinely different product from one that answers when asked, and the differences are mostly in what has to be true for it to be safe rather than in what it can do.

Nobody is watching the wrong turn

In an interactive session, a person notices when an agent starts down a bad path and stops it. Background work has no such observer. This makes bounded steps, bounded spend, and repeated-failure detection mandatory rather than advisable, because the alternative to a limit is discovery hours later.

Errors compound quietly

A misunderstanding in an interactive session produces one wrong answer. The same misunderstanding in a scheduled task produces the same wrong answer every day until someone notices, and by then it may be recorded in memory as an established fact. Background work benefits disproportionately from writing results somewhere reviewable rather than acting on them directly.

Interruption becomes a feature

Long-running work needs to be inspectable and stoppable mid-flight. Being able to see what an agent is currently doing, and cancel it without losing everything it has done, is the difference between comfortable delegation and reluctance to start anything long.

Notification design matters more than it should

An always-on agent that reports nothing is opaque. One that reports everything becomes noise people learn to ignore, which is worse, because the one report that mattered is now invisible. The useful default is to surface completions, decisions that needed judgment, and anything blocked, and to keep routine progress available on request rather than pushed.

None of these are specific to one agent. They are what changes when a harness stops being a session and starts being a process, and they are the reason continuous operation is a harder engineering problem than the feature description suggests.

The trust question

A personal agent that reads your messages, drives your browser, and remembers your situation is a concentration of access that deserves explicit thought rather than a shrug.

Four questions are worth answering before deployment, and they apply to any personal agent rather than to this one specifically.

  • Where does memory live. On your machine, in a hosted store, or both. This is the most personal data the system holds and the hardest to remove once distributed.
  • Where do credentials live. An agent acting on your behalf holds tokens for the systems it acts on. Local execution and hosted execution have very different answers.
  • What can it do without asking. The answer should be a short list you could recite, and it should be enforced in code rather than requested in a prompt.
  • What does it send where. Model calls carry context, and context includes whatever it just read. The model choice determines where personal content goes.

The reason to prefer open source for this role is not ideological. It is that these questions have checkable answers when you can read the code, and unverifiable ones when you cannot.

Where it fits in an open stack

Hermes Agent occupies the execution layer as a personal-productivity harness rather than a coding one, which makes it a useful counterweight in this reference.

It demonstrates that the harness layer's responsibilities are the same regardless of domain. Context assembly, tool execution, authority, state, limits, recording, and termination all apply to a personal agent, and several of them are harder there because verification is weaker and actions are less reversible.

It also illustrates the ecosystem shape described in the Nous Portal article: open artifacts with a commercial platform available alongside. The agent is open source and self-hostable. The models are open weights. The platform is a service you may use. Knowing which is which is the distinction the openness test exists to draw.

When it fits

  • Personal productivity rather than coding. Where the work is research, drafting, scheduling, and following up rather than editing a repository.
  • Continuous rather than session-based use. Where an agent that keeps working between conversations is the point.
  • Work that needs a browser. Where the systems involved have no usable API.
  • Privacy-sensitive personal context. Where model agnosticism and self-hosting matter for content you would not send to a third party.
  • Preference for open source in a high-trust role. Where being able to read what the agent does is part of the decision.

Gotchas worth knowing

  • Broad capability needs deliberate bounding. Terminal and browser access are powerful and general. Decide what requires confirmation before deploying rather than after.
  • Web content is untrusted input. Pages an agent reads can contain instructions aimed at it. This is the primary injection surface for a browser-capable agent.
  • Memory accumulates whatever it saw. Including things you would not have chosen to store. Review it periodically and be able to correct it.
  • Messaging surfaces widen who can ask. A shared channel means the authority model needs an explicit answer, not a default.
  • Continuous operation means continuous cost. An always-on agent spends while you are not watching. Budgets and alerts are worth setting up early.
  • Browser sessions carry your logins. An agent driving a signed-in browser can reach everything that browser can. A separate profile with only the necessary sessions is a cheap and effective containment.

How it scores on openness

  • Replaceable. Strong on models. Moderate on the agent, depending on whether skills and memory are portable.
  • Inspectable. Strong. Open source, so the loop, the tools, and the memory handling can be read.
  • Portable. Good for skills. Memory portability is the property to check, since it is the part that cannot be recreated.
  • Bounded. Depends heavily on deployment. Terminal and browser access are broad by nature, so the boundary is whatever you configure.
  • Grounded. Good. Real browsing and real command output are facts rather than recollection.
  • Auditable. Achievable. Self-hosted operation means you can record everything, and whether you do is your decision.

What it is not

Hermes Agent is not a coding harness. It can work with code and it is not organized around a repository, tests, and symbol knowledge the way a coding agent is.

Hermes Agent is not a broker. It runs one agent rather than routing work between several.

Hermes Agent is not tied to Nous Portal. The platform is available and the agent is open source and model-agnostic, so it can run against whatever you point it at, including entirely local infrastructure.

Where to learn more

Primary sources first. Documentation and specifications move faster than any summary, so treat the links below as the authority and this page as orientation.