← all repositories
ShenSeanChen/waku-agent

A personal AI agent that fits in an afternoon's reading

A local-first personal assistant that unpacks the four pillars of agent engineering—harness, loop, memory, and eval—into plain Python you can read in an afternoon.

536 stars Python AgentsLLMOps · Eval
waku-agent
Collecting fresh signals — velocity needs a few days of history.
collecting data…
star history

What it does Waku-agent is a personal AI assistant that runs entirely on your laptop, wiring together a tool-calling loop, long-term memory, and evaluation harness in plain Python. It chats across CLI, browser, Telegram, and voice, storing durable memory in a single SQLite file and exposing every message flow through a local dashboard. The pitch is ownership over opacity: every architectural pillar maps to a short, readable module rather than a framework abstraction.

The interesting bit The agent loop itself is roughly ninety-five lines of Python—no hidden control flow, no orchestration framework—and it feeds tool results straight back into working memory until the model is done or a hard iteration limit trips. Memory is split into semantic facts, episodic chat history, and procedural skills, gated by a retrieval classifier that decides whether a given turn even needs long-term context. That same loop powers an eight-iteration web search-and-calendar booking demo that the author calls “the money shot.”

Key highlights

  • The entire loop lives in ~95 lines of plain Python (waku/loop/agent.py), with explicit guardrails instead of framework magic.
  • Memory persists to one local SQLite file (state.db) with FTS5 search, mirrored to a human-readable MEMORY.md after every turn.
  • Built-in evals run deterministic tests side-by-side with LLM-as-judge scoring, tied to a release gate.
  • A local dashboard at localhost:7777 visualizes every turn: gate decisions, tool calls, token costs, and live database browsing.
  • Provider adapters for Anthropic, OpenAI, Gemini, DeepSeek, and others sit in a ~60-line file; swap models by changing one env variable.
  • Architecture whiteboards ship as editable Excalidraw files that map directly to the codebase.

Verdict Grab this if you want to understand how personal AI assistants work under the hood without drowning in framework indirection. Skip it if you just need a product to use—ChatGPT and Claude Desktop already won that race.

Frequently asked

What is ShenSeanChen/waku-agent?
A local-first personal assistant that unpacks the four pillars of agent engineering—harness, loop, memory, and eval—into plain Python you can read in an afternoon.
Is waku-agent open source?
Yes — ShenSeanChen/waku-agent is open source, released under the MIT license.
What language is waku-agent written in?
ShenSeanChen/waku-agent is primarily written in Python.
How popular is waku-agent?
ShenSeanChen/waku-agent has 536 stars on GitHub.
Where can I find waku-agent?
ShenSeanChen/waku-agent is on GitHub at https://github.com/ShenSeanChen/waku-agent.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.