omp packages

@normful/pi-auto-name2.1.0

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

normful Published 19 hours ago MIT ~699 downloads/mo

Untested on omp

This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.

Did it work for you?

Result

One report per person. A new report replaces your old one.

Reports 0

No reports yet.

Readme

@normful/pi-auto-name

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

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

pi-auto-name herdr screenshot

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

pi-auto-name tmux screenshot

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

pi-auto-name zellij screenshot

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

pi-auto-name 日语重命名截图

支持的所有语言: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 来让扩展在对话进行过程中持续重命名。

配置

配置来源按优先级从高到低排列,各字段分别合并:

  1. 项目级覆盖:.pi/pi-auto-name.json
  2. 全局:~/.pi/agent/pi-auto-name.json(或已配置的 <PI_CODING_AGENT_DIR>/pi-auto-name.json)
  3. XDG: ~/.config/pi-auto-name/config.json (XDG_CONFIG_HOME)

完整默认配置:

{
  "enabled": true,
  "initialRenameTrigger": "first-input",
  "language": "en",
  "namingCase": "title",
  "namingContextDepth": "recent-user-messages",
  "namingInstructions": "",
  "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" 可选值:en、es、de、fr、it、nl、pt/pt-BR/pt-PT、id、vi、tr、pl、、ru, ru-RU, uk、fa、ar、hi、zh/zh-CN/zh-Hans、zh-Hant/zh-TW/zh-HK、ja、ko、th
namingCase string "title" 指导两个 natural 名称的大小写: "title" 或 "sentence",保留专有名词和缩写. 对其他风格及不区分大小写的文字无效.
namingContextDepth string "recent-user-messages" 每次重命名提示发送给 LLM 的对话量:
  • "first-user-message" — 仅第一条用户消息
  • "recent-user-messages" — 第一条用户消息加最后 3 条用户消息
  • "full-conversation" — 完整对话(用户、助手、工具调用和结果),限制约 60k 字符,保留开头(核心意图)和最新尾部
namingInstructions string "" 为所有风格添加模型指令,补充内置提示词. 请保留 WINDOW: / SESSION: 格式. 项目配置中的空文本会清除全局指令. 不影响备用名称.
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.renameHerdrPane boolean true false 禁用 Pi 运行的 herdr 面板重命名。
surfaces.renameHerdrTab boolean true false 禁用此进程运行的 herdr 标签重命名。
surfaces.renamePiSession boolean true false 禁用 Pi 会话重命名。
surfaces.renameTmuxWindow boolean true false 禁用此进程运行的 tmux 窗口重命名。
surfaces.renameZellijPane boolean true false 禁用此进程运行的 zellij 面板重命名。
surfaces.renameZellijTab boolean true false 禁用此进程运行的 zellij 标签重命名。
windowNameMaxLength integer 30 每个终端/框架窗口名称的最大字符数(herdr 面板/标签、tmux 窗口、zellij 面板/标签)。两个长度调节旋钮之一。

手动重命名

不带参数运行 /rename,即可根据当前对话和配置重新生成名称. 使用 /name 直接设置名称.

调试

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

灵感来源

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