Arcjet Learning Center

AI agent runtime security and application protection guides

Learn how to secure production AI workflows, enforce agent actions, protect APIs, stop automated abuse, and control resource use inside your application.

159 guides11 topicsUpdated

Start here

Cornerstone guides that set the threat model and control baseline everything else builds on.

AI agent security

What Is AI Agent Runtime Security?

AI agent runtime security enforces policy while an agent is interpreting input, calling tools, accessing data, and taking actions.

12 min read
API security

API Security Best Practices

Authentication, object authorization, input validation, webhooks, abuse controls, and logging for production APIs.

13 min read
How-tos

How do I secure AI agents in production?

Screen inbound text, gate tools and MCP before side effects, and treat observe-only hooks as a diary.

5 min read
Rate limiting

Rate-limiting algorithms compared: token bucket, leaky bucket, sliding window, and fixed window

Token bucket, leaky bucket, sliding window, or fixed window?

20 min read

AI Security

Identity, architecture, and runtime controls for agents that call tools, access data, and take actions.

Explore all 96 guides
Agentic identity

AI Agent Identity and On-Behalf-Of Authorization

On-behalf-of authorization lets an AI agent retain its own identity while exercising limited authority delegated by a user.

20 min read
AI agent security

How to prevent prompt injection in LLM applications

A five-layer defense stack: input screening, instruction and data separation, output validation, privilege limiting, and action gating.

14 min read

How-tos

Short, framework-specific recipes for Eve, Mastra, Claude Agent SDK, OpenAI Agents SDK, LangGraph JS, LangChain Python, and the Vercel AI SDK.

Explore all 13 guides
How-tos

How to screen inbound prompts in Claude Agent SDK

Screen inbound prompts on guardHooks({ inbound }) via UserPromptSubmit. A DENY erases the prompt before the model sees it.

3 min read
How-tos

How to secure Eve MCP connections

Secure Eve MCP and OpenAPI connections with guardApproval() on the connection's approval field.

4 min read
How-tos

How do I secure MCP tools in LangGraph?

Wrap ToolNode with guardToolNode in place — MCP and unwrapped tools run inside it; graph hooks cannot stop them.

5 min read

Web Security

Application-layer guidance for securing APIs, stopping automated abuse, and controlling resource consumption.

Explore all 50 guides
Bot protection

What Is API Abuse? How Bots Exploit APIs

API abuse is the automated or malicious use of valid API functionality in ways that create fraud, cost, disruption, or data loss.

12 min read
Runtime security

What Is Runtime Application Security?

Runtime application security enforces controls in the path of the action, using the application's own context.

10 min read

New & updated

The latest additions and most recently revised guides.

  1. Coding agent securityAGENTS.md is not a security control
  2. Coding agent securityDo coding agent hooks fail open?
  3. Coding agent securityHow do you block personal Claude, ChatGPT, Copilot, and Cursor accounts on work laptops?
  4. Coding agent securityHow do you restrict which AI models developers can use in coding agents?
  5. Coding agent securityHow do you restrict which MCP servers a coding agent can use?
  6. Coding agent securityHow do you secure AI coding agents like Claude Code, Copilot, Cursor, and Codex?

All guides

The complete library, organized by topic.

AI agent security 83 guides

Coding agent security 12 guides

Agentic identity 1 guides

How-tos 13 guides

API security 6 guides

Bot protection 8 guides

Rate limiting 4 guides

Runtime security 9 guides

Application & framework security 15 guides

Security concepts 4 guides

Sensitive data & secrets 4 guides

Security in your code

Put these guides into practice with Arcjet

Arcjet brings bot detection, rate limiting, prompt-injection screening, PII detection, and attack protection into your application code, so the controls these guides describe run in the path of the request.