Das Problem
Coding-Agenten öffnen Pull Requests schneller, als irgendjemand sie lesen kann. In einer Studie über 33.596 von Agenten geschriebene Pull Requests hatten 61 Prozent überhaupt kein dokumentiertes menschliches Review („These Aren't the Reviews You're Looking For", arXiv 2605.02273, 2026).
Die gängigen Review-Werkzeuge sind für eine Handvoll Pull Requests pro Woche gebaut: ein Browser-Tab pro PR, verteilt über Dutzende Repositories. Shepherd ist für die Flut gebaut.
Eine Inbox, jede Aktion per Tastatur
Shepherd ist eine native macOS-App, die alle Pull Requests aus allen Repositories, die Sie interessieren, an einem Ort sammelt. Die App hält eine lokale Kopie dessen, was GitHub weiß, und lässt Sie schnell darauf handeln.
- Review ohne Browser-Tab. Echte Diffs direkt in der App — nebeneinander oder inline, mit Syntax-Highlighting und dem Diff-Viewer aus VS Code. Die Dateien sind danach sortiert, was zuerst Aufmerksamkeit verdient. Inline-Kommentare, Pending Reviews, Approve, Request Changes, Merge, Squash und Rebase: volle GitHub-Parität.
- Fokus-Session. Ein Tastendruck führt durch jeden Pull Request, der auf Sie wartet — über eine Warteschlange, die beim Start eingefroren wird.
- Triage statt Stapel. Shepherd erkennt, ob ein PR von Claude Code, Copilot, Codex, Devin, Cursor oder einem Kollegen kommt, und stellt die Behauptungen aus der Beschreibung neben das, was Diff und CI tatsächlich zeigen. Grüne PRs lassen sich gesammelt freigeben oder mergen, hinter einer Bestätigung, die auflistet, was übersprungen wird und warum.
- Zurück an den Agenten. Ein Pull Request oder ein einzelner Befund lässt sich an Claude Code übergeben, in einem isolierten Worktree und mit Limits für Runden und Budget. Auto-Merge-Regeln mergen grüne, freigegebene Agenten-PRs — eingegrenzt nach Repository und Label, jede Entscheidung im lokalen Audit-Log.
- Entwürfe, nie Einreichungen. Heuristiken immer, Apples On-Device-Modelle wo verfügbar, und auf Wunsch ein eigener Key: Claude, jeder OpenAI-kompatible Endpunkt, konduit oder Ollama. Eine KI-Zusammenfassung oder ein Kommentar landet als editierbarer Text im Feld — nichts wird in Ihrem Namen abgeschickt.
Dazu kommen Webhooks nach n8n, shepherd://-Links, Kurzbefehle, Spotlight und eine CLI, die die App aus dem Terminal steuert.
Lokal by design
Pull Requests, Review-Entwürfe, der Suchindex und das Audit-Log liegen in einer SQLite-Datenbank auf dem Mac. Tokens und Keys liegen im Schlüsselbund. Es gibt keinen Shepherd-Account und keinen Shepherd-Server.
Welche Hosts die App kontaktiert, steht vollständig auf der Landingpage — GitHub, optionale und standardmäßig deaktivierte anonyme Nutzungszählung, der Update-Check, ein selbst gewählter KI-Endpunkt und ein optionaler, eigener S3-Bucket, in den Einstellungen und Secrets nur AES-256-GCM-verschlüsselt wandern.
Installation
brew install --cask schnaq/tap/shepherd
Alternativ als DMG über die Releases auf GitHub. Die App ist von Apple notarisiert und aktualisiert sich über Sparkle selbst. Voraussetzung ist macOS 27 Golden Gate auf Apple Silicon; unter macOS 26 läuft Version 1.3 weiter. Anmeldung per GitHub Device Flow oder mit einem Fine-grained Personal Access Token. Shepherd spricht Deutsch und Englisch.
Stack
- Swift 6 und SwiftUI für die native App, SQLite als lokale Source of Truth.
- Monaco, der Diff-Editor aus VS Code, eingebettet für die Review-Ansicht.
- GitHub GraphQL zum Lesen, REST zum Schreiben.
- Eine begleitende CLI (
shepherd), die die App über ihr URL-Schema steuert.
Der Quellcode steht unter MIT-Lizenz auf github.com/schnaq/shepherd.
Warum wir das bauen
Wir arbeiten selbst täglich mit Coding-Agenten — und haben gemerkt, dass der Engpass nicht mehr das Schreiben von Code ist, sondern das Lesen. Shepherd ist das Werkzeug, das wir dafür selbst gebraucht haben: schnell, tastaturgesteuert und ohne dass unser Code die Maschine verlässt, wenn wir das nicht wollen.