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

@pandi-coding-agent/pandi-rename

v0.3.7

Published

Extensión de Pi que agrega un comando /rename al estilo Claude para renombrar la sesión actual y autogenerar un nombre desde el historial cuando no se proporciona uno.

Readme

@pandi-coding-agent/pandi-rename

Dale a la sesión actual un nombre corto y fácil de leer en lugar de un UUID, para que /resume, pi -r y la pista de salida sean más simples de escanear. Si pasás un nombre, se usa tal cual; si llamás /rename sin argumento, resume tu actividad más reciente y lo convierte en uno — un /rename al estilo Claude para Pi.

/rename Refactor auth module   ->  refactor-auth-module
/rename "Hello World!"         ->  hello-world
/rename Café                   ->  cafe
/rename                        ->  (el LLM resume la actividad reciente, p. ej. debug-flaky-test)

/rename frente al /name nativo de Pi

| Qué querés hacer | Usá | | -------------------------------------- | ------------------------------------------------------ | | Fijar un nombre exacto de sesión | /rename <name> o /name <name> (mismo efecto) | | Autogenerar un nombre desde el trabajo | /rename sin argumento — /name no tiene equivalente |

/rename es un superconjunto funcional de /name: apunta al mismo destino (pi.setSessionName) y suma la ruta de autogeneración. Coexiste con /name y nunca lo sobrescribe.

Cada nombre se guarda como un slug: ASCII en minúscula, separado por guiones, sin diacríticos, con un máximo de 4 palabras / 60 caracteres. El nombre actual se muestra como una pastilla de color invertido en el borde superior del editor y como una pista Nombre de sesión: al salir.

Instalación

Desde npm:

pi install npm:@pandi-coding-agent/pandi-rename

Desde este repositorio:

pi install ./extensions/pandi-rename             # global (tu usuario)
pi install -l ./extensions/pandi-rename          # local al proyecto
pi --no-extensions -e ./extensions/pandi-rename  # prueba puntual, sin cargar nada más

Comandos

| Comando | Qué hace | | ---------------- | --------------------------------------------------------------------------------------------- | | /rename <name> | Convierte <name> en slug y lo fija como nombre visible de la sesión (instantáneo, sin LLM). | | /rename | Resume tu actividad más reciente con el LLM en un slug y lo aplica directo, sin diálogo. |

Cómo funciona

  • Autonombre: un subproceso pi -p de una sola pasada resume la parte más reciente de la conversación en un título corto, y luego se lo convierte en slug. Volver a ejecutar /rename a medida que avanza el trabajo reemplaza el nombre por uno nuevo y actualizado.
  • Aislamiento del subproceso: la ejecución de resumen usa --no-extensions --no-skills --no-context-files --no-approve, tiene un timeout de ~12s y usa tu modelo configurado. Podés sobrescribir el binario con PI_RENAME_PI_COMMAND y el modelo con PI_RENAME_MODEL.
  • Fallback determinístico: si el LLM no está disponible (offline, sin API key, timeout), /rename convierte en slug el mensaje de usuario no vacío más reciente (se descarta el slash-command inicial y se corta en límite de palabra). Siempre produce un nombre y nunca queda bloqueado indefinidamente.
  • Pastilla del borde: una capa externa fina del editor sobreescribe solo el render, así que no depende de dynamic-workflows y se compone con la etiqueta de esa extensión como ultracode auto ── <slug> cuando ambas están presentes. El nombre se renderiza en video inverso (fg/bg invertidos).
  • Mismo canal que /name: los nombres se fijan vía pi.setSessionName, así que /resume, el selector de reanudación (pi -r) y /name sin argumentos muestran el mismo slug.

Limitaciones y notas de seguridad

  • Si no hay historial o no queda texto útil, se usa el nombre por defecto session; si setSessionName falla, /rename reporta un error en vez de romper.
  • La línea de salida Nombre de sesión: <slug> (reanudar por nombre: pi -r) solo se imprime en la TUI sobre un TTY, y se mantiene en silencio cuando la sesión no tiene nombre.
  • La pista de salida propia de Pi core (To resume this session: pi --session <uuid>) sigue siendo solo UUID por diseño — --session resuelve rutas/UUID parciales, no nombres. FR upstream para incluir el nombre: earendil-works/pi#6296.

Relacionado

Para instalar el paquete completo de extensiones y skills, instalá la raíz del repositorio.