--- title: Giriş description: OpenCode'u kullanmaya başlayın. --- import { Tabs, TabItem } from "@astrojs/starlight/components" import config from "../../../../config.mjs" export const console = config.console [**OpenCode**](/) açık kaynaklı bir AI kodlama aracısıdır. Terminal tabanlı bir arayüz, masaüstü uygulaması veya IDE uzantısı olarak mevcuttur. ![OpenCode TUI with the opencode theme](../../../assets/lander/screenshot.png) Hadi başlayalım. --- #### Prerequisites OpenCode'u terminalinizde kullanmak için ihtiyacınız olacak: 1. Şu gibi modern bir terminal emülatörü: - [WezTerm](https://wezterm.org), cross-platform - [Alacritty](https://alacritty.org), cross-platform - [Ghostty](https://ghostty.org), Linux ve macOS - [Kitty](https://sw.kovidgoyal.net/kitty/), Linux ve macOS 2. Kullanmak istediğiniz LLM sağlayıcılarının API anahtarları. --- ## Düzenlemek OpenCode'u kurmanın en kolay yolu kurulum betiğidir. ```bash curl -fsSL https://opencode.ai/install | bash ``` Ayrıca aşağıdaki komutlarla da yükleyebilirsiniz: - **Node.js'yi kullanma** ```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'u macOS ve Linux'ta kullanma** ```bash brew install anomalyco/tap/opencode ``` > En güncel sürümler için OpenCode dokunuşunu kullanmanızı öneririz. Resmi `brew install opencode` formülü Homebrew ekibi tarafından korunur ve daha sık güncellenir. - **Paru'yu Arch Linux'ta kullanma** ```bash paru -S opencode-bin ``` #### Windows :::tip[Önerilen: WSL kullanın] Windows'ta en iyi deneyim için [Windows Subsystem for Linux (WSL)](/docs/windows-wsl) kullanılmasını öneririz. Daha iyi performans ve OpenCode'un özellikleriyle tam uyumluluğu sağlar. ::: - **Çikolata Kullanımı** ```bash choco install opencode ``` - **Kepçe Kullanımı** ```bash scoop install opencode ``` - **NPM kullanarak** ```bash npm install -g opencode-ai ``` - **Mise Kullanımı** ```bash mise use -g github:anomalyco/opencode ``` - **Docker'ı kullanma** ```bash docker run -it --rm ghcr.io/anomalyco/opencode ``` OpenCode'un Bun kullanılarak Windows'a yüklenmesine yönelik destek şu anda devam etmektedir. İkili dosyayı [Releases](https://github.com/anomalyco/opencode/releases)'dan da alabilirsiniz. --- ## Yapılandır OpenCode ile herhangi bir LLM sağlayıcısının API anahtarlarını yapılandırarak kullanabilirsiniz. LLM sağlayıcılarını kullanmaya yeni başlıyorsanız, [OpenCode Zen](/docs/zen) kullanmanızı öneririz. OpenCode tarafından test edilmiş ve doğrulanmış modellerin seçilmiş bir listesidir team. 1. TUI'de `/connect` komutunu çalıştırın, açık kodu seçin ve [opencode.ai/auth](https://opencode.ai/auth)'ye gidin. ```txt /connect ``` 2. Oturum açın, fatura ayrıntılarınızı ekleyin ve API anahtarınızı kopyalayın. 3. API anahtarınızı yapıştırın. ```txt ┌ API key │ │ └ enter ``` Alternatif olarak diğer sağlayıcılardan birini seçebilirsiniz. [Daha fazla bilgi](/docs/providers#directory). --- ## Başlat Artık bir sağlayıcı yapılandırdığınıza göre, bir projeye gidebilirsiniz. üzerinde çalışmak istiyorsun. ```bash cd /path/to/project ``` Ve OpenCode'u çalıştırın. ```bash opencode ``` Daha sonra aşağıdaki komutu çalıştırarak proje için OpenCode'u başlatın. ```bash frame="none" /init ``` Bu, OpenCode'un projenizi analiz etmesini ve bir `AGENTS.md` dosyası oluşturmasını sağlayacaktır. proje kökü. :::tip Projenizin `AGENTS.md` dosyasını Git'e göndermelisiniz. ::: Bu, OpenCode'un proje yapısını ve kodlama modellerini anlamasına yardımcı olur kullanılmış. --- ## Usage Artık projeniz üzerinde çalışmak için OpenCode'u kullanmaya hazırsınız. Sormaktan çekinmeyin anything! Yapay zeka kodlama aracısını kullanma konusunda yeniyseniz aşağıda bazı örnekleri bulabilirsiniz: help. --- ### Soru sor OpenCode'dan kod tabanını size açıklamasını isteyebilirsiniz. :::tip Projedeki dosyaları bulanık aramak için `@` tuşunu kullanın. ::: ```txt frame="none" "@packages/functions/src/api/index.ts" How is authentication handled in @packages/functions/src/api/index.ts ``` Kod tabanının üzerinde çalışmadığınız bir kısmı varsa bu yararlı olur. --- ### Add features OpenCode'dan projenize yeni özellikler eklemesini isteyebilirsiniz. Yine de öncelikle ondan bir plan oluşturmasını istemenizi öneririz. 1. **Bir plan oluşturun** OpenCode, değişiklik yapma yeteneğini devre dışı bırakan bir _Plan moduna_ sahiptir ve bunun yerine özelliğin nasıl uygulanacağını önerin. **Sekme** tuşunu kullanarak buna geçin. Bunun için sağ alt köşede bir gösterge göreceksiniz. ```bash frame="none" title="Switch to Plan mode" ``` Now let's describe what we want it to do. ```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. ``` OpenCode'a ne istediğinizi anlamak için yeterli ayrıntıyı vermek istiyorsunuz. Yardımcı olur onunla ekibinizdeki kıdemsiz bir geliştiriciyle konuşuyormuş gibi konuşmak. :::tip OpenCode'a, ne anladığınızı anlamasına yardımcı olacak bol miktarda bağlam ve örnek verin. want. ::: 2. **Planı yineleyin** Size bir plan sunduğunda ona geri bildirimde bulunabilir veya daha fazla ayrıntı ekleyebilirsiniz. ```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 İsteme eklemek için görüntüleri terminale sürükleyip bırakın. ::: OpenCode, verdiğiniz tüm görselleri tarayabilir ve istemlere ekleyebilir. Yapabilirsiniz bunu bir görüntüyü terminale sürükleyip bırakarak yapın. 3. **Özelliği oluşturun** Plan konusunda kendinizi rahat hissettiğinizde, şu şekilde _Oluşturma moduna_ geri dönün: **Sekme** tuşuna tekrar basmak. ```bash frame="none" ``` Ve ondan değişiklikleri yapmasını istiyoruz. ```bash frame="none" Sounds good! Go ahead and make the changes. ``` --- ### Değişiklik yap Daha basit değişiklikler için OpenCode'dan bunu doğrudan oluşturmasını isteyebilirsiniz. Önce planı gözden geçirmeye gerek kalmadan. ```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 ``` OpenCode'un doğru kararı vermesi için yeterli miktarda ayrıntı sağladığınızdan emin olmak istiyorsunuz. değişiklikler. --- ### Undo changes Diyelim ki OpenCode'dan bazı değişiklikler yapmasını istediniz. ```txt frame="none" "@packages/functions/src/api/index.ts" Can you refactor the function in @packages/functions/src/api/index.ts? ``` Ama istediğinin bu olmadığını anlıyorsun. Değişiklikleri **geri alabilirsiniz** `/undo` komutunu kullanarak. ```bash frame="none" /undo ``` OpenCode artık yaptığınız değişiklikleri geri alacak ve orijinal mesajınızı gösterecek again. ```txt frame="none" "@packages/functions/src/api/index.ts" Can you refactor the function in @packages/functions/src/api/index.ts? ``` Buradan komut isteminde ince ayar yapabilir ve OpenCode'dan tekrar denemesini isteyebilirsiniz. :::tip Birden çok değişikliği geri almak için `/undo` komutunu birden çok kez çalıştırabilirsiniz. ::: Veya `/redo` komutunu kullanarak değişiklikleri **yeniden yapabilirsiniz**. ```bash frame="none" /redo ``` --- ## Paylaşmak OpenCode ile yaptığınız görüşmeler [eşinizle paylaşılabilir] takım](/docs/share). ```bash frame="none" /share ``` Bu, mevcut konuşmaya bir bağlantı oluşturacak ve bunu panonuza kopyalayacaktır. :::note Konuşmalar varsayılan olarak paylaşılmaz. ::: İşte OpenCode'lu bir [örnek konuşma](https://opencode.ai/s/4XP1fce5). --- ## Customize İşte bu kadar! Artık OpenCode'u kullanma konusunda profesyonelsiniz. Kendinize ait hale getirmek için [picking a theme](/docs/themes), [customizing the keybinds](/docs/keybinds), [configuring code formatters](/docs/formatters), [creating custom commands](/docs/commands) veya [OpenCode config](/docs/config) ile oynamanızı öneririz.