packages / pi-agent-review
extension Guards & policy

pi-agent-review

A pi coding-agent extension that reviews every tool call and tool output with an LLM reviewer, hard-denies secret access, and gates risky actions behind user approval.

No reviews yet

Install

$ pi install npm:pi-agent-review

Installs from npm into ~/.pi/agent/. Add -l for project-local (.pi/). Manage with pi list / pi update / pi remove.

What this package can reach

Detected automatically from the source at version 0.2.0. This describes access, not safety — you decide whether it's appropriate for what the package claims to do.

  • 🔑
    Credentials — Handles your API keys Reads or passes provider credentials. Highest-trust capability there is.
  • 📁
    Files — Reads files outside your project Touches paths beyond the working directory, such as your home folder.
  • Intercepts tools — Can block or rewrite tool calls Subscribes to tool_call/tool_result/input. Can change a command after you approved the one displayed.
  • 🌐
    Network — Talks to the internet Makes outbound network requests. Check the destinations are ones you expect.
  • 🔧
    New tools — Adds model-callable tools Gives the agent new abilities. Additive and visible, unlike an override.
  • UI — Draws its own interface Renders widgets, footers, dialogs or full-screen views.

What it actually did when run

observed

Loaded in a sandbox with no network, a read-only filesystem and a recording stand-in for pi's API. This is what it called — not what the source suggests it might.

Tools registered request_user_approval

Events subscribed session_startsession_treetool_calltool_resultturn_start

APIs called appendEntrymodelRegistry.getApiKeyAndHeadersregisterCommandregisterMessageRendererregisterToolsessionManager.getBranchsessionManager.getBranch.slicesessionManager.getBranch.slice.mapsessionManager.getBranch.slice.map.filtersessionManager.getBranch.slice.map.filter.joinsessionManager.getBranch.slice.map.filter.join.slicesignal.addEventListenersignal.removeEventListenerui.notify

10 calls the source scan did not predict

modelRegistry.getApiKeyAndHeaders · sessionManager.getBranch · sessionManager.getBranch.slice · sessionManager.getBranch.slice.map · sessionManager.getBranch.slice.map.filter · sessionManager.getBranch.slice.map.filter.join · sessionManager.getBranch.slice.map.filter.join.slice · signal.addEventListener · signal.removeEventListener · ui.notify

Reached through a value the scan could not follow — passed as an argument, stored on another object, or returned by a helper.

Run against version 0.2.0 on 2026-08-02. Registration-time behaviour under default settings; other configurations may differ.

Review before you install. pi packages run with your full system permissions. Check the source, pin versions, and prefer authors you trust.

Reviews

0 published

Sign in with GitHub to write a review, reply, or vote.

No reviews yet — be the first.

More in Guards & policy