和AI一起搞变乱#7. 给游戏NPC接入Hermes?

[复制链接]
发表于 2026-6-15 07:46:27 | 显示全部楼层 |阅读模式
上一周不绝在搞图片拆PSD图层、海报笔墨编辑的功能,有一阵没做游戏了,咱接着返来做中医游戏。好了不废话,这期咱们聊聊怎么给游戏NPC装个"智能大脑",趁便看看开辟过程中Hook这个老朋侪的新玩法。
先报告一下进度

✅ 对话卷轴+Hermes:青木老师现在能查病案、翻背包、看进度,还会按教学大纲给你上课,触发辩证游戏,再给你的辩证打分

✅ 炮制游戏:当归 + 黄酒炮制 -> 酒制当归

✅ 病案集:不想跟NPC谈天?行,本身选病例玩辩证游戏

✅ 后端DataBase:前后端增长了数据库举行状态管理,如许可以包管npc工具查询和前端展示数据的划一性。
为什么NPC必要"智能大脑"?

固然咱没怎么玩过游戏吧,但是也能看过游戏视频呀!那种一碰npc就只会跟你说“向东走那边故意想不到的劳绩。“”是一件很无聊的变乱。以是我们盼望NPC有本身的魂魄,同时也能根据游戏状态动态厘革,最好能直接操控游戏给玩家发布任务。
Agent选型:Python才是真爱

末了选了Hermes而不是Lobster(龙虾🦞),来由简单——我熟Python。
别笑,这事儿很严厉。AI确实低落了跨语言开辟门槛,但就像用翻译软件能看懂法语菜单、不代表你能跟法国大厨讨论烹调本领。遇到复杂题目时,母语开辟服从能差3-5倍,生理压力也完全差别。
以是有些python的开源项目,真的是赢在会python的人太多了...
接入方案:从gateway接入简单快速

核心思绪:把游戏当成一个谈天平台,通过Gateway接入Hermes。
Hermes是个三明治架构🥪:
  1. ┌──────────────────────────────────────────────┐
  2. │            顶层:平台适配器层                  │
  3. │  Telegram | Discord | Slack | WhatsApp | ...  │
  4. │  (翻译官:把各平台事件转为统一格式)            │
  5. └──────────────────┬───────────────────────────┘
  6.                    ↓
  7. ┌──────────────────────────────────────────────┐
  8. │           中间层:Gateway 核心               │
  9. │  会话路由 | 授权鉴权 | 限流 | 定时任务        │
  10. │  流式传输 | 媒体处理 | 审批按钮 | Hooks       │
  11. └──────────────────┬───────────────────────────┘
  12.                    ↓
  13. ┌──────────────────────────────────────────────┐
  14. │           底层:AIAgent 核心                 │
  15. │  LLM 调用 | 工具调用 | 记忆 | 会话历史        │
  16. │  (对平台一无所知,只管思考和回答)             │
  17. └──────────────────────────────────────────────┘
复制代码
三层架构的筹划,提供了可以机动接入各个平台的Gateway层,在游戏中机动的接入Agent的本领,只必要把游戏当做一个平台,提供对应的适配器,来处理处罚流式消息即可。
给NPC装外挂:技能+工具

同时为了让NPC更智能,还必要为每个智能体提供外挂,包罗技能、工具、每个智能体的脚色文件。
技能层紧张是npc的一样平常SOP工作流,包罗以下

而工具层会更复杂一点,由于必要完成全部游戏状态的获取和更新、触发操纵,包罗

  • 状态获取:获取玩家的背包、病案进度、团体学习进度
  • 状态更新:创建学习任务、触发诊断配伍游戏、记载更新影象(这里没有完全使用hermes内置的影象模块,由于非结构化影象在教学场景的稳固度不满意要求)

工具现在还很底子,更多题目实在必要真实开始场景模仿后袒暴露来再举行修复了,不外数据库已经开端接入进来,后续的调解也会更多在数据SCHEMA层以是复杂度还好。紧张是影象和任务模块的边界我还没太想好,走一步看一步吧~
Hook的格式玩法

很多人以为Hook就是"到点实验固定脚本"——比如任务完成发个关照、调用工具前查抄权限。但我以为Hook的本质是:在AI自主决定的缝隙里,塞入人类的理性。
本质上更像是在LLM自主实验的多个举措之间通过链表的情势穿插进固定的状态和流程。
和/ultrawork的思绪互补,一个是自主之中有编排,另一个是编排之中有自主,终极大概会走向同一?
而且毫无不测的是并不引入新的语法,而是就基于coding本身实现编排,究竟这是AI当前完成最好,最容易校验的任务。
那在游戏的开辟中我们用到了哪些hooks呢?
Pre-tool Hook:Key泄漏拦截器

血泪教导:某天让AI帮我提交代码,效果它把我的OpenAI Key一起push到GitHub了😱。
赶紧用git-filter-repo把全部汗青commit扫了一遍(⚠️ 告诫:这玩意会重写Git汗青,操纵前务必备份!)
于是立即立即就让CC增长了安全扫描Hook,也是最底子的“脚本型”Hook,具体的指令流程如下。

Hook的开辟实在可以类比接入新API,先去官网拉取Hook开辟规范并写入文档,如许之后开辟新的hooks也不必要在查规范直接先看文档就完了,之后再开始开辟hook,并E2E测试后再接入。
最搞笑的地方来了....
由于安全拦截做的太强,导致写好的hook代码本身无法commit了....
然后AI看到拦截消息,复兴“我太强了”
哈哈哈哈,笑不活了.....
Post-Tool Hook:筹划文档检察官

题目:让AI筹划功能时,它经常被用户的提问"带偏"。
比如我说"背包数据表现不划一",AI只会修修补补办理外貌题目,而不会心识到根因是缺少同一的状态管理数据库。
办理方案:加个"事后诸葛亮"的反思Hook
当检测到工具输出是对docs/superpowers/specs举行文件写入时,当自动触发考核任务。
这个Hook更复杂些,是一个“脚本型”hook,由于全部反思,评估都必要在新的上下文中实验。通过脚本启动独立CC进程举行筹划文档的考核,从整个筹划文档必要办理的题目触发,考核文档是否有遗漏、暗昧、抵牾待澄清的筹划点。
AI圈实在是个圈,没过一阵就会发现汗青的风又吹风返来了。以是自主虽好,但self-evaluation(reflection)在当前的模子本领下仍旧有加成的。

这和superpowers自带的spec-review有啥区别?

  • 自带的:细节微调,像语文老师改错别字, 而且纯靠指令触发,国产模子长上文的触发概率并不高...以至于我看源码前都不知道这个功能竟然存在......
  • 我的Hook:全局检察,像技能总监做Code Review,而且通过hook欺压触发

Pre-Compact + Session-Start Hook:影象交代棒

个人体验CC的compact效果比力一样平常,也大概差别范例的项目本就必要差别的跨session信息通报方式。
以是还是本身上手做了,好不好另说,至少肯定不会再诉苦别人,只会蛐蛐本身。
选择的方案是在compact之前同时创建“handover.md” + "STATE.md" + "ROGRESS.MD"这三个文件,还是谁人思绪文件长期化,作为唯一原形源,他们分别存储

  • STATE:项目状态形貌,恒久
  • PROGRESS:当前举行中任务状态形貌,短期
  • handover.md: 扼要概括STATE+PROGRESS并引用对应文档,然后给出下一步todo指令
然后再下一个session start的时间通过Prompt hook,在上下文中自动载入handover.md就行了。
以是整个Agent循环统共涉及到了以下Hook的触发流程

如果涉及到多个Agent并发工作,比方teammate模式之类的,注意必要共同git worktree一起使用,否则会出现更新辩说哟。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表