Blog

What did your Hermes agent install last week? Now you can check.

Your Hermes AI agent installs packages, pulls containers and clones repos on your behalf, and keeps no record. Swytchcode's free Agent Install Monitor keeps one, privately, on your own machine.

Chilarai Mushahary

Co-founder, CTO

Nov 8, 2026

Your Hermes AI agent installs things. A browser library to scrape one site, a mail client to send one email, a dozen npm packages and a dev server to try one framework. Each step makes sense at the time.

A few weeks later you find software you don't remember installing. Why is Playwright here? Where did this Docker image come from? Which repository did the agent clone, and into which folder? Your agent knew at the time. It just didn't keep a record.

At Swytchcode we spend a lot of time watching what agents do on real computers, so we built that record: Agent Install Monitor, a free, open-source Hermes plugin that keeps a private history of everything your agent installs, on your own machine.

Agent Install Monitor

Agent Install Monitor is a free plugin for Hermes. It watches the commands your agent runs in the terminal and keeps a local history of everything it installs.

You use Hermes as usual. Afterwards, in a normal terminal:

$ agent-monitor history

Session sess-8f3a21 [hermes]
Packages
  1. pip      playwright
  2. pip      openai

Time: 2m 13s   Commands: 2

That's the latest session. You can also list every session, open any one of them, or export the whole history:

agent-monitor sessions                       # every session, with dates and counts
agent-monitor session <id>                   # one session
agent-monitor export --format csv            # everything, as JSON or CSV

Each entry says what was installed, with which tool, in which folder, and whether the command worked.

What it notices

  • Packages: npm, pnpm, yarn, pip, uv, poetry, cargo, go, Homebrew, apt, dnf, apk, gem, composer, dotnet, NuGet, Chocolatey, winget and Scoop
  • Containers: Docker and Podman pulls and runs, and docker compose up
  • Repositories: git clone and submodules
  • Tools run without installing: npx, uvx, cargo run, go run
  • Services: systemctl start, brew services start, service start
  • Databases: new databases created with createdb or CREATE DATABASE
  • Installer downloads: curl or wget fetching a .sh, .exe, .pkg, .dmg, .deb, .rpm, .AppImage or .msi

It handles commands chained with && or ; as separate steps, sees through sudo, env and settings in front of a command (sudo apt install ..., NPM_TOKEN=... npm install ...), and treats curl ... | bash as one install, which is what it is.

What it doesn't do

It's a record, not a guard. It doesn't block commands, ask for permission, uninstall anything or roll changes back. Your agent works exactly as before.

It also works from the command text. If the agent installs something in a way it doesn't recognise, such as a custom script, it won't show up. Treat it as a good history, not as a security boundary.

We kept it this way on purpose. A tool that only watches can't break your agent. The plugin is built so that if anything goes wrong while recording, the agent's command still runs as normal.

Local only

The history is a small SQLite database in your Hermes folder (~/.hermes/agent-monitor/monitor.db). Nothing is sent anywhere, there's no account and no telemetry. On macOS and Linux only your own account can open it. Agents sometimes put a token straight into a command, like an install URL with a password in it, so the plugin replaces those with *** before saving anything. The plugin has no dependencies beyond Python's standard library, and it's open source under the MIT license.

Install

On macOS, Linux or WSL:

curl -fsSL https://raw.githubusercontent.com/swytchcodehq/agent-install-monitor/main/install.py | python3

On Windows (PowerShell):

irm https://raw.githubusercontent.com/swytchcodehq/agent-install-monitor/main/install.py | python -

The installer finds the Python that Hermes runs in, installs the plugin there from PyPI (or from GitHub if PyPI isn't available), turns it on, and offers to put agent-monitor on your path. It's safe to run twice. If you'd rather not pipe a script into your shell, the README has the manual steps. It's a short script, so read it first either way.

Why we built it

Agents are getting good at doing things. They're still bad at telling you, a week later, what they did.

An install history is the simplest piece of that. It answers "where did this come from?" in seconds, helps you clean up after an experiment, and shows you what an agent actually needed for a task.

It's one of a few small, free tools from Swytchcode for keeping an eye on your agent. Another, API Key Leak Check, checks whether your agent is leaking your API keys. Swytchcode itself goes a step further: it holds your app keys so your agent never has them, and asks you before anything risky.

If it missed something your agent installed, or you'd like it for another agent, open an issue.

Use any AI coding agent

Give this prompt to your agent and get started.

More from the blog