Map

CodeAlmanac

Toolbox toolboxai-agentsdocumentationpythonknowledge-basewatchlistPythonApache-2.0 โ†ณ show in map Markdown
title
CodeAlmanac
type
toolbox
summary
A codebase wiki maintained by coding agents โ€” plain markdown in your repo, fed from agent transcripts on a schedule and gardened daily
tags
ai-agents, documentation, python, knowledge-base, watchlist
language
Python
license
Apache-2.0
created
2026-07-21
updated
2026-07-21

CodeAlmanac maintains a wiki about your codebase, written and kept current by coding agents, aimed at the context that code itself cannot carry: why a system is shaped the way it is, what broke before, which invariants matter, and how a workflow crosses files and services. The wiki is plain markdown under almanac/ in the repository, indexed locally, and reviewed in Git like any other change. It's the llm-wiki-pattern pointed at a codebase โ€” see llm-wiki-as-agent-memory for why several unrelated projects landed on the same substrate.

How it works

Three lifecycle agents do all the writing โ€” build, ingest, and garden โ€” driven through the project's own Yoke SDK, with packaged prompt files as the complete task instructions.

ingest folds material into the wiki. Inputs can be files, directories, git diffs, commit ranges, GitHub PRs or issues, URLs, and local agent transcripts:

codealmanac ingest README.md --using codex
codealmanac ingest github:pr:123 --using claude

garden works on the graph rather than adding to it: stale pages, broken links, topics, weak leads, duplicate pages, unsupported claims.

The read surface is shared by agents and humans, and is deliberately plain:

codealmanac search "checkout timeout"
codealmanac search --mentions src/checkout/
codealmanac show checkout-flow
codealmanac topics
codealmanac health
codealmanac serve            # local web viewer, with a Jobs panel

The automation is the point

codealmanac setup installs three macOS launchd jobs:

Job Default What it does
Sync every 5h Scans local Codex and Claude transcript stores for conversations since the last sync, queues durable knowledge for the matching wiki
Garden every 24h Reviews every registered wiki for stale, duplicated or poorly connected pages
Update every 24h Updates the CLI when it's safe to do so

Sync is the interesting one, and it's the piece most similar systems lack: the knowledge source is your existing agent conversations, harvested passively, rather than something you remember to write down. The design explicitly allows nothing to happen โ€” "No-op is valid. If the material adds no durable wiki knowledge, the harness should leave the wiki unchanged" โ€” which is the right default for an unattended writer and not what you'd get from a naive implementation.

Trust model

The README is unusually direct about this, and it's the main thing to weigh before running it:

Lifecycle agents are trusted local coding agents. They run with the same broad, non-interactive filesystem permissions CodeAlmanac historically provided, so the almanac/ boundary is an instruction and commit policy, not an OS sandbox.

So an unattended agent with full filesystem access runs on your machine every five hours. Their advice is to use it only in repositories where you accept that, and to review the git diff when automatic commits are off. Anyone already thinking about sandboxing-ai-agents or bubblewrap-dev-env will want to wrap this rather than take the default.

Telemetry is opt-in-by-recommendation during setup; the documented payload is command and lifecycle outcomes plus sanitized crashes under a random install UUID, with GeoIP disabled and no code, paths, arguments, queries, prompts or transcripts. DO_NOT_TRACK=1 works.

Constraints

macOS only, and requires either Codex or Claude Code as the runner. Python 3.12+, installed with uv tool install codealmanac@latest. The launchd dependency is what pins it to macOS โ€” the underlying design has nothing Apple-specific about it, so a Linux systemd-timer port is the obvious missing piece.

Assessment

The two ideas worth stealing regardless of whether you adopt the tool: harvesting durable knowledge from agent transcripts you're already producing, and scheduling a recurring gardening pass as a first-class job rather than a thing you do when the wiki gets bad. This vault does the second manually as its /lint workflow.

On watchlist โ€” 529โ˜…, YC S26, macOS-only, and the automatic-agent-with-filesystem-access model needs to survive contact with users before it's a default-yes.

Apache-2.0, 529โ˜…, 45 forks. Repo: https://github.com/AlmanacCode/codealmanac