用 bark-notify 把 Claude Code 完成提醒推送到 iPhone:TaoToken 统一 Key 通道配置大纲
1. Claude Code 长任务跑完没人喊你bark-notify 把完成提醒推到 iPhoneClaude Code 有个很实际的体验问题它经常一跑就是几分钟甚至十几分钟中间你切去写文档、回消息、开另一个项目然后就开始反复切回终端看它到底跑完没有。公司环境里开声音提醒不太合适手机通知反而更自然。bark-notify 就是解决这件事的 Claude Code 插件——当 Claude Code 完成一轮任务、等待授权、执行出错或会话异常结束时通过 Bark 给 iPhone 推一条通知。它适合主要用 Claude Code CLI、iPhone 上装了 Bark、又不想配飞书/钉钉/邮箱那套重权限方案的人。我试过同时开三个 Claude Code 窗口跑不同项目以前每隔两分钟就要切回去看一眼现在手机一震就知道是哪个项目需要处理。通知标题默认是当前项目目录名所以多窗口场景下一眼能分辨。整条链路其实就三段Bark 客户端拿到推送 URLbark-notify 插件挂到 Claude Code 的 hooks 上TaoToken 统一 Key 通道负责模型请求的 endpoint 与 auth.json 配置。前两段是提醒闭环第三段是让 Claude Code 本身能正常跑起来。这篇把三段串成一条可复制的路径目标 10 分钟内跑通。需要提前说明的是Bark 目前只有 iOS 版本没有安卓版。如果你用的是安卓手机这条链路走不通可以考虑换其他通知方案。下面所有步骤都在 macOS 上验证过Windows 下路径换成对应用户目录即可。核心检索词先摆出来bark-notify 是 Claude Code 的完成提醒插件Bark 是 iPhone 上的推送客户端Claude Code 是 Anthropic 的命令行编码工具TaoToken 是统一 Key/API 通道。四者关系是Claude Code 跑任务bark-notify 监听任务状态Bark 负责把状态推到手机TaoToken 负责 Claude Code 的模型请求通道。2. TaoToken 统一 Key 通道前置配置endpoint 与 auth.json 怎么写在挂 bark-notify 之前得先保证 Claude Code 本身能正常请求模型。如果你已经能跑 Claude Code这一段可以快速扫过如果还没配好这里把 endpoint 和 auth.json 一次写清楚。TaoToken 的 API 地址是https://taotoken.net/api注意这个地址不带任何查询参数。官网是https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content需要看文档或拿 Key 的时候从官网进。Claude Code 读取配置的位置在用户目录下的.claude文件夹。不同版本可能读settings.json或auth.json这里两个都给出来你按自己版本对照。先看~/.claude/settings.json里跟模型通道相关的片段。这个文件同时承载 hooks 配置所以后面 bark-notify 也会往这里写注意不要手动覆盖掉已有内容{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的TaoTokenKey } }如果你用的是auth.json形式结构类似{ baseUrl: https://taotoken.net/api, apiKey: sk-你的TaoTokenKey, model: claude-sonnet-4-20250514 }三件套对照表方便你检查有没有漏配置项值说明Base URLhttps://taotoken.net/api不带 UTM不带尾斜杠API Keysk-开头从 console 的 API Keys 页面获取Model ID如claude-sonnet-4-20250514按你实际可用的模型填Key 的获取路径是进 console 后找 API Keys 页面新建。如果你还没决定用哪个模型可以先去模型对话页面试一下请求是否通再回来填 Model ID。这里有个容易踩的坑Base URL 末尾多写一个斜杠或者把官网地址误填进去。官网地址带 UTM 参数是给人看的页面不是 API endpoint。API 只认https://taotoken.net/api。配好之后先在终端里跑一次最简单的 Claude Code 请求确认模型通道是通的。如果这一步就报 401先别往下走 bark-notify先把 Key 和 Base URL 对齐。通道不通的情况下bark-notify 只会推「出错」通知你会以为是插件问题其实是模型请求根本没发出去。另外提醒一句settings.json是 JSON 格式不能写注释不能有多余逗号。改完可以用python -m json.tool ~/.claude/settings.json校验一下语法省得 Claude Code 启动时静默失败。3. bark-notify 插件挂载与可复制 settings 片段这一段是提醒闭环的核心。分三步装 Bark、装插件、写 hooks。第一步iPhone 上装 Bark。打开 App 后首页会显示你的推送地址形如https://api.day.app/你的设备key。这个 key 就是这台 iPhone 的收件地址复制下来待会 setup 要用。如果你在意隐私可以在 Bark 里开加密模式bark-notify 支持 AES-128-CBC正文在离开 Mac 之前就加密。第二步在任意 Claude Code 会话里执行三条命令装插件/plugin marketplace add RUIIIOVO/claude-code-bark-notify /plugin install bark-notifybark-notify /reload-plugins装完后 Claude Code 会识别到插件里的 slash command。接着跑 setup/bark-notify:bark-notify-setupsetup 会依次问你 Bark 推送 URL、是否用加密模式、加密模式下再问一个 16 位密钥。如果选加密模式iPhone 端 Bark 里也要设成一致Algorithm 选 AES128Mode 选 CBCPadding 选 pkcs7Key 填和 setup 里一样的 16 位密钥IV 随便填一个 16 位字符串用于保存配置真实推送时会用请求里的 IV。setup 会在本机做两件事写入~/.claude/claude-stop-bark.sh本地发送脚本合并写入~/.claude/settings.json的 Claude Code hooks。它不会覆盖你已有的其他设置这点可以放心。第三步确认 hooks 片段写进去了。打开~/.claude/settings.json应该能看到类似这样的结构{ hooks: { Stop: [ { hooks: [ { type: command, command: bash ~/.claude/claude-stop-bark.sh stop } ] } ], Notification: [ { hooks: [ { type: command, command: bash ~/.claude/claude-stop-bark.sh notification } ] } ] } }注意这个片段要和你第 2 段写的env或auth.json共存不是二选一。如果你之前手动改过settings.jsonsetup 会做合并但保险起见还是自己看一眼有没有把env段冲掉。bark-notify 支持的事件类型和通知级别对照场景通知正文Bark levelClaude 一轮回答正常结束Claude Code 已完成activeClaude 等待你授权工具调用Claude Code 等待操作timeSensitiveClaude 一轮回答因错误中断Claude Code 出错timeSensitiveClaude Code 会话异常结束Claude Code 会话异常结束timeSensitive用户主动 /exit、/clear、/logout静默-输入框空闲 60 秒内置提醒静默-这里把「等待授权」和「普通完成」分开是有意的普通完成你有空再回去看结果就行等待授权意味着 Claude 已经停住了需要你回终端点确认。timeSensitive 级别在 iPhone 上能穿透专注模式适合这两种需要及时响应的场景。4. 验证请求发一条测试通知并跑一次真实任务配置写完不验证等于没配。bark-notify 提供了一个测试命令/bark-notify:bark-notify-test如果 iPhone 收到一条 Bark 通知说明从 Mac 到 Bark 服务器的链路是通的。这一步只验证通知通道不验证 Claude Code 的 hooks 是否触发。接着做一次真实任务验证。随便在 Claude Code 里发一个会跑十几秒的请求比如让它读一个文件并总结。任务结束后你应该在 iPhone 上收到一条标题为当前项目目录名、正文为「 Claude Code 已完成」的通知。如果测试通知收到了但真实任务结束没收到问题大概率在 hooks 没触发而不是 Bark 通道。这时候检查~/.claude/settings.json里的 hooks 段是否完整以及~/.claude/claude-stop-bark.sh是否存在、有没有执行权限ls -l ~/.claude/claude-stop-bark.sh chmod x ~/.claude/claude-stop-bark.sh再验证一次等待授权场景。让 Claude Code 执行一个需要你确认的工具调用比如写文件或跑命令。当它停下来等你授权时iPhone 应该收到「 Claude Code 等待操作」级别是 timeSensitive。这个场景比完成通知更有用因为 Claude 是真的卡住了你不回去它就一直等。验证通过后日常使用就是开多个 Claude Code 窗口跑不同项目手机放旁边哪个项目需要处理通知标题会告诉你。不用再反复切终端。如果你还想验证模型通道本身是否稳定可以顺手去模型对话页面发一条请求确认 TaoToken 的 Key 和 endpoint 在长时间使用下没有异常。这一步和 bark-notify 无关但能帮你排除「通知收到了、但任务其实是因为模型请求失败才结束」这种误判。5. 常见报错排查401、local proxy failed、reading choices、OAuth这一段按真实报错对照遇到哪个查哪个。401 报错。这是模型通道的认证问题跟 bark-notify 无关。检查ANTHROPIC_API_KEY或auth.json里的apiKey是不是sk-开头、有没有多余空格、有没有过期。Base URL 确认是https://taotoken.net/api不带尾斜杠。如果 Key 是从 console 复制的注意别把前后空白也复制进去。local proxy failed。这个报错通常出现在 Base URL 填错或网络请求被本地环境拦截时。先确认 Base URL 没有写成官网地址官网地址带 UTM 参数不是 API endpoint。再确认没有在settings.json里同时配了两套冲突的 env。reading choices 相关报错。这类报错一般是响应体解析失败常见原因是 Model ID 填了一个当前 Key 不可用的模型或者请求返回的不是预期格式。去模型对话页面确认你的 Key 能用哪些模型把auth.json里的model字段改成实际可用的。OAuth 相关报错。如果你之前用过 OAuth 登录方式auth.json里可能残留了旧字段和新的apiKey配置冲突。把auth.json里跟 OAuth 相关的字段清掉只保留baseUrl、apiKey、model三件套。通知收到了但内容是「出错」。这说明 bark-notify 正常工作但 Claude Code 那一轮任务失败了。往上翻终端日志看具体错误大概率是上面某一种模型通道问题。bark-notify 只是把失败状态推给你它不负责修复模型请求。测试通知收不到。先确认 Bark 推送 URL 完整复制包括https://api.day.app/前缀和设备 key。如果开了加密模式确认 iPhone 端 Bark 的 Algorithm、Mode、Padding、Key 和 setup 里填的一致。IV 不一致不影响因为真实推送用请求里的 IV。hooks 不触发。检查settings.json里 hooks 段的 JSON 语法用python -m json.tool校验。确认claude-stop-bark.sh有执行权限。确认/reload-plugins执行过。卸载的话执行/bark-notify:bark-notify-uninstall它会移除~/.claude/settings.json里的 Bark hook 并删除本地脚本不会动你的模型通道配置。6. 把提醒闭环和统一 Key 通道一起用起来整条链路跑通后日常状态是这样的Claude Code 在 Mac 上跑任务bark-notify 通过 hooks 监听完成、等待授权、出错、异常结束四种事件Bark 把通知推到 iPhone通知标题是项目目录名。模型请求走 TaoToken 统一 Key 通道endpoint 是https://taotoken.net/apiauth.json 里三件套对齐。如果你还没拿 Key去 API Keys 页面新建一个。接入文档在 doc 页面里面有各客户端的配置示例。想先验证模型通道是否通去模型对话页面发一条请求最快。长期用 Claude Code 跑编码任务或 Agent 的话Coding Plan 比按量更划算具体在 coding-plan 页面看。最后留一个实用技巧通知标题默认是项目目录名如果你同时开多个 Claude Code 窗口建议把项目目录名起得有区分度比如proj-a-api、proj-b-web这样手机上一眼就知道该切回哪个终端。另外「等待授权」是 timeSensitive 级别会穿透专注模式如果你在开会不想被打断可以在 Bark 里单独把这个级别调低但代价是 Claude 卡住等你授权时你可能不知道。这个取舍按你自己的工作节奏来。

相关新闻

告别 PPT 纺织工!用 TaoToken 统一 Key 打通 AI Agent 一键生成技术汇报

告别 PPT 纺织工!用 TaoToken 统一 Key 打通 AI Agent 一键生成技术汇报

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 20:23:11 阅读更多 →
Python图像分割实战:UNet原理与训练调参全攻略

Python图像分割实战:UNet原理与训练调参全攻略

简介:面向Python图像处理开发者的U-Net图像分割实践资源包,覆盖从数据准备、模型构建、损失函数选择到训练与预测的完整流程。资源定位在Python开发与图片处理方向,适合具备一定深度学习基础、想动手实现语义分割任务的读者。压缩包内共21个文…

2026/10/10 20:22:10 阅读更多 →
用 Charles Proxy 抓包看 Claude Code 实际发给模型的提示词:TaoToken 通道下的 HTTPS 调试实录

用 Charles Proxy 抓包看 Claude Code 实际发给模型的提示词:TaoToken 通道下的 HTTPS 调试实录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 20:22:10 阅读更多 →

最新新闻

黑科技下载器源码实战:多线程分块、断点续传与资源嗅探全解析

黑科技下载器源码实战:多线程分块、断点续传与资源嗅探全解析

简介:黑科下载器是一款面向普通用户的多端下载工具资源包,针对迅雷限速、百度云非会员龟速等常见痛点,提供网页版、PC端、安卓与iOS四种使用形态,适合希望摆脱会员限制、提升日常下载效率的用户参考使用。压缩包共267个文件&#…

2026/10/11 23:41:48 阅读更多 →
窗口函数 SUM() OVER() 详解:PARTITION BY 与 ORDER BY 的累计计算逻辑

窗口函数 SUM() OVER() 详解:PARTITION BY 与 ORDER BY 的累计计算逻辑

很多人学了窗口函数,一看到SUM() OVER(PARTITION BY ... ORDER BY ...)这种写法还是会懵,特别是ORDER BY加上之后,结果怎么就从“分组总和”变成“累加值”了?这篇文章继续走实战路线,我会把SUM() OVER()从基础语法到进…

2026/10/11 23:40:47 阅读更多 →
数据库课程设计:电力收费系统表结构、触发器与存储过程全解析

数据库课程设计:电力收费系统表结构、触发器与存储过程全解析

简介:《数据库课程设计电力公司收费系统.doc》是一份完整的数据库课程设计报告,面向高校计算机、软件工程等专业学生,适用于电力公司收费管理信息系统设计课题。文档围绕客户、用电类型、员工、用电信息、费用管理、收费登记六大核心数据表展…

2026/10/11 23:40:47 阅读更多 →
JMeter+InfluxDB+Grafana:搭建性能测试实时监控看板

JMeter+InfluxDB+Grafana:搭建性能测试实时监控看板

做性能测试的人基本都经历过这样的场景:JMeter压着压着,突然想知道当前的TPS到底有没有掉链子,响应时间的曲线是不是已经拐头向上,可日志刷得太快根本看不出来。一开始我也用JMeter自带的监听器,结果压测刚跑几分钟&am…

2026/10/11 23:40:47 阅读更多 →
内网安全评估:揭秘ACL权限滥用与横向移动链路

内网安全评估:揭秘ACL权限滥用与横向移动链路

内网安全评估做到第三周的时候,我在一份共享文件夹的ACL导出清单里看到了一个非常扎眼的组名:SHARE MODERATORS。这个组在域里并不显眼,不在本地管理员组,也不在任何域管理组里,可它的权限范围却覆盖了全公司的核心共享…

2026/10/11 23:40:47 阅读更多 →
同城家政服务平台搭建,多商户派单方案详解

同城家政服务平台搭建,多商户派单方案详解

同城家政服务平台搭建:多商户入驻与智能派单方案详解同城家政行业早已从单一门店自营模式,转向多商户平台化联营发展。平台整合全城多家家政公司、个体服务商、持证服务师傅,统一承接用户订单,通过智能调度完成订单分发与履约。相…

2026/10/11 23:39:46 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →