Skip to content
Sprint projectMay 25, 2026Chennai

VeriTool: Safer Agents through Safer Tools

Saurav · Team checkcheckcheck

Submitted to The Secure Program Synthesis Hackathon. Sprint projects are early-stage work by participants, not Apart Research publications.

Agent safety is often discussed at the level of the whole agent, but many practical failures happen at a lower level: the tools the agent is allowed to use. A file reader, SQL wrapper, API caller, or evaluator can each create a very different failure mode. VeriTool explores a simple alternative: instead of treating these tools as trusted infrastructure, synthesize them under explicit contracts and reject unsafe candidates with counterexamples.

Reviews

Judging this Sprint?

Review this project

Your public critique appears on this page without your name. Your private critique is not published; only the Apart team reads it. If you agree below, we share your review with grantmaking.ai (opens in new tab) and the Transformative AI Fund so strong projects can be funded.

Not shown on this page.

Shown on this page, without your name.

Only the Apart team reads this, and funders if you agree below.

Share my name publicly on grantmaking.ai *
Share my private critique with funders *

How much would this matter for AI safety if it worked? How innovative is it? For scores of 4-5: is this actually new to the field, or replicating recent work?

Scoring guide
  1. 1Negligible. No clear problem addressed, or no meaningful novelty.
  2. 2Limited. Addresses a real problem but with a generic or well-trodden approach. Incremental at best.
  3. 3Moderate. Clear problem with a reasonable approach; some novelty in framing or method beyond routine application of existing tools.
  4. 4Significant. Important problem with an original approach, or identifies a neglected problem area. A valuable contribution others could build on.
  5. 5Exceptional. Tackles a critical AI safety problem with a genuinely novel approach, or opens a new research direction. Clear theory of change. You'd be excited to share this with researchers in the area.

How sound are methodology, implementation, and findings?

Scoring guide
  1. 1Seriously flawed. Methodology broken, results uninterpretable, or implementation doesn't work.
  2. 2Weak. Approach has significant gaps: missing validation, flawed experimental design, or incomplete implementation.
  3. 3Competent. Technically solid given the short duration. Methodology makes sense, results are interpretable, limitations acknowledged, work builds toward clear conclusions.
  4. 4Strong. Thorough methodology with convincing validation. Results clearly support conclusions. Immediately useful for future work.
  5. 5Exceptional. Ambitious scope executed rigorously. Surprising findings, novel methods, or unusually robust validation.

How clearly are work, findings, and impact potential communicated?

Scoring guide
  1. 1Incomprehensible. Cannot determine what the project is actually claiming or doing.
  2. 2Hard to follow. Key information buried, missing, or diluted by excessive length. Significant effort to extract main points.
  3. 3Clear enough. Can understand the problem, approach, and results without undue effort. Core content clearly present: problem, method, findings, limitations.
  4. 4Well presented. Easy to follow, well-structured, appropriate level of detail. Target audience would get it quickly.
  5. 5Exceptionally clear. A pleasure to read. Complex ideas made accessible. Could serve as a model for how to present this type of work.

  1. The paper offers a useful idea tightening LLM security by carefully controlling tool access but the current experimentation feels underpowered. The verifier relies on simple regex and AST checks, which limits it to standard test-driven generation rather than true formal CEGIS. Strengthening this work would benefit from solver-backed reasoning (e.g. Z3), and a more diverse tool benchmark, and clearer visualizations to show how repairs differ across models.

  2. Good idea overall and the author is honest about how some gates are strong and some gates just match patterns and could be fooled.

    The gap is that there's only one try per model-tool, so the ranking might no be representative. There are also no trials without the witness hint test, so there's little case to support that the hint is what helped.

    Good next steps can be to run multiple seeded runs, report per-tool verifier strength (and stress the regex/pattern verifiers with new inputs), and to add a retry-without-counterexample part to show the feedback loop is doing work.

    You've got good object-level taste; keep this going!

  3. VeriTool is a strong project that targets an important agent-safety problem: instead of trying to verify an entire autonomous agent, it focuses on constraining the lower-level tools the agent is allowed to use. This is a practical and well-scoped framing, because many real agent failures can arise from unsafe file readers, SQL wrappers, API callers, loggers, maskers, or evaluators.

    The artifact is technically solid. The paper describes a shared counterexample-guided synthesis loop across six micro-tool families: Local Context Reader, Bounded SQL Querier, Safe API Caller, Append-Only Logger, PII Masker, and Compute-Bounded Evaluator. Each candidate tool is checked using AST guards and a bounded verifier, with counterexamples fed back into later attempts. The reported live benchmark is meaningful: four models were evaluated under the same six-tool suite and four-attempt budget, with 15 of 24 tool instances converging and the best model reaching 5 of 6 tools.

    The strongest aspect of the project is that it records the repair trajectory, not just final pass/fail results. Showing the first failure, the counterexample, the next attempt, and the final acceptance or budget exhaustion makes the synthesis process inspectable and helps reveal where models can or cannot use verifier feedback effectively.

    The main improvement area is broader validation. VeriTool is intentionally bounded and micro-scoped, so the claims should stay calibrated to narrow contracts rather than general Python verification or full agent safety. The work would be stronger with more tool classes, more adversarial fixtures, clearer comparison against simpler baselines such as one-shot generation plus tests, and deeper analysis of why specific models fail or repeat mistakes after counterexamples.

    Overall, this is high-quality hackathon work with a clear safety motivation, a real artifact, and a practical verification loop. With broader benchmarks, stronger failure analysis, and more guidance on how to design good tool contracts, VeriTool could become a meaningful contribution for safer agent toolchains.

    Read full reviewShow less
  4. This project introduces a novel perspective on safe tool invocation. Rather than verifying untrusted tools or implementing external guards, the approach generates formal requirements, synthesizes tools that precisely satisfy those requirements, and validates them via a formal verifier. If verification fails, the system utilizes the resulting counterexamples for counterexample-guided repair. To address practical concerns regarding computational overhead and coverage, a caching mechanism is employed to mitigate the high cost of tool generation. Also, managing a list of trusted external (or previously generated) tools and using them for known requirement will mitigate coverage.

Cite this project

@misc{saurav2026veritool,
  title = {{VeriTool: Safer Agents through Safer Tools}},
  author = {Saurav},
  year = {2026},
  month = may,
  note = {Submitted to The Secure Program Synthesis Hackathon, an Apart Research Sprint},
  howpublished = {\url{https://apartresearch.com/sprints/projects/veritool-safer-agents-through-safer-tools-78i9}},
  url = {https://apartresearch.com/sprints/projects/veritool-safer-agents-through-safer-tools-78i9}
}

Build something like this at the next Sprint

AI Collusion Research Sprint · Oct 23 - 25, 2026