--- title: Einführung description: Beginnen Sie mit OpenCode. --- import { Tabs, TabItem } from "@astrojs/starlight/components" import config from "../../../../config.mjs" export const console = config.console [**OpenCode**](/) ist ein Open-Source-Coding-Agent für AI. Es ist als terminalbasierte Schnittstelle, Desktop-App oder IDE-Erweiterung verfügbar. ![OpenCode TUI with the opencode theme](../../../assets/lander/screenshot.png) Fangen wir an. --- #### Voraussetzungen Um OpenCode in Ihrem Terminal verwenden zu können, benötigen Sie: 1. Ein moderner Terminal-Emulator, zum Beispiel: - [WezTerm](https://wezterm.org), cross-platform - [Alacritty](https://alacritty.org), plattformübergreifend - [Ghostty](https://ghostty.org), Linux und macOS - [Kitty](https://sw.kovidgoyal.net/kitty/), Linux und macOS 2. API-Schlüssel für die LLM-Anbieter, die Sie verwenden möchten. --- ## Installieren Der einfachste Weg, OpenCode zu installieren, ist über das Installationsskript. ```bash curl -fsSL https://opencode.ai/install | bash ``` Sie können es auch mit den folgenden Befehlen installieren: - **Mit Node.js** ```bash npm install -g opencode-ai ``` ```bash bun install -g opencode-ai ``` ```bash pnpm install -g opencode-ai ``` ```bash yarn global add opencode-ai ``` - **Homebrew unter macOS und Linux verwenden** ```bash brew install anomalyco/tap/opencode ``` > Wir empfehlen die Verwendung des OpenCode-Tapes für die aktuellsten Versionen. Die offizielle `brew install opencode`-Formel wird vom Homebrew-Team gepflegt und seltener aktualisiert. - **Verwendung von Paru unter Arch Linux** ```bash paru -S opencode-bin ``` #### Windows :::tip[Empfohlen: Verwenden Sie WSL] Für das beste Erlebnis unter Windows empfehlen wir die Verwendung von [Windows Subsystem for Linux (WSL)](/docs/windows-wsl). Es bietet eine bessere Leistung und vollständige Kompatibilität mit den Funktionen von OpenCode. ::: - **Verwendung von Schokolade** ```bash choco install opencode ``` - **Scoop verwenden** ```bash scoop install opencode ``` - **Mit NPM** ```bash npm install -g opencode-ai ``` - **Mit Mise** ```bash mise use -g github:anomalyco/opencode ``` - **Verwendung von Docker** ```bash docker run -it --rm ghcr.io/anomalyco/opencode ``` Die Unterstützung für die Installation von OpenCode unter Windows mit Bun ist derzeit in Arbeit. Sie können die Binärdatei auch aus [Releases](https://github.com/anomalyco/opencode/releases) abrufen. --- ## Konfigurieren Mit OpenCode können Sie jeden LLM-Anbieter verwenden, indem Sie dessen API-Schlüssel konfigurieren. Wenn Sie mit der Verwendung von LLM-Anbietern noch nicht vertraut sind, empfehlen wir die Verwendung von [OpenCode Zen](/docs/zen). Es handelt sich um eine kuratierte Liste von Modellen, die von OpenCode getestet und verifiziert wurden team. 1. Führen Sie den Befehl `/connect` in TUI aus, wählen Sie OpenCode aus und gehen Sie zu [opencode.ai/auth](https://opencode.ai/auth). ```txt /connect ``` 2. Melden Sie sich an, geben Sie Ihre Rechnungsdaten ein und kopieren Sie Ihren API-Schlüssel. 3. Fügen Sie Ihren API-Schlüssel ein. ```txt ┌ API key │ │ └ enter ``` Alternativ können Sie auch einen der anderen Anbieter auswählen. [Mehr erfahren](/docs/providers#directory). --- ## Initialize Nachdem Sie nun einen Anbieter konfiguriert haben, können Sie zu einem Projekt navigieren an dem du arbeiten möchtest. ```bash cd /path/to/project ``` Und führen Sie OpenCode aus. ```bash opencode ``` Als nächstes initialisieren Sie OpenCode für das Projekt, indem Sie den folgenden Befehl ausführen. ```bash frame="none" /init ``` Dadurch wird OpenCode dazu veranlasst, Ihr Projekt zu analysieren und eine `AGENTS.md`-Datei zu erstellen das Projektstammverzeichnis. :::tip Sie sollten die `AGENTS.md`-Datei Ihres Projekts an Git übergeben. ::: Dies hilft OpenCode, die Projektstruktur und die Codierungsmuster zu verstehen used. --- ## Verwendung Sie können nun OpenCode verwenden, um an Ihrem Projekt zu arbeiten. Fragen Sie ruhig danach anything! Wenn Sie mit der Verwendung eines AI-Codierungsagenten noch nicht vertraut sind, finden Sie hier einige Beispiele, die hilfreich sein könnten help. --- ### Stellen Sie Fragen Sie können OpenCode bitten, Ihnen die Codebasis zu erklären. :::tip Verwenden Sie die Taste `@`, um eine Fuzzy-Suche nach Dateien im Projekt durchzuführen. ::: ```txt frame="none" "@packages/functions/src/api/index.ts" How is authentication handled in @packages/functions/src/api/index.ts ``` Dies ist hilfreich, wenn es einen Teil der Codebasis gibt, an dem Sie nicht gearbeitet haben. --- ### Funktionen hinzufügen Sie können OpenCode bitten, Ihrem Projekt neue Funktionen hinzuzufügen. Wir empfehlen jedoch, es zunächst um die Erstellung eines Plans zu bitten. 1. **Erstellen Sie einen Plan** OpenCode verfügt über einen _Planmodus_, der seine Fähigkeit, Änderungen vorzunehmen, deaktiviert Schlagen Sie stattdessen vor, wie die Funktion implementiert wird. Wechseln Sie mit der **Tabulatortaste** dorthin. In der unteren rechten Ecke sehen Sie einen Indikator dafür. ```bash frame="none" title="Switch to Plan mode" ``` Beschreiben wir nun, was es tun soll. ```txt frame="none" When a user deletes a note, we'd like to flag it as deleted in the database. Then create a screen that shows all the recently deleted notes. From this screen, the user can undelete a note or permanently delete it. ``` Sie möchten OpenCode genügend Details geben, um zu verstehen, was Sie wollen. Es hilft mit ihm zu sprechen, als ob Sie mit einem Junior-Entwickler in Ihrem Team sprechen würden. :::tip Geben Sie OpenCode reichlich Kontext und Beispiele, damit es versteht, was Sie möchten want. ::: 2. **Den Plan wiederholen** Sobald Sie einen Plan erhalten, können Sie ihm Feedback geben oder weitere Details hinzufügen. ```txt frame="none" We'd like to design this new screen using a design I've used before. [Image #1] Take a look at this image and use it as a reference. ``` :::tip Ziehen Sie Bilder per Drag-and-Drop in das Terminal, um sie zur Eingabeaufforderung hinzuzufügen. ::: OpenCode kann alle von Ihnen bereitgestellten Bilder scannen und zur Eingabeaufforderung hinzufügen. Du kannst Ziehen Sie dazu ein Bild per Drag & Drop in das Terminal. 3. **Funktion erstellen** Wenn Sie mit dem Plan zufrieden sind, wechseln Sie zurück in den _Build-Modus_ indem Sie erneut die **Tabulatortaste** drücken. ```bash frame="none" ``` Und es bitten, die Änderungen vorzunehmen. ```bash frame="none" Sounds good! Go ahead and make the changes. ``` --- ### Nehmen Sie Änderungen vor Für einfachere Änderungen können Sie OpenCode bitten, es direkt zu erstellen ohne den Plan vorher überprüfen zu müssen. ```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts" We need to add authentication to the /settings route. Take a look at how this is handled in the /notes route in @packages/functions/src/notes.ts and implement the same logic in @packages/functions/src/settings.ts ``` Sie möchten sicherstellen, dass Sie viele Details bereitstellen, damit OpenCode das Richtige tut changes. --- ### Änderungen rückgängig machen Nehmen wir an, Sie bitten OpenCode, einige Änderungen vorzunehmen. ```txt frame="none" "@packages/functions/src/api/index.ts" Can you refactor the function in @packages/functions/src/api/index.ts? ``` Aber Sie erkennen, dass es nicht das ist, was Sie wollten. Sie können die Änderungen **rückgängig machen** mit dem Befehl `/undo`. ```bash frame="none" /undo ``` OpenCode macht nun die von Ihnen vorgenommenen Änderungen rückgängig und zeigt Ihre ursprüngliche Nachricht an again. ```txt frame="none" "@packages/functions/src/api/index.ts" Can you refactor the function in @packages/functions/src/api/index.ts? ``` Von hier aus können Sie die Eingabeaufforderung anpassen und OpenCode bitten, es erneut zu versuchen. :::tip Sie können `/undo` mehrmals ausführen, um mehrere Änderungen rückgängig zu machen. ::: Oder Sie **können** die Änderungen mit dem Befehl `/redo` wiederholen. ```bash frame="none" /redo ``` --- ## Teilen Die Gespräche, die Sie mit OpenCode führen, können [mit Ihrem Team](/docs/share) geteilt werden. ```bash frame="none" /share ``` Dadurch wird ein Link zur aktuellen Konversation erstellt und in Ihre Zwischenablage kopiert. :::note Gespräche werden standardmäßig nicht geteilt. ::: Hier ist ein [Beispielgespräch](https://opencode.ai/s/4XP1fce5) mit OpenCode. --- ## Anpassen Und das ist es! Sie sind jetzt ein Profi im Umgang mit OpenCode. Um es zu Ihrem eigenen zu machen, empfehlen wir [ein Theme auszuwaehlen](/docs/themes), [Keybinds anzupassen](/docs/keybinds), [Code-Formatter zu konfigurieren](/docs/formatters), [eigene Commands zu erstellen](/docs/commands) oder mit der [OpenCode-Konfiguration](/docs/config) zu experimentieren.