程序员老鬼

AI Shell 把“命令行”变成对话框。。。

今天刷到一个事儿,有点意思…AIRI。就是 moeru-ai 那个,把“一个开源二次元数字同伴(甚至能打游戏)”做得像积木一样好拼的项目。我一开始以为又是那种“网页玩具”,结果不是,它是一个能自托管、能跑在浏览器/桌面端、还能接游戏世界和各种工具链的“虚拟同伴底座”。一句话版:把 WebGPU + 实时语音 + 游戏接口 + Agent 规规矩矩装进一个开源仓库,自己养个会聊天、会干活、还挺快的小伙伴。

Image

等等我先说个事…它跟大家脑补的也不太一样:这不是“看一眼视频就结束”的噱头,而是个技术路线很明确的工程项目——从第一天就把 WebGPU、WebAudio、Web Workers、WASM、WebSocket 这些 Web 技术系好安全带,还配了桌面端(Tauri)和一堆周边包,甚至连和 MCP 生态打通的插件都有人做了。生态外面也在热:仓库星标已经上万级,文档站还有持续的 DevLog。热乎劲儿不是空喊。

自然语言→同伴行为:能跟你实时文本/语音聊天,这是基础盘。更有意思的是它把“同伴”这件事做成可插拔:你可以让 AIRI 变成 Vtuber、语音玩伴,甚至接进 Minecraft、Factorio 里当个能听人话的游戏助手。就是那种“你说建个栈道、去挖矿、帮我搬运”,它能听懂并在世界里干起来。

浏览器内核的性能活:用 WebGPU 加速推理/音频处理,前台不卡壳,后台有 Web Workers 分担任务,没显卡也能回落 WASM 跑个保底版。这些都是 README 里白纸黑字写了的,不是我编的。

可自托管、可扩展:它明确走“自己掌控”的路线——自己部署、自己接 API、自己改 UI。组织下还有一票包:字体、UI、Server SDK、甚至“tauri-plugin-mcp”(和 MCP 服务器打交道的 Tauri 插件),这意味着把它塞进你已有的桌面工作流不是梦。

Image

社区/协作:GitHub Discussions 里能直接报到,项目主页组织也在招志愿者。节奏感挺强,DevLog 更新频繁

装依赖:它主仓用 pnpm 管理前端包,Rust 相关在某些子模块里会用到(比如桌面端/原生扩展),贡献指南把命令写得很细,照抄基本不迷路。 拉起 Demo:官方 README 和文档站都给了路径,网页 Demo、桌面端、以及接入的“游戏/实时语音”方向都有线索。先跑浏览器版,能直观看到“开麦→响应”的全链路。 连游戏(选修):要玩 Minecraft/Factorio,那就翻子仓库或主仓服务目录里对应模块,按步骤挂上去。第一次别全开——先让同伴在世界里执行几个小命令,能走起来再上复杂任务。

开场:先让 AIRI 用“人话”自我介绍 + 给 2~3 条可互动建议(文本和语音都来一轮),比如“现在能帮你:①读一段网页并回答;②在 Minecraft 里挖 10 个煤;③帮你记个 to-do 并回读”。这样你很快摸清能力边界。 中段:把它当“对话态工作者”来 refine——比如“把刚才挖煤换成铁矿,范围限制在基地 200 格内,再告诉我预计耗时”。 收尾:让它把“最终动作 + 目的 + 风险点”串成一条“执行前确认”,你回车再动。这套心智模型,在类似 AI Shell 的命令确认里验证过很好用,搬到 AIRI 也同理(只是这里动作可能是游戏/语音/网页而非 shell)。

Vtuber/同伴直播:浏览器端直接跑,省了 OBS 里乱七八糟的桥接,语音识别/合成走 Web 方案,延迟可控。 游戏小工:Minecraft 帮你巡路、采集、运送,Factorio 给你做点低风险的重复活儿,解放双手。 日常陪聊 & 任务提醒:桌面端常驻,任务来就唤起说一下,做个“软代理”。(这块很多人低估了浏览器内的语音链路,WebAudio + WebGPU 其实够用。)

Image

权限/接口:你要给它什么,就只开那点权限。尤其是接 MCP 或其他外部工具的时候,端口别裸奔,能走本机就走本机,跨网络要有鉴权。MCP 这条路现在周边已经能走(Tauri 插件现成),但别一次性 All-in 自动化。 平台差异:浏览器和桌面端的可用 API、性能水位不一样。WebGPU 不是所有环境都有,准备好 WASM 回退。 模型与成本:它是“底座 + 接口”的思路,具体连哪个模型你自己选。强模型爽是爽,但推理成本和延迟也别忘了;先跑小规模任务,稳定再升级。 版本感知:主仓活跃、包也多,升级要看变更。看 DevLog 和 Releases,别闷头 npm/pnpm -U。“证据留痕”:让 AIRI 每次执行前都生成“动作摘要 + 预期影响 + 可撤销方案”,贴进 PR/变更单,回溯不抓瞎。 “风格规范”:定团队模板——比如优先无破坏性参数、能 dry-run 必 dry-run、长任务拆小步,AIRI 的输出就按这套来。 “多样本对比”:同一目标让它给三套实现(浏览器版/桌面端/游戏内行为),选你们环境里最稳的那套。

别把权限开太大;生产机器与公网隔离;涉及个人数据的会话别无脑上云。AIRI 的定位更像“组合件”,把实时语音、WebGPU 渲染、游戏行为、Agent 工具链这些分散能力接成一根线,最后执行权在你。

星标上万、Fork 破千,组织页公开,DevLog 连续更新,讨论区有工程师报到帖——不是那种“一次性发布就沉底”的仓库。要立个小 POC,风险相对可控。让 AIRI 先“提议三条可执行互动 + 风险解释” → 你挑一条跑小闭环(比如 Minecraft 内部 5 分钟小任务或网页端一分钟语音回读) → 让它给“更安全/更快”的替代方案 → 把“动作/解释/确认”贴变更单。跑顺手了,再把 MCP 插件和你的私有模型接上,往半自动化走。

Image

对了,顺带一提…这个项目还有一些分支/子项目好玩,比如把语音识别做成纯前端的 Moonshine Web Demo、把 Factorio/Minecraft 做成“可听懂人话的游戏工”。谁家顺手用谁家,反正 AIRI 主线胜在门槛低、解释到位、文档常更。今天一键 Star + 跑个小活儿,晚上大概率就能端出一个“有互动、有解释、有确认”的小成果;明天想进阶,再把 MCP 和你的私有端点接上,舒服。反正就这样。我现在唯一纠结的点是:给它配一个怎样的“性格”和“边界”,既不聒噪、又够能干…你觉得呢,先让它在游戏里搬砖,还是先做一个安静的语音秘书?