Dokumentation

Installieren und deinstallieren

curl -fsSL https://greppy.xyz/install.sh | sh

Im Terminal öffnet sich ein kleines Installer-Menü: installieren oder aktualisieren, eine andere Version wählen, die Coding-Agents einrichten, ohne neu zu installieren, oder deinstallieren. Ohne Terminal (CI, Skripte) installiert er das neueste Release und richtet jeden Coding-Agent ein, den er findet. --version, --yes, --list und --uninstall überspringen das Menü. Mit --version ohne --yes fragt er im Terminal anschließend, welche Agents er einrichten soll.

Optionen

greppy installer

  curl -fsSL https://greppy.xyz/install.sh | sh                 interactive
  curl -fsSL https://greppy.xyz/install.sh | sh -s -- [options]

Options:
  --version TAG   install a specific release, e.g. v0.3.2 (default: latest)
  --yes           no questions: install and set up every detected agent
  --agents LIST   agents to set up: auto, none, or a comma list of
                  claude,codex,gemini,pi,opencode
  --no-agents     install the binary only
  --dir DIR       put the greppy command into DIR (default: ~/.local/bin)
  --system        install a .pkg/.deb/.rpm release with the system package
                  manager (needs sudo); default is a user-level install
  --list          list the published releases and exit
  --uninstall     roll back what this installer set up, clear caches, and
                  list system-level parts (packages, workspace provider)
  -h, --help      show this help

Environment: GREPPY_VERSION, GREPPY_INSTALL_DIR, GREPPY_HOME, NO_COLOR
Option Wirkung
--version TAG ein bestimmtes Release installieren, zum Beispiel v0.3.2 (Standard: das neueste)
--yes keine Rückfragen: installieren und jeden gefundenen Agent einrichten
--agents LIST genau diese Agents einrichten und greppy aus allen anderen entfernen: auto, none oder eine Liste aus claude,codex,gemini,pi,opencode
--no-agents das Binary ohne Agent-Setup installieren; greppy-Blöcke, die ein früherer Lauf in Agent-Dateien eingetragen hat, werden entfernt
--dir DIR wohin der Befehl greppy kommt (Standard ~/.local/bin)
--system ein .pkg-, .deb- oder .rpm-Release mit dem Paketmanager des Systems installieren (braucht sudo)
--list die veröffentlichten Releases auflisten und beenden
--uninstall zurückrollen, was der Installer eingerichtet hat (siehe unten)
-h, --help die Optionen zeigen

Optionen übergibst du nach sh -s --, zum Beispiel curl -fsSL https://greppy.xyz/install.sh | sh -s -- --version v0.3.2 --yes. Im Terminal wirken --agents und --no-agents zusammen mit --yes oder --version; für sich allein öffnen sie das Menü, und du wählst dort.

$ curl -fsSL https://greppy.xyz/install.sh | sh -s -- --list
Published greppy releases (newest first):
  v0.4.1
  v0.3.3
  v0.3.2
  v0.2.1
Umgebungsvariable Wirkung
GREPPY_VERSION das zu installierende Release, wie --version; im Terminal öffnet sich das Menü mit dieser Version
GREPPY_INSTALL_DIR wie --dir
GREPPY_HOME wohin der Agent-Prompt gespeichert wird (Standard ~/.greppy)
GREPPY_VERSIONS_DIR wohin installierte Versionen entpackt werden (Standard ~/.local/share/greppy/versions)
NO_COLOR Ausgabe ohne Farben

Was er prüft und lädt

  1. Er prüft die Plattform: macOS auf Apple Silicon oder Linux x86_64. Intel-Macs und andere Linux-Architekturen lehnt er ab. Unter Linux warnt er, wenn der NVIDIA-Treiber (libcuda.so.1) fehlt; produktive Inferenz nutzt Metal unter macOS und CUDA unter Linux. Windows ist keine unterstützte Zielplattform. Der Installer selbst braucht curl und tar.
  2. Paket und SHA-256 für deine Plattform liest der Installer aus dem RELEASE-ASSETS.json des Releases (oder aus SHA256SUMS, wenn ein Release kein Inventar hat), gleicht beides mit SHA256SUMS ab, lädt von GitHub und bricht bei jeder Abweichung ab. Er nimmt bevorzugt ein .tar.gz, dann .pkg (macOS), .deb oder .rpm. Unter Linux nimmt er das .deb, wenn dpkg vorhanden ist, sonst das .rpm, wenn rpm vorhanden ist.
  3. Er kopiert die greppy-Executable mit allen Dateien, die daneben ausgeliefert werden (zum Beispiel die Browser-Runtime und unter Linux den Workspace-Provider), nach ~/.local/share/greppy/versions/<tag>/bin/ und verlinkt ~/.local/bin/greppy dorthin, ohne sudo. Zum Entpacken eines .deb braucht er ar, für ein .rpm rpm2cpio und cpio. Liegt das Verzeichnis nicht auf deinem PATH, gibt er die Zeile aus, die du ergänzen musst. Mit --system ruft er stattdessen den Paketmanager auf (installer -pkg, dpkg -i, rpm -U), der auch die optionale Workspace-Beschleunigung mitinstalliert (unter macOS die FSKit-App). --system greift bei einem .pkg, .deb oder .rpm; bei einem .tar.gz-Release wie v0.3.3 installiert er auf Benutzerebene.

Was er für deine Agents ändert

Er lädt den Prompt, der zur installierten Version gehört (die AGENTS.md des Repositorys an diesem Release-Tag), speichert ihn als ~/.greppy/AGENTS.md und trägt ihn in die globalen Anweisungen der Agents ein, die du wählst. Ein Agent gilt als gefunden, wenn sein Konfigurationsverzeichnis (zum Beispiel ~/.claude) existiert oder sein Befehl auf deinem PATH liegt.

Agent Datei Was er einträgt
Claude Code ~/.claude/CLAUDE.md eine Zeile: @~/.greppy/AGENTS.md
Codex CLI ~/.codex/AGENTS.md den greppy-Prompt
Gemini CLI ~/.gemini/GEMINI.md den greppy-Prompt
pi ~/.pi/agent/AGENTS.md den greppy-Prompt
OpenCode ~/.config/opencode/AGENTS.md den greppy-Prompt

Jeder Eintrag steht zwischen diesen beiden Zeilen:

<!-- greppy:begin (managed by https://greppy.xyz/install.sh) -->
<!-- greppy:end -->

Eine vorhandene Datei sichert er einmal als *.greppy-backup. Ein erneuter Lauf ersetzt den Block; nimmst du bei einem Agent den Haken heraus, entfernt er ihn dort.

Deinstallieren

curl -fsSL https://greppy.xyz/install.sh | sh -s -- --uninstall

Hast du mit --dir installiert, übergib hier dasselbe --dir. Die Deinstallation arbeitet in drei Stufen und sagt in jeder, was sie getan hat:

  1. Was der Installer eingerichtet hat, wird zurückgerollt: die Agent-Blöcke, ~/.greppy, die Versionen unter ~/.local/share/greppy/versions und der Link ~/.local/bin/greppy, wenn er dorthin zeigt. Ein greppy-Link mit einem anderen Ziel bleibt stehen und wird gemeldet; eine einfache greppy-Datei in diesem Verzeichnis, wie frühere Installer-Versionen sie angelegt haben, wird entfernt. Die *.greppy-backup-Dateien bleiben.
  2. Caches werden mit greppy cache clear --all --yes geleert. Einträge, die ein laufendes greppy sperrt, bleiben erhalten; Daemons im Leerlauf beenden sich innerhalb von 30 Minuten von selbst.
  3. Systemweite Teile listet sie auf und lässt sie unangetastet: ein mit --system installiertes .pkg, .deb oder .rpm, die mit greppy workspace setup eingerichtete Workspace-Beschleunigung (ihr Anmeldeobjekt bleibt, bis du es entfernst) und jedes weitere greppy auf deinem PATH.