Waku

可在自己电脑上运行、可读可改的本地优先个人助手。

Star 数
★ 2.2k
最近更新
27 天前
License
MIT
主语言
Python

30 秒速览

运行形态
命令行工具网页应用
可在哪里用
通用 · 跨平台OpenAI API · Claude API
费用
软件免费,模型调用费用自付
上手难度
低 · 几分钟可跑通
开始前需要
Shell / 命令行网络访问本地文件系统MCP Server
典型场景
希望在自己的笔记本上保留可检查 SQLite 记忆的个人用户,用它记住联系人偏好并在之后安排会议。
不适合
  • 只想要开箱即用的消费级产品、不愿读代码的人
  • 依赖 Apple 日历或邮件简报的非 macOS 用户

这个 Agent 能做什么,适合哪些场景?

Waku 是一个本地优先的个人 AI 助手,核心由 Python 编写的 agent loop、SQLite 记忆、工具调用和评测/追踪组件构成。它通过终端、localhost:7777 仪表盘、Telegram 和可选语音入口接收同一会话中的消息,并在本机进程中执行每轮对话。记忆保存在 .waku/state.db,包含语义、情节和程序性记忆,并生成可读的 .waku/MEMORY.md 镜像。系统可调用日历、笔记、网页搜索等工具,记录每轮 trace、token 与估算成本,并提供确定性评测和 LLM-as-judge 发布门禁。它适合想拥有并理解个人助手核心机制的开发者或高级个人用户,而非需要托管式成品助手的人。

用户可用 waku 在终端聊天,或运行 waku dashboard 打开本机 127.0.0.1:7777 的浏览器界面;配置 TELEGRAM_BOT_TOKEN 后也可接收 Telegram 消息,waku voice 可通过“waku waku”唤醒词或按键通话。每轮消息先组成包含 SOUL.md、记忆和历史的工作记忆;waku/memory/retrieval_gate.py 决定是否检索 SQLite 中的 facts 与 episodes;随后 waku/loop/agent.py 反复调用模型、执行工具并把结果放回消息上下文,直到模型回复或达到最大迭代数。它可用 create_event 和 list_events 管理本地日历数据、用 save_note 等记忆工具保存信息,并可用 search_web 搜索网页。每轮会写入 .waku/traces/<date>.jsonl,token 用量追加到 .waku/usage.jsonl;make eval、make eval-judge 和 make gate 分别运行确定性评测、裁判评测和发布门禁。

  1. 希望在自己的笔记本上保留可检查 SQLite 记忆的个人用户,用它记住联系人偏好并在之后安排会议。
  2. 需要从终端或本地浏览器统一处理个人日程的开发者,用 create_event、list_events 查看和创建事件。
  3. 想观察工具调用、检索决策、迭代次数、token 与成本的 AI 工程学习者,使用 Dashboard 的 Loop、Memory 和 Ops 页面分析每轮运行。
  4. 希望通过手机消息触发本机助手的用户,配置 Telegram bot token 后以长轮询方式运行 waku telegram。
  5. 需要把外部 MCP 服务工具接入个人助手的用户,安装 [mcp] extra 并在 .waku/mcp.json 中声明服务器。
  6. 想为早晨工作安排生成摘要的 macOS 用户,授权 Calendar.app 和 Apple Mail 后运行 WAKU_APPLE_TOOLS=1 make brief。

如何安装或部署这个 Agent?

快速安装:

pip install waku-agent
waku

首次运行会提示需要设置的模型密钥。

如需阅读或修改源码:

git clone https://github.com/ShenSeanChen/waku-agent && cd waku-agent
uv venv && uv pip install -e .
cp .env.example .env

在 .env 中选择 WAKU_PROVIDER= 并填入一个已支持提供商的密钥;README 列出 Anthropic(默认)、OpenAI、Gemini、DeepSeek、MiniMax、Kimi、GLM、OpenRouter、OpenCode Zen 和 OpenCode Go。随后运行 uv run waku。

如何使用这个 Agent?

运行 waku 开始终端对话;运行 waku dashboard 启动本机仪表盘并访问 http://localhost:7777。例如,可输入“Remember that Alex prefers morning meetings.”,重启后再询问与 Alex 的会议安排。运行 make eval 执行确定性评测,运行 make gate 执行完整发布门禁。可选功能需额外配置:Telegram 需要 pip install -e '.[telegram]' 和 TELEGRAM_BOT_TOKEN;语音需要 uv pip install -e '.[voice]';MCP 需要 pip install -e '.[mcp]'。

这个 Agent 有哪些优点和局限?

优点
  • 记忆以本地 SQLite state.db 保存,并提供 .waku/MEMORY.md 可读镜像,用户可直接检查和编辑数据。
  • 核心 loop、检索 gate、图工作流和追踪模块均以明确文件路径呈现,适合逐步阅读和定制。
  • 同一运行时支持终端、本地 Dashboard、Telegram 与可选语音入口,消息来源会被标记。
  • 将确定性测试与 DeepEval 的 LLM-as-judge 评测分开,并提供 make gate 发布门禁和评测历史。
局限
  • 首次可用需要选择模型提供商并配置相应密钥;模型调用与可选网页搜索、Telegram 等功能依赖网络。
  • 本地日历和记忆是默认权威数据;Google Calendar 镜像只写入新建事件,而 list_events 仍读取本地数据库。
  • Apple Calendar 与 Apple Mail 简报仅面向 macOS,且需要授予系统权限。
  • 部分路线图工具仍是 skeleton;例如 run_command、browse_web 和 schedule_task 标为尚未实现的完整功能。

这个 Agent 与同类方案有什么区别?

README 将 Waku 与 ChatGPT、Claude Desktop 等可直接使用的产品区分:Waku 的定位是让用户拥有并修改 loop、记忆 schema、检索 gate 与评测 harness。它也将自己与 OpenClaw、Hermes 等较大型开源助手对比,强调较小、可在短时间阅读的代码规模。作为记忆方案,它以 SQLite FTS5 为默认,并列出 Supabase pgvector、mem0、Letta 与 Zep 作为升级或替代路径。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Waku 当前 65 · 存在缺口 命令行工具免费 + 模型费 ★ 2.2k 27 天前 Python OpenAI API · Claude API
Ankita 桌面 AI 工作台 69 · 存在缺口 桌面应用免费 + 模型费 ★ 15 7 天前 JavaScript ChatGPT · OpenAI API
Memmy — 个人AI代理与本地记忆中枢 71 · 存在缺口 桌面应用免费版 + 付费版 ★ 2.2k 2 天前 TypeScript Codex · Claude Code · OpenAI API
IWE 知识图谱与智能体记忆 69 · 存在缺口 命令行工具免费 ★ 1.8k 1 天前 Rust Codex · Claude Code · Claude.ai

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
65/ 100 五分制 3.3 / 5
信任安全 14/29
可靠稳定 9/14
适用触发 14/18
规范维护 14/18
有效结果 9/13
证据核验 5/8
查看各维度的扣分理由
信任安全14 / 29 · 2.4/5

材料显示核心产品主张本地运行,明确说明密钥、数据库和集成位置,按可选依赖启用语音、消息网关和 MCP;安全文档也说明社区技能可调用工具。扣分是静态样本未展示各工具的权限闸门、外部写操作确认和恢复机制,且会议技能明确允许在未知参会者时直接安排。

可靠稳定9 / 14 · 3.2/5

README、入门文档、CLI 入口和项目配置对核心命令、Python 版本、可选集成大体一致,并描述确定性评估和依赖下限。扣分是样本未包含评估实现或完整运行路径,且多家模型、服务和可选依赖仍带来可用性变量;此处不据此推断测试结果。

适用触发14 / 18 · 3.9/5

文档覆盖个人使用者、开发者、多种模型、终端与仪表板,以及语音、消息、日历、邮件和研究场景;技能描述也界定了研究报告、会议安排和简报的触发范围。扣分是样本没有完整展示场景冲突时的处理及能力拒绝边界,部分技能对副作用的描述较轻。

规范维护14 / 18 · 3.9/5

目录导航清晰,安装、配置、检查步骤充分;许可证文件与 README、配置说明区分 MIT 代码、Elastic License hosted 部分及品牌资产。扣分是样本未提供实际发布历史或完整升级记录,维护者虽有指引但其发布与响应承诺的落实无法从这些文件确认。

有效结果9 / 13 · 3.5/5

产品将循环、记忆、评估和多入口集成整合为可读的本地助手,提供命令、检查步骤和面向用户的报告格式。扣分是效用与成本主张主要来自项目自身陈述;样本无法证明记忆、调度或评估在实际使用中的效果,也没有呈现完整成本对比。

证据核验5 / 8 · 3.1/5

README 的架构和功能陈述通常指向文档、代码或命令;入门步骤可核对,配置说明解释版本来源,技能规范报告来源字段并要求区分供应商自述。扣分是多项关键安全、正确性和评估主张在给定材料中缺少对应实现或独立佐证,且样本不完整,不能据此验证执行结果。

风险与缓解建议
  • 本评估仅依据所给静态材料,置信度低;未运行程序、评估或集成。
  • 日历、邮件、消息和社区技能可能触及个人数据或产生外部副作用;使用前应核对权限、确认行为及恢复方式,尤其是未知参会者的自动安排。
  • 接入托管记忆或研究服务会把数据交给外部服务;给定材料未完整呈现其端到端数据处理与成本。
证据充分度:低 评估于 2026年11月8日 审查版本 4b69b3213247
查看完整评分方法 →
你是这个项目的维护者?把 FARS 徽章加到 README

徽章显示当前的评审分数和结论,点击回到本页。重新评审后约一小时内更新。

FARS

[![FARS 评测](https://followagents.com/badge/waku-agent.svg?lang=zh)](https://followagents.com/zh/agents/waku-agent)
<a href="https://followagents.com/zh/agents/waku-agent"><img src="https://followagents.com/badge/waku-agent.svg?lang=zh" alt="FARS 评测"></a>

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.1.9
    发布说明摘录
    waku-agent 0.1.9: see, grade and pay for every turn What changed for you - Observability: each turn is a trace with a readable waterfall, and an Evals page shows what CI passed on your release. - Turn evals: five checks grade your own turns, and an on-demand AI judge reviews a turn you pick. - treg: every local Waku Agent can call treg, the Tools tab leads with the endpoints a turn used, and a hosted tenant can bring their own treg key. - Memory: each fact is written to ~/.waku/memory/<id>.md, and a reply says "saved" only when Waku Memory has the fact. …
    在 GitHub 查看 ↗
  2. v0.1.8
    发布说明摘录
    What's Changed * license: the Waku brand assets are not MIT by @ShenSeanChen in https://github.com/ShenSeanChen/waku-agent/pull/194 * dashboard: cards, buttons, actions and menus from ui.js by @etsai0603 in https://github.com/ShenSeanChen/waku-agent/pull/192 * fix: "waku connect google" exists, and so does /connect google by @ShenSeanChen in https://github.com/ShenSeanChen/waku-agent/pull/195 * release: 0.1.8 by @ShenSeanChen in https://github.com/ShenSeanChen/waku-agent/pull/196 New Contributors …
    在 GitHub 查看 ↗
  3. v0.1.1 v0.1.1 — agent graphs
    发布说明摘录
    ```bash pip install waku-agent ``` What's new: waku/graph/ A stdlib graph engine, and the same job done two ways so you can read them against each other. A loop discovers what to do next. A graph pre-determines what happens next. | | | |---|---| | waku brief | the morning briefing as a LOOP — one prompt, the model works out which tools to call | | waku gather | the same job as a GRAPH — GitHub, web, calendar and memory fetched together, then one digest | Measured on a live run: ``` node_start scan_github scan_web scan_calendar scan_memory …
    在 GitHub 查看 ↗

常见问题

数据会离开我的电脑吗?
Dashboard 是绑定 127.0.0.1 的本机服务器,SQLite 记忆、trace 和用量文件存于本地;但所选托管模型提供商、网页搜索、Telegram 和 Google Calendar 等可选集成会涉及网络请求。
支持哪些模型提供商?
README 列出 Anthropic(默认)、OpenAI、Gemini、DeepSeek、MiniMax、Kimi、GLM、OpenRouter、OpenCode Zen 和 OpenCode Go;通过 WAKU_PROVIDER 选择并配置一个密钥。
系统如何避免无限工具循环?
waku/loop/agent.py 在模型不再请求工具时结束;若未自然结束,则由 max_iterations 硬性停止。
可以接入自己的工具吗?
可以。安装 [mcp] extra 后,在 .waku/mcp.json 配置 MCP server;其工具会以 <server>_<tool> 名称提供给代理。
如何验证修改没有破坏行为?
运行 make eval 做确定性检查,运行 make eval-judge 做 LLM-as-judge 评分,或运行 make gate 同时执行两类检查并依据阈值给出发布门禁结果。
这页内容对你有帮助吗?
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。