新闻详情

新闻详情

首页 / 资讯中心 / 详情

如何用 OpenHuman 的触发器(Triggers)让新邮件和 GitHub Issue 自动触发 Agent 动作

发布时间:2026/9/10 5:29:30来源:尧图网络
如何用 OpenHuman 的触发器(Triggers)让新邮件和 GitHub Issue 自动触发 Agent 动作
如何用 OpenHuman 的触发器Triggers让新邮件和 GitHub Issue 自动触发 Agent 动作【免费下载链接】openhumanOpenHuman is an open source personal AI for Mac, Windows and Linux — local-first memory, agent orchestration, and deep research.项目地址: https://gitcode.com/GitHub_Trending/op/openhuman如果你的 Gmail 收件箱和你的 GitHub 仓库经常在你不盯着屏幕的时候进新消息OpenHuman 的 Triggers触发器管道可以做到连接好 Gmail 和 GitHub 之后GMAIL_NEW_GMAIL_MESSAGE新邮件和GITHUB_ISSUE_OPENED新 Issue这类事件会近乎实时地进入 OpenHuman由 triage分诊agent 自动判断该忽略、记录、还是真的跑一个 agent 动作全程不需要你手动发起。适用前提OpenHuman 默认运行在 backend-managed托管模式下——这是触发器能工作的前提在 direct 模式下触发器 webhook 需要你自己搭基础设施见文末限制。第一步连接 Gmail 和 GitHub触发器来自你已连接的集成。在应用的集成目录里分别找到 Gmail 和 GitHub点击Connect浏览器会打开 OAuth 页面登录授权后连接变为Connected状态相关的 trigger 订阅会自动接入无需手工配置 API key来源Third-party Integrations。连接 Gmail 时有一个 scope 细节值得注意来源Triggers新的 OpenHuman Gmail 授权会请求https://www.googleapis.com/auth/gmail.readonly这是GMAIL_NEW_GMAIL_MESSAGE订阅和原生 Gmail 同步读取新邮件元数据所必需的如果这个 Gmail 连接是在该 scope 引入之前建立的需要在 Settings 里重新连接 Gmail之后再启用 Gmail 触发器。GitHub 侧没有额外的 scope 要求连接后GITHUB_ISSUE_OPENED、GITHUB_PULL_REQUEST_OPENED这两个仓库事件即可触发。连接状态有三种Not connected未设置、Connected已激活并在同步、Manage可重配或断开随时可以在Connections页面撤销任一连接。触发事件到达后会发生什么webhook 不会以原始形式到达你的机器。完整链路是来源Triggers第三方 APIGmail / GitHub发出 webhookOpenHuman backend 持有 OAuth token、直接接收 webhook做 HMAC 校验并归一化 payloadbackend 通过既有认证 socket 以composio:trigger事件转发给你的 Rust corecore 在进程内事件总线发布DomainEvent::ComposioTriggerReceived每个触发器都先经过trigger_triageagent它从四个动作中恰好选一个动作结果文档给出的适用情形drop静默记录后丢弃垃圾、重复、无关噪声acknowledge写一条简短 memory 记录不跑 agent值得记住的被动通知reacttrigger_reactoragent 执行一两次工具调用单步小动作存一条记忆、记一条结构化事件escalate完整 orchestrator agent 接管做多步规划需要推理、多步骤或跨技能的任务例如草拟一封邮件回复并排队等你批准、为一个新 Issue 拉取上下文并写结构化评论对你的两个场景escalate路径的典型产物在文档中列举为为新邮件起草回复并进入你的批准队列为入站的 GitHub Issue 拉取相关上下文并写出结构化评论。react / escalate 动作都运行在你本机、针对本地 Memory Tree使用与其他 agent 相同的模型路由和工具面。triage 本身跑在快速模型档位上分类目标是亚秒级。如何验证触发器确实在工作文档承诺的审计方式是每一个触发器无论分类决定是什么都会写入 trigger history你可以看到什么到达过、分类器做了什么决定、如果有实际跑了什么。此外决定和升级会作为TriggerEvaluated/TriggerEscalated事件发布到进程内总线core 内的任何组件都可以订阅。在仓库代码里前端封装了这条查询路径composio.ts 中的openhumanComposioListTriggerHistory(limit 100)调用 RPCopenhuman.composio_list_trigger_history返回archive_dir、current_day_file以及条目列表每条记录包含received_at_ms、toolkit、trigger、metadata_id、metadata_uuid和payload。判断方法新邮件或新 Issue 到达后history 中应出现对应toolkit如gmail/github和trigger如GMAIL_NEW_GMAIL_MESSAGE/GITHUB_ISSUE_OPENED的条目——有条目说明事件已被接收并记录至于分类器走了drop/react/escalate哪条路由 history 里的决定记录体现。调整分类行为与整体关闭触发器默认开启集成连上之后其触发器自动进入管道。需要收敛行为时有两个入口来源Triggers 与 ComposioTriagePanel设置面板触发器 triage 设置面板已并入Connections页面的 Composio 区块底层 RPC 为update_composio_trigger_settings/get_composio_trigger_settings。面板提供两个控件Disable AI triage for all triggers开关打开后所有触发器不再跑 LLM 分类但文档同时说明 Triggers are still recorded to history: no LLM turn is run——即只保留被动记录按集成禁用的文本框输入逗号分隔的集成 slug例如gmail, slack不区分大小写只对指定集成关闭分类。输入内容会按下划线归一化为triage_disabled_toolkits列表点Save后通过update_composio_trigger_settings持久化。环境变量把OPENHUMAN_TRIGGER_TRIAGE_DISABLED设为1、true或yes会关闭 agent 分类、回退到纯被动记录集成本身保持连接只是抑制自动动作。例如在启动应用的 shell 中export OPENHUMAN_TRIGGER_TRIAGE_DISABLED1关闭分类不等于断开集成连接、auto-fetch 同步每 20 分钟一次都不受影响被抑制的只是自动动作行为。限制与边界direct 模式下触发器不可用如果你切到用自己的 Composio API key 的 direct 模式同步工具调用仍然工作但实时触发器 webhook 必须配置在你自己的 webhook 基础设施上ComposioPanel 源码注释明确说明 triggers dont work at all in direct mode。想让新邮件和 GitHub Issue 自动触发 agent请保持在默认 backend-managed 模式。隐私边界第三方 token 只存在于 backend从不在你的机器上webhook 先到 backend 做 HMAC 校验触发器 payload 由本地 core 处理分类与反应都运行在你本机。成本分层是设计意图连接一个 Gmail 账户每小时可能产生数十个触发器triage 存在的意义就是让drop免费、react便宜、只有值得的事才进入 orchestrator避免每个噪声事件都消耗编排预算。如果你希望深入实现细节仓库中的入口是triage agent 在 trigger_triage 指向的src/openhuman/agent/agents/trigger_triage/reactor 在src/openhuman/agent/agents/trigger_reactor/触发器历史持久化在src/openhuman/integrations/composio/trigger_history.rsComposio 总线订阅在src/openhuman/integrations/composio/bus.rs。【免费下载链接】openhumanOpenHuman is an open source personal AI for Mac, Windows and Linux — local-first memory, agent orchestration, and deep research.项目地址: https://gitcode.com/GitHub_Trending/op/openhuman创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

跨语言调用C++接口:从原理到Python/C#/Java/Node.js实践 2026/9/10 6:05:35

跨语言调用C++接口:从原理到Python/C#/Java/Node.js实践

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

阅读更多 →
硬件热设计从功耗计算到散热片选型:结温热阻全流程实战 2026/9/10 6:05:35

硬件热设计从功耗计算到散热片选型:结温热阻全流程实战

每年夏天我都会收到几条类似的求助消息:“板子跑起来有点烫手,要不要紧?”“一直80度会不会烧?”“热得像个小火炉,但功能倒是正常的。”说实话,能问出这些问题说明已经把板子调通了,但真正让人…

阅读更多 →
配电网故障重构实战:Yalmip+二阶锥规划建模指南 2026/9/10 6:05:35

配电网故障重构实战:Yalmip+二阶锥规划建模指南

凌晨两点,调度电话响起来:10kV馈线跳闸,重合失败,故障点隔离后下游还有一片用户黑着。这时候最要紧的不是先查故障原因,而是尽快给出一个“哪些开关合、哪些开关断”的供电恢复方案。这个决策背后就是配电网故障重构。…

阅读更多 →
接收器与混频器深度解析:从原理到故障排查 2026/9/10 6:05:35

接收器与混频器深度解析:从原理到故障排查

接收器和混频器这两个词,在射频和音频领域是老面孔了。普通用户可能在蓝牙音频接收模块、无线鼠标接收器这些产品上接触“接收器”多一些,而做通信、做SDR的工程师则天天跟混频器打交道。但很多人其实把这两者的关系想得过于割裂——实际上,绝…

阅读更多 →
QEMU CPU建模完全指南:从TCG原理到新增指令集实战 2026/9/10 6:05:35

QEMU CPU建模完全指南:从TCG原理到新增指令集实战

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

阅读更多 →
FUI框架迁移:从反射注册到Source Generator编译期装配 2026/9/10 6:02:35

FUI框架迁移:从反射注册到Source Generator编译期装配

如果你维护过一套以反射注册为基础的UI框架,看到“FUI 编译期装配”这几个字,应该能立刻 get 到痛点:启动时扫描程序集、遍历类型、解析 Attribute、再塞进容器,这套流程在 demo 里没什么感觉,一旦页面组件多起来&…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞