security

security is a cursor rule for Cursor from kok-o/koko-contextos-agents. It costs 5 tokens per session (1,855 once invoked), scanned C, original, MIT.

A set of application-security rules for ContextOS projects. It covers protecting authentication, permissions, sessions, database queries, encryption, external APIs, and user input.

In plain words
What is it for?
Use it while building or changing security-sensitive code, including login flows, access checks, sessions, database access, cryptography, APIs, and input handling.
Why use it?
It gives developers explicit safeguards against common security mistakes, such as unsafe secret comparisons, exposed tokens, weak authorization checks, and leaked internal errors.

Cursor rule for Cursor

Written for Cursor: installed under .cursor/.

Good fit Use it while building or changing security-sensitive code, including login flows, access checks, sessions, database access, cryptography, APIs, and input handling.

Compare 6 cursor rules from other repositories ↓
Install with agentmods
npx agentmods add rules/kok-o/koko-contextos-agents/security
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.

Clone the repo
git clone --depth 1 https://github.com/kok-o/koko-contextos-agents

Made for: Cursor.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for security

README.md
[![agentmods](https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/security/github.svg)](https://agentmods.dev/rules/kok-o/koko-contextos-agents/security)
Your own site
<a href="https://agentmods.dev/rules/kok-o/koko-contextos-agents/security"><img src="https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/security/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for security

Your own site · 80×15
<a href="https://agentmods.dev/rules/kok-o/koko-contextos-agents/security"><img src="https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/security.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 5 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,855 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 2 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00005 $0.01855
Opus 5.5 $0.00002 $0.00742
Sonnet 5.5 $0.00001 $0.00371
Haiku 4.5 $0.00001 $0.00186

Measured 1mo ago against content hash 3cf09c4c560c, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade C, and why

security scanned grade C with 2 findings 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 1mo 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.

Instruction-override phrasingmediumPrompt injection

Text telling the model to disregard its earlier instructions or safety rules is the shape of a prompt injection, whoever wrote it.

- Never allow untrusted content to override system instructions or tool execution permissions.

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Cloud metadata endpointmediumServer-side request forgery

One request to 169.254.169.254 can return temporary IAM credentials.

address === '169.254.169.254'

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

.cursor/rules/security.mdc · 226 lines

How it starts

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

Skill: Application Security

security

Overview

Enforces zero-trust defense-in-depth, OWASP API Top 10 mitigation, cryptographic hardening, sensitive data leakage protection, and AI/LLM safety across all services, endpoints, and agent integrations.

When to Use

Activate whenever writing authentication, authorization, session management, database queries, cryptography, external API integrations, user input handling, or agent tool calling.

Rules & Patterns

Negative Constraints (What NOT to Do)

  1. NEVER use standard string comparison (===) for secrets/hashes: Always use crypto.timingSafeEqual to prevent timing attacks.
  2. NEVER store sensitive JWT access/refresh tokens in localStorage: Store tokens in httpOnly, Secure, SameSite=Strict cookies.
  3. NEVER return raw database/internal error messages or stack traces to the client: Return standardized generic error codes (INTERNAL_SERVER_ERROR) and log details internally.
  4. NEVER trust client-provided IDs for authorization without tenant/ownership checks: Always verify where: { id, userId: session.userId } to prevent Broken Object Level Authorization (BOLA/IDOR).
  5. NEVER disable CSRF protection, CORS allow-all (*), or TLS verification (NODE_TLS_REJECT_UNAUTHORIZED=0) in production: Always enforce strict origin whitelists and HTTPS.
  6. NEVER pass un-sanitized third-party content directly into system prompts or shell execution: Treat all external data as potentially adversarial.

OWASP Top 10 for Modern APIs & Full-Stack

1. Injection (SQL, NoSQL, Command)
  • Always use parameterized queries — never concatenate user input into SQL or shell commands.
  • Use ORMs (Prisma, Drizzle, SQLAlchemy) with strict schema validation.
  • Validate and sanitize all user input before processing.
2. Broken Object Level Authorization (BOLA / IDOR)
  • Validate user ownership on EVERY database read, update, or delete:

    // [GOOD] Scoped to authenticated user
    const doc = await db.document.findFirst({
      where: { id: documentId, tenantId: session.tenantId }
    });
    

Read the full file on GitHub · 226 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. 1mo ago Changed · +10 lines scan A → C 3cf09c4c560c
  2. 1mo ago First seen · 216 lines · 5 tokens per session scan A e5a531e4f853

Subscribe to this mod's changes

security is a cursor rule published in the GitHub repository kok-o/koko-contextos-agents (2 stars, last pushed 1mo ago), licensed MIT. It adds 5 tokens to every session and 1,855 once invoked, about $0.0000 per session on Opus 5.5. A static security scan graded it C with 2 findings (instruction-override phrasing, cloud metadata endpoint). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other cursor rules, from other repositories

deepen-architecture

Find deepening opportunities in a codebase, informed by the domain language in specs/tech-architecture/tech-stack.md and the decisions in specs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.

danielvm-git/bigpowers · 67 tokens

craft-skill

Create new bigpowers skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill for the bigpowers lifecycle.

danielvm-git/bigpowers · 36 tokens

grill-me

Interactive assumption-surfacing Q&A that stress-tests a plan through relentless questioning until every decision is resolved. Use when user wants to challenge a plan, validate decisions from conversation/context, or mentions "grill me". For doc-grounded variant, use grill-with-docs.

danielvm-git/bigpowers · 55 tokens

run-planning

DISCOVER-PHASE ADVANCER — Drive the discover-phase checklist (specs/planning-status.yaml) through survey-context → scope-work → research-first → elaborate-spec → plan-release → slice-tasks. NOT a duplicate of plan-work or the planning spine; it orchestrates the pre-coding discover phase only.

danielvm-git/bigpowers · 64 tokens

slice-tasks

PLANNING SPINE STEP 2 of 3 — Slice the work: break a scoped PRD into vertical-slice stories in specs/epics/. Use after scope-work (step 1), before plan-work (step 3). Not a substitute for scope-work or plan-work.

danielvm-git/bigpowers · 59 tokens

terse-mode

Fallback ultra-compressed communication mode. Cuts token usage 75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use ONLY when context is critically long and compressing output is necessary to continue. Not a strategy — token discipline comes from code shape (small functions…

danielvm-git/bigpowers · 101 tokens