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

@normful/pi-auto-name

v1.0.2

Published

Auto-generates names in your language for Pi sessions, tmux windows, herder panes/tabs, zellij panes/tabs so you can easily view what each Pi is doing

Downloads

234

Readme

@normful/pi-auto-name

根据对话自动为你的 Pi 会话和终端复用器表面命名。

支持重命名包含 Pi 的 herdr 面板或 herdr 标签:

也支持重命名包含 Pi 的 tmux 窗口:

并且支持重命名包含 Pi 的 zellij 面板或 zellij 标签:

也支持多种语言,例如日语:

支持的所有语言:English、Español、Deutsch、Français、Italiano、Nederlands、Português、Bahasa Indonesia、Tiếng Việt、Türkçe、Polski、Українська、فارسی、العربية、हिन्दी、简体中文、繁體中文、日本語、한국어、ไทย

安装

pi install npm:@normful/pi-auto-name

使用方法

该扩展完全自动,无需运行任何内容。

配置一次,即可完成。设置后无需再管。

工作原理

在第一次用户输入(或第一个 agent_settled 事件 — 见下方配置)之后,它会重命名 Pi 会话,并重命名包含的:

  • tmux 窗口
  • herdr 面板和 herdr 标签
  • zellij 面板和 zellij 标签

此外,你还可以通过配置 reRenameEveryNTurns 来让扩展在对话进行过程中持续重命名。

配置

将配置保存到以下位置:

  • 全局:~/.config/pi-auto-name/config.json(遵循 XDG_CONFIG_HOME
  • 项目级覆盖:.pi/pi-auto-name.json

完整默认配置:

{
  "enabled": true,
  "initialRenameTrigger": "first-input",
  "language": "en",
  "namingContextDepth": "recent-user-messages",
  "namingModel": "",
  "namingStyle": "natural",
  "replaceExistingName": "always",
  "reRenameEveryNTurns": 0,
  "respectExternalRenames": true,
  "sessionNameMaxLength": 200,
  "skipSessionNameDedup": false,
  "surfaces": {
    "renameHerdrPane": true,
    "renameHerdrTab": true,
    "renamePiSession": true,
    "renameTmuxWindow": true,
    "renameZellijPane": true,
    "renameZellijTab": true
  },
  "windowNameMaxLength": 30
}

每个配置键都是可选的。

配置参考

| Key | Type | Default | Meaning | | --------------------------- | --------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | enabled | boolean | true | false 完全禁用此扩展。 | | initialRenameTrigger | string | "first-input" | 第一次重命名触发时:"first-input" — 发送第一个提示后"first-agent-settled" — 第一次 LLM 运行完成后(在第一个 agent_settled 事件之后)。 | | language | string | "en" | 可选值:enesdefritnlpt/pt-BR/pt-PTidvitrplukfaarhizh/zh-CN/zh-Hanszh-Hant/zh-TW/zh-HKjakoth | | namingContextDepth | string | "recent-user-messages" | 每次重命名提示发送给 LLM 的对话量:"first-user-message" — 仅第一条用户消息"recent-user-messages" — 第一条用户消息加最后 3 条用户消息"full-conversation" — 完整对话(用户、助手、工具调用和结果),限制约 60k 字符,保留开头(核心意图)和最新尾部 | | namingModel | string | "" | 重命名 LLM 调用的 provider/modelId 覆盖。示例:"openrouter/nvidia/nemotron-3-nano-30b-a3b:free"。留空以使用配置的 Pi 默认模型和提供者。 | | namingStyle | string | "natural" | 两种名称使用的命名风格:"natural" — 自由形式句子"slug" — 小写连字符格式。"topic-project"<topic>|<project>,项目从当前工作目录派生 | | replaceExistingName | string | "always" | 何时覆盖现有 Pi 会话名称、tmux 窗口名称、herdr 面板/标签名称、zellij 面板/标签名称:"always" — 始终覆盖"never" — 从不覆盖 | | reRenameEveryNTurns | integer | 0 | 每 N 轮重命名(每个 agent_settled 事件)。0 表示从不重命名。 | | respectExternalRenames | boolean | true | 当 true 时,在检测到外部重命名后禁用此扩展的重命名功能(例如手动运行 /name 后)。 | | sessionNameMaxLength | integer | 200 | Pi 会话名称的最大字符限制。 | | skipSessionNameDedup | boolean | false | true 跳过在重命名提示中发送现有 Pi 会话名称。false(默认)发送最多 15 个现有会话名称以避免重复。 | | surfaces.renamePiSession | boolean | true | false 禁用 Pi 会话重命名。 | | surfaces.renameHerdrPane | boolean | true | false 禁用 Pi 运行的 herdr 面板重命名。 | | surfaces.renameHerdrTab | boolean | true | false 禁用此进程运行的 herdr 标签重命名。 | | surfaces.renameTmuxWindow | boolean | true | false 禁用此进程运行的 tmux 窗口重命名。 | | surfaces.renameZellijPane | boolean | true | false 禁用此进程运行的 zellij 面板重命名。 | | surfaces.renameZellijTab | boolean | true | false 禁用此进程运行的 zellij 标签重命名。 | | windowNameMaxLength | integer | 30 | 每个终端/框架窗口名称的最大字符数(herdr 面板/标签、tmux 窗口、zellij 面板/标签)。两个长度调节旋钮之一。 |

调试

设置 PI_AUTO_NAME_DEBUG=1,扩展将在会话转录中追加结构化的 pi-auto-name:debug 条目并在 TUI 中渲染它们。(调试条目不会发送给 LLM。)

灵感来源

本扩展受以下类似扩展的启发: