All plugins

agenttrust-seal

Seal a file and verify the seal later, so one Hermes agent can prove to the next that a handoff was not changed. Adds an agenttrust_seal tool (seal, verify) and an /agenttrust-seal slash command. Verify answers SEAL HOLDS, SEAL BROKEN or NO SEAL, with codes 0, 1 and 2, so the receiving agent can stop before it builds on a changed file. Standard library only. Disclosure: no network calls, no credentials, no background process. When sealing it runs one shell command, git rev-parse --short HEAD, in the file's folder to record the commit. It writes one file, <file>.seal.json, next to the sealed file, holding the sha256, size, author name, UTC time, short git commit and the machine's hostname. A seal detects change; it is not a signature and does not prove who sealed the file.

Syrup-Labs-AIToolsv0.2.0Updated 6 hours ago

About

Seal a file and verify the seal later, so one Hermes agent can prove to the next that a handoff was not changed. Adds an agenttrust_seal tool (seal, verify) and an /agenttrust-seal slash command. Verify answers SEAL HOLDS, SEAL BROKEN or NO SEAL, with codes 0, 1 and 2, so the receiving agent can stop before it builds on a changed file. Standard library only. Disclosure: no network calls, no credentials, no background process. When sealing it runs one shell command, git rev-parse --short HEAD, in the file's folder to record the commit. It writes one file, <file>.seal.json, next to the sealed file, holding the sha256, size, author name, UTC time, short git commit and the machine's hostname. A seal detects change; it is not a signature and does not prove who sealed the file.

AgentTrust Seal

A Hermes plugin that proves a handoff was not changed.

One agent finishes a file and seals it. The next agent verifies the seal before trusting the file. If one byte changed, the seal breaks. If there is no seal, verify refuses. It never says "fine" by default.

Who it is for, and why

Agents report success all the time, and nothing checks it. When one agent hands a file to the next (research notes to a writer, a patch to a reviewer, an overnight report to the morning run), the second agent trusts whatever is sitting there.

  • Who: anyone running more than one Hermes agent, a scheduled job, or a handoff between sessions or machines.
  • When: at the moment work changes hands. The finishing agent seals; the receiving agent verifies before it reads.
  • What you get: one of three answers (SEAL HOLDS, SEAL BROKEN, NO SEAL) and a code an agent can act on, so a changed or half-written file stops the chain instead of being built on.
  • Where: in a Hermes chat or the desktop app with /agenttrust-seal, or as the agenttrust_seal tool an agent calls by itself.

This is the first small, free piece of AgentTrust: proof for what AI agents say they did.

What it adds

  • Slash command: /agenttrust-seal seal <file> [author] and /agenttrust-seal verify <file>
  • Tool: agenttrust_seal (action seal or verify, plus path, optional author), so an agent can call it by itself

A seal is a small file next to the original: <file>.seal.json. It holds the sha256, size, author, UTC time, git commit if any, and host. The format matches the shell tool baton-seal, so either one can verify the other's seals.

Results:

Verify saysMeaningCode
SEAL HOLDSFile is unchanged since sealing0
SEAL BROKENFile changed after sealing1
NO SEAL / REFUSEDNo seal, no file, or unreadable seal2

Local only. No network, no keys, no background work.

Check it first (no install)

Where: a terminal on the machine with this folder.

python3 agenttrust-seal/selftest.py

You should see one line starting SELFTEST PASS. Any SELFTEST FAIL line means stop.

hermes plugins validate agenttrust-seal

You should see Validation passed.

Install

Where: a terminal on the machine that runs Hermes. When: after the check above passes. This changes your live Hermes, so do it on purpose.

  1. Copy the folder in:
    cp -r agenttrust-seal ~/.hermes/plugins/agenttrust-seal
    
  2. Turn it on (plugins are off until you opt in):
    hermes plugins enable agenttrust-seal
    
  3. Restart Hermes so it loads the plugin. For the gateway or dashboard, relaunch that process.
  4. In a Hermes chat, type /agenttrust-seal and you should see the usage line.

Use it

/agenttrust-seal seal handoff.md alan
/agenttrust-seal verify handoff.md

Then edit handoff.md and run verify again. It says SEAL BROKEN.

Remove

hermes plugins disable agenttrust-seal
rm -r ~/.hermes/plugins/agenttrust-seal

Files

  • plugin.yaml manifest (declares the agenttrust_seal tool)
  • __init__.py registers the tool and the slash command
  • core.py seal and verify logic, standard library only
  • selftest.py proves hold, tamper caught, missing seal refused

Disclosure

What this plugin does on your machine, in full:

  • Network calls: none.
  • Credentials: none read, none stored. No environment variables required.
  • Background processes: none. It runs only when the tool or the slash command is called.
  • Shell commands: one. When sealing, it runs git rev-parse --short HEAD in the file's folder to record the commit, if the folder is a git checkout. If git is missing, the field is left empty.
  • Files written: one, <file>.seal.json, next to the file being sealed. It holds the sha256, size, author name, UTC time, the short git commit if any, and this machine's hostname. If you share a seal file, you share that hostname.
  • Files read: the file you name, and its seal.

Limits

  • AgentTrust Seal detects a change. It does not prevent one.
  • The seal records a name, not a cryptographic signature, so it does not prove who sealed the file.
  • Anyone who can rewrite both the file and its seal can make a new seal that holds.

Tested on

Hermes Agent 0.22.2 (Linux) and 0.22.7 (Windows). Paths with spaces work, quoted or not.

README from the reviewed commit 66003a3; it updates when the author re-pins.

Developer Mode

Explore built-in Hermes toolsets and actions.

HermesAgent

Developer?

Create a Hermes extension for Desktop or agent workflows.

Developer Section