{"_id":"@cnife/pi-auto-naming-session","_rev":"8-aac2de9bbdb7f3c7d9ea57dd9c20afc9","name":"@cnife/pi-auto-naming-session","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@cnife/pi-auto-naming-session","version":"0.1.0","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.1.0","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"1e027177193ccf90376e665722183d13ba8d6571","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.1.0.tgz","fileCount":2,"integrity":"sha512-9e/3iVjE1rx9P2aqKyd3pdGypqVeijXEqSkausVNplae39/sW3YO+BeEcm3hadbpH7kFbizEvsQxfmCK7NBrew==","signatures":[{"sig":"MEUCIQCcwvLtDF+BvibMEiUosh1Y8r2EKkVA0xUPIWYE7nwdlgIgJSk9B+SMPNNIzqdfnKjE50UZLOS0mJDeBvkFQnea8lE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11691},"gitHead":"fd52eefc68a87039d8f883cfad7313c23825d8d6","private":false,"_npmUser":{"name":"cnife","email":"CNife@vip.qq.com"},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.14.1","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"26.2.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.1.0_1780327074070_0.5295792232197478","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@cnife/pi-auto-naming-session","version":"0.2.0","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.2.0","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"1f2fde8ecacb397926c91e0f9837ad1fdd92951f","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.2.0.tgz","fileCount":2,"integrity":"sha512-RcjY4osd/OiZxx95oRg++4x1fm47DPoi+vkS+1SO/UpJtVBBmEMVHonR/zZ1w1m5cXdS2GUWCU1PSLYo+PfNzw==","signatures":[{"sig":"MEUCIBRxxPk1ej4v6TI70GfLnSmnxMr4O02w3piHF3fKVChiAiEA3S8TYnruyqOy0cy6bA4PN9U1WpELRHYTwJWnMpre0DY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15590},"gitHead":"9d9d738035f5c635f248e4b485a8a7a8f5009873","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.13.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.2.0_1780584501762_0.5299338653393433","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@cnife/pi-auto-naming-session","version":"0.2.1","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.2.1","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"cbff0e77cee3b4469eb5a135be67707ea2dafa6e","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.2.1.tgz","fileCount":2,"integrity":"sha512-EFpnK/d4YwiMP8QS82rr3Wb0+vM9fKsnRhuuyNGSbG8JuZMGXOiBL92mHXZs2RWkUxjBaHJ4xOzA84kBs2oIBg==","signatures":[{"sig":"MEYCIQDebTzDDSZs8ruGSn+EHyKlLJVSn7N13tgGzHmZMugFhAIhAJs88gYWr5jOKQZBnt7s31dqN2O0BlpuSji2oVbGkzGa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13315},"gitHead":"362e2ee267d8ddba4904c826c5ec5737a33cb9d5","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.13.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.2.1_1782135609588_0.5424586031464322","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@cnife/pi-auto-naming-session","version":"0.3.0","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.3.0","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"1527f02d6b1b4d903fd7eedc60585662e7a08bde","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.3.0.tgz","fileCount":5,"integrity":"sha512-Oeju0RjgVaYmWJbe5+mnnfj5eCmJwm1oeohjVU8meR0LAswoA2/zpu01y1WV302jf/kWSoUrtlsHNlYakTIBPg==","signatures":[{"sig":"MEUCIG0xYim1OCAf1VUPKJ7be1dt7nkH5ag/4c5npPsyTV0oAiEAhrLbpStz4wpN1xJYk2/z2CF7U3meBuVMQJRamLxbItI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":18834},"gitHead":"b53419510316c2dc26ca6114f3f629e912fe07e4","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.16.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.3.0_1784106416037_0.765139425280543","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@cnife/pi-auto-naming-session","version":"0.4.0","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.4.0","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"006f0e4e1e449de8626f8ca0c38ca77a120bbf96","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.4.0.tgz","fileCount":5,"integrity":"sha512-tk/1QyrYv7H0UcxzIdJrztg/bBNfQmvz+SXOrAyKIv4LhGS/EMTP7yo257TqatcAqIzhddlClXXdDK4oi3ZLdw==","signatures":[{"sig":"MEUCIAtSG4mHA3j+lE5Rxp8NPxTiWBh2i0Gg8d9Lr/hVwp9TAiEAuPCJ4CPHSVL/lO9Z3nEq44mgwZXzZGzNrf2X9CEUGCA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21231},"gitHead":"7fb2e1513ceff554f6e72a876aa56c9ce55d36f9","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.16.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.4.0_1784644877343_0.24017870649376682","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@cnife/pi-auto-naming-session","version":"0.4.1","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.4.1","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"4703442b6b9d549e191e5868e1c61bc2558ab42d","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.4.1.tgz","fileCount":5,"integrity":"sha512-+DHLB63gr7R/jHAOKNCOwKheuMSztskMGZPRD6+YeipT7iOVhaO/688THSByU98YtCCMLZ5zLkjSZKJNeNlxSA==","signatures":[{"sig":"MEQCIBGgZKDqCtwQcotswpMrlFlahM4ezxqhYMWRD1C9j8quAiByAHx2BegeO0/wt7RBwXUCWnFFsdYR+RIaMgWuMIwCVw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21236},"gitHead":"6e65704ffe17419b3e20f3399665f312cfb0f68f","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.16.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.4.1_1785223272999_0.6382946314281186","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@cnife/pi-auto-naming-session","version":"0.4.2","keywords":["pi-package"],"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","_id":"@cnife/pi-auto-naming-session@0.4.2","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"homepage":"https://github.com/CNife/pi-extensions#readme","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"2ee110003b5a4824cc1883eebc0bfc058473ffbf","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.4.2.tgz","fileCount":5,"integrity":"sha512-T33XPuzIflmhpSCbLgWw4vnJ5WPMEiIBZYNFL1qGNjWAAcQNG7MVbQQuNirwCa97/b1Yet1mLKpL30UM10auXQ==","signatures":[{"sig":"MEUCIEnYerrponmW/+s/iBHPWMdNdaKBVu9yneZt9OMO214xAiEA97dfBMZaiC9Q4IuDLFoOfS0VHJ/CC33TPj6+Zx+3NnM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":22562},"gitHead":"41ac2180d4763719f1ad0700843a49c64bd1ef73","private":false,"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.16.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-auto-naming-session_0.4.2_1785315089448_0.5618181180935906","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"pi":{"extensions":["./extensions"]},"_id":"@cnife/pi-auto-naming-session@0.5.0","bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"dist":{"shasum":"568678346df6ba7b78a4ec1d6128f5dec2042ddf","tarball":"https://registry.npmjs.org/@cnife/pi-auto-naming-session/-/pi-auto-naming-session-0.5.0.tgz","fileCount":5,"integrity":"sha512-MncYWoSnM9dw1vUZ6SQeJXG2a32Bt6KpQpONnRukv+hgxV7b5FL6HTV1Fx3jIekjGDjICQ4wOMXtMi8bSgIaRg==","signatures":[{"sig":"MEYCIQDNhVDhQSD4LuoOn3uesBXtld5MgppkLRsvCWJPOUX1YAIhAO97gNJkLVCKCaZHMWbkmguZKtMzmeq2rCr2YdgPqrbW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFKGQqRNuy73j2NmfTFVdXt8pvrc8w+QOcvQtAUShYY/AiAizV+OSNi9w7TPC9y/QCzCzKI3bIU/aZHn959i6mUUcQ=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@cnife%2fpi-auto-naming-session@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":22562},"name":"@cnife/pi-auto-naming-session","author":{"name":"CNife","email":"CNife@vip.qq.com"},"gitHead":"f2fcb62d33c66b65e15ee4e7197737885511138c","license":"MIT","private":false,"version":"0.5.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"07672b57-cc44-4695-8aed-0f5d8154b4ac"}},"homepage":"https://github.com/CNife/pi-extensions#readme","keywords":["pi-package"],"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"_npmVersion":"11.19.0","description":"Auto-generate and refresh session titles at turn boundaries","directories":{},"maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"_nodeVersion":"24.21.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-auto-naming-session_0.5.0_1790755193509_0.44665985278278986"}}},"time":{"created":"2026-06-01T15:17:53.972Z","modified":"2026-09-30T07:59:53.943Z","0.1.0":"2026-06-01T15:17:54.211Z","0.2.0":"2026-06-04T14:48:21.886Z","0.2.1":"2026-06-22T13:40:09.755Z","0.3.0":"2026-07-15T09:06:56.179Z","0.4.0":"2026-07-21T14:41:17.524Z","0.4.1":"2026-07-28T07:21:13.133Z","0.4.2":"2026-07-29T08:51:29.611Z","0.5.0":"2026-09-30T07:59:53.602Z"},"bugs":{"url":"https://github.com/CNife/pi-extensions/issues"},"author":{"name":"CNife","email":"CNife@vip.qq.com"},"license":"MIT","homepage":"https://github.com/CNife/pi-extensions#readme","keywords":["pi-package"],"repository":{"url":"git+https://github.com/CNife/pi-extensions.git","type":"git"},"description":"Auto-generate and refresh session titles at turn boundaries","maintainers":[{"name":"cnife","email":"CNife@vip.qq.com"}],"readme":"# @cnife/pi-auto-naming-session\n\n在 pi 中自动生成并周期性刷新会话标题，让标题反映对话的全貌。\n\n## 功能\n\n- 首条消息后立即生成初始标题，无需等待 agent 回合\n- 每 N 个 turn 周期刷新，综合整段对话重新提炼标题\n- 手动改名后自动停止覆盖\n- 标题语言可配置\n\n## 安装\n\n```bash\npi install npm:@cnife/pi-auto-naming-session\n```\n\n## 配置\n\n配置文件位于 `~/.pi/agent/cnife-auto-naming-session.json`（`<agent-dir>` 由 `PI_CODING_AGENT_DIR` 决定，默认 `~/.pi/agent`），首次加载时自动生成默认值：\n\n```json\n{\n  \"auto_refresh_turns\": 10,\n  \"model\": null,\n  \"language\": \"english\"\n}\n```\n\n| 字段 | 默认值 | 说明 |\n|------|--------|------|\n| `auto_refresh_turns` | `10` | 每 N turn 自动刷新标题，`null` 禁用自动刷新 |\n| `model` | `null` | 指定模型 `\"provider/modelId\"`，`null` 用当前会话模型 |\n| `language` | `\"english\"` | 标题语言 |\n\n## 使用\n\n- **首标题**：第一条 user message 到达后立即生成（`message_end` 事件），不等待 agent 回合。\n- **周期刷新**：`agent_end` 时统计自上次命名以来的 user+assistant 消息数，达阈值则综合整段对话重新生成标题。\n- **全弧线综合**：每次刷新遍历整个会话分支，收集所有 user/assistant 消息文本喂给 LLM，让标题反映会话全貌而非最近片段。\n- **手动保护**：检测到用户手动改过标题后，停止自动覆盖。\n","readmeFilename":"README.md"}