smart-approve
High-risk-only approval hook with LLM risk analysis, behavior detection, protected-path interception, and decision memory for oh-my-pi (OMP) and pi-agent.
Install
pi install npm:smart-approve
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 2.4.0.
This describes access, not safety — you decide whether it's appropriate for what
the package claims to do.
- Commands — Runs shell commands Spawns processes on your machine.
- 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.
- Tool override — Replaces pi's built-in tools Intercepts built-ins like bash, edit, read or write — sees and can rewrite every use.
- UI — Draws its own interface Renders widgets, footers, dialogs or full-screen views.
What it actually did when run
observedLoaded 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.
Replaces pi's built-in tool: bash.
Every use of that tool goes through this
package instead of pi.
Tools registered bash
Events subscribed session_shutdowntool_call
APIs called registerToolzod.numberzod.number.optionalzod.number.optional.describezod.objectzod.stringzod.string.describezod.string.optionalzod.string.optional.describe
8 calls the source scan did not predict
zod.number · zod.number.optional · zod.number.optional.describe · zod.object · zod.string · zod.string.describe · zod.string.optional · zod.string.optional.describe
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 2.4.0 on 2026-08-02.
Registration-time behaviour under default settings; other configurations may differ.
Reviews
0 publishedSign in with GitHub to write a review, reply, or vote.
No reviews yet — be the first.
More in Guards & policy
- @yevhen.b/pi-preflight — Tool-call approvals and policy rules for Pi.
- pi-thegreataxios-staples — Personal staple extension for pi coding-agent — protected paths
- @tangle-network/tcloud-agent — Agent run-loop primitive over Tangle sandbox transports — runs an AgentProfile against a b…
- @yoseph_23/implannotator — Approval-gated frontend implementation for Pi, combining Implannotator design guidance wit…