- Home
- Skills
- Testing & Debugging
- Negatives
Works with the AI Agents you already use
Negatives
Negative-first development for Claude Code: red-team features, approve invariants, then test before implementation.
Free
Negatives
Example session with this skill installed
/negatives Implement a FastAPI endpoint: POST /tasks/{task_id}/link-email
Request body: {"email_id": "<id>"}
Fetch the email from MongoDB, copy subject, sender, and receivedAt into the task as _sourceEmail, and return the updated task. Use async Motor and pytest. Documents have tenant_id, and JWT middleware puts user info on request.state.
- Read your context and instructions
- Compiled the negatives
Recorded evaluation: linking an email to a task
This is a summary of the recorded evaluation, not a verbatim agent transcript or a new execution.
Adversarial pass and human checkpoint
The skill run identified 27 failure modes and selected 9 invariants. The read-only red-teamer examined risks such as cross-tenant reads and writes, malformed identifiers, missing records, schema drift, database failures, MongoDB operator injection, and mass assignment through unexpected body fields. The workflow paused for human approval before writing implementation.
Executable test fence
The run ledger records a clean pre-implementation red check and 36 final green negative tests. Tests included pinned error contracts, assertions that rejected requests performed no write, no-leak checks on database failures, and property-based malformed-input coverage.
| Measure | Without skill | With skill |
|---|---|---|
| Hidden 15-case key | 16/30 | 19/30 |
| Tests | 11 | 36 |
| Both tenant-isolation checks | Covered | Covered |
What the evaluation taught us
The treatment identified MongoDB operator injection and mass assignment beyond the hidden answer key. It also identified concurrent duplicate requests and read-then-write races but silently deferred them, so both scored zero in that run.
The current skill now exposes every deferred finding at the checkpoint and requires an explicit human decision before deferring write-path idempotency and race-condition invariants. The recorded result predates that correction; it does not prove those gaps are now solved in every run.
Next steps in your project
Review the invariant table and deferred list. After approval, the agent writes tests and proves they fail for the intended reasons, implements until green, runs the full suite, and logs the result. Use /negatives-retro later to inspect append-only compliance and whether a controlled sabotage is caught.
Source and complete evaluation protocol: https://github.com/suryavbhat20/Negatives/blob/main/eval/eval-pack.md
Connects securely to your tools. The creator never sees your data.
About this skill
Build against explicit failure cases
Negatives is a negative-first development workflow for Claude Code. Before implementation, it examines how a feature could break, leak data, or be abused, then turns approved safety and correctness properties into executable tests.
How it works
- Red-team the spec: a read-only agent grounds itself in your repository and identifies 15–30 failure modes across inputs, security and tenancy, concurrency, dependencies, data integrity, scale, and LLM risks when relevant.
- Approve the invariants: review 5–10 priority properties and the complete deferred list. You decide what gets deferred.
- Prove the tests: write negative tests first and verify that they fail for the intended reason.
- Implement inside the fence: implement until the negative suite and full test suite pass. Tests must not be weakened, skipped, or deleted to get to green.
- Track results: log runs and use the included negatives-retro skill to audit test history and whether the fence detects regressions.
Tenant isolation is mandatory for tenant-scoped features. Write-path idempotency and concurrency risks require an explicit human decision before deferral. Python guidance uses pytest and Hypothesis; other stacks map the same workflow to their own tools.
What is included
Main SKILL.md, the read-only red-teamer agent, negatives-retro, installation instructions, MIT license, and the evaluation protocol with recorded results. Follow INSTALL.md to place the companion agent and retro skill in the correct Claude Code directories.
Evaluation
One recorded A/B comparison on a FastAPI/MongoDB ticket scored 16/30 without the skill and 19/30 with it against a hidden 15-item key, with 11 versus 36 tests. The treatment also identified MongoDB operator injection and mass assignment outside that key. It exposed silent deferral of race conditions, leading to an explicit deferral checkpoint. This is a single comparison, not a general reliability guarantee.
Usage
Run /negatives followed by a feature description. Review and approve the invariant checkpoint before tests or implementation begin. Run /negatives-retro later to evaluate the test fence. Intended for new features, endpoints, jobs, and modules; bug fixes and refactors are outside the main skill's scope.
What's included (2 skills)
negatives
Negative-first development — red-team a feature before implementing it, distill failure modes into invariants, write failing negative tests, then gate implementation on that suite. Whenever the user asks to implement, add, build, or create a new endpoint, feature, background job, or module — including a pasted requirement or Jira ticket (e.g. PROJ-123) — OFFER this skill with one yes/no question before writing any implementation code; never start it without the user's yes. Runs immediately when the user types /negatives or says "negatives", "red team this", "edge cases first", or "what could go wrong". Not for bug fixes or refactors.
negatives-retro
Scorecard for the negative-first workflow. Audits how /negatives is performing — reads the cross-project run ledger, checks git history for deleted or weakened negative tests, probes whether the test fence has teeth, collects regression catches and escaped bugs, and emits a verdict. Use when the user says "negatives retro", "audit the fence", "is the negatives skill working", or asks to evaluate negative tests or the negatives skill in a project.
How to use
- 1
Connect your agent to the Agensi MCP
Copy the prompt and paste it into Claude, ChatGPT, Cursor or any agent that supports MCP. It sets up the connection for you. Manual setup
- 2
Sign in to Agensi
Your agent shows a sign-in link. Sign in and click Allow.
- 3
Ask for what you need
Your agent loads this skill and uses it on your task. It always asks before any payment.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill passes our trust checks below.
Security scanned
Passed our 8-point scan before listing
Fresh listing
Recently published to Agensi
Free forever
No account required to browse
Trust & safety
Security scanned
Verified clean today
- Free to download with an account
Requires