Codex, Plugin
galvanize
Wake your AI agents when the world moves: event triggers (mail, folders, git, webhooks) that spawn fresh Hermes/Claude/Codex sessions.
Compatibility: Not stated.
Grade B
Minor issues only, no Medium or High. Worth a quick look at the findings below before installing.
Not a guarantee. A hygiene check of the source at the commit shown, not a security audit.
Rescanned at commit e5a11173e915, unchanged since the check below.
PERMISSION_DELETE_FILES NETWORK_NO_FIXED_HOST
Why this grade
- PERMISSION_DELETE_FILES Low
Contains a call that can delete files.
galvanize/autostart.py, line 69
subprocess.run(["powershell", "-NoProfile", "-Command", ps], - NETWORK_NO_FIXED_HOST Low
Makes a network call whose host is not written as a fixed address.
galvanize/hermes.py, line 193
with urllib.request.urlopen(health_url(cfg), timeout=timeout) as resp:
Any High, or two or more Medium findings, give D. One Medium gives C. Low findings or a security Note give B. Each code names a finding behind the letter.
Grades are a hygiene check of the source at the commit shown, on the date checked, not a security audit or a guarantee. The free directory grades are automated. Before release, a PlugVet engineer reviews every paid report and any grade we hold back, including all F grades, against the source code and the evidence we quote.
What was checked
Plain notes from the hygiene checks.
Permissions
Concern
can delete files.
PERMISSION_DELETE_FILES
galvanize/autostart.py, line 69
subprocess.run(["powershell", "-NoProfile", "-Command", ps],
galvanize/autostart.py, line 91
subprocess.Popen(_win_startup_cmd(), creationflags=creationflags, **kwargs)
galvanize/autostart.py, line 95
subprocess.Popen(_win_startup_cmd(),
Show more
galvanize/autostart.py, line 122
subprocess.run(["schtasks", "/End", "/TN", TASK_NAME], capture_output=True)
galvanize/autostart.py, line 123
subprocess.run(["schtasks", "/Delete", "/F", "/TN", TASK_NAME], capture_output=True)
galvanize/autostart.py, line 147
p = subprocess.run(["systemctl", "--user", "enable", "--now", f"{UNIT_NAME}.service"],
galvanize/autostart.py, line 157
subprocess.run(["systemctl", "--user", "disable", "--now", f"{UNIT_NAME}.service"],
galvanize/autostart.py, line 186
p = subprocess.run(["launchctl", "bootstrap", f"gui/{os.getuid()}", str(_plist_path())],
galvanize/cli.py, line 324
shutil.rmtree(dest)
Install and update
Pass
No install-time script found, and dependencies are pinned or absent.
Network
Concern
can reach a host that is not written as a fixed address.
NETWORK_NO_FIXED_HOST
galvanize/hermes.py, line 193
with urllib.request.urlopen(health_url(cfg), timeout=timeout) as resp:
galvanize/hermes.py, line 250
with urllib.request.urlopen(req, timeout=timeout) as resp:
galvanize/serve.py, line 244
with urllib.request.urlopen(url, timeout=1.5) as resp:
Show more
galvanize/sources/imap.py, line 178
msgs = list(box.fetch(criteria="ALL", limit=1, reverse=True,
galvanize/sources/imap.py, line 221
msgs = list(box.fetch(criteria=f"UID {int(anchor) + 1}:*",
galvanize/sources/relay.py, line 60
with urllib.request.urlopen(req, timeout=POLL_TIMEOUT_S) as resp:
relay/worker.js, line 20
async fetch(request, env) {
Secrets
Pass
No read of a credential file or secret environment variable found.
Agent instructions
Pass
No instruction to ignore earlier instructions or to hide a step.
Obfuscation
Pass
No encoded or minified payload found.
Licence
Pass
A licence file is present (LICENSE).
Maintainer activity
Pass
The latest commit is within the last 365 days.
Note
Hygiene check of commit e5a11173e915. can delete files. can reach a host that is not written as a fixed address.
Date and source
Date checked:
github.com
Commit graded: e5a11173e915f5d544ea5344fdd5ef0875ac1b37
This link goes to the original host. PlugVet does not host or check what you download from there, and installing it is your own decision and risk.