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.
npx skills add s977043/river-review --skill laravel-mass-assignmentgit clone --depth 1 https://github.com/s977043/river-reviewWrote 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/skills/s977043/river-review/laravel-mass-assignment)<a href="https://agentmods.dev/skills/s977043/river-review/laravel-mass-assignment"><img src="https://agentmods.dev/badge/skills/s977043/river-review/laravel-mass-assignment/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/skills/s977043/river-review/laravel-mass-assignment"><img src="https://agentmods.dev/badge/skills/s977043/river-review/laravel-mass-assignment.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.00035 | $0.01007 |
| Opus 5 | $0.00017 | $0.00504 |
| Sonnet 5 | $0.00007 | $0.00201 |
| Haiku 4.5 | $0.00003 | $0.00101 |
Grade A, and why
Laravel Mass Assignment and Authorization Review 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 8d 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.
What it actually says
Pattern declaration
Primary pattern: Reviewer Secondary patterns: Inversion Why: mass assignment 脆弱性と認可漏れをチェックリスト型で検査する
Goal / 目的
create($request->all())等による mass assignment 脆弱性(公式がis_admin注入による権限昇格を例示)を検出する。- 更新・削除系コントローラアクションの認可チェック漏れを検出する。
Non-goals / 扱わないこと
- クエリ効率(
laravel-eloquent-nplus1のスコープ)。 - バリデーションルールの網羅性(要件依存のため一律指摘しない)。
- Gate と Policy の使い分けの強制(公式が混在を許容)。
Pre-execution Gate / 実行前ゲート
このスキルは以下の条件がすべて満たされない限りNO_REVIEWを返す。
- 差分にモデルの create / update / fill、またはコントローラの mutating アクションの追加変更が含まれている
- diff コンテキストが利用可能である
ゲート不成立時の出力: NO_REVIEW: laravel-mass-assignment — 対象操作の変更なし
False-positive guards / 抑制条件
$request->all()でも直後に手動フィルタ / 明示カラム指定があれば安全。- CLI / seeder / 内部処理での
forceFill/unguardは、ユーザー入力でなければ脆弱性ではない。 authorize(): trueは認可を controller / middleware 側で実施していれば正当。before()filter(admin 一括許可)がある場合、個別 policy メソッドに admin 分岐がないことを指摘しない。- Gate を使っていること自体は指摘しない(公式が Gate / Policy 混在を許容)。
Rule / ルール
- ユーザー入力からのモデル作成・更新は
$request->validated()/$request->safe()->only([...])を使う($request->all()直渡しを避ける)。 $guarded = [](全 unguarded)でユーザー入力を直接渡していないか確認する。- 更新・削除系アクションに認可(
Gate::authorize/$user->can/canmiddleware / FormRequestauthorize()のいずれか)があるか確認する。 - 複雑・再利用される validation は FormRequest 化を推奨する。
Evidence / 根拠の取り方
- 指摘は
<file>:<line>で差分に紐づけ、公式規約(laravel.com/docs/12.x/eloquent#mass-assignment / authorization)を 1 行で添える。 - 認可が diff 外の middleware にある可能性がある場合は断定せず
questionsで返す。
Output / 出力(短文版の推奨)
コメントは日本語で返す。
- Finding: mass assignment / 認可漏れのどちらか(1文)
- Impact: 権限昇格 / 不正データ更新
- Fix:
validated()/safe()->only()/ 認可追加の最小案
Sources / 出典
- Laravel 12.x — Eloquent (Mass Assignment): https://laravel.com/docs/12.x/eloquent#mass-assignment
- Laravel 12.x — Validation (Form Request): https://laravel.com/docs/12.x/validation#form-request-validation
- Laravel 12.x — Authorization: https://laravel.com/docs/12.x/authorization
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 8d ago First seen · 77 lines · 35 tokens per session scan A cce21ac32548
Laravel Mass Assignment and Authorization Review is a skill published in the GitHub repository s977043/river-review (3 stars, last pushed today), licensed MIT. It adds 35 tokens to every session and 1,007 once invoked, about $0.0002 per session on Opus 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-09-03.
Other skills, from other repositories
php-laravel
Modern PHP 8.2+ and Laravel patterns: architecture, Eloquent, queues, Pest testing. Use when asked to "write PHP", "build a Laravel app", "fix Eloquent query", "add a queue job", "write a Pest test", or mentions PHP, Laravel, Eloquent, Blade, artisan, or migrations.
ia-php-laravel
Modern PHP 8.4 and Laravel patterns: architecture, Eloquent, migrations, queues, testing. Use when working with Laravel, Eloquent, Blade, artisan, or building/testing a framework-based PHP app. Not for php-src internals, standalone PHP libraries, or general PHP language discussion.
craft-provider
Crafting a service provider. The declarative heart of every Laravel package.
craft-middleware
Crafting package middleware. The invisible gatekeepers that guard, transform, and decorate every request.
craft-package
Crafting a package skeleton. The starting template for every Laravel package.
craft-trait
Crafting model traits. The trait-first integration pattern for Laravel packages.