@arcanemachine/pi-notify-marker
Pi编码代理运行结束标记文件插件
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:@arcanemachine/pi-notify-marker。 它的用途是:Pi编码代理运行结束标记文件插件 完整的 Skill 内容见:https://321skill.com/skills/arcanemachine-pi-notify-marker/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
'在容器中启动Pi时,设置环境变量PI_NOTIFY_MARKER_DIR=/shared/markers,然后在宿主机上运行watch-and-notify.sh脚本,这样每次Pi完成一轮编码任务后,宿主机都会弹出桌面通知提示我任务已完成。'
介绍
这个Skill解决了在容器环境中运行Pi编码代理时,无法获知它何时完成工作的问题。在实际开发中,开发者经常需要在容器或远程服务器中运行Pi进行自动化编码任务,但由于容器缺乏原生OS通知能力,无法及时知道任务是否结束,导致需要轮询或额外监控手段。
使用方式很简单,你只需要在启动Pi时设置环境变量PI_NOTIFY_MARKER_DIR指向一个宿主机挂载的目录。之后Pi会在每次运行结束时(即agent_settled事件触发时)在该目录下创建名为AGENT_DONE.<唯一后缀>的标记文件,文件内容为当前会话名称或ID。宿主系统运行附带的watch-and-notify.sh脚本,即可通过notify-send发送桌面通知,并自动清理标记文件。
它非常适合需要将Pi部署在容器中又希望获得本地桌面通知的团队或个人。尤其是那些使用Pi进行自动化代码生成、重构、测试,并需要实时了解任务进度的开发者。同时也适用于需要同时运行多个Pi会话的场景,因为标记文件使用唯一后缀避免了并发冲突。
建议在Docker/Kubernetes环境中统一使用此工具,将标记目录挂载到宿主机。需要注意的是,它主要依赖Linux的notify-send和可选的inotifywait,在macOS或Windows上无法直接使用桌面通知功能,但标记文件本身仍可被其他脚本消费。
常见问题
如何设置标记文件的存放目录?
通过环境变量`PI_NOTIFY_MARKER_DIR`指定,例如`export PI_NOTIFY_MARKER_DIR=/host/markers`,然后启动Pi即可。
支持Windows或macOS吗?
标记文件本身可在任何系统上创建,但桌面通知功能仅支持Linux,因为依赖`notify-send`。macOS用户可改用`terminal-notifier`等工具自行适配。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/arcanemachine-pi-notify-marker/raw/index.md 读取 @arcanemachine/pi-notify-marker 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/arcanemachine-pi-notify-marker/raw/index.md(查看排版版本)