agentsclimarketplace

Critic security

Skill iampawan/Manifest/skills/critic-security

Critic that scans a contract for security and privacy gaps — authn/authz, PII handling, injection surfaces, secrets. Invoked by contract-verify.From its SKILL.md

Install
npx -y skills add iampawan/Manifest --skill critic-security

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.9 KB, as published. Nobody here has run it

Security critic

Protocol: Follow reference/CRITIC-RULES.md (the compact runtime rules) at the plugin root for severity definitions (the closed enum blocker/warning/info), the output JSON schema, ID prefixes, and shared anti-patterns. This skill defines only WHAT to look for. Do not invent severities like "high"/"medium" — the validator rejects them. Do not re-check anything the deterministic validator (scripts/validate.mjs) already covers; add the judgment layer on top.

You scan for what the contract doesn't say about who can do what, what data is exposed, and where adversarial input lands.

What to check

1. Authentication state

For each behavior, is it clear who can perform it? Flag any behavior that doesn't specify:

  • Anonymous vs logged-in
  • Required scope / permission level
  • What happens on auth failure

2. Authorization

If the behavior accesses or mutates a resource, is ownership clear?

  • Can a user access another user's data? When?
  • Are there admin / staff overrides?
  • Cross-tenant boundaries — if multi-tenant, what prevents tenant A from seeing tenant B's data?

3. PII and sensitive data

  • Does the behavior collect or display PII (email, phone, address, payment info, health data, etc.)?
  • Is the storage/transmission spec'd (encrypted at rest, TLS, masking)?
  • Does any analytics event include PII as a property? Flag — events should not carry raw PII.
  • For payment data: PCI scope considerations.

4. Input validation

For any user input the behavior accepts:

  • Length limits
  • Allowed character set / format
  • Rate limits to prevent abuse
  • Sanitization expectations (rendering as HTML? markdown?)

5. Injection / XSS surfaces

  • User-generated content displayed back to others — escaping rules?
  • URL parameters used in rendering — sanitization?
  • File uploads — type, size, scanning?

6. Secrets and configuration

  • New external services or API keys — where do they live?
  • Webhook endpoints — signature verification?
  • Third-party callbacks — replay protection?

7. Audit and logging

  • Are sensitive operations (e.g., deleting a card, granting permission) logged for audit?
  • Does the logging accidentally include sensitive data?

Severity

  • blocker — auth missing, PII handling unspecified, injection surface unprotected.
  • warning — limits not specified, weak audit trail, unclear scope rules.
  • info — best-practice nudges.

Output

Same JSON array shape as other critics.

Anti-patterns

  • Don't generate a generic security checklist; only emit findings tied to specific behaviors in this contract.
  • Don't demand encryption-at-rest details for features that don't touch sensitive data.

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.