permission-lens
Purpose
Human-readable permission manifest and risk explanation for any skill.
Runbook
- Run
scripts/inspect.py [SKILL_MD_PATH]to parse a targetSKILL.md. - The script reads the YAML frontmatter and extracts required bins, required env vars,
security_tier, compat matrix, and tags. - Apply L1 / L2 / L3 risk scoring: L1 = read-only (green), L2 = writes to disk or network (amber), L3 = uses credentials or prod systems (red).
- Map each required bin to a risk category such as
curl= network access,sudo= privilege escalation, andrm= destructive file ops. - Output a human-readable permission manifest describing what the skill can read, write, call out to, and what credentials it expects.
- Output a machine-readable JSON manifest for use by
install-skill.shor other install-time tooling.
Stop conditions
- Abort if
TARGET_PATHdoes not exist or is not a validSKILL.mdfile. - Abort if
python3is unavailable. - Abort if the YAML frontmatter cannot be parsed.
Output format
- JSON manifest:
{skill, security_tier, risk_label, bins_risk, env_risk, compat, plain_english_summary} - Console: formatted permission manifest block with color indicators where ANSI color is supported
Example invocations
python3 skills/permission-lens/scripts/inspect.py skills/arch-sentry/SKILL.mdpython3 skills/permission-lens/scripts/inspect.py skills/tf-copilot/SKILL.md --format jsonpython3 skills/permission-lens/scripts/inspect.py skills/aws-cost-watcher/SKILL.md --format text- "Show me the permission manifest for aws-cost-watcher before I install it."