news 2026/4/17 22:59:35

使用iFlow CLI通过hook添加任务完成通知(定制你的个性化通知) Windows版

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用iFlow CLI通过hook添加任务完成通知(定制你的个性化通知) Windows版

作者: @遥控小飞机


前言

之前看过大佬分享的添加hook发送通知的教程,奈何要么是Mac环境的,要么执行sh脚本在我这里一直无法执行触发,今天试了下,通过第三方的BurnToastNotification,执行python脚本的方式可以触发了,定制一个属于你的iflow弹出通知。

首先需要一个能够调用windows系统通知中心的插件,我这里选择了BurnToastNotification,Github地址:Windos/BurntToast: Module for creating and displaying Toast Notifications on Microsoft Windows 10.

好处是

  • 安装简单,一行命令即可安装成功
Install-Module -Name BurntToast
  • 定制化强,可以定制你的通知的标题,内容,属性文字,图标,声音,甚至是添加延迟提醒等交互操作。

具体步骤:

  1. 先按照官方说明,在命令行安装好BurnToastNotification。
  2. 然后配置你的通知提醒的python脚本,代码我用AI生成的
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Stop hook脚本-任务完成通知 import subprocess import os def send_notification(): """发送任务完成通知""" try: # 构建PowerShell命令,我这里加了个图标文件,配置了通知的标题,内容和属性文字,通过powsershell命令调用BurnToastNotification来发送弹出通知 ps_command = ( "New-BurntToastNotification -AppLogo ~/.iflow/hooks/iflow.png " "-Text 'Mission Complete!','iflow任务完成' -Attribution 'Powered by Samael'" ) # 执行PowerShell命令[6,7,8](@ref) result = subprocess.run( ["powershell", "-Command", ps_command], capture_output=True, text=True, timeout=30 ) if result.returncode == 0: print("通知发送成功") else: print(f"通知发送失败: {result.stderr}") except subprocess.TimeoutExpired: print("PowerShell命令执行超时") except FileNotFoundError: print("未找到powershell命令,请确保在Windows系统中运行") except Exception as e: print(f"执行过程中发生错误: {e}") def main(): """主函数""" send_notification() if __name__ == "__main__": main()

上边的python脚本中,我在powershell命令调用burnToastNotification发送系统通知时,加了个图标文件(如果你不改图标文件的话,BurnToast会用它默认的一个图标),也放到python文件同一个目录下了,就是~/.iflow/hooks/目录,如下图:

3.最后一步,在你的iFlow的settings.json中,添加hook配置,我这里用~/.iflow/目录不生效(命名py中能用不知道为啥),所以我就改成完整路径了,小伙伴们可以根据你的情况来修改路径。

"hooks": { "Stop": [ { "hooks": [ { "type": "command", "command": "python c:/Users/26933/.iflow/hooks/stop.py" } ] } ], "Notification": [ { "matcher": ".*permission.*", "hooks": [ { "type": "command", "command": "python c:/Users/26933/.iflow/hooks/notification.py" } ] } ] }

最后的实际效果是这样

在通知中心中也会有记录:

欢迎大家试用~

原文链接:https://vibex.iflow.cn/t/topic/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 6:34:46

pytest之收集用例规则与运行指定用例

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 小伙伴们大家好呀,今天笔者会给大家讲解一下pytest是如何收集我们写好的用例?我们又有哪些方式来运行单个用例或者批量运行用例呢&…

作者头像 李华
网站建设 2026/4/18 6:25:50

R语言读取CSV中文乱码问题全解析,资深数据工程师教你4种可靠解法

第一章:R语言读取CSV中文乱码问题全解析 在使用R语言处理包含中文字符的CSV文件时,常出现读取后中文显示为乱码的问题。该问题的根本原因在于文件编码格式与R默认读取编码不匹配。常见的CSV文件编码包括UTF-8、GBK、GB2312等,而R在Windows系统…

作者头像 李华
网站建设 2026/4/18 8:51:02

(结构体内存对齐终极指南):从#pragma pack到offsetof的实际应用

第一章:C语言结构体内存对齐规则 在C语言中,结构体(struct)的内存布局并非简单地将各个成员变量的大小相加。由于内存对齐机制的存在,结构体的实际大小往往大于其成员变量大小之和。内存对齐是为了提高CPU访问内存的效…

作者头像 李华
网站建设 2026/4/18 7:37:00

PyTorch镜像能跑多大模型?A800显存压力测试案例

PyTorch镜像能跑多大模型?A800显存压力测试案例 在深度学习的实际开发中,一个常见但关键的问题是:我手头的硬件到底能跑多大的模型? 尤其是在使用像A800这样具备高显存带宽和计算能力的GPU时,我们更关心它的极限在哪里…

作者头像 李华
网站建设 2026/4/18 6:46:18

软件测试经典面试题

问:网页字符统计功能如何测试?测试点有哪些? (例:计算一个文本字符串中a出现的个数) 一、核心功能测试点(验证基础逻辑) 基础计数准确性 单字符输入(如 "a"&…

作者头像 李华