ProtectPolicy outcomes

Policy outcomes

Monitor, Warn, Block, Policy Profiles, Controls, Detectors, Signals, and surface capability labels.

AgentKeeper policy should answer three questions in order:

  1. What happens.
  2. Where it applies.
  3. Why it happened.

Outcomes

OutcomeWhat happensAgent or user visibility
MonitorThe action proceeds and AgentKeeper logs the event silently.No warning is shown.
WarnThe action proceeds and AgentKeeper logs a warning.Advisory context is shown where the surface supports it.
BlockThe action is prevented before it reaches the tool or server.Remediation is returned where the surface supports it.

Allow or Pass means nothing matched policy, or the event was logged as clean activity. It is not a policy response admins configure.

Policy language

TermMeaning
Policy ProfileAssignable configuration for Base Policy, groups, or repositories.
ControlDeterministic restriction, such as a blocked tool, command, path, domain, or MCP server.
DetectorRisk category AgentKeeper can recognize, such as credential exposure or prompt injection.
SignalThe concrete check or evidence source that explains why a detector matched.

Policy Packs still exist as the internal packaging layer behind Policy Profiles. In the product, start with Policy Profiles unless you are debugging pack resolution.

What is a signal?

A signal is optional detail inside a detector. It explains the exact check that matched without exposing regexes or implementation internals by default.

Compact signal detail should include:

FieldExample
What it checksLooks for cloud credential formats in prompts, files, and tool output.
Example evidenceAKIA...REDACTED
Where it runsClaude Code, Codex, MCP Gateway
Possible outcomesMonitor, Warn, Block, or Audit only

Admins usually configure the detector response. Signals are for explainability when a detector matched or when a custom detector is being tested.

Surface capability labels

LabelMeaning
Can blockThis surface can prevent supported actions before they run.
Warn advisoryThis surface can show advisory context while allowing the action.
Audit onlyThis surface can log evidence but cannot interrupt the action.
PartialThis surface supports only part of the configured behavior.
UnavailableThis surface does not support this control today.

When capability is partial or audit-only, the UI should say that before an admin configures the policy. Do not assume Warn or Block works the same way across Claude Code, Codex, Cursor, Windsurf, Copilot, Gemini CLI, Browser Extension, and MCP Gateway.

Verification

After changing a policy, verify it from the surface that will run it:

  1. Use the setup or health check for that integration.
  2. Trigger a safe Monitor or Warn test where available.
  3. Trigger a documented Block test only after the admin expects blocking.
  4. Confirm Activity or Investigations show the outcome, surface, detector or control, and optional signal detail.