Open Source|MIT License

clue

AI writes your code.
clue remembers why.

Every AI commit gets a structured reasoning entry — what was explored, what decisions were made, and why. Zero extra API calls.

$npm install -g @getclue/cli
Scroll to explore

50 commits.
Zero context.

Your AI wrote 3,000 lines across a dozen files. The commit messages say “refactor auth” and “fix tests.” Three months from now, nobody — including the AI — will remember why.

git log — my-project
$ git log --oneline --stat

One command.
Full story.

clue log enriches every commit with the reasoning that drove it — what files were explored, what decisions were made, and whether tests passed on the first try.

clue log — my-project
$ clue log

Pick any commit.
Get the full story.

clue show opens the complete reasoning behind a single commit — the “why” that the diff can't tell you, the files that were read but not changed, and the trade-offs that were considered.

clue show a3f1c2d — my-project
$ clue show a3f1c2d

Two commands.
You're done.

Install globally, run clue init in your project, and every AI-assisted commit automatically captures its reasoning. No config. No setup. It just works.

~ — zsh
$ npm install -g @getclue/cli

How it works

01

Markdown in git

Every commit gets a .clue/<hash>.md file — YAML frontmatter for metadata (files changed, test results, fix cycles) and markdown sections for the reasoning (why, explored, decisions, risks). Plain text, version controlled, readable without any tooling.

02

Claude does the work

clue init installs a Claude Code skill and a PreToolUse hook. The skill tells Claude to write a reasoning entry before every commit. The hook blocks the commit if no entry exists. Zero extra LLM calls — it costs ~500 tokens from Claude's existing session context.

03

Your call

Two storage backends: git-commit keeps entries in-repo so they travel with the code, or folder stores them in ~/.clue/ if you prefer to keep your repo clean. Install per-project or globally with --user. Works with existing repos — commits before clue are simply skipped.

Stop losing context.

Every AI commit should explain itself. clue makes it automatic — zero extra cost, zero extra effort.

$npm install -g @getclue/cli