Skip to content
Back to skills

Guardrails

ASecurity

How AgentGuards enforces its guardrails in Codex — fully automatic, via hooks, with nothing for you to call. Load this if asked how AgentGuards works, whether you need to screen something yourself, or why no agentguards check_input / authorize_action tools are available.

  • 4 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 19, 2026
ai-agentsshellbashrailsapi

Works with

  • api
  • mcp

Security analysis

A100/100

Scanned October 1, 2026

npx -y skills add alelaguard/agentguards-plugins --skill guardrails --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Guardrails?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Guardrails
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/alelaguard-guardrails-0161dfb9/badge)](https://www.skillsdirectory.com/skills/alelaguard-guardrails-0161dfb9)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: guardrails
description: How AgentGuards enforces its guardrails in Codex — fully automatic, via hooks, with nothing for you to call. Load this if asked how AgentGuards works, whether you need to screen something yourself, or why no agentguards check_input / authorize_action tools are available.
---

# AgentGuards — enforced by hooks

This plugin has no MCP server, so there is no `check_input`, `authorize_action`
or `health_check` tool — do not look for them, they are not installed.

That is not reduced protection. The hooks in `hooks/hooks.json` enforce
deterministically, on every request, whatever the model does:

- **`UserPromptSubmit`** screens every prompt before you see it.
- **`PreToolUse`** authorizes every shell command before it runs: denied, or
  allowed, or left to Codex's own approval prompt. For a web fetch (`curl`,
  `wget`, or a web-fetching MCP tool) it first checks the URLs, and denies a fetch
  whose URL carries a secret or targets a blocked destination.
- **`PermissionRequest`** rides that approval prompt: it denies what AgentGuards
  rejects and remembers what the user approved for the rest of the session.
- **`PostToolUse`** scans the output of shell commands that fetch (`curl`,
  `wget`, `http`, `fetch`, `aria2c` — also behind `sudo`, `timeout`, `bash -c`,
  `$(...)`) and of web-fetching MCP tools: instructions hidden in a page are
  removed and you get the rest with a note; a page with a visible attack, or
  sensitive values, is withheld or redacted before you read it. It also scans
  `apply_patch` edits for vulnerabilities and secrets.

Nothing here requires you to call a tool, check a decision, or format a block
message — the hook has already acted by the time you see (or don't see) the
result. If a hook blocks something, reply with its message rather than
composing your own.

**One limit, stated plainly:** Codex's built-in web search runs on OpenAI's
servers, not on this machine, so no hook ever sees its results. Content fetched
with a shell command or an MCP fetch tool is screened; built-in web search
results are not.

To check that the guardrails are on, use the `status` skill. To set the API key,
use the `setup` skill.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.