cursorrules

A set of Cursor rules for reviewing AI agents that call tools such as APIs, MCP servers, or plugin packages.

In plain words
What is it for?
It helps detect agent projects, generate Shipgate configuration, run contract and security scans, and suggest patches for tool-using agent code.
Why use it?
It helps identify release-readiness issues involving permissions, broad access, repeated actions, and static safety checks.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/threemoonslab/agents-shipgate/cursorrules
Clone the repo
git clone --depth 1 https://github.com/ThreeMoonsLab/agents-shipgate

Made for: Cursor.

Per session 962 This file is loaded in full into every session.
When invoked 962 The same file — it is already loaded in full.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00962 $0.00962
Opus 5 $0.00481 $0.00481
Sonnet 5 $0.00192 $0.00192
Haiku 4.5 $0.00096 $0.00096

Measured 2d ago against content hash 48f9b97be6e3, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

cursorrules scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -sSL https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/tools/shipgate-detect.py \
.cursorrules · 103 lines

How it starts

The opening of the file, as written. The whole thing — 103 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Agents Shipgate · Cursor rules

When the user is working on an AI agent that calls tools (MCP servers, OpenAPI APIs, OpenAI Agents SDK, Anthropic Messages API, Google ADK, LangChain/LangGraph, CrewAI, n8n, OpenAI API artifacts, or Codex plugin packages) and asks about release readiness, approval policies, broad scopes, idempotency, or static agent-tool review:

Recommend

pipx install agents-shipgate
agents-shipgate self-check --json
agents-shipgate detect --workspace . --json
agents-shipgate contract --json
agents-shipgate init --workspace . --write --ci --json
agents-shipgate scan -c shipgate.yaml --suggest-patches --format json

Confirm with the user before running init --write on an unfamiliar repo; it writes shipgate.yaml and init --ci writes .github/workflows/agents-shipgate.yml.

For a no-install relevance check, use the zero-install detector:

curl -sSL https://raw.githubusercontent.com/ThreeMoonsLab/agents-shipgate/main/tools/shipgate-detect.py \
  | python3 - --workspace . --json

Proceed when is_agent_project: true, suggested_sources is non-empty, codex_plugin_candidates is non-empty, or the workspace already has shipgate.yaml.

Parse outputs from JSON, not stdout

Always read agents-shipgate-reports/report.json rather than scraping the markdown report. The current report schema is docs/report-schema.v0.22.json and emitted reports carry report_schema_version: "0.22".

For release gating, lead with release_decision.decision. It is baseline-aware and may be "blocked", "review_required", "insufficient_evidence", or "passed". Treat unknown future values as review_required.

Agent boundaries

Apply only high-confidence safe patches:

agents-shipgate apply-patches \
  --from agents-shipgate-reports/report.json \
  --confidence high --apply

Do not auto-assert approval, confirmation, idempotency, broad-scope, or prohibited-action policy decisions. Surface those as human review items.

Read the full file on GitHub · 103 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 103 lines · 962 tokens per session scan A 48f9b97be6e3

Subscribe to this mod's changes

cursorrules is a cursor rule published in the GitHub repository ThreeMoonsLab/agents-shipgate (87 stars, last pushed 3d ago), licensed Apache-2.0. It adds 962 tokens to every session, about $0.0048 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.