DEV Community

curioustore
curioustore

Posted on • Originally published at github.com

gitwink — a read-only tray git glance for the AI-agent era

I used to live in VS Code with GitLens pinned — the branch graph, heat-mapped blame, the lens annotations. That was my git workflow.

Then 2026 happened. With Cursor, Claude Code, and Codex doing the actual editing, the editor itself became optional. The only thing dragging me back was GitLens.

That felt wasteful — booting an entire IDE just to peek at commit history. The agent runs the git commands now; I only need to sanity-check the result, occasionally, when something looks off.

So I built gitwink — the smallest possible tool for that loop. A tray icon that expands into a glance, hands the commit off as AI context, and gets out of the way.

Read-only by design. It cannot commit, push, merge, or modify anything. If I need git surgery, I tell the agent.

gitwink hero

The 0.5-second confirm loop

agent commits  →  tray click  →  inline expand  →  "Copy as AI context"
                                                  →  paste into Claude/Codex/Cursor
                                                  →  "did the agent do this right?"
Enter fullscreen mode Exit fullscreen mode

No window switching. No IDE boot. The whole loop fits inside a glance.

What's in it

  • Tray-resident (Windows tray / macOS menu bar) — click to toggle, global hotkey Ctrl+Shift+G to summon from anywhere. Right-click the tray icon for Reset position / Open settings file / Quit.
  • First-run discovery that walks your usual code dirs (source, Documents, Projects, Code, Dev, repos, Desktop, every non-system drive on Windows; ~/Projects, ~/Code, ~/Developer on macOS) and caches the result in SQLite. No "add repo" friction.
  • Unified commit timeline across all repos, with chips above for filtering by Repo (search + pinning), Time range (24h / 3d / 7d / 30d / All), and Authors (multi-select with counts). Per-row markers — commit · merge · tagged — and branch label badges when a commit isn't on the currently checked-out branch.
  • Single-repo DAG view — pick a repo and the panel switches to a per-branch graph with a custom SVG lane drawer (eight-colour palette, hashed from branch name; main / master / develop kept neutral).
  • Inline expand on click — commit body + changed-file list with NEW/MOD/REN/DEL badges, +/− line counts, bin + size for binaries, GitLens-style filename emphasis.
  • Separate diff window for the full read — file sidebar + side-by-side diff with synchronised horizontal scroll, PNG / JPG / GIF / WebP / SVG image preview (before / after, with checker background). Singleton, remembers position, size, and maximised state. Local Git LFS objects are looked up automatically; missing ones are explained inline.
  • Copy as AI contextc key or button. Produces a markdown block with the commit, file list, and (if small enough) the full diff, ready to paste into Claude / Codex / Cursor.

The diff window

For the "wait, did the agent actually do that?" moments. Click any commit and a separate window opens — full file sidebar, side-by-side diff with synchronised scroll, inline image preview for binary assets, and a singleton that remembers position, size, and maximised state.

diff window

Stack

  • Tauri 2 — Rust core, web frontend, native tray
  • Rust + git2 for the git plumbing
  • React + TypeScript for the panel
  • SQLite for the repo discovery cache
  • Custom SVG DAG drawer (eight-colour palette, hashed from branch name)

No telemetry. No phone-home. The only network access is an opt-out update check.

Get it

Microsoft Storegitwink on the Microsoft Store →. The Store build is signed by Microsoft during certification, so no SmartScreen prompt appears, and the Store owns updates.

WinGet:

winget install gitwink
Enter fullscreen mode Exit fullscreen mode

Scoop:

scoop bucket add var-gg https://github.com/var-gg/scoop-bucket
scoop install gitwink
Enter fullscreen mode Exit fullscreen mode

Scoop installs by extraction, so no SmartScreen prompt either. Update later with scoop update gitwink.

Or grab the release directlylatest release on GitHub:

  • Windows.exe (NSIS installer) or .msi
  • macOS.dmg (universal)

Direct downloads are currently unsigned (gitwink participates in the SignPath Foundation free code-signing program for OSS; the certificate will sign these artefacts once approved). The release notes have the SmartScreen / Gatekeeper bypass steps.

Building from source is straightforward — pnpm install && pnpm tauri dev. Requires Node 20+, Rust stable (msvc toolchain on Windows), Visual C++ Build Tools or Xcode CLT.

Status

v0.4 — usable, daily-driven. Cold-start friendly tray app.

  • Windows 10/11 — primary target, tested on dev hardware
  • macOS 13+ — should work, less battle-tested
  • Linux — later

Source on GitHub → (MIT licensed)

If the AI-agent workflow describes your week too, give it a wink. Feedback and issues welcome on GitHub.

Top comments (0)