safedepslisted
Install: claude install-skill aldegad/safedeps
# Safedeps
Hook registration is performed by `scripts/install/install-safedeps-hooks.mjs`, which is the single channel: it registers `scripts/safedeps-hook-entry.sh pre|post` for `PreToolUse` and `PostToolUse` at the timeout it owns (ARCHITECTURE names the number once). This file used to declare the hook scripts directly in its frontmatter, which no runtime reads as a registration and which drifted from what the installer actually writes — a second description of a registration is a second thing to keep in sync, so there is one now.
Two gates, one skill. Safedeps is an agent security skill backed by Claude/Codex hooks and a local CLI. It is not a Codex plugin bundle unless it is later wrapped with a plugin manifest.
You (the agent) are the primary user — drive both:
- **Install-time gate** — clear every dependency install through an OSV-backed advisory check before it runs.
- **Secret-leak gate** — stop a secret or a real `.env` from being committed (per-repo, local by default).
---
## Install-time gate
The hooks enforce this; you just run `check` first.
- **PreToolUse** blocks an install whose spec is not approved and quotes the exact `safedeps check` to run. On Claude Code it also rewrites an npm install with `--ignore-scripts`, so it runs **inert** until verified; Codex CLI uses detect-and-rollback.
- **Pin the version, or the gate does not run.** The ledger check needs a parseable `pkg@version`. `pip install evil` names no version, so no spec is produced and nothi