Independently reviews findings and filters out false positives. Use when consolidated findings need validation against the actual source code. Don't use for reproducing crashes or patching code.
Works with
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionmantis-reviewExecute the skills CLI command in your project's root directory to begin installation:
Fetches mantis-review from google/mantis and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate mantis-review. Access via /mantis-review in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Automate repetitive workflows and reduce manual effort
Example
Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example
Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example
Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
0
total installs
0
this week
307
GitHub stars
0
upvotes
Run in your terminal
0
installs
0
this week
307
stars
| name | mantis-review |
| description | >- Independently reviews findings and filters out false positives. Use when consolidated findings need validation against the actual source code. Don't use for reproducing crashes or patching code. |
Independent Validator. Reviews consolidated findings against active source code to verify validity and filter out noise and false positives.
/mantis-reviewworkspace/findings/ (finding JSON files).workspace/.mantis_state.json (to track current loop pass).code_paths)."status", "reasoning",
"repro_hints", and appends history).workspace/helpers/append_review.py.workspace/findings/ exists with finding files.append_review.py. It must check if a review for the current pass is
already recorded in the finding's history array, skipping the review
update if the last history entry is already "stage": "reviewer" for
the current pass to prevent duplicate history records.Read and evaluate the deduplicated findings against the actual source code of the repository. Assume every finding is a false positive by default. Your job is to disprove the finding using an adversarial stance. Evaluate the claim based ONLY on the code and the raw claim itself. Explicitly ignore the original finder's prose reasoning and justification, as they may be hallucinated.
Execute your validation as follows:
Load Clustered Findings: Read the JSON files in the
workspace/findings/ directory. If the directory is empty or missing,
notify the user.
Source Code Inspection: For each finding, read the file to inspect the
exact files and line numbers listed in code_paths to ensure the finding is
grounded in the actual codebase state. Do not make assumptions about the
validity of a path without inspecting the source code first.
Strict Validation Filtering (Apply the 12 Negative Constraints): Evaluate each finding against these strict criteria. Mark a finding as FALSE_POSITIVE if it violates any of the following rules:
X-Content-Type-Options), missing
authentication on local-only test functions, or hardcoded mock databases
as security flaws.json.loads, parameterised SQL queries, or secure standard
library hashes) but lacks extreme paranoia, mark it as FALSE_POSITIVE./test, /experimental, or /mock.
Code in these paths is sometimes compiled into production targets or
reachable via production endpoints. Do not blindly assume it is safe;
instead, take reasonable measures to trace its usage to confirm whether
it is actually exposed in production.code_paths Strictly: The code_paths field should only
include the exact filename:line_number of the flawed code block. Strip
out any helper files, test harnesses, or correct caller files from
code_paths.row_bytes + 16). If the out-of-bounds access is mathematically guaranteed to reside
entirely within this pre-allocated padding buffer under all execution
paths, mark the finding as a FALSE_POSITIVE (By Design).code_paths exists in the repository, and that
function names, variable names, or line numbers actually exist at those
locations. If references are missing or incorrect, immediately mark the
finding as a FALSE_POSITIVE to prevent downstream agents from wasting
resources on hallucinated bugs.Construct Reproduction Script Hints: For every finding marked as
VALID or PROVISIONALLY_VALID, provide high-signal "repro_hints"
explaining how a reproducer agent can trigger the bug, what inputs or
payload parameters are required, and what crash condition, ASan output, or
functional validation result (e.g., an unexpected HTTP 200 OK) is expected
to confirm the security flaw.
Token-Optimized File Updates: To minimize LLM output tokens, do not
re-emit or manually rewrite the entire JSON object in your output.
Instead, write a reusable helper script (e.g.,
workspace/helpers/append_review.py) during your first finding update. For
all subsequent findings, do not regenerate the script; simply execute the
existing helper script with the new parameters to append the required
fields.
You must append the following to the existing object:
"status" field (one of "VALID", "FALSE_POSITIVE",
"PROVISIONALLY_VALID", or "NEEDS_RESEARCH")."reasoning" field."repro_hints" field (optional for "NEEDS_RESEARCH" or
"FALSE_POSITIVE")."history" array:{
"stage": "reviewer",
"action": "reviewed",
"details": "Determined status as [VALID/FALSE_POSITIVE/PROVISIONALLY_VALID/NEEDS_RESEARCH] because [reason]",
"pass_number": <current_pass_number>,
"timestamp": "<current_iso8601_timestamp>"
}
When complete, notify the user.
Prerequisites
Time Estimate
15-45 minutes depending on use case complexity
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
mantis-review fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
mantis-review fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Registry listing for mantis-review matched our evaluation — installs cleanly and behaves as described in the markdown.
Registry listing for mantis-review matched our evaluation — installs cleanly and behaves as described in the markdown.
mantis-review reduced setup friction for our internal harness; good balance of opinion and flexibility.
mantis-review reduced setup friction for our internal harness; good balance of opinion and flexibility.
Solid pick for teams standardizing on skills: mantis-review is focused, and the summary matches what you get after install.
mantis-review has been reliable in day-to-day use. Documentation quality is above average for community skills.
Useful defaults in mantis-review — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
mantis-review has been reliable in day-to-day use. Documentation quality is above average for community skills.
showing 1-10 of 33