agentleFS
aradmanamnaoonaradmanamnaoon/vibe-coding-skills/skills/security/input-validation-auditor/SKILL.md

input-validation-auditor

Skill0 starsChanged 18 days agoMITView on GitHub

Audit server-side validation at trust boundaries for shape, type, range, format, size, and semantic constraints. Use for APIs, forms, uploads, imports, or external events.

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 8 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Ensure malformed or adversarial inputs fail safely before reaching business logic or storage.

    line 8
  2. Distinctive:

    Only trusted internal values are moved between already-validated components.

    line 16
  3. Distinctive:

    Read applicable repository instructions before edits.

    line 20
  4. Distinctive:

    Check upload/file size, content type, decompression/parse limits, and collection bounds where relevant.

    line 35
  5. Distinctive:

    Test valid boundary values plus missing, malformed, oversized, unexpected, and semantically invalid cases.

    line 36
  6. Distinctive:

    Verify validation happens before side effects and produces consistent non-sensitive errors.

    line 37
  7. Distinctive:

    Do not rely on client-side validation as a server security control.

    line 46
  8. Distinctive:

    If domain constraints are unknown, separate structural validation from the unresolved business-rule questions.

    line 63

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Purpose

Ensure malformed or adversarial inputs fail safely before reaching business logic or storage.

When to activate

External/user-controlled data enters a server process or persistent model.

When not to activate

Only trusted internal values are moved between already-validated components.

Preconditions

  • Read applicable repository instructions before edits.
  • Preserve unrelated working-tree changes and establish a baseline when the workflow can modify code.
  • Identify which tools and environments are actually available; do not claim unavailable checks ran.

Required inputs

  • Input schemas/contracts
  • Entry points
  • Business constraints and persistence model

Workflow

  1. Enumerate each trust-boundary payload and its authoritative server-side schema.
  2. Compare required/optional fields, types, ranges, formats, lengths, enum values, and unknown-field handling.
  3. Identify semantic constraints that schemas alone cannot express, such as date ordering or cross-field invariants.
  4. Check upload/file size, content type, decompression/parse limits, and collection bounds where relevant.
  5. Test valid boundary values plus missing, malformed, oversized, unexpected, and semantically invalid cases.
  6. Verify validation happens before side effects and produces consistent non-sensitive errors.
  7. Confirm clients and documentation match the server contract.

Relevant tools

Schema validators, API tests, model constraints, documentation.

Safety restrictions

Do not rely on client-side validation as a server security control.

Validation

  • Malformed and boundary inputs are rejected before protected side effects.
  • Valid boundary values remain accepted.
  • Schema/documentation mismatch is resolved or reported.

Expected output

  • Validation matrix
  • Missing constraints
  • Test results
  • Contract/documentation deltas

Failure handling

If domain constraints are unknown, separate structural validation from the unresolved business-rule questions.

Completion criteria

The skill is complete only when every applicable validation item above has observed evidence or is explicitly marked not executed with the concrete blocker. Do not replace missing evidence with confidence language.

Research mapping

This skill was selected from research problems: P017. See research/vibe-coding-problems.md and research/problem-evidence.csv in the Vibe Coding Skills repository.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.