Ferret verwenden
An Agents senden
Führen Sie Ihren Coding-Agent im integrierten Terminal aus und übergeben Sie ihm ein Review mit einem Klick. Claude Code und Codex sind die üblichen Beispiele, aber jeder Agent aus der Liste unten funktioniert, ebenso eine CLI, die Sie selbst hinzufügen. Sie können die Anweisung auch für einen Agent kopieren, der anderswo läuft, oder das Review auf GitHub veröffentlichen.
#Befunde eines Reviews
Jede Karte im Tab Befunde bietet:
- Direktes Bearbeiten von Titel und Anforderung
- Umschalter Senden / Nicht senden
- Aufnahme ansehen (springt zu dieser Stelle) und Bild ersetzen (ein anderes Einzelbild wählen)
- Bestätigen / Als „Prüfen“ markieren, Mit nächstem zusammenführen, Löschen
Nach Fortschritt filtern blendet Befunde nach Status ein oder aus (zum Beispiel Nur die, die auf Ihre Prüfung warten); Alle anzeigen hebt den Filter auf.
In der Kopfzeile finden Sie Widerrufen, Ordner öffnen, Für Agent kopieren, An GitHub / GitLab senden, Ordnen und An Agent senden. Gesprochenes, das nicht zu einem Befund wurde, steht unter Ausgeschlossene Sprache; dort holt Als Befund wiederherstellen es zurück.

#Agents im integrierten Terminal ausführen
Wenn ein Projekt geöffnet wird, startet Ferret für jeden Agent unter Einstellungen → Agents → Beim Öffnen eines Projekts starten einen Terminal-Tab, im Projektordner und im normalen Modus des Agents. Standardmäßig sind das Claude Code und Codex:
claude
codex
Sie können stattdessen beliebige Agents aus der Liste der unterstützten Agents wählen (sie starten in der Reihenfolge, in der Sie sie auswählen) oder gar keinen.
Berechtigungsabfragen bleiben aktiv
Wenn Sie ein Projekt registrieren oder klonen, vertraut Ferret ihm dadurch nicht. Agents wie Claude Code und Codex fragen beim ersten Mal, ob Sie dem Ordner vertrauen, und fragen weiterhin nach, bevor sie Dateien bearbeiten oder Befehle ausführen. Damit Agents in einem Projekt, dem Sie vertrauen, Berechtigungsabfragen, Freigaben und die Sandbox überspringen, aktivieren Sie dies für dieses Projekt unter Einstellungen → Agents → Berechtigungsabfragen überspringen und bestätigen. Ferret fügt das jeweilige Skip-Flag des Agents hinzu, sofern eines bekannt ist; Agents ohne bekanntes Flag fragen weiterhin. Die Einstellung gilt dann nur für Agents, die Sie selbst in diesem Projektordner öffnen; Agents, die beim Öffnen des Projekts starten, fragen immer. Flags zum Überspringen von Berechtigungen, die Sie in die Argumente eintippen, werden ignoriert.
Ist kein Agent ausgewählt, öffnet sich eine normale Shell. Das Menü + öffnet ein Neues Terminal, startet einen Ihrer Agents in einem neuen Tab oder springt zu den Agent-Einstellungen …. Sein Suchfeld findet außerdem Tabs, gespeicherte URLs und Dateien.
Tabs zeigen den Zustand des Agents: Läuft, Wartet auf Eingabe, Fertig (ungelesen), Inaktiv. In der Seitenleiste ist ein Projekt, in dem ein Agent läuft, markiert, sodass Sie es sehen, ohne das Projekt zu wechseln.
Zum Teilen ziehen. Ziehen Sie einen Tab oder einen Bereich an seinem Griff (sichtbar, sobald ein Tab geteilt ist) und legen Sie ihn ab:
- auf dem äußeren Viertel eines Bereichsrands: Links teilen / Rechts teilen / Oben teilen / Unten teilen
- in der Mitte eines Bereichs: Als Tab öffnen (ein Bereich verlässt seine Teilung und wird zu einem eigenen Tab)
- auf dem schmalen Streifen um den gesamten Terminalbereich: Gesamte Fläche links teilen usw. (bei 2 oder mehr Bereichen)
- auf der Tableiste: Hier als Tab ablegen
Prozesse laufen weiter, während Sie sie verschieben, und ein leer gewordener Tab wird geschlossen. Teilen per Tastatur:
| Aktion | macOS | Windows / Linux |
|---|---|---|
| Neues Terminal | ⌘T | CtrlT |
| Rechts teilen | ⌘D | CtrlShiftD |
| Unten teilen | ⌘⇧D | AltShiftD |
| Bereich / Tab schließen | ⌘W | CtrlW |
#Unterstützte Agents
Ferret ist nicht an einen bestimmten Agent gebunden. Es erkennt die folgenden Coding-Agents: Es kann sie starten, sie für An Agent senden in einem Terminal erkennen und anzeigen, ob sie installiert sind. Einstellungen → Agents listet sie mit Installiert / Nicht gefunden auf, mit einer Schaltfläche Installieren, wo der Anbieter einen einzeiligen Installer veröffentlicht, sowie mit Befehl und Argumenten für jeden Agent.
- Claude Code (öffnet in einem neuen Tab)
claude - Codex (öffnet in einem neuen Tab)
codex - Gemini CLI (öffnet in einem neuen Tab)
gemini - Cursor (öffnet in einem neuen Tab)
agent - GitHub Copilot (öffnet in einem neuen Tab)
copilot - Devin (öffnet in einem neuen Tab)
devin - OpenCode (öffnet in einem neuen Tab)
opencode - Amp (öffnet in einem neuen Tab)
amp - Droid (öffnet in einem neuen Tab)
droid - Kiro (öffnet in einem neuen Tab)
kiro-cli chat - Aider (öffnet in einem neuen Tab)
aider - Ante (öffnet in einem neuen Tab)
ante - Antigravity (öffnet in einem neuen Tab)
agy - Auggie (öffnet in einem neuen Tab)
auggie - Autohand Code (öffnet in einem neuen Tab)
autohand - BLACKBOX CLI (öffnet in einem neuen Tab)
blackbox - Cline (öffnet in einem neuen Tab)
cline - CodeBuddy (öffnet in einem neuen Tab)
codebuddy - Codebuff (öffnet in einem neuen Tab)
codebuff - Command Code (öffnet in einem neuen Tab)
command-code --trust - Continue (öffnet in einem neuen Tab)
cn - Charm (Crush) (öffnet in einem neuen Tab)
crush - DeepSeek Harness (öffnet in einem neuen Tab)
dsh tui - ForgeCode (öffnet in einem neuen Tab)
forge - Freebuff (öffnet in einem neuen Tab)
freebuff - Goose (öffnet in einem neuen Tab)
goose session - Grok (öffnet in einem neuen Tab)
grok - Hermes Agent (öffnet in einem neuen Tab)
hermes --tui - Junie CLI (öffnet in einem neuen Tab)
junie - Kilocode (öffnet in einem neuen Tab)
kilo - Kimi (öffnet in einem neuen Tab)
kimi - Letta Code (öffnet in einem neuen Tab)
letta - MiMo Code (öffnet in einem neuen Tab)
mimo - Mistral Vibe (öffnet in einem neuen Tab)
vibe - Muse (öffnet in einem neuen Tab)
muse --trust-workspace - oh-my-pi (öffnet in einem neuen Tab)
omp - OpenClaude (öffnet in einem neuen Tab)
openclaude - OpenClaw (öffnet in einem neuen Tab)
openclaw chat - OpenHands CLI (öffnet in einem neuen Tab)
openhands - Pi (öffnet in einem neuen Tab)
pi - Prime Agent (öffnet in einem neuen Tab)
prime-agent - Qoder CLI (öffnet in einem neuen Tab)
qoder - Qwen Code (öffnet in einem neuen Tab)
qwen - Roo Code CLI (öffnet in einem neuen Tab)
roo - Rovo Dev (öffnet in einem neuen Tab)
acli rovodev run - Trae CLI (öffnet in einem neuen Tab)
traecli - ZCode (öffnet in einem neuen Tab)
zcode
Nicht in der Liste? Einstellungen → Agents → Eigenen Agent hinzufügen registriert eine beliebige CLI oder ein Wrapper-Skript (einen Namen, einen Befehl und optional den Prozessnamen, an dem er erkannt wird), oder Sie fügen ihn unter agents.customAgents in der settings.json hinzu. Agents, die außerhalb von Ferret laufen, können Für Agent kopieren nutzen.
Einige Funktionen hängen vom Agent ab und sind vorerst auf Claude Code und Codex beschränkt:
- Konten und Nutzung: Wechsel zwischen mehreren Logins und die Rate-Limit-Anzeige in der Fußzeile.
- Ordnen: läuft über Ihr Claude-Code- oder Codex-Login oder über eine LLM-API, die Sie konfigurieren.
#An Agent senden / Für Agent kopieren
- Klicken Sie auf An Agent senden. Standardmäßig (Automatisch (aktueller Tab oder laufender Agent)) geht das Review an den Agent im aktuellen Terminal-Tab oder an einen laufenden Agent. Mit dem Pfeil neben der Schaltfläche (Agent zum Senden wählen) wählen Sie einen bestimmten Agent oder Tab.
- Ferret schreibt die Anweisung in die Eingabe des Agents und sendet sie ab. Den Fortschritt verfolgen Sie im Terminal.
Läuft kein Agent, startet Ferret zuerst einen und sendet, sobald er bereit ist. Solange der Agent auf die Antwort zu einer Berechtigungsabfrage wartet, wird nichts gesendet. Antworten Sie zuerst im Terminal.
Für Agent kopieren legt dieselbe Anweisung in die Zwischenablage, für einen Agent, der anderswo läuft (ein anderes Terminal, eine IDE oder eine App). Berücksichtigt werden nur Befunde, die auf Senden gestellt sind. Das Video wird nie mitgeschickt.
#Abnahmeprüfung mit einem Entscheidungsmodell
Schalten Sie dies ein, und Ihr Coding-Agent prüft seine eigene Arbeit anhand jedes Befunds, bevor er „Erledigt“ meldet. Ferret beurteilt selbst nichts: Es gibt dem Agent ein Entscheidungsmodell (eine beliebige System-One-kompatible API) und weist ihn in der feedback.md an, so lange in einer Schleife zu arbeiten, bis jeder Befund besteht.
- Der Agent setzt die Befunde um.
- Für jeden Befund erstellt er einen AFTER-Screenshot (gleicher Viewport und gleicher Seitenzustand wie das BEFORE-Standbild) und sendet eine Anfrage mit dem Text des Befunds, seiner Zeile „Done when“ und den BEFORE/AFTER-Bildern an das Entscheidungsmodell.
- Ein Befund besteht, wenn P(done) mindestens den Schwellenwert erreicht (Standard 0,7) und die Wahl
donelautet. Der Agent behebt den Rest und beurteilt in jeder Runde alle Befunde neu. Er hört erst auf, wenn alle Befunde in derselben Runde bestehen, oder aus einem nachvollziehbaren Grund, den er angeben muss: Die API ist nicht erreichbar, ein Befund liegt außerhalb des Umfangs, oder ein Befund kommt bei unveränderten Werten nicht weiter. - Die abschließende Liste „Erledigt“ / „Nicht erledigt“ enthält die Werte jedes Befunds und die Anzahl der Runden.
Richten Sie es unter Einstellungen → Entscheidungsmodell ein und aktivieren Sie Entscheidungsmodell-Prüfung zu Agent-Anweisungen hinzufügen. Voreinstellungen füllen nur die Felder aus; jedes Feld bleibt bearbeitbar, und Benutzerdefiniert funktioniert mit jeder kompatiblen API.
| Voreinstellung | Anfrage-URL | Modelle | Schlüssel |
|---|---|---|---|
| Ollama (Standard) | http://localhost:11434/v1/systemone | clef-flash, clef (lesen Bilder); nimble, tev1 (nur Text) | keiner, kostenlos |
| Cloudflare Workers AI | https://api.cloudflare.com/client/v4/accounts/{account_id}/ai/run/@cf/cloudflare/{model} | clef-flash, clef (lesen Bilder) | CLOUDFLARE_API_TOKEN (Berechtigung für Workers AI); Konto-ID aus dem Feld oder CLOUDFLARE_ACCOUNT_ID |
| Vercel AI Gateway | https://ai-gateway.vercel.sh/typesafe/v1/systemone | typesafe-ai/jev, convaiinnovations/laya (nur Text) | AI_GATEWAY_API_KEY |
| TypeSafe | https://api.typesafe.ai/v1/systemone | jev-latest, jev-preview (nur Text) | TYPESAFE_API_KEY |
| Benutzerdefiniert | eine beliebige vollständige URL | beliebig | Bearer, ein eigener Header oder keiner; zusätzliche Header möglich |
Für Ollama installieren Sie es (0.35.1 oder neuer für Clef / Clef Flash) und laden das Modell in einem Terminal herunter. Ferret führt keine Installer aus:
ollama pull clef-flash
Schlüssel kommen aus dem Schlüsselfeld (zusammen mit Ihren anderen API-Schlüsseln gespeichert), aus einer von Ihnen benannten Umgebungsvariable (aus der Umgebung der App, der .env des Projekts oder ~/.ferret/.env) oder aus apiKey in der settings.json. Zusätzliche Header können mit ${VAR} Werte aus Umgebungsvariablen lesen.
Wie der Schlüssel aus den Prompts herausgehalten wird
Agents sehen Ihren Schlüssel nie. Ferret betreibt ein lokales Relay auf 127.0.0.1 und gibt jedem Terminal FERRET_DECISION_URL (das Relay, mit einem Token pro Terminal), FERRET_DECISION_MODEL und FERRET_DECISION_IMAGES (für ein Release werden zusätzlich die alten Namen MOVIE_ADE_DECISION_* gesetzt). Das Relay fügt Schlüssel und Header hinzu und leitet die Anfrage unverändert weiter, sodass Prompts, feedback.md und Agent-Transkripte keine Geheimnisse enthalten. Terminals, die Sie nach einer Änderung der Einstellungen öffnen, übernehmen diese.
Cloudflare weicht in zwei Punkten von der System-One-Dokumentation ab (geprüft gegen die Live-API): Bilder müssen Data-URIs sein (data:image/jpeg;base64,…, sonst 422 „image must be an embedded base64 data URI“), und die Antwort ist als { "result": { … }, "success": true } verpackt (Fehler kommen als { "success": false, "errors": [ … ] } zurück). Die Cloudflare-Voreinstellung setzt Bildkodierung auf Data-URI, Agents erhalten dies als FERRET_DECISION_IMAGE_FORMAT, und die Anweisungen fordern sie auf, .result zu lesen, wenn vorhanden. Das Relay reicht beide Richtungen unverändert durch. Um statt eines API-Tokens einen Global API Key zu verwenden, setzen Sie Authentifizierung auf Kein Schlüssel und fügen die Header X-Auth-Email: ${CLOUDFLARE_EMAIL} und X-Auth-Key: ${CLOUDFLARE_API_KEY} hinzu.
Nur Clef und Clef Flash lesen Bilder. Bei einem reinen Textmodell schalten Sie VORHER/NACHHER-Bilder senden aus; der Agent urteilt dann nur anhand von Text, was weniger zuverlässig ist.
Ollama und große Bilder
Ollama 0.35.0 begrenzt Anfragen an /v1/systemone auf 64 KiB, daher schlagen Anfragen mit Screenshots mit HTTP 413 fehl. Die Anweisungen fordern den Agent auf, beide Bilder auf höchstens 1024px Breite als JPEG (Qualität etwa 70) zu verkleinern. Erhält er trotzdem 413, aktualisieren Sie Ollama auf 0.35.1 oder neuer oder wechseln Sie zu Cloudflare Workers AI.
#API-Nutzung in der Fußzeile
Entscheidungsaufrufe laufen über das Relay, daher kann Ferret sie zählen. Der Eintrag in der Fußzeile neben der Nutzungsanzeige des Agents zeigt das Entscheidungsmodell sowie die Aufrufe, Tokens und Kosten des heutigen Tages (zum Beispiel clef-flash · 42 calls · 18.3k tok). Ein Klick darauf zeigt die Werte für heute, diesen Monat, pro Projekt, pro Modell und pro Art (Entscheidung / Transkription / Ordnen) sowie die letzten 50 Aufrufe.
Kosten erscheinen nur, wenn die API sie meldet (Vercel AI Gateway tut das) oder wenn Sie unter Einstellungen → Entscheidungsmodell Preise pro 1 Mio. Tokens festlegen; andernfalls wird „—“ angezeigt. Protokolliert werden nur Metadaten (Zeit, Projekt, Modell, Status, Latenz, Größe, Bildanzahl, Tokens, Kosten), nie Bilder, Text oder Schlüssel, und zwar in ~/.ferret/usage/decision-YYYY-MM.jsonl, eine Datei pro Monat.
#Anweisung anpassen
Bearbeiten Sie Einstellungen → Agents → Anweisungen für Agent. Zwei Variablen werden ersetzt:
| Variable | Wird ersetzt durch |
|---|---|
{{path}} | Absoluter Pfad der feedback.md |
{{relpath}} | Pfad relativ zum Projekt: .ferret/reviews/<id>/feedback.md |
Lassen Sie das Feld leer, um die Standardanweisung zu verwenden. Die maximale Länge beträgt 2000 Zeichen, und Anweisungen zurücksetzen stellt die Standardanweisung wieder her. Beispiel:
Read {{relpath}} and the PNGs next to it. Fix only findings marked to send, one commit per finding, then run the tests.
Die Einstellung wird als agentPrompt in der settings.json gespeichert.
#An GitHub oder GitLab senden (Issue / Kommentar zu PR oder MR)
An GitHub senden veröffentlicht das Review als neues Issue oder als Kommentar zu einem Ihrer offenen Pull Requests. Die Authentifizierung übernimmt die GitHub CLI (öffnet in einem neuen Tab). Ferret liest oder speichert nie ein Token.
- Installieren Sie
gh:brew install gh(macOS),winget install --id GitHub.cli(Windows), oder siehe cli/cli (öffnet in einem neuen Tab). - Einstellungen → GitHub / GitLab → Im Terminal anmelden führt
gh auth login --web -h github.comim integrierten Terminal aus. - Klicken Sie auf An GitHub senden, wählen Sie Neues Issue erstellen oder einen PR und prüfen Sie Titel und Text (bearbeitbar).
- Setzen Sie das Häkchen zur Bestätigung und klicken Sie dann auf Issue erstellen oder Kommentar senden.
Details:
- Das Repository ergibt sich aus
git remote get-url origin. - Ferret führt
gh issue create --repo … --title … --body-file -odergh pr comment <n> --repo … --body-file -aus. - Der Text ist die
feedback.mdohne die Bildzeilen (Bilder werden nicht hochgeladen), bis zu 60.000 Zeichen. - Als PRs kommen Ihre eigenen offenen PRs infrage (bis zu 30).
Ist GH_TOKEN oder GITHUB_TOKEN gesetzt, verwendet gh dieses zuerst, und der Einstellungsbereich warnt davor.
GitLab. Ist origin ein GitLab-Projekt (gitlab.com oder ein selbstverwaltetes GitLab), sendet dieselbe Schaltfläche über die GitLab CLI (öffnet in einem neuen Tab) (glab) an GitLab: als neues Issue oder als Kommentar zu einem Ihrer offenen Merge Requests. Melden Sie sich über Einstellungen → GitHub / GitLab an; dies führt glab auth login (bei einem selbstverwalteten GitLab mit --hostname) im integrierten Terminal aus. Ferret liest oder speichert das Token nie und warnt, wenn GITLAB_TOKEN gesetzt ist.
Bitte um einen Stern. Nach Ihrem ersten An Agent senden sowie bei 3, 10 und 30 abgeschlossenen Reviews bittet Ferret Sie möglicherweise, ihm auf GitHub einen Stern zu geben. Es fragt höchstens 3-mal, mit mindestens 3 Tagen Abstand, und nie während einer Aufnahme. Stern auf GitHub geben vergibt den Stern über Ihr eigenes gh-Login (oder öffnet GitHub, wenn gh nicht verfügbar ist), und Nicht mehr fragen beendet die Nachfragen. Sie können auch über Hilfe → Ferret auf GitHub einen Stern geben einen Stern vergeben.
#CLI-Tools installieren und anmelden
Einstellungen → CLI-Tools listet Kommandozeilen-Tools auf, die Ihre Agents häufig benötigen, zeigt, welche installiert sind und in welcher Version, und führt den offiziellen Installations- oder Anmeldebefehl für Ihr Betriebssystem in einem neuen Terminal-Tab aus:
- Git-Hosting:
gh,glab - KI und Modelle: Ollama, Cloudflare
wrangler - Deployment: Vercel, Netlify, Fly.io, Railway, Heroku
- Cloud und Dienste: Supabase, Firebase, Stripe, Google Cloud (
gcloud), AWS, Azure, Docker
Hat ein Tool für Ihr Betriebssystem keinen offiziellen einzeiligen Installer, öffnet Doku stattdessen dessen Installationsseite. Die Liste prüft von selbst erneut, sobald eine Installation abgeschlossen ist.
Bei der Übersetzung dieser Seite auf GitHub helfen (öffnet in einem neuen Tab)