Give your coding agent a long-term memory.
Agent Wiki is one markdown vault that your agents build as they work. They save the decisions, fixes and research they find, and search the vault before they go to the web. Each session starts with what every earlier session learned, in every project and on every machine.
pip install agent-wiki-kb
Free and open source (GPL-3.0). Python 3.10 or later. Works with Claude Code, pi and OpenCode.
The payments API is timing out under load again. Where do we start?
- $ awiki search "payments timeout"
- ## Pin pgbouncer to transaction mode
- decisions/pgbouncer-mode.md
- ## Payments Service API
- projects/payments-service-api.md
- $ awiki show decisions/pgbouncer-mode.md --section "Why"
- Session mode held one server connection per client. Under load the pool ran out and requests waited 30 s.
The agent starts from the decision your team already made, reads only the part it needs, and goes straight to the fix.
How it remembers
You set it up once. After that, the work your agents do goes into the vault, and the vault comes back to them when it is relevant.
- 1Sessions file themselves
Each time an agent starts, a background sync puts every finished session from Claude Code, pi and OpenCode into the vault.
- 2The agent searches before the web
awiki searchfinds the pages that match all your words.awiki showreads a page whole, or one section of it. - 3It saves what it learns
A decision, a fix that was hard to find, a pattern you can use again. The
awiki-saveskill writes it as a page for the next session.
One command teaches your agent
awiki guide prints a short block for CLAUDE.md or AGENTS.md. Tell your agent to run it, and the agent adds the block to the project itself.
One vault for all your projects
A fix you found in one repo is there for the next repo. The vault is not per project.
Local, or shared over the network
awiki serve shares the vault over HTTP. Other machines use the same awiki commands. Each user gets per-vault roles and tokens, and there is a read-only web viewer.
Safe for smaller models
The CLI is the only way in, so the rules hold for every agent. Sources in raw/ do not change. A page that was edited by hand shows a diff, and awiki does not overwrite it.
It is just markdown files
No database and no server you must run. Each page is a markdown file with YAML frontmatter and [[wikilinks]]. You can grep it, open it in Obsidian or Logseq, or script it in Python.
--- title: Payments Service API topic: projects tags: [payments, api, backend] created: 2026-04-14 updated: 2026-09-02 sources: [raw/payments-service-notes.md] --- # Payments Service API REST API for the mobile app and external integrations. Timeouts under load come from the connection pool, not the handlers. See [[Postgres connection pooling]] and [[Pin pgbouncer to transaction mode]].
Get started
Install the CLI, make a vault, and connect your agent. Then use your agent as usual.
pip install agent-wiki-kb awiki init ~/vaults/agent-wiki awiki skills install awiki hook install --agent claude
Set up agent-wiki from https://github.com/TacoTakumi/agent-wiki on this machine.
Not on Claude Code?
Use --agent pi or --agent opencode. For other tools, --agent manual prints the steps to connect them by hand.
We use awiki here. Run awiki guide and wire it into this project's memory file.
Pairs with specflo
specflo is our spec-driven workflow for coding agents. It takes a feature through brainstorm, spec, plan and execute, with each step kept as markdown on disk. It uses Agent Wiki as its research memory, so each new feature starts from what the last one learned.
- Brainstorm specflo-brainstorm
Checks the wiki for earlier decisions and research before it starts on a new idea.
- Research specflo-research
Starts from the wiki, checks it against the web, and saves the findings back with their sources and dates.