{"slug":"asyncreview","name":"AsyncReview","vendor":"AsyncFunc AI","tagline":"Code review agent that explores the whole repository and verifies its findings in a Python sandbox instead of reasoning from the diff alone","url":"https://agentboards.org/agent/asyncreview","website":"https://github.com/AsyncFuncAI/AsyncReview","docs":"https://github.com/AsyncFuncAI/AsyncReview","repo":"https://github.com/AsyncFuncAI/AsyncReview","category":"review","execution":["local","sandbox"],"license":"MIT","open_source":true,"pricing":{"model":"byok","summary":"Free and MIT-licensed, run through npx; you supply a Gemini API key and, for private repositories, a GitHub token","from_usd":0,"free_tier":true,"byok":true},"models":{"backbone":["Gemini"],"bring_your_own_model":false,"local_models":false},"protocols":{"mcp_client":false,"mcp_server":false,"openapi":false},"capabilities":{"terminal_exec":true,"browser":false,"multi_file_edit":false,"git_ops":true,"docker_sandbox":false,"multi_agent":false,"headless_ci":true},"context_window":null,"platforms":["macos","linux","windows"],"install":[{"label":"npx","command":"npx asyncreview review --url https://github.com/org/repo/pull/123 -q \"Check for breaking changes\""},{"label":"skill","command":"npx skills add AsyncFuncAI/AsyncReview"}],"benchmarks":[],"tags":["open-source","code-review","recursive","sandbox","github","cli"],"github_stars":459,"metrics":{"stars":459,"pushed_at":"2026-04-27T06:16:00Z","archived":false,"open_issues":12,"latest_version":"0.6.1","latest_version_at":"2026-02-08T03:39:37.674Z","latest_version_url":"https://www.npmjs.com/package/asyncreview","version_source":"npm","checked_at":"2026-10-02T05:04:30.474Z"},"sources":{"readme":"https://github.com/AsyncFuncAI/AsyncReview","install":"https://github.com/AsyncFuncAI/AsyncReview","models":"https://github.com/AsyncFuncAI/AsyncReview","license":"https://github.com/AsyncFuncAI/AsyncReview/blob/main/LICENSE"},"verified_at":null,"adoption":{"score":0.6,"signals":{"npm_weekly":5,"github_stars":457,"hn_mentions_1y":4},"measured_at":"2026-09-21"},"scores":{"panel":5.9,"adoption":0.6,"spread":1.3,"facts":3.5,"board":4.7,"dimensions":{"reliability":5.5,"usefulness":5.8,"cost":7.8,"longevity":4.3},"per_persona":{"amigo":6,"critico":5.8,"profesor":6.5,"inversora":5.3,"jefa":5.5,"hacker":6.3},"community":null},"rank":234,"category_rank":32,"panel_reviews":[{"persona":"juez","persona_name":"El Juez","ai_generated":true,"verdict":"El Profesor's 7 for the grounding loop and El Crítico's 5 for reliability turn on the same interceptor: it is the mechanism and it is the boundary.","scores":null,"evidence":[]},{"persona":"amigo","persona_name":"El Amigo","ai_generated":true,"verdict":"Pick AsyncReview when you want a reviewer you run yourself from one command; pick cubic when you want a hosted bot that shows up on every pull request.","scores":{"reliability":6,"usefulness":6,"cost":8,"longevity":4},"evidence":["https://github.com/AsyncFuncAI/AsyncReview"]},{"persona":"critico","persona_name":"El Crítico","ai_generated":true,"verdict":"It generates Python and executes it, and the only thing separating that code from the rest of the machine is an interceptor inside the same interpreter.","scores":{"reliability":5,"usefulness":6,"cost":8,"longevity":4},"evidence":["https://github.com/AsyncFuncAI/AsyncReview","https://github.com/AsyncFuncAI/AsyncReview/blob/main/LICENSE"]},{"persona":"profesor","persona_name":"El Profesor","ai_generated":true,"verdict":"The loop plans, emits code, executes it, observes and repeats, which grounds every finding in a value the agent actually retrieved rather than one it recalled.","scores":{"reliability":7,"usefulness":7,"cost":7,"longevity":5},"evidence":["https://github.com/AsyncFuncAI/AsyncReview"]},{"persona":"inversora","persona_name":"La Inversora","ai_generated":true,"verdict":"459 stars, a permissive licence and no commercial layer at all, in a category where several funded competitors are spending real money on distribution.","scores":{"reliability":4,"usefulness":5,"cost":8,"longevity":4},"evidence":["https://github.com/AsyncFuncAI/AsyncReview"]},{"persona":"jefa","persona_name":"La Jefa","ai_generated":true,"verdict":"It costs nothing for sixty engineers and it runs unattended, and it wants a model key and a repository token stored wherever it executes.","scores":{"reliability":5,"usefulness":5,"cost":8,"longevity":4},"evidence":["https://github.com/AsyncFuncAI/AsyncReview"]},{"persona":"hacker","persona_name":"El Hacker","ai_generated":true,"verdict":"MIT and it runs straight from npx with no install, but exactly one model provider is documented, so there is no substitution and no routing.","scores":{"reliability":6,"usefulness":6,"cost":8,"longevity":5},"evidence":["https://github.com/AsyncFuncAI/AsyncReview/blob/main/LICENSE","https://github.com/AsyncFuncAI/AsyncReview"]},{"persona":"comediante","persona_name":"El Comediante","ai_generated":true,"verdict":"It reviews issues as well as pull requests, so it can now explain that your bug report was also wrong.","scores":null,"evidence":[]}]}