npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@letta-ai/jev-auto

v0.2.0

Published

Approve low-impact Letta Code tool calls with Jev.

Readme

Jev Auto for Letta Code

Approve low-impact tool calls automatically; ask a person about risky or unclear ones.

Install

Requires Letta Code 0.32.12 or newer and your own funded OpenRouter API key.

# After publication:
letta install npm:@letta-ai/jev-auto

# From a checkout, before publication:
letta install ./packages/jev-auto

Provide OPENROUTER_API_KEY in the environment of the process running Letta Code (or its Desktop listener), then start/restart that process. Do not paste the key into a conversation or the mod source. /reload loads the installed mod into an existing session; a restart is needed if its environment changed.

/auto on
/auto status
/auto off

Auto is off by default, scoped to the current conversation, and resets on reload, restart, or conversation close. /auto off restores your underlying permission mode; it does not change that mode. This is a mod overlay, not a new entry in the built-in permission-mode selector. Headless sessions cannot turn it on using a slash command.

In the TUI, auto mode occupies the native footer position beneath the prompt:

⏵⏵ auto mode on (/auto off to exit)

It temporarily replaces the primary statusline while active; disabling it or reloading restores the previous statusline. Narrow terminals omit the exit hint and agent/model details. Desktop/listener still gets the approval behavior but has no mod-panel UI.

Shift+Tab remains the host's built-in permission-mode cycle. It does not turn this overlay off or select auto mode. The host may briefly display its own mode hint after Shift+Tab. Full native cycle integration needs a Letta Code change, not just a mod. Use /auto off to disable the overlay.

Behavior

  • Calls typesafe/jev-1.13 through OpenRouter's Decisions API once per reviewed invocation. No additional model agent or npm runtime dependencies.
  • Jev chooses clear or caution from the actual tool name and arguments. Clear allows; caution, invalid responses, or API failures require human approval. Like Eve, no confidence threshold is applied.
  • Explicit hard denials and host alwaysAsk rules still win. Other mod overlays can still ask or deny. Auto can require approval even in unrestricted mode.
  • Reviews are bound to agent, conversation, call ID, tool, arguments and working directory. Changed arguments at the execution overlay are blocked.
  • Unchanged calls may execute after the host resolves human approval; caution is not an unconditional execution-time denial.
  • Requests time out after 30 seconds, without retries. Pending reviews are in-memory, bounded to 512 per active conversation, and expire after one hour.

Privacy and limits

Every reviewed tool's name and complete arguments are sent to OpenRouter and TypeSafe. This can include commands, file content, source code or credentials embedded in arguments. No conversation history or file content outside arguments is sent. Enable only where that transfer is acceptable. The mod does not request or promise zero data retention. OpenRouter bills your key separately.

This is an experimental risk classifier, not a security sandbox or an authorization check. It does not know user intent, inspect files/scripts a command references, or verify custom tool implementations. Model mistakes and prompt injection remain possible. Keep deterministic deny/always-ask rules for critical operations.

It covers client-side tools passing through Letta Code permission overlays, not server-side tools. The host owns human approval and execution authorization; the permission event has no explicit human-approval receipt. The mod relies on the host reaching execution only after approval. Trusted PreToolUse hooks can rewrite inputs after the execution overlay; the mod cannot police those later rewrites.

Missing call identity, non-JSON/oversized input (64 KiB serialized limit), expired reviews, reloads during approval, or changed arguments may block execution even after human approval. Reissue the call. For unreviewable inputs, disable auto and use normal manual approval mode. Turning auto off over unrestricted mode restores unrestricted execution.

Validate

bun run check
# With OPENROUTER_API_KEY set; makes real, billed classifier requests:
bun run test:live
# With LETTA_API_KEY as well; runs an isolated agent-free CLI conversation:
bun run test:cli

Live classifier tests never execute their synthetic commands. The CLI test executes a harmless printf and checks that a caution-gated fixture tool cannot write its disposable marker without approval. Its test-only adapter calls the same /auto on handler because headless mode has no interactive slash commands. The human-approved execution handoff was also manually tested in the real 0.32.13 TUI using a disposable directory. Electron Desktop remains untested. CLI 0.32.12 supports agent-free mode only for one-shot headless runs, not bidirectional approval tests. These are smoke tests, not an adversarial safety benchmark.

Remove

Disable with letta mods disable npm:@letta-ai/jev-auto, then /reload. Recover from a broken mod with letta --no-mods.

Inspired by Eve's auto approval policy.