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

@maxiaochao/pi-codex-edit

v0.1.5

Published

Pi extension that exposes Codex-style apply_patch for GPT/Codex models with model-aware edit fallback.

Readme

@maxiaochao/pi-codex-edit

A Pi extension that exposes Codex-style apply_patch for GPT/Codex models and keeps Pi's native edit tool for other models.

Install

pi install npm:@maxiaochao/pi-codex-edit

The package registers apply_patch and selects the editing tool from the resolved model configuration:

  • GPT/Codex model with OpenAI grammar support: apply_patch
  • Other models: Pi's native edit

The default allowlist enables all gpt-5.6-* models regardless of provider. Other model families can be added after separate validation by editing the package config.json.

The package does not add a permanent AGENTS rule telling models not to use apply_patch. Only the selected editor tool is active, so the model receives one editing protocol.

What apply_patch does

The tool accepts raw Codex patch text between *** Begin Patch and *** End Patch. It supports:

  • Add File
  • Delete File
  • Update File
  • Move to
  • multiple update hunks with @@ context
  • EOF-oriented insertions

Before writing, it parses the complete patch, resolves paths, rejects workspace escapes and unsafe symlink/parent paths, reads all source files, and computes every update in memory. Only after preflight succeeds does it mutate files. It returns per-file diff details and reports committed paths if a later filesystem operation fails.

Configuration

The package defaults to a model-ID allowlist in config.json: "gpt-5.6-*". Provider does not affect routing. Each entry is a * glob, so this matches every gpt-5.6- variant. The route additionally requires:

model.api = openai-responses or openai-codex-responses
model.compat.supportsOpenAIGrammarTools = true

Edit config.json in the installed package only if you need to change the default allowlist. The package's current implementation keeps both tools registered for session replay and changes only the active tool set on session_start and model_select.

Documentation

  • summary.md: benchmark summary and decision record.
  • codex-edit-explainer.html: self-contained interactive architecture and configuration explainer.

The benchmark found equal final correctness in the fair 20-case comparison, with first editor-call success improving from 85% to 95%. Overall tool-call count and cache-inclusive token use were effectively unchanged, so this package should be rolled out first to GPT/Codex model scopes rather than treated as a universal replacement.