Local and legible
The shared record is ordinary Markdown in the repository—not an opaque remote database or a vendor-specific memory store.
whyline keeps decisions, rejected alternatives, and active handoffs beside the code—so the next agent can understand not only what changed, but why.
Coding agents are useful in different ways, but every switch usually resets the conversation. whyline gives the repository a small, durable memory: plain Markdown decisions, lightweight event history, and an explicit handoff the next agent can pick up.
The shared record is ordinary Markdown in the repository—not an opaque remote database or a vendor-specific memory store.
It captures the decision, rationale, and rejected path instead of asking the next agent to reread an entire chat log.
whyline launches each vendor’s own CLI. It never reads credentials or adds separate per-token billing.
Hooks observe the work; the agent records important decisions and rejected alternatives. A deliberate sync packages the current branch, commit, changes, and next action.
A brief surfaces the latest handoff and committed decisions. whyline explain can connect a line of code back to the reason that created it—even months later.
The implementation uses only the Python standard library at runtime. Operational state stays project-scoped; committed decisions travel with the Git history.
briefsyncPython 3.11+ · initialise once per Git repository · supports Claude Code and Codex on macOS and Linux.
uv tool install whyline