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.
git clone --depth 1 https://github.com/pekral/cursor-rulesWrote 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.
[](https://agentmods.dev/rules/pekral/cursor-rules/dynamodb)<a href="https://agentmods.dev/rules/pekral/cursor-rules/dynamodb"><img src="https://agentmods.dev/badge/rules/pekral/cursor-rules/dynamodb/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.
<a href="https://agentmods.dev/rules/pekral/cursor-rules/dynamodb"><img src="https://agentmods.dev/badge/rules/pekral/cursor-rules/dynamodb.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00856 |
| Opus 5.5 | $0.00000 | $0.00342 |
| Sonnet 5.5 | $0.00000 | $0.00171 |
| Haiku 4.5 | $0.00000 | $0.00086 |
Grade A, and why
dynamodb 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.
How it starts
The opening of the file, as written. The whole thing — 67 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Laravel DynamoDB
Scope
Apply these rules whenever the project integrates with DynamoDB — via the baopham/laravel-dynamodb package, a DynamoDB-backed Eloquent model, a custom DynamoDB query builder, or the AWS SDK called directly from PHP.
Core Principle
- Every read must target a key.
Scanis the slow, expensive default and must never be the access pattern for production code paths. - Treat every change to a DynamoDB query builder, repository, or any code that issues DynamoDB requests as a place that may silently introduce a
Scan. - A missing partition key turns the call into a
Scaneven when aFilterExpressionis present — filters run after the read and do not replace a key condition.
Required Access Patterns
GetItem/BatchGetItem— single-item or known-keys reads.Querywith a partition key (and optionally a sort key) — collection reads inside one partition.Queryagainst a Global Secondary Index (GSI) — non-primary-key access patterns. Pass the index name to the query (->index('status-createdAt-index')withbaopham/laravel-dynamodb;IndexNameinQueryInputwhen calling the AWS SDK directly).Scanis allowed only for explicit, documented offline/admin tasks (one-off backfills, maintenance scripts) — see the Review Checklist below for the justification requirement.
Reject patterns that omit a key:
Model::all(); // full scan
Model::where('status', 'active')->get(); // scan if `status` is not the PK / GSI hash
Model::whereNotNull('email')->first(); // scan
Prefer patterns that target a key:
Model::find($id); // GetItem
Model::where('userId', $userId)->get(); // Query on PK
Model::index('status-createdAt-index') // Query on GSI
->where('status', 'active')
->get();
Review Checklist
For every PR that touches DynamoDB code, reviewers must verify:
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.
- 1mo ago First seen · 67 lines · 0 tokens per session scan A f518feb520bc
dynamodb is a cursor rule published in the GitHub repository pekral/cursor-rules (11 stars, last pushed 13d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 856 tokens. 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-31.
Other cursor rules, from other repositories
owl-admin
A set of project rules for Owl Admin, a Laravel-based framework for building web administration panels. It guides how the project should use its page renderer, controllers, services, menus, permissions, APIs, and code generator.
lerd
Lerd local PHP development environment — use the lerd MCP tools to manage sites, services, workers, and PHP/Node runtimes, and to diagnose slow sites (N+1 and slow queries, request timing, slow routes, profiling) from real traffic.
php
TSF PHP style, namespace rules, SQL formatting, and template formatting.
php
Rules applied when working in PHP files (incl. Laravel, Symfony, WordPress).
sql
Rules for SQL files (queries, migrations, stored procs).
laravel-boost
Cursor rule "laravel-boost" from laravel/locket, covering laravel boost guidelines, foundational context, conventions, verification scripts and application structure & architecture.