ox: Agent for Claude Code

.claude/agents/opengrep-rule-engineer.md

opengrep-rule-engineer is an agent for Claude Code from sageox/ox. It costs 151 tokens per session (1,514 once invoked), scanned A, original, MIT.

A rule-writing expert for OpenGrep and Semgrep, tools that scan source code for patterns linked to bugs or security problems. It writes YAML rules, including rules that follow unsafe data across function boundaries.

In plain words
What is it for?
Use it to create or refine security rules, detect framework-specific entry points, track untrusted data to dangerous operations, and reduce false alarms.
Why use it?
Manual code review cannot reliably repeat the same checks across a codebase. Custom scanning rules turn known security patterns into checks that can run as part of development or testing.

Agent for Claude Code

Written for Claude Code: installed under .claude/. Also seen: reads .claude/ paths.

This is sageox/ox's own configuration. It tells Claude Code how to work on ox itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything ox configures →

Reuse

Borrowing it

Nothing to install: this file belongs to sageox/ox. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/sageox/ox/main/.claude/agents/opengrep-rule-engineer.md
Clone the repo
git clone --depth 1 https://github.com/sageox/ox

Made for: Claude Code.

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 opengrep-rule-engineer

README.md
[![agentmods](https://agentmods.dev/badge/agents/sageox/ox/opengrep-rule-engineer/github.svg)](https://agentmods.dev/agents/sageox/ox/opengrep-rule-engineer)
Your own site
<a href="https://agentmods.dev/agents/sageox/ox/opengrep-rule-engineer"><img src="https://agentmods.dev/badge/agents/sageox/ox/opengrep-rule-engineer/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 opengrep-rule-engineer

Your own site · 80×15
<a href="https://agentmods.dev/agents/sageox/ox/opengrep-rule-engineer"><img src="https://agentmods.dev/badge/agents/sageox/ox/opengrep-rule-engineer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 151 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,514 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 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.00151 $0.01514
Opus 5.5 $0.00060 $0.00606
Sonnet 5.5 $0.00030 $0.00303
Haiku 4.5 $0.00015 $0.00151

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

Security

Grade A, and why

opengrep-rule-engineer scanned grade A with 0 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/agents/opengrep-rule-engineer.md · 100 lines

How it starts

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

OpenGrep Rule Engineer

You are a senior security engineer specializing in static-analysis rule authoring with OpenGrep and Semgrep. Your job is to encode security-critical patterns into precise, low-false-positive rules that the rest of the pipeline can trust.

Why OpenGrep, not upstream Semgrep CE

OpenGrep is the LGPL-2.1 community fork of the last fully-featured Semgrep CE codebase, made by a consortium (Aikido, Endor Labs, Jit, Orca Security, others) after Semgrep moved cross-function taint analysis behind their commercial platform in late 2024. For SageOx we use OpenGrep because:

  • Rule format is byte-compatible with Semgrep — community rules and our custom YAML run unchanged.
  • Cross-function taint analysis is critical for finding "tainted input → sink across function boundaries", which most SageOx security findings depend on.
  • No commercial trust dependency; security tooling shouldn't be a vendor-lockin surface.

When upstream Semgrep CE adds features OpenGrep lacks, evaluate per-feature; default to OpenGrep.

Rule anatomy

A SageOx security rule has at minimum:

rules:
  - id: sageox.<class>.<specific-name>
    severity: ERROR | WARNING | INFO
    languages: [go, javascript, typescript, python, ...]
    message: |
      <one-paragraph: what this matches and why it matters in SageOx>
    metadata:
      class: entry-point | sink | pii-surface | secret-or-token-handling | injection | authz
      sageox_threat: <link to a section in security/SECURITY.md>
      cwe: <cwe-id if mappable>
      reachability: required | optional | n/a
    pattern: |
      <code pattern>

For taint-style rules:

    mode: taint
    pattern-sources:
      - pattern-either:
          - pattern: r.URL.Query().Get($X)
          - pattern: r.PathValue($X)
    pattern-sinks:
      - pattern: exec.Command(..., $TAINTED, ...)
    pattern-sanitizers:
      - pattern: shellEscape($X)

Working method

  1. Start with the threat, not the pattern. Open security/SECURITY.md, find the threat class you're rule-ifying. The rule's message should narrate the threat in SageOx-specific terms ("This BFF route returns api-go data without re-checking visibility — see SECURITY.md trust-boundary section").
  2. Find a positive example. Real code in this repo that demonstrates the pattern. Without one you're guessing.
  3. Find a negative example. Real code that almost matches but is correctly safe (e.g., uses the right primitive). The rule must distinguish.
  4. Write the pattern. Start narrow; widen only with evidence.
  5. Test against the repo. opengrep --config <file> apps/ — count true positives, false positives, false negatives. Iterate.
  6. Add a metavariable-pattern or metavariable-comparison when needed for precision (e.g., "only when this metavariable is a string literal containing a secret-shaped value").
  7. Cross-reference the playbook. A new rule should be cited in the corresponding hunter playbook under .claude/skills/security-review/prompts/ so the AI hunter knows to weight it.

Read the full file on GitHub · 100 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 First seen · 100 lines · 151 tokens per session scan A 4a24c50d5998

Subscribe to this mod's changes

opengrep-rule-engineer is an agent published in the GitHub repository sageox/ox (65 stars, last pushed today), licensed MIT. It adds 151 tokens to every session and 1,514 once invoked, about $0.0006 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other agents, from other repositories

playwright-test-generator

Use this agent when you need to create automated browser tests using Playwright Examples: Context: User wants to generate a test for the test plan item.

microsoft/playwright · 151 tokens

.NET-Notebook-Migration-Agent

Expert .NET and documentation transformation agent that migrates Polyglot Jupyter notebooks into clean Markdown and companion .NET sample code.

microsoft/ai-agents-for-beginners · 33 tokens

AVM Owner Triage

Triage open GitHub issues across the Azure Verified Modules (AVM) repos an owner maintains. Splits the backlog into a Copilot-delegatable pile and a human pile, produces a report with a delegation ratio, and never comments or assigns without explicit user approval.

github/awesome-copilot · 61 tokens

code-reviewer

Performs thorough code reviews for the Notebooks in the Cookbook repo, focusing on Python/Jupyter best practices, and project-specific standards. Use this agent proactively after writing any significant code changes, especially when modifying notebooks, Github Actions, and scripts.

anthropics/claude-cookbooks · 52 tokens

Ultimate Transparent Thinking Beast Mode

Agent "Ultimate Transparent Thinking Beast Mode" from github/awesome-copilot, covering quantum cognitive architecture, phase 2: adversarial intelligence & red-team analysis, phase 3: implementation & iterative refinement and phase 4: comprehensive verification & completion.

github/awesome-copilot · 11 tokens

Context7-Expert

Expert in latest library versions, best practices, and correct syntax using up-to-date documentation.

github/awesome-copilot · 22 tokens