diff --git a/.opencode/package-lock.json b/.opencode/package-lock.json index 0c83e5a3f3..b9beeb29cb 100644 --- a/.opencode/package-lock.json +++ b/.opencode/package-lock.json @@ -5,13 +5,13 @@ "packages": { "": { "dependencies": { - "@opencode-ai/plugin": "1.15.0" + "@opencode-ai/plugin": "1.14.48" } }, "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz", - "integrity": "sha512-QZHtlVgbAdy2zAqNA9Gu1UpIuI8Xvsd1v8ic6B2pZmeFnFcMWiPLfWXh7TVw4eGEZ/C9TH281KwhVoeQUKbyjw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.4.tgz", + "integrity": "sha512-LCkGo6JDfaBhgST7UpPWgNgLINpcpabaHfyz5OBx75nUYxBsaEPxjnyNjWpeb/xBup/682QnBfRBy2/LvPutZQ==", "cpu": [ "arm64" ], @@ -22,9 +22,9 @@ ] }, "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.3.tgz", - "integrity": "sha512-mdzd3AVzYKuUmiWOQ8GNhl64/IoFGol569zNRdkLReh6LRLHOXxU4U8eq0JwaD8iFHdVGqSy4IjFL4reoWCDFw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.4.tgz", + "integrity": "sha512-zExlW9zUJKZH/tOtVMttwjKa4Xm/3KcNjnE3dPN92uCktwavMxpgCA3MoJK/DOnTWsQgo224OaST27/mPNAf+w==", "cpu": [ "x64" ], @@ -35,9 +35,9 @@ ] }, "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.3.tgz", - "integrity": "sha512-fg0uy/dG/nZEXfYilKoRe7yALaNmHoYeIoJuJ7KJ+YyU2bvY8vPv27f7UKhGRpY6euFYqEVhxCFZgAUNQBM3nw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.4.tgz", + "integrity": "sha512-Tg3yX65f5GbtXLkrYEHE5oibZG9epyYWas7FogTTEJeDEF9JlXJzKgXaNhT3UXlTOeA+AfZpYZYZ0uPj7Cfquw==", "cpu": [ "arm" ], @@ -48,9 +48,9 @@ ] }, "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.3.tgz", - "integrity": "sha512-YxQL+ax0XqBJDZiKimS2XQaf+2wDGVa1enVRGzEvLLVFeqa5kx2bWbtcSXgsxjQB7nRqqIGFIcLteF/sHeVtQg==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.4.tgz", + "integrity": "sha512-dgX0P/9wGPJeHFBG+ZmhgE6bmtMt7NP5CRBGyyktpopdk/mW4POnrpQsSLtKI1dwpc+pPLuXHDh6vvskyQE/sw==", "cpu": [ "arm64" ], @@ -61,9 +61,9 @@ ] }, "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.3.tgz", - "integrity": "sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.4.tgz", + "integrity": "sha512-8TNXMEjJc3QEy7R/x1INhgiU+XakDAFUzBhaz7+Rbrs8NH5UQeHQxxmzsSBJGyV6I1jW79undiQm8tOI+D+8FQ==", "cpu": [ "x64" ], @@ -74,9 +74,9 @@ ] }, "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.3.tgz", - "integrity": "sha512-x0fWaQtYp4E6sktbsdAqnehxDgEc/VwM7uLsRCYWaiGu0ykYdZPiS8zCWdnjHwyiumousxfBm4SO31eXqwEZhQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.4.tgz", + "integrity": "sha512-CmCXPQrkbwExx3j946/PtHWHbYJiCRBRDl4BlkRQcJB/YOwQxJRTpoo7aTsortjgoJ1x7opzTSxn7C+ASSLVjQ==", "cpu": [ "x64" ], @@ -87,19 +87,19 @@ ] }, "node_modules/@opencode-ai/plugin": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opencode-ai/plugin/-/plugin-1.15.0.tgz", - "integrity": "sha512-97N985FDqNMpbBbsNotu0j3lkHwDyHX+2BnPFfnuNmBrTQNqLrn2UyA6wBfP6J5l4xUslwKNrH2IVrGIZeiSxQ==", + "version": "1.14.48", + "resolved": "https://registry.npmjs.org/@opencode-ai/plugin/-/plugin-1.14.48.tgz", + "integrity": "sha512-pb2ywByzn4i35WWJquEYyb8lDC/ph1PLXT+heucJN6Y9U/oeSw98JQV93IG7M6BUBks6MKD3DGDJdQfyD6x0rA==", "license": "MIT", "dependencies": { - "@opencode-ai/sdk": "1.15.0", - "effect": "4.0.0-beta.65", + "@opencode-ai/sdk": "1.14.48", + "effect": "4.0.0-beta.59", "zod": "4.1.8" }, "peerDependencies": { - "@opentui/core": ">=0.2.10", - "@opentui/keymap": ">=0.2.10", - "@opentui/solid": ">=0.2.10" + "@opentui/core": ">=0.2.6", + "@opentui/keymap": ">=0.2.6", + "@opentui/solid": ">=0.2.6" }, "peerDependenciesMeta": { "@opentui/core": { @@ -114,9 +114,9 @@ } }, "node_modules/@opencode-ai/sdk": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.15.0.tgz", - "integrity": "sha512-npmURKwd1HoV/i3CsGl2tdHpGhWSGVqTN1cp0s2gDH5gE6XduAtFmmVXBZ/ovJLh3Evu6sTVZ9n0IkJzFNeveQ==", + "version": "1.14.48", + "resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.14.48.tgz", + "integrity": "sha512-wKM86jCzV/ZApyWrdm3uP8XdWcS0LMbu3FV+OWz1ChiGGg1wiIWNGMJs5CY8/QX2/rUuZrd1Q1DqvdamZ0zLeg==", "license": "MIT", "dependencies": { "cross-spawn": "7.0.6" @@ -153,9 +153,9 @@ } }, "node_modules/effect": { - "version": "4.0.0-beta.65", - "resolved": "https://registry.npmjs.org/effect/-/effect-4.0.0-beta.65.tgz", - "integrity": "sha512-QYKvQPAj3CmtsvWkHQww15wX4KG2gNsszDWEcOO5sZCMknp66u6Si/Opmt3wwWCwsyvRmDAdIg+JIz5qzbbFIw==", + "version": "4.0.0-beta.59", + "resolved": "https://registry.npmjs.org/effect/-/effect-4.0.0-beta.59.tgz", + "integrity": "sha512-xyUDLeHSe8d6lWGOvR6Fgn2HL6gYeTZ/S4Jzk9uc4ZUxMPPsNZlNXrvk0C7/utQFzeX7uAWcVnG2BjbA0SRoAA==", "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.1.0", @@ -229,9 +229,9 @@ } }, "node_modules/msgpackr-extract": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz", - "integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.4.tgz", + "integrity": "sha512-4kmO/MdyUIkLIvTPr8VHLil4AtoKIoniWPIEk5+CDy0xnWC84azhSFmuJ7PxZdsYtiP5kEeQsORAVIeMgxT+Hw==", "hasInstallScript": true, "license": "MIT", "optional": true, @@ -242,12 +242,12 @@ "download-msgpackr-prebuilds": "bin/download-prebuilds.js" }, "optionalDependencies": { - "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3", - "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3" + "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.4", + "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.4", + "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.4", + "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.4", + "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.4", + "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.4" } }, "node_modules/multipasta": { diff --git a/README.md b/README.md index 0bbe3325cc..b68d356029 100644 --- a/README.md +++ b/README.md @@ -228,7 +228,7 @@ First contribution checklist: ## Supported Languages -Translated READMEs: [`translated_readmes/`](./translated_readmes/README.md), available in English, 简体中文, 繁體中文, 日本語. +Translated READMEs: [`translated_readmes/`](./translated_readmes/README.md), available in English, 简体中文, 繁體中文, 日本語, Türkçe. The App is available in the following languages: - English (`en`) @@ -241,6 +241,7 @@ The App is available in the following languages: - Thai (`th`) - Vietnamese (`vi`) - Russian (`ru`) +- Turkish (`tr`) ## For Teams & Businesses diff --git a/apps/app/src/i18n/index.ts b/apps/app/src/i18n/index.ts index 1efa8b9910..13bd02811c 100644 --- a/apps/app/src/i18n/index.ts +++ b/apps/app/src/i18n/index.ts @@ -8,18 +8,19 @@ import fr from "./locales/fr"; import ca from "./locales/ca"; import es from "./locales/es"; import ru from "./locales/ru"; +import tr from "./locales/tr"; import { LANGUAGE_PREF_KEY } from "../app/constants"; /** * Supported languages */ -export type Language = "en" | "ja" | "zh" | "vi" | "pt-BR" | "th" | "fr" | "ca" | "es" | "ru"; +export type Language = "en" | "ja" | "zh" | "vi" | "pt-BR" | "th" | "fr" | "ca" | "es" | "ru" | "tr"; export type Locale = Language; /** * All supported languages - single source of truth */ -export const LANGUAGES: Language[] = ["en", "ja", "zh", "vi", "pt-BR", "th", "fr", "ca", "es", "ru"]; +export const LANGUAGES: Language[] = ["en", "ja", "zh", "vi", "pt-BR", "th", "fr", "ca", "es", "ru", "tr"]; /** * Language options for UI - single source of truth @@ -35,6 +36,7 @@ export const LANGUAGE_OPTIONS = [ { value: "ca" as Language, label: "Catalan", nativeName: "Català" }, { value: "es" as Language, label: "Spanish", nativeName: "Español" }, { value: "ru" as Language, label: "Russian", nativeName: "Русский" }, + { value: "tr" as Language, label: "Turkish", nativeName: "Türkçe" }, ] as const; const PLURAL_SUFFIX_EMPTY_LANGUAGES = new Set(["ja", "zh", "th"]); @@ -66,6 +68,7 @@ const TRANSLATIONS: Record> = { ca, es, ru, + tr, }; /** @@ -131,6 +134,7 @@ const pluralRulesByLanguage: Record = { ca: new Intl.PluralRules("ca"), es: new Intl.PluralRules("es"), ru: new Intl.PluralRules("ru"), + tr: new Intl.PluralRules("tr"), }; const pluralRule = (loc: Language, count: number): Intl.LDMLPluralRule => { return pluralRulesByLanguage[loc].select(count); diff --git a/apps/app/src/i18n/locales/index.ts b/apps/app/src/i18n/locales/index.ts index 667f05de72..f3131eb740 100644 --- a/apps/app/src/i18n/locales/index.ts +++ b/apps/app/src/i18n/locales/index.ts @@ -10,3 +10,4 @@ export { default as fr } from "./fr"; export { default as ca } from "./ca"; export { default as es } from "./es"; export { default as ru } from "./ru"; +export { default as tr } from "./tr"; diff --git a/apps/app/src/i18n/locales/tr.ts b/apps/app/src/i18n/locales/tr.ts new file mode 100644 index 0000000000..9f86ac6c06 --- /dev/null +++ b/apps/app/src/i18n/locales/tr.ts @@ -0,0 +1,1514 @@ +/** + * Turkish translations (Türkçe) + */ + +export default { + "app.compact_command_desc": "Bu oturumu özetleyerek bağlam boyutunu küçültün.", + "app.error_audit_load": "Denetim günlüğü yüklenemedi.", + "app.error_auth_failed": "Kimlik doğrulama başarısız oldu", + "app.error_command_not_resolved": "Komut çözümlenemedi.", + "app.error_compact_empty": "Henüz sıkıştırılacak bir şey yok.", + "app.error_compact_no_session": "/compact çalıştırmadan önce mesajları olan bir oturum seçin.", + "app.error_compact_no_session_id": "Sıkıştırmadan önce bir oturum seçin.", + "app.error_connect_first": "Çalışma ortamı değişikliklerini uygulamadan önce bu worker'a bağlanın.", + "app.error_not_connected": "Bir sunucuya bağlı değil", + "app.error_rate_limit": "Hız sınırı aşıldı", + "app.error_remote_access": "Uzaktan erişim güncellenemedi.", + "app.error_request_failed": "İstek başarısız oldu", + "app.error_restart_local_worker": "Güncellenen paylaşım ayarıyla yerel worker yeniden başlatılamadı.", + "app.error_session_name_required": "Oturum adı gereklidir", + "app.local_disabled_reason": "Masaüstü uygulamasında yerel çalışma alanları oluşturun. Uzaktan ve paylaşılan çalışma alanları burada çalışmaya devam eder.", + "app.model_behavior_title": "Model davranışı", + "app.plugins_hint_readonly": "OpenWork sunucusu eklentiler için salt okunurdur.", + "app.reload_later": "Daha sonra", + "app.reload_now": "Şimdi yeniden yükle", + "app.reload_stop_tasks": "Yeniden Yükle ve Görevleri Durdur", + "app.skills_hint_readonly": "OpenWork sunucusu yetenekler için salt okunurdur. Kurulumları etkinleştirmek için Gelişmiş bölümünden bir host token ekleyin.", + "action.remove": "Kaldır", + "app.unknown_error": "Bilinmeyen hata", + "blueprint.automation_body": "Yeniden kullanılabilir bir iş akışından başlayın veya aşağıya kendi görevinizi yazın.", + "blueprint.automation_title": "Neyi otomatikleştirmek istiyorsunuz?", + "blueprint.csv_session_assistant": "CSV dosyaları oluşturmanıza, temizlemenize, birleştirmenize ve özetlemenize yardımcı olabilirim. Ne tür CSV çalışması otomatikleştirmek istiyorsunuz?", + "blueprint.csv_session_title": "CSV iş akışı fikirleri", + "blueprint.csv_session_user": "Birden fazla araçtan gelen dışa aktarımları tek bir temiz CSV'de birleştirmek istiyorum.", + "blueprint.empty_body": "Bir başlangıç noktası seçin veya aşağıya yazın.", + "blueprint.empty_title": "Ne yapmak istiyorsunuz?", + "blueprint.minimal_body": "Bu çalışma alanı hakkında bir soru sorun veya bir başlangıç istemi kullanın.", + "blueprint.minimal_title": "Bir görevle başlayın", + "blueprint.starter_blueprint_desc": "Yetenekler, komutlar ve aktarım adımlarıyla tekrarlanabilir bir iş akışı tasarlayın.", + "blueprint.starter_blueprint_prompt": "Bu çalışma alanı için yeniden kullanılabilir bir otomasyon şablonu tasarlamama yardım edin. Nelerin standartlaştırılması gerektiğini sorun, ardından iş akışını önerin.", + "blueprint.starter_blueprint_title": "Otomasyon şablonu planlayın", + "blueprint.starter_chrome_desc": "Hemen bir tarayıcı otomasyonu konuşması başlatın.", + "blueprint.starter_chrome_prompt": "Yerleşik tarayıcıyı kullanarak yinelenen bir web görevini otomatikleştirin.", + "blueprint.starter_chrome_title": "Tarayıcıyı otomatikleştirin", + "blueprint.starter_command_desc": "Yinelenen bir iş akışını bu çalışma alanı için bir bölü komutuna dönüştürün.", + "blueprint.starter_command_prompt": "Bu çalışma alanı için yeniden kullanılabilir bir /komut oluşturmama yardım edin. Hangi iş akışını otomatikleştirmek istediğimi sorun, ardından komutu taslağa yazın.", + "blueprint.starter_command_title": "Yeniden kullanılabilir komut oluşturun", + "blueprint.starter_connect_openai_desc": "OpenAI sağlayıcınızı ekleyin, böylece yeni oturumlarda ChatGPT modelleri hazır olur.", + "blueprint.starter_connect_openai_title": "ChatGPT'yi bağlayın", + "blueprint.starter_csv_desc": "Elektronik tablo verilerini temizleyin veya oluşturun.", + "blueprint.starter_csv_prompt": "Bu bilgisayarda CSV dosyaları oluşturmama veya düzenlememe yardım edin.", + "blueprint.starter_csv_title": "CSV üzerinde çalışın", + "blueprint.starter_explore_desc": "Dosyaları özetleyin ve üstesinden gelinmesi gereken en iyi ilk görevi önerin.", + "blueprint.starter_explore_prompt": "Bu çalışma alanını özetleyin, en önemli dosyaları gösterin ve en iyi ilk görevi önerin.", + "blueprint.starter_explore_title": "Bu çalışma alanını keşfedin", + "blueprint.welcome_message": "Merhaba, OpenWork'e hoş geldiniz!\n\nİnsanlar bilgisayarlarındaki .csv dosyalarını yazmak, tarayıcı görevlerini otomatikleştirmek ve kişileri Notion ile senkronize etmek için bizi kullanıyor.\n\nAma tek sınır sizin hayal gücünüz.\n\nNe yapmak istersiniz?", + "blueprint.welcome_title": "OpenWork'e hoş geldiniz", + "common.add": "Ekle", + "common.cancel": "İptal", + "common.back": "Geri", + "common.close": "Kapat", + "common.default_parens": "(varsayılan)", + "common.edit": "Düzenle", + "common.hide": "Gizle", + "common.navigate": "gezin", + "common.next": "İleri", + "common.off": "Kapalı", + "common.on": "Açık", + "common.path": "Yol", + "common.question": "Soru", + "common.refresh": "Yenile", + "common.remove": "Kaldır", + "common.reset": "Sıfırla", + "common.save": "Kaydet", + "common.select": "seç", + "common.show": "Göster", + "common.something_went_wrong": "Bir şeyler ters gitti", + "common.submit": "Gönder", + "common.unknown": "Bilinmiyor", + "composer.agent_label": "Ajan", + "composer.any_file_type_supported": "Her dosya türü desteklenir.", + "composer.attach_files": "Dosya ekle", + "composer.attachments_unavailable": "Ekler kullanılamıyor.", + "composer.behavior_label": "Davranış", + "composer.configure": "Yapılandır", + "composer.default_agent": "Varsayılan ajan", + "composer.file_exceeds_limit": "{name}, 8MB sınırını aşıyor.", + "composer.file_kind": "Dosya", + "composer.image_kind": "Görsel", + "composer.inserted_links_unsupported": "Desteklenmeyen dosyalar için bağlantılar eklendi.", + "composer.loading_commands": "Komutlar yükleniyor...", + "composer.mcps_label": "MCP'ler", + "composer.no_commands": "Komut bulunamadı.", + "composer.placeholder": "Görevinizi açıklayın...", + "composer.remote_worker_paste_warning": "Bu uzak bir worker. Korumalı alanlar da uzaktandır. Dosyaları paylaşmak için bunları kenar çubuğundaki Paylaşılan klasöre yükleyin.", + "composer.run_task": "Görevi çalıştır", + "composer.skill_source": "Yetenek", + "composer.stop": "Durdur", + "composer.tools_label": "Komutlar, yetenekler ve MCP'ler", + "composer.upload_to_shared_folder": "Paylaşılan klasöre yükle", + "composer.uploaded_multiple_files": "Paylaşılan klasöre {count} dosya yüklendi ve bağlantılar eklendi.", + "composer.uploaded_single_file": "{name}, paylaşılan klasöre yüklendi ve bağlantı eklendi.", + "config.collaborator_token_disabled_hint": "Uzaktan paylaşım için önceden depolanmış, ancak uzaktan erişim şu anda devre dışı.", + "config.collaborator_token_label": "Katılımcı token'ı", + "config.collaborator_token_remote_hint": "Bu sunucuya bağlanan telefonlar veya dizüstü bilgisayarlar için rutin uzaktan erişim.", + "config.connection_failed": "Bağlantı başarısız oldu.", + "config.connection_failed_check": "Bağlantı başarısız oldu. Host URL'sini ve token'ı kontrol edin.", + "config.connection_status_updated": "Bağlantı durumu güncellendi.", + "config.connection_successful": "Bağlantı başarılı.", + "config.copied": "Kopyalandı", + "config.copy": "Kopyala", + "config.desktop_only_hint": "Bazı yapılandırma özellikleri (yerel sunucu paylaşımı + mesajlaşma köprüsü) masaüstü uygulaması gerektirir.", + "config.diagnostics_desc": "Hata ayıklama için temizlenmiş çalışma ortamı durumunu kopyalayın.", + "config.diagnostics_title": "Tanılama paketi", + "config.engine_reload_desc": "Bu çalışma alanı için OpenCode sunucusunu yeniden başlatın.", + "config.engine_reload_title": "Motoru yeniden yükle", + "config.host_admin_token_hint": "Yalnızca onaylar CLI'ı ve yönetici API'leri için dahili host token'ı. Bunu uzak uygulama bağlantı akışında kullanmayın.", + "config.host_admin_token_label": "Host yönetici token'ı", + "config.host_local_only": "Yalnızca yerel", + "config.host_offline": "Çevrimdışı", + "config.host_remote_enabled": "Uzaktan erişim etkin", + "config.local_ip_hint": "En hızlı bağlantı için aynı Wi-Fi ağındaki yerel IP'nizi kullanın.", + "config.mdns_hint": ".local adları hatırlaması daha kolaydır, ancak tüm ağlarda çözümlenmeyebilir.", + "config.messaging_identities_desc": "Kimlikler sekmesinde Telegram/Slack kimliklerini ve yönlendirmeyi yönetin.", + "config.messaging_identities_title": "Mesajlaşma kimlikleri", + "config.not_set": "Ayarlanmadı", + "config.owner_token_disabled_hint": "Yalnızca bu worker için uzaktan erişimi etkinleştirdikten sonra geçerlidir.", + "config.owner_token_label": "Sahip token'ı", + "config.owner_token_remote_hint": "Uzak bir istemcinin izin istemlerini yanıtlaması veya yalnızca sahip olan eylemleri gerçekleştirmesi gerektiğinde bunu kullanın.", + "config.reload_active_tasks_warning": "Yeniden yükleme etkin görevleri durduracak.", + "config.reload_availability_hint": "Yeniden yükleme yalnızca yerel worker'lar veya bağlı OpenWork sunucuları için kullanılabilir.", + "config.reload_connect_hint": "Yeniden yüklemek için bu worker'a bağlanın.", + "config.reload_engine": "Motoru yeniden yükle", + "config.reload_now_desc": "Yapılandırma güncellemelerini uygular ve oturumunuzu yeniden bağlar.", + "config.reload_now_title": "Şimdi yeniden yükle", + "config.reloading": "Yeniden yükleniyor...", + "config.remote_access_off_hint": "Uzaktan erişim kapalı. Başka bir makineden bağlanmadan önce çalışma alanını paylaşarak uzaktan erişimi etkinleştirin.", + "config.resolved_worker_url": "Çözümlenen worker URL'si:", + "config.server_needed_hint": "Yetenekleri, eklentileri ve komutları senkronize etmek için OpenWork sunucu bağlantısı gereklidir.", + "config.server_section_desc": "Bir OpenWork sunucusuna bağlanın. Sunucu yöneticinizden URL ve bir katılımcı veya sahip token'ı kullanın.", + "config.server_section_title": "OpenWork sunucusu", + "config.server_sharing_desc": "Bu ayrıntıları güvenilir bir cihazla paylaşın. En hızlı kurulum için sunucuyu aynı ağda tutun.", + "config.server_sharing_menu_hint": "Çalışma alanı başına paylaşım bağlantıları için çalışma alanı menüsünde Paylaş... seçeneğini kullanın.", + "config.server_sharing_title": "OpenWork sunucu paylaşımı", + "config.server_url_hint": "OpenWork sunucunuz tarafından paylaşılan URL'yi kullanın. Yerel masaüstü worker'ları 48000-51000 aralığında kalıcı yüksek bir bağlantı noktasını yeniden kullanır.", + "config.server_url_input_label": "OpenWork sunucu URL'si", + "config.server_url_label": "OpenWork Sunucu URL'si", + "config.starting_server": "Sunucu başlatılıyor…", + "config.status_connected": "Bağlı", + "config.status_limited": "Sınırlı", + "config.status_not_connected": "Bağlı değil", + "config.test_connection": "Bağlantıyı sına", + "config.testing": "Sınanıyor...", + "config.testing_connection": "Bağlantı sınanıyor...", + "config.token_hint": "İsteğe bağlı. Rutin erişim için bir katılımcı token'ı veya bu istemcinin izin istemlerini yanıtlaması gerektiğinde bir sahip token'ı yapıştırın.", + "config.token_label": "Katılımcı veya sahip token'ı", + "config.token_placeholder": "Token'ınızı yapıştırın", + "config.unavailable": "Kullanılamıyor", + "config.worker_id": "Worker ID:", + "config.workspace_config_desc": "Bu ayarlar seçilen çalışma alanını etkiler. Yalnızca çalışma ortamı eylemleri, o anda bağlı olan çalışma alanına uygulanır.", + "config.workspace_config_title": "Çalışma alanı yapılandırması", + "config.workspace_id_prefix": "Çalışma alanı:", + "context_panel.add_button": "Ekle", + "context_panel.add_folder_hint": "Bu çalışma alanının kök dizini dışındaki dosyaları okuması ve düzenlemesi için bir klasör ekleyin.", + "context_panel.adding_button": "Ekleniyor...", + "context_panel.always_available": "Çalışma alanı kök klasörü kaldırılamaz", + "context_panel.authorized_folders": "Yetkili klasörler", + "context_panel.authorized_folders_desc": "Bu çalışma alanına, kökü dışındaki dizinlerdeki dosyaları okuma ve düzenleme erişimi verin.", + "context_panel.authorized_folders_no_access": "Yetkili klasörleri düzenlemek için yazılabilir bir OpenWork sunucusu çalışma alanına bağlanın.", + "context_panel.browse_button": "Gözat", + "context_panel.config_access_unavailable": "Bu çalışma alanı için OpenWork sunucu yapılandırma erişimi kullanılamıyor.", + "context_panel.config_read_only": "OpenWork sunucusu çalışma alanı yapılandırması için salt okunur olarak bağlı.", + "context_panel.folder_already_authorized": "Klasör zaten yetkili.", + "context_panel.folders_updated": "Yetkili klasörler güncellendi.", + "context_panel.input_placeholder": "Yetkilendirmek için bir klasör yolu yazın...", + "context_panel.no_external_folders": "Yetkili harici klasör yok", + "context_panel.no_mcp": "Yüklenen MCP sunucusu yok.", + "context_panel.no_server_workspace": "Etkin bir sunucu çalışma alanı seçili değil.", + "context_panel.no_skills": "Yüklenen yetenek yok.", + "context_panel.preserving_entries": "{count} klasör olmayan izin girdisi korunuyor.", + "context_panel.preserving_entry": "1 klasör olmayan izin girdisi korunuyor.", + "context_panel.remove_folder": "{name} klasörünü kaldır", + "context_panel.saving_folders": "Yetkili klasörler kaydediliyor...", + "context_panel.server_disconnected": "OpenWork sunucusu bağlantısı kesildi.", + "context_panel.workspace_root_available": "Çalışma alanı kökü zaten kullanılabilir.", + "context_panel.workspace_root_badge": "Çalışma alanı kökü", + "context_panel.writable_workspace_required": "Yetkili klasörleri güncellemek için yazılabilir bir OpenWork sunucusu çalışma alanı gereklidir.", + "dashboard.change": "Değiştir", + "dashboard.choose_folder": "Bir klasör seçin", + "dashboard.choose_folder_continue": "Devam etmek için bir klasör seçin.", + "dashboard.chooser_local_desc": "Bu cihazda bir çalışma alanı oluşturun.", + "dashboard.chooser_remote_desc": "Bir URL ve erişim token'ı kullanarak kendi kendine barındırılan bir OpenWork worker'ına bağlanın.", + "dashboard.chooser_shared_desc": "Kuruluşunuzla paylaşılan bulut worker'larına göz atın ve tek adımda bağlanın.", + "dashboard.back_to_app": "Uygulamaya geri dön", + "dashboard.close_settings": "Ayarları kapat", + "dashboard.cloud_worker": "Bulut worker", + "dashboard.commands": "Komutlar", + "dashboard.connect_remote_button": "Uzağı bağla", + "dashboard.connected": "Bağlı", + "dashboard.connecting": "Bağlanıyor...", + "dashboard.create_local_workspace_subtitle": "Bu cihazda bir çalışma alanı oluşturun.", + "dashboard.create_local_workspace_title": "Yerel çalışma alanı", + "dashboard.create_remote_custom_subtitle": "Kendi kendine barındırılan bir OpenWork worker'ına bağlanın.", + "dashboard.create_remote_custom_title": "Özel uzak bağlantı", + "dashboard.create_remote_workspace_confirm": "Çalışma Alanı Ekle", + "dashboard.create_remote_workspace_subtitle": "Bir OpenWork sunucusunu çalışma alanı olarak kaydedin.", + "dashboard.create_remote_workspace_title": "Uzak Çalışma Alanı Ekle", + "dashboard.create_sandbox_confirm": "Korumalı alan olarak oluştur", + "dashboard.create_shared_subtitle_signed_in": "Kuruluşunuzla paylaşılan bulut worker'larına göz atın ve tek adımda bağlanın.", + "dashboard.create_shared_subtitle_signed_out": "Kuruluşunuzla paylaşılan worker'lara erişmek için OpenWork Cloud'da oturum açın.", + "dashboard.create_shared_title": "Paylaşılan çalışma alanları", + "dashboard.create_workspace_confirm": "Çalışma Alanı Oluştur", + "dashboard.create_workspace_subtitle": "Yeni bir klasör tabanlı çalışma alanı başlatın.", + "dashboard.create_workspace_title": "Çalışma Alanı Oluştur", + "dashboard.desktop_badge": "Masaüstü", + "dashboard.edit_remote_workspace_confirm": "Bağlantıyı kaydet", + "dashboard.edit_remote_workspace_subtitle": "Bu çalışma alanı için OpenWork sunucu ayrıntılarını güncelleyin.", + "dashboard.edit_remote_workspace_title": "Uzak Bağlantıyı Düzenle", + "dashboard.error_choose_org": "Bir çalışma alanı açmadan önce bir kuruluş seçin.", + "dashboard.error_connect_worker": "{name} bağlanması başarısız oldu.", + "dashboard.error_load_orgs": "Kuruluşlar yüklenemedi.", + "dashboard.error_load_shared_workspaces": "Paylaşılan çalışma alanları yüklenemedi.", + "dashboard.error_workspace_not_ready": "Çalışma alanı henüz bağlanmaya hazır değil. Biraz sonra tekrar deneyin.", + "dashboard.import_config": "Yapılandırmayı içe aktar", + "dashboard.importing": "İçe aktarılıyor…", + "dashboard.modal_back": "Geri", + "dashboard.modal_close": "Çalışma alanı ekleme penceresini kapat", + "dashboard.remote": "Uzaktan", + "dashboard.remote_base_url_required": "Devam etmek için bir sunucu URL'si ekleyin.", + "dashboard.remote_server_details_hint": "Kendi kendine barındırılan bir OpenWork worker'ına bağlanın.", + "dashboard.remote_server_details_title": "Uzak sunucu ayrıntıları", + "dashboard.sandbox_checking_docker": "Docker kontrol ediliyor...", + "dashboard.sandbox_get_ready_title": "Korumalı alanlar (Sandbox) Docker gerektirir", + "dashboard.skills": "Yetenekler", + "dashboard.worker_status_attention": "Dikkat", + "dashboard.worker_status_ready": "Hazır", + "dashboard.worker_status_starting": "Başlatılıyor", + "dashboard.worker_status_stopped": "Durduruldu", + "dashboard.worker_status_unknown": "Bilinmiyor", + "den.active_org_hint": "Paylaşılan Bulut worker'larına, sağlayıcılara ve yeteneklere erişmek için bir kuruluş seçin.", + "den.active_org_title": "Etkin kuruluş", + "den.auto_reconnect_hint": "Tarayıcınızda kimlik doğrulamasını tamamlayın, OpenWork burada otomatik olarak yeniden bağlanacak.", + "den.checking_session": "Oturum kontrol ediliyor", + "den.choose_org_for_providers": "Bulut sağlayıcılarını görüntülemek için bir kuruluş seçin.", + "den.choose_org_for_skills": "Bulut yeteneklerini görüntülemek için bir kuruluş seçin.", + "den.choose_org_for_skill_hubs": "Bulut yetenek hub'larını görüntülemek için bir kuruluş seçin.", + "den.cloud_account_hint": "Bağlı hesabınızı ve kuruluşunuzu yönetin.", + "den.cloud_account_title": "Bulut hesabı", + "den.cloud_control_plane_open": "Tarayıcıda aç", + "den.cloud_control_plane_reset": "Sıfırla", + "den.cloud_control_plane_save": "URL'yi kaydet", + "den.cloud_control_plane_url_hint": "Yalnızca geliştirici modu. Yerel veya kendi kendine barındırılan bir Bulut kontrol düzlemini hedeflemek için bunu kullanın. Değiştirmek sizi oturumdan çıkarır, böylece uygulama yeni kontrol düzlemine karşı yeniden doldurulur.", + "den.cloud_control_plane_url_label": "Bulut kontrol düzlemi URL'si", + "den.cloud_provider_detail": "{count} model · {source} sağlayıcı", + "den.cloud_provider_removed_detail": "Bu içe aktarılan sağlayıcı artık bulutta yok. Yerel {providerId} yapılandırmasını kaldırın.", + "den.cloud_provider_sync_detail": "Bulut sağlayıcısı değişti. {count} model {source} yapılandırmasını opencode.jsonc ile senkronize edin.", + "den.cloud_skill_detail": "Bu bulut yeteneğini .opencode/skills dizinine kurun.", + "den.cloud_skill_imported_detail": "Yerel olarak {name} olarak kuruldu.", + "den.cloud_skill_removed_detail": "Bu bulut yeteneği yukarı akışta kaldırıldı. Yerel {name} kopyasını kaldırın.", + "den.cloud_skill_sync_detail": "{name} için daha yeni bir bulut sürümü mevcut. Yerel kopyayı senkronize etmek için güncelleyin.", + "den.cloud_skills_hint": "Erişebileceğiniz, kurabileceğiniz ve değişiklikleri senkronize edebileceğiniz bulut yeteneklerine göz atın.", + "den.cloud_skills_title": "Yetenekler", + "den.cloud_providers_hint": "Yönetilen LLM sağlayıcılarını opencode.jsonc dosyasına içe aktarın ve bu çalışma alanında kuruluş kimlik bilgisini kullanın.", + "den.cloud_providers_title": "Bulut sağlayıcıları", + "den.cloud_section_desc": "Oturum açın, bir kuruluş seçin ve Bulut worker'larını açın.", + "den.cloud_section_title": "OpenWork Cloud", + "den.cloud_sleep_hint": "Bilgisayarınız uyku moduna geçse bile görevlerinizi canlı tutmak için OpenWork Cloud'da oturum açın.", + "den.cloud_signed_in_desc": "Oturum açtınız ve OpenWork Cloud'u kullanmaya hazırsınız.", + "den.cloud_workers_hint": "Worker'ları, uygulamanın başka yerlerde kullandığı aynı uzak bağlantı akışını kullanarak doğrudan OpenWork'te açın.", + "den.cloud_workers_title": "Bulut worker'ları", + "den.create_account": "Hesap oluştur", + "den.credentials_ready_badge": "Kimlik bilgisi hazır", + "den.error_base_url": "Geçerli bir http:// veya https:// Bulut kontrol düzlemi URL'si girin.", + "den.error_choose_org": "Bir worker açmadan önce bir kuruluş seçin.", + "den.error_load_orgs": "Kuruluşlar yüklenemedi.", + "den.error_load_skills": "Bulut yetenekleri yüklenemedi.", + "den.error_load_workers": "Worker'lar yüklenemedi.", + "den.error_no_session": "Etkin Bulut oturumu bulunamadı.", + "den.error_no_token": "Masaüstü oturum açma tamamlandı, ancak OpenWork Cloud bir oturum token'ı döndürmedi.", + "den.error_open_worker": "{name}, OpenWork'te açılamadı.", + "den.error_open_worker_fallback": "{name} açılamadı.", + "den.error_paste_valid_code": "Geçerli bir OpenWork oturum açma bağlantısı veya tek kullanımlık oturum açma kodu yapıştırın.", + "den.error_signin_failed": "OpenWork Cloud oturum açma tamamlanamadı.", + "den.error_worker_not_ready": "Worker henüz açılmaya hazır değil. Sağlama tamamlandıktan sonra tekrar deneyin.", + "den.finish_signin": "Oturum açmayı tamamla", + "den.finishing": "Tamamlanıyor...", + "den.hide_signin_code": "Oturum açma kodunu gizle", + "den.import_all": "Tümünü içe aktar", + "den.import_skill": "Kur", + "den.import_skill_failed": "{name} kurulumu başarısız oldu.", + "den.import_provider": "İçe aktar", + "den.import_provider_failed": "{name} içe aktarımı başarısız oldu.", + "den.imported_badge": "İçe aktarıldı", + "den.imported_provider": "{name} içe aktarıldı.", + "den.importing": "İçe aktarılıyor...", + "den.needs_attention": "Dikkat gerekiyor", + "den.no_cloud_providers": "Bu kuruluş için henüz bulut sağlayıcısı mevcut değil.", + "den.no_cloud_skills": "Bu kuruluş için henüz bulut yeteneği mevcut değil.", + "den.no_cloud_workers": "Bu kuruluş için henüz bulut worker'ı görüntülenemiyor. Cloud'da bir tane oluşturun, ardından bu sekmeyi yenileyin.", + "den.no_org_selected": "Kuruluş seçilmedi", + "den.no_skill_hubs": "Bu kuruluş için henüz bulut yetenek hub'ı mevcut değil.", + "den.open": "Aç", + "den.opening": "Açılıyor...", + "den.org_member_suffix": "(Üye)", + "den.org_owner_suffix": "(Sahip)", + "den.org_switched": "{name} kuruluşuna geçildi.", + "den.out_of_sync_badge": "Senkronize değil", + "den.private_badge": "Özel", + "den.paste_signin_code": "Oturum açma kodunu yapıştır", + "den.refresh": "Yenile", + "den.reload_workspace": "Yapılandırma değişikliklerini uygulamak için çalışma alanını yeniden yükleyin.", + "den.remove_provider_failed": "{name} kaldırılamadı.", + "den.remove_skill_failed": "{name} kaldırılamadı.", + "den.removed_from_cloud_badge": "Buluttan kaldırıldı", + "den.removed_provider": "{name} kaldırıldı.", + "den.removing": "Kaldırılıyor...", + "den.sign_out": "Oturumu kapat", + "den.signed_out": "Oturum kapatıldı", + "den.signin_button": "Oturum aç", + "den.signin_code_note": "openwork://den-auth bağlantısını veya ham tek kullanımlık yetki kodunu kabul eder.", + "den.signin_link_hint": "Tarayıcınız OpenWork'e otomatik olarak geri dönmediğinde, oturum açma bağlantısını veya tek kullanımlık kodu buraya yapıştırın.", + "den.signin_link_label": "Oturum açma bağlantısı veya tek kullanımlık kod", + "den.signin_link_placeholder": "openwork://den-auth?... veya yapıştırılan kod", + "den.signin_title": "OpenWork Cloud'da oturum açın", + "den.signing_in": "OpenWork Cloud oturum açma tamamlanıyor...", + "den.signing_out": "Oturum kapatılıyor...", + "den.skill_hub_detail": "{count} paylaşımlı yeteneği .opencode/skills dizinine içe aktarın.", + "den.skill_hub_imported_detail": "{count} yetenek bu çalışma alanına içe aktarıldı.", + "den.skill_hub_removed_detail": "Bu hub buluttan kaldırıldı. Bu çalışma alanından {importedCount} içe aktarılan yeteneği kaldırın.", + "den.skill_hub_skills_badge": "{count} yetenek", + "den.skill_hub_sync_detail": "Bulutta artık {liveCount} yetenek var; bu çalışma alanı {importedCount} yetenek içe aktardı. Kurulu seti güncellemek için senkronize edin.", + "den.skill_hubs_hint": "Bir paylaşımlı bulut hub'ındaki tüm yetenekleri tek adımda bu çalışma alanına içe aktarın.", + "den.skill_hubs_title": "Yetenek hub'ları", + "den.status_base_url_updated": "Bulut kontrol düzlemi URL'si güncellendi. Devam etmek için tekrar oturum açın.", + "den.status_browser_signin": "OpenWork'e bağlanmak için tarayıcınızda oturum açmayı tamamlayın.", + "den.status_browser_signup": "OpenWork'e bağlanmak için tarayıcınızda hesap oluşturmayı tamamlayın.", + "den.status_cloud_signed_in_as": "OpenWork Cloud'a {email} olarak bağlanıldı.", + "den.status_cloud_signin_done": "OpenWork Cloud'a bağlanıldı.", + "den.status_loaded_orgs_one": "{count} kuruluş bağlandı.", + "den.status_loaded_orgs_other": "{count} kuruluş bağlandı.", + "den.status_loaded_skills_one": "{name} için {count} bulut yeteneği yüklendi.", + "den.status_loaded_skills_other": "{name} için {count} bulut yeteneği yüklendi.", + "den.status_loaded_workers_one": "{name} için {count} worker yüklendi.", + "den.status_loaded_workers_other": "{name} için {count} worker yüklendi.", + "den.status_no_skills": "{name} için bulut yeteneği bulunamadı.", + "den.status_no_workers": "{name} için worker bulunamadı.", + "den.status_opened_worker": "{name}, OpenWork'te açıldı.", + "den.status_signed_in_as": "{email} olarak oturum açıldı.", + "den.status_signed_out": "Oturum kapatıldı ve bu cihazdaki OpenWork Cloud oturumunuz temizlendi.", + "den.sync": "Senkronize et", + "den.sync_provider_failed": "{name} senkronizasyonu başarısız oldu.", + "den.sync_skill_failed": "{name} güncellenmesi başarısız oldu.", + "den.synced_provider": "{name} senkronize edildi.", + "den.syncing": "Senkronize ediliyor...", + "den.installed_name_badge": "Yerel: {name}", + "den.uninstall": "Kaldır", + "den.worker_mine_badge": "Benim", + "den.worker_not_ready_title": "Bu worker henüz açılmaya hazır değil.", + "den.worker_provider_label": "{provider} worker", + "den.worker_secondary_cloud": "Bulut worker", + "extensions.app_count_one": "{count} uygulama bağlı", + "extensions.app_count_other": "{count} uygulama bağlı", + "extensions.apps_mcp_header": "Uygulamalar (MCP)", + "extensions.filter_all": "Tümü", + "extensions.filter_apps": "Uygulamalar", + "extensions.filter_plugins": "Eklentiler", + "extensions.plugin_count_one": "{count} eklenti", + "extensions.plugin_count_other": "{count} eklenti", + "extensions.plugins_opencode_header": "Eklentiler (OpenCode)", + "extensions.subtitle": "Uygulamalar (MCP) ve OpenCode eklentileri tek bir yerde.", + "extensions.title": "Uzantılar", + "identities.agent_behavior_desc": "Çalışma alanı başına bir dosya. Belirli bir OpenCode ajanı üzerinden yönlendirmek için isteğe bağlı ilk satır olarak @agent ekleyin.", + "identities.agent_behavior_title": "Mesajlaşma ajanı davranışı", + "identities.agent_created": "Varsayılan mesajlaşma ajanı dosyası oluşturuldu.", + "identities.agent_file_changed": "Dosya uzaktan değiştirildi. Yeniden yükleyin ve tekrar kaydedin.", + "identities.agent_loading": "Ajan dosyası yükleniyor…", + "identities.agent_none": "yok", + "identities.agent_not_found": "Bu çalışma alanında henüz ajan dosyası bulunamadı.", + "identities.agent_placeholder": "Mesajlaşma ajanının bu çalışma alanında nasıl yanıt vereceğini açıklayın.", + "identities.agent_saved": "Mesajlaşma davranışı kaydedildi.", + "identities.agent_scope_status": "Etkin kapsam: çalışma alanı · durum: {status} · seçili ajan: {agent}", + "identities.agent_status_loaded": "yüklendi", + "identities.agent_status_missing": "eksik", + "identities.agent_worker_scope_unavailable": "Worker kapsamı kullanılamıyor.", + "identities.all_channels": "Tüm kanallar", + "identities.app_token_label": "Uygulama token'ı", + "identities.auto_bind_label": "Doğrudan gönderimde eşi dizine otomatik bağla", + "identities.available_channels": "Kullanılabilir kanallar", + "identities.bot_token_label": "Bot token'ı", + "identities.bot_token_placeholder": "@BotFather'dan Telegram bot token'ını yapıştırın", + "identities.botfather_step1_open": "1. Telegram'da @BotFather'ı açın", + "identities.botfather_step1_run": "ve /newbot çalıştırın", + "identities.botfather_step3_choose": "3. Botunuz için bir ad ve kullanıcı adı seçin", + "identities.botfather_step3_or_private": "açık gelen kutusu için veya", + "identities.botfather_step3_private": "Özel", + "identities.botfather_step3_public": "Herkese açık", + "identities.botfather_step3_to_require": "gerektirmek için", + "identities.channel_label": "Kanal", + "identities.channels_connected": "bağlı", + "identities.channels_label": "Kanallar", + "identities.configured_suffix": "yapılandırıldı", + "identities.connect_server_desc": "Bir OpenWork host'una bağlı olduğunuzda kimlikler kullanılabilir.", + "identities.connect_server_title": "Bir OpenWork sunucusuna bağlanın", + "identities.connect_slack": "Slack'i bağla", + "identities.connected_badge": "Bağlı", + "identities.connecting": "Bağlanıyor...", + "identities.copy_bot_token_hint": "Bot token'ını kopyalayın ve aşağıya yapıştırın.", + "identities.copy_code": "Kodu kopyala", + "identities.create_default_file": "Varsayılan dosyayı oluştur", + "identities.create_private_bot": "Özel bot oluştur", + "identities.create_public_bot": "Herkese açık bot oluştur", + "identities.days_ago": "{days}g önce", + "identities.default_routing": "Varsayılan yönlendirme", + "identities.directory_label": "Dizin (isteğe bağlı)", + "identities.disable_messaging": "Mesajlaşmayı devre dışı bırak", + "identities.disable_messaging_message": "Bu, bu çalışma alanı için mesajlaşmayı kapatacaktır. Mesajlaşma tekrar etkinleştirilene kadar Telegram ve Slack kurulumu gizlenecek ve mesajlaşma yan uygulamasını (Sidecar) tamamen durdurmak için worker'ı yeniden başlatmanız gerekecek.", + "identities.disable_messaging_title": "Bu worker için mesajlaşmayı devre dışı bırakmak istiyor musunuz?", + "identities.disabled_label": "Devre dışı", + "identities.disabling": "Devre dışı bırakılıyor...", + "identities.disconnect": "Bağlantıyı kes", + "identities.dispatched_messages": "{sent}/{attempted} mesaj gönderildi.", + "identities.enable_messaging": "Mesajlaşmayı etkinleştir", + "identities.enable_messaging_risk": "Mesajlaşma bu worker'ı uzak komutlara maruz bırakabilir. Bir bot herkese açıksa veya güvenliği tehlikeye girmişse, bu worker tarafından erişilebilen dosyalara, kimlik bilgilerine ve API anahtarlarına erişebilir.", + "identities.enable_messaging_title": "Bu worker için mesajlaşmayı etkinleştirmek istiyor musunuz?", + "identities.enabled_label": "Etkin", + "identities.enabling": "Etkinleştiriliyor...", + "identities.health_offline": "Çevrimdışı", + "identities.health_running": "Çalışıyor", + "identities.health_unavailable": "Kullanılamıyor", + "identities.health_unavailable_status": "Kullanılamıyor ({status})", + "identities.health_unknown": "Bilinmiyor", + "identities.hours_ago": "{hours}sa önce", + "identities.identities_label": "Kimlikler", + "identities.just_now": "Az önce", + "identities.last_activity": "Son etkinlik", + "identities.later": "Daha sonra", + "identities.message_label": "Mesaj", + "identities.message_routing_desc": "Hangi konuşmaların hangi çalışma alanı klasörüne gideceğini kontrol edin. Burada kural ayarlamazsanız mesajlar worker'ın varsayılan klasörüne yönlendirilir.", + "identities.message_routing_title": "Mesaj yönlendirme", + "identities.messages_today": "Bugünkü mesajlar", + "identities.messaging_disabled_hint": "Mesajlaşmayı yalnızca riski anlıyorsanız ve erişimi güvence altına almayı planlıyorsanız etkinleştirin (örneğin, özel Telegram eşleştirmesi).", + "identities.messaging_disabled_restart": "Mesajlaşma devre dışı bırakıldı. Mesajlaşma yan uygulamasını (Sidecar) durdurmak için bu worker'ı yeniden başlatın.", + "identities.messaging_disabled_risk": "Mesajlaşma botları yerel worker'ınıza karşı eylemler gerçekleştirebilir. Herkese açık olarak maruz bırakılırlarsa, bu worker tarafından erişilebilen dosyalara, kimlik bilgilerine ve API anahtarlarına erişime izin verebilir.", + "identities.messaging_disabled_title": "Mesajlaşma varsayılan olarak devre dışıdır", + "identities.messaging_enabled_restart": "Mesajlaşma etkinleştirildi. Kanalları yapılandırmadan önce bu worker'ı yeniden başlatın.", + "identities.messaging_sidecar_not_running": "Bu çalışma alanında mesajlaşma etkin, ancak mesajlaşma yan uygulaması (Sidecar) henüz çalışmıyor. Bu worker'ı yeniden başlatın, ardından Telegram veya Slack ayarlarını yapılandırmak için Mesajlaşma ayarlarına dönün.", + "identities.minutes_ago": "{minutes}dk önce", + "identities.not_set": "Ayarlanmadı", + "identities.open_bot_link": "Telegram'da @{username} hesabını aç", + "identities.pairing_code_copied": "Eşleştirme kodu kopyalandı.", + "identities.pairing_code_copy_failed": "Eşleştirme kodu kopyalanamadı. El ile kopyalayın.", + "identities.pairing_code_instruction_prefix": "Gönder", + "identities.peer_id_label": "Eş ID (isteğe bağlı)", + "identities.peer_id_placeholder_slack": "örn. slack:U12345678", + "identities.peer_id_placeholder_telegram": "örn. telegram:123456789", + "identities.private_label": "Özel", + "identities.private_pairing_code": "Özel eşleştirme kodu", + "identities.public_bot_confirm": "Evet, riski anlıyorum", + "identities.public_bot_warning_message": "Botunuz herkese açık olarak erişilebilir olacak ve botunuza erişim sağlayan herkes, ona verdiğiniz dosyalar veya API anahtarları dahil yerel worker'ınıza tam erişim sağlayabilecektir. Özel bir bot oluşturursanız, bir eşleştirme token'ı gerektirerek kimlerin erişebileceğini sınırlayabilirsiniz. Botunuzu herkese açık yapmak istediğinizden emin misiniz?", + "identities.public_bot_warning_title": "Bu bot herkese açık yapılsın mı?", + "identities.public_label": "Herkese açık", + "identities.quick_setup": "Hızlı kurulum", + "identities.reconnect_failed": "Yeniden bağlanma başarısız oldu. OpenWork URL'sini/token'ını kontrol edin ve tekrar deneyin.", + "identities.reconnected": "Yeniden bağlanıldı.", + "identities.reconnected_refreshing": "Yeniden bağlanıldı. Worker durumu yenileniyor...", + "identities.reload": "Yeniden yükle", + "identities.repair_reconnect": "Onar ve yeniden bağlan", + "identities.restart_failed": "Yeniden başlatma başarısız oldu. Lütfen worker'ı Ayarlar'dan yeniden başlatın ve tekrar deneyin.", + "identities.restart_to_disable_messaging": "Bu çalışma alanı için mesajlaşma devre dışı bırakıldı. Mesajlaşma yan uygulamasını (Sidecar) durdurmak için worker'ı şimdi yeniden başlatın.", + "identities.restart_to_enable_messaging": "Bu çalışma alanı için mesajlaşma etkinleştirildi. Mesajlaşma yan uygulamasını (Sidecar) başlatmak ve Telegram ile Slack kurulumunun kilidini açmak için worker'ı şimdi yeniden başlatın.", + "identities.restart_worker": "Worker'ı yeniden başlat", + "identities.restart_worker_title": "Worker şimdi yeniden başlatılsın mı?", + "identities.restarting": "Yeniden başlatılıyor...", + "identities.routing_override_prefix": "Tüm mesajlar şuraya yönlendirildi:", + "identities.routing_override_suffix": "(geçersiz kılma etkin)", + "identities.running_label": "Çalışıyor", + "identities.save_behavior": "Davranışı kaydet", + "identities.saving": "Kaydediliyor...", + "identities.send_test_button": "Deneme mesajı gönder", + "identities.send_test_desc": "Giden bağlantıyı doğrulayın. Doğrudan gönderim için bir eş ID kullanın veya dizindeki bağlamalara göre fan-out yapmak için eş ID'yi boş bırakın.", + "identities.send_test_title": "Deneme mesajı gönder", + "identities.sending": "Gönderiliyor...", + "identities.slack_desc": "Worker'ınız Slack kanallarında bir bot olarak görünür. Ekip üyeleri doğrudan mesaj gönderebilir veya konularda bahsedebilir.", + "identities.slack_intro": "Ekip üyelerinin bu worker ile kanallarda ve doğrudan mesajlarda etkileşime geçmesine izin vermek için Slack çalışma alanınızı bağlayın.", + "identities.slack_unavailable": "Slack kimlikleri kullanılamıyor.", + "identities.status_active": "Etkin", + "identities.status_label": "Durum", + "identities.status_stopped": "Durduruldu", + "identities.stopped_label": "Durduruldu", + "identities.subtitle": "İnsanların mesajlaşma uygulamaları aracılığıyla worker'ınıza ulaşmasını sağlayın. Bir kanal bağlayın ve worker'ınız mesajları otomatik olarak okuyup yanıtlayacaktır.", + "identities.tab_general": "Genel", + "identities.telegram_bot_access_desc": "Herkese açık bot: ilk Telegram sohbeti otomatik bağlanır. Özel bot: herhangi bir mesaj araçları çalıştırmadan önce eşleştirme kodu gerektirir.", + "identities.telegram_delete_failed": "Silme başarısız oldu.", + "identities.telegram_deleted": "Silindi.", + "identities.telegram_deleted_pending": "Silindi (uygulama bekleniyor).", + "identities.telegram_desc": "Telegram botunu herkese açık mod (açık gelen kutusu) veya özel mod (eşleştirme kodu gerekli) ile bağlayın.", + "identities.telegram_private_saved_pair": "Özel bot kaydedildi. /pair {code} ile eşleştirin", + "identities.telegram_save_failed": "Kaydetme başarısız oldu.", + "identities.telegram_saved": "Kaydedildi.", + "identities.telegram_saved_pending": "Kaydedildi (uygulama bekleniyor).", + "identities.telegram_saved_username": "Kaydedildi (@{username})", + "identities.telegram_unavailable": "Telegram kimlikleri kullanılamıyor.", + "identities.title": "Mesajlaşma kanalları", + "identities.unsaved_changes": "Kaydedilmemiş değişiklikler", + "identities.worker_offline": "Worker çevrimdışı", + "identities.worker_online": "Worker çevrimiçi", + "identities.worker_restarted": "Worker yeniden başlatıldı.", + "identities.worker_restarted_refreshing": "Worker yeniden başlatıldı. Mesajlaşma durumu yenileniyor...", + "identities.worker_scope_unavailable": "Worker kapsamı kullanılamıyor.", + "identities.worker_scope_unavailable_detail": "Worker kapsamı kullanılamıyor. Bir worker URL'si kullanarak yeniden bağlanın veya bilinen bir worker'a geçin.", + "identities.worker_unavailable": "Worker kullanılamıyor", + "identities.workspace_id_required": "Kimlikleri yönetmek için Çalışma Alanı ID'si gereklidir. Bir çalışma alanı URL'si ile yeniden bağlanın veya bu hostta eşlenmiş bir çalışma alanı seçin.", + "identities.workspace_scope_prefix": "Çalışma alanı kapsamı:", + "mcp.disable_app": "Devre dışı bırak", + "mcp.enable_app": "Etkinleştir", + "mcp.reloading_status": "MCP sunucuları yeniden yükleniyor…", + "mcp.toggle_failed": "MCP etkin durumu güncellenemedi.", + "mcp.toggle_requires_server": "MCP'leri etkinleştirmek veya devre dışı bırakmak için bir OpenWork sunucusuna bağlanın.", + "mcp.add_modal_subtitle": "URL veya yerel komut ile özel bir MCP sunucusu bağlayın.", + "mcp.add_modal_title": "Özel Uygulama Ekle", + "mcp.add_server_button": "Uygulama Ekle", + "mcp.advanced": "Gelişmiş", + "mcp.advanced_settings": "Gelişmiş ayarlar", + "mcp.advanced_settings_hint": "Yapılandırma dosyalarını düzenleyin ve bağlantıları el ile yönetin.", + "mcp.app_connected": "uygulama bağlı", + "mcp.apps_connected": "uygulama bağlı", + "mcp.apps_subtitle": "Sık kullandığınız araçları bağlayın, böylece OpenWork bunları sizin adınıza kullanabilir.", + "mcp.apps_title": "Uygulamalar", + "mcp.auth.already_connected": "Zaten Bağlı", + "mcp.auth.already_connected_description": "{server} zaten kimlik doğrulaması yapılmış ve kullanıma hazır.", + "mcp.auth.applying_changes_body": "Yeni MCP'nin kimlik doğrulaması için hazır olması adına worker'ı yeniden başlatıyoruz.", + "mcp.auth.applying_changes_title": "Oturum açmadan önce değişiklikler uygulanıyor", + "mcp.auth.authorization_link": "Yetkilendirme bağlantısı", + "mcp.auth.authorization_still_required": "Yetkilendirme hala gerekiyor. Akışı yeniden başlatmak için tekrar deneyin.", + "mcp.auth.callback_invalid": "OAuth'u tamamlamak için geri çağırma URL'sini veya kod parametresini yapıştırın.", + "mcp.auth.callback_label": "Geri çağırma URL'si veya kod", + "mcp.auth.callback_placeholder": "http://127.0.0.1:19876/mcp/oauth/callback?code=...", + "mcp.auth.cancel": "İptal", + "mcp.auth.client_registration_required": "OAuth devam etmeden önce istemci kaydı gerekiyor.", + "mcp.auth.complete_connection": "Bağlantıyı tamamla", + "mcp.auth.configured_previously": "MCP genel olarak veya önceki bir oturumda yapılandırılmış olabilir. Bu pencereyi kapatıp MCP araçlarını hemen kullanmaya başlayabilirsiniz.", + "mcp.auth.connect_server": "{server} bağla", + "mcp.auth.copied": "Kopyalandı", + "mcp.auth.copy_link": "Bağlantıyı kopyala", + "mcp.auth.done": "Bitti", + "mcp.auth.failed_to_start_oauth": "OAuth akışı başlatılamadı", + "mcp.auth.follow_browser_steps": "Tarayıcıdaki yetkilendirme adımlarını izleyin.", + "mcp.auth.force_stop": "Zorla durdur", + "mcp.auth.force_stopping": "Durduruluyor...", + "mcp.auth.im_done": "Bitti", + "mcp.auth.invalid_refresh_token": "OAuth yenileme token'ı geçersiz veya süresi dolmuş. Devam etmek için yeniden yetkilendirin.", + "mcp.auth.manual_finish_hint": "Bağlantıyı tamamlamak için geri çağırma URL'sini (localhost:19876) veya yalnızca kodu yapıştırın.", + "mcp.auth.manual_finish_title": "Uzak sunucu mu?", + "mcp.auth.oauth_completed_reload": "OAuth tamamlandı. MCP'yi etkinleştirmek için motoru yeniden yükleyin.", + "mcp.auth.oauth_failed": "OAuth kimlik doğrulaması başarısız oldu.", + "mcp.auth.oauth_not_supported_hint": "Bu şunları gösterebilir:\n• MCP sunucusu OAuth yeteneklerini bildirmiyor\n• Sunucu yeteneklerini keşfetmek için motorun yeniden yüklenmesi gerekiyor\n• Deneyin: CLI'dan opencode mcp auth {server}", + "mcp.auth.open_browser_signin": "Oturum açmayı tamamlamak için tarayıcınızı açacağız.", + "mcp.auth.port_forward_hint": "İpucu: gerekirse geri çağırma bağlantı noktasını yönlendirin: ssh -L 19876:127.0.0.1:19876 user@host", + "mcp.auth.reauth_action": "OAuth'u yeniden yetkilendir", + "mcp.auth.reauth_cli_hint": "Çalıştırın: opencode mcp auth {server}", + "mcp.auth.reauth_failed": "Yeniden yetkilendirme başarısız oldu.", + "mcp.auth.reauth_remote_hint": "Bu worker'ı çalıştıran makineden yeniden yetkilendirin.", + "mcp.auth.reauth_running": "Yeniden yetkilendiriliyor...", + "mcp.auth.reload_blocked": "Bir oturum çalışırken yeniden yükleme duraklatıldı. Kurulumu tamamlamak için çalıştırmayı durdurun.", + "mcp.auth.reload_engine_retry": "Değişiklikleri uygula ve yeniden dene", + "mcp.auth.reload_failed": "Oturum açmadan önce worker yeniden yüklenemedi.", + "mcp.auth.reload_notice": "Bunun geçerli olması için OpenWork'ün worker hizmetini yenilemesi gerekiyor. Bu, çalışan bir oturumu kesintiye uğratabilir.", + "mcp.auth.reload_remote_confirm": "Bunun geçerli olması için OpenWork'ün worker hizmetini yenilemesi gerekiyor. Bu, çalışan oturumunuzu durdurabilir. Devam edilsin mi?", + "mcp.auth.reopen_browser_link": "Tarayıcıyı yeniden açmak için buraya tıklayın", + "mcp.auth.request_timed_out": "İstek zaman aşımına uğradı.", + "mcp.auth.retry": "Yeniden dene", + "mcp.auth.retry_now": "Şimdi Yeniden Dene", + "mcp.auth.server_disabled": "Bu MCP sunucusu devre dışı. Etkinleştirin ve tekrar deneyin.", + "mcp.auth.step1_description": "{server} oturum açma akışını otomatik olarak başlatacağız.", + "mcp.auth.step1_title": "Tarayıcınız açılıyor", + "mcp.auth.step2_description": "Oturum açın ve istendiğinde erişimi onaylayın.", + "mcp.auth.step2_title": "OpenWork'ü yetkilendirin", + "mcp.auth.step3_description": "Yetkilendirme tamamlandıktan hemen sonra bağlantıyı tamamlayacağız.", + "mcp.auth.step3_title": "İşiniz bittiğinde buraya dönün", + "mcp.auth.try_reload_engine": "{message}. Önce motoru yeniden yüklemeyi deneyin.", + "mcp.auth.waiting_authorization": "Tarayıcınızda yetkilendirmenin tamamlanması bekleniyor...", + "mcp.auth.waiting_for_conversation_body": "Sizi mümkün olan en kısa sürede kimlik doğrulaması için yönlendireceğiz.", + "mcp.auth.waiting_for_conversation_title": "Konuşmanın tamamlanması bekleniyor", + "mcp.auth.waiting_for_session": "{session} işini bitirene kadar bekleniyor", + "mcp.available_apps": "Kullanılabilir uygulamalar", + "mcp.cap_signin": "Hesap oturum açma", + "mcp.cap_tools": "AI araçları", + "mcp.config_file": "Yapılandırma dosyası", + "mcp.config_load_failed": "Yapılandırma dosyası yüklenemedi", + "mcp.config_not_loaded": "Henüz yüklenmedi", + "mcp.connect": "Bağlan", + "mcp.connect_failed": "Bağlanılamadı. Tekrar deneyin.", + "mcp.connect_server_first": "Önce sunucuya bağlanın.", + "mcp.connected": "Bağlı", + "mcp.connected_badge": "Bağlı", + "mcp.connection_failed": "Bağlantı sorunu — tekrar deneyin", + "mcp.connection_type": "Bağlantı", + "mcp.custom_app_cta_hint": "Kendi MCP sunucunuzu, dahili aracınızı veya barındırılan uygulamanızı bağlayın.", + "mcp.desktop_required": "Uygulamalar masaüstü uygulaması gerektirir.", + "mcp.docs_link": "Daha fazla bilgi", + "mcp.file_not_found": "Yapılandırma dosyası henüz oluşturulmadı", + "mcp.friendly_status_issue": "Sorun", + "mcp.friendly_status_needs_signin": "Oturum açma gerekiyor", + "mcp.friendly_status_offline": "Çevrimdışı", + "mcp.friendly_status_paused": "Duraklatıldı", + "mcp.friendly_status_ready": "Hazır", + "mcp.last_synced": "Senkronize edildi", + "mcp.login_action": "Oturum aç", + "mcp.login_hint": "Bu uygulamanın kurulumunu tamamlamak için hesabınızı bağlayın.", + "mcp.login_unavailable": "Bu uygulama OpenWork'ten oturum açmayı desteklemiyor.", + "mcp.logout_action": "Oturumu kapat", + "mcp.logout_failed": "Oturum kapatma başarısız oldu.", + "mcp.logout_hint": "Depolanan OAuth kimlik bilgilerini kaldırır. Tekrar oturum açmanız gerekecek.", + "mcp.logout_label": "OAuth", + "mcp.logout_modal_message": "Bu, {server} için depolanan OAuth kimlik bilgilerini kaldıracak. Bu uygulamayı kullanmak için tekrar oturum açmanız gerekecek.", + "mcp.logout_modal_title": "Bu uygulamanın oturumu kapatılsın mı?", + "mcp.logout_success": "{server} oturumu kapatıldı.", + "mcp.logout_working": "Oturum kapatılıyor...", + "mcp.name_required": "Bir sunucu adı girin.", + "mcp.no_apps_hint": "Başlamak için yukarıdan bir tane bağlayın.", + "mcp.no_apps_yet": "Henüz bağlı uygulama yok", + "mcp.oauth": "Oturum aç", + "mcp.oauth_optional_hint": "Hesabınızı bağlamak için tarayıcıda OAuth kullanır.", + "mcp.oauth_optional_label": "Bu uygulama oturum açma gerektiriyor", + "mcp.one_click_connect": "Tek tıkla bağlan", + "mcp.open_file": "Dosyayı aç", + "mcp.opening_label": "Açılıyor...", + "mcp.pick_workspace_error": "Önce bir çalışma alanı klasörü seçin.", + "mcp.pick_workspace_first": "Önce bir çalışma alanı klasörü seçin.", + "mcp.quick_connect_context7_desc": "Ürün belgelerini daha zengin bağlamla arayın.", + "mcp.quick_connect_context7_title": "Context7", + "mcp.quick_connect_linear_desc": "Sprintleri planlayın ve biletleri daha hızlı tamamlayın.", + "mcp.quick_connect_linear_title": "Linear", + "mcp.quick_connect_notion_desc": "Sayfalar, veritabanları ve proje belgeleri senkronize.", + "mcp.quick_connect_notion_title": "Notion", + "mcp.quick_connect_openwork_cloud_desc": "Kuruluşunuzu, worker'larınızı, yeteneklerinizi, sağlayıcılarınızı ve ekip yapılandırmanızı sohbetten yönetin. Deneyin: \"Kuruluşumdaki tüm worker'ları listele\" veya \"Bu yeteneği ekibe gönder.\"", + "mcp.quick_connect_openwork_cloud_title": "OpenWork Cloud Kontrol", + "mcp.quick_connect_openwork_ui_desc": "Ajanların OpenWork uygulamasını görmesini ve yönetmesini sağlayın. Oturumlarda gezinin, yazım alanına yazın, ayarları açın. Deneyin: \"Gördüğüm şeyin bir ekran görüntüsünü al\" veya \"Yeni bir oturum oluştur ve merhaba yaz.\"", + "mcp.quick_connect_openwork_ui_title": "OpenWork UI Kontrol", + "mcp.quick_connect_sentry_desc": "Sürümleri takip edin ve üretim hatalarını çözün.", + "mcp.quick_connect_sentry_title": "Sentry", + "mcp.quick_connect_stripe_desc": "Ödemeleri, faturaları ve abonelikleri inceleyin.", + "mcp.quick_connect_stripe_title": "Stripe", + "mcp.reload_banner_blocked_hint": "Etkinleştirmek için çalışan görevi durdurun.", + "mcp.remote_workspace_url_hint": "Uzak worker'lar URL tabanlı MCP sunucularıyla en hızlı bağlanır.", + "mcp.remove_app": "Kaldır", + "mcp.remove_failed": "Uygulama kaldırılamadı.", + "mcp.remove_modal_message": "{server} uygulamasını kaldırmak istediğinizden emin misiniz? İstediğiniz zaman geri ekleyebilirsiniz.", + "mcp.remove_modal_title": "Uygulamayı kaldır", + "mcp.reveal_config_failed": "Yapılandırma dosyası açılamadı", + "mcp.reveal_in_finder": "Finder'da göster", + "mcp.scope_global": "Tüm çalışma alanları", + "mcp.scope_project": "Bu çalışma alanı", + "mcp.server_command": "Komut", + "mcp.server_command_hint": "Sunucuyu başlatmak için kabuk komutu.", + "mcp.server_command_placeholder": "npx -y @modelcontextprotocol/server-sequential-thinking", + "mcp.server_name": "Uygulama adı", + "mcp.server_name_placeholder": "github-copilot", + "mcp.server_type": "Tür", + "mcp.server_url": "Sunucu URL'si", + "mcp.server_url_placeholder": "https://api.githubcopilot.com/mcp/", + "mcp.sign_in_section_label": "Oturum açma", + "mcp.tap_to_connect": "Bağlamak için dokunun", + "mcp.technical_details": "Teknik ayrıntılar", + "mcp.type_cloud": "Bulut (hesabınızla oturum açın)", + "mcp.type_local": "Yerel (bu cihazda çalışır)", + "mcp.type_local_cmd": "Yerel (komut)", + "mcp.type_remote": "Uzak (URL)", + "mcp.url_or_command_required": "Uzak sunucular için bir URL veya yerel sunucular için bir komut girin.", + "mcp.your_apps": "Uygulamalarınız", + "model_behavior.desc_builtin": "Bu model kendi akıl yürütme yoluna karar verir ve profilleri burada göstermez.", + "model_behavior.desc_generic": "{label} profilini kullanın.", + "model_behavior.desc_high": "Yanıtlamadan önce daha fazla akıl yürütme yapın.", + "model_behavior.desc_high_anthropic": "Standart genişletilmiş düşünme bütçesini kullanın.", + "model_behavior.desc_low": "Yanıtlamadan önce daha hafif bir akıl yürütme geçişi kullanın.", + "model_behavior.desc_low_google": "Daha hızlı yanıtlar için daha hafif bir akıl yürütme bütçesi kullanın.", + "model_behavior.desc_max": "Sağlayıcının en derin akıl yürütme profilini kullanın.", + "model_behavior.desc_max_anthropic": "Mevcut en büyük genişletilmiş düşünme bütçesini kullanın.", + "model_behavior.desc_medium": "Hız ve akıl yürütme derinliğini dengeleyin.", + "model_behavior.desc_minimal": "Çok küçük miktarda akıl yürütme kullanın.", + "model_behavior.desc_none": "En hafif akıl yürütme yoluyla hızı tercih edin.", + "model_behavior.desc_standard": "Bu model ek akıl yürütme kontrolleri göstermez.", + "model_behavior.label_balanced": "Dengeli", + "model_behavior.label_builtin": "Yerleşik", + "model_behavior.label_deep": "Derin", + "model_behavior.label_extended": "Genişletilmiş", + "model_behavior.label_fast": "Hızlı", + "model_behavior.label_light": "Hafif", + "model_behavior.label_maximum": "Maksimum", + "model_behavior.label_quick": "Çabuk", + "model_behavior.label_standard": "Standart", + "model_behavior.title_builtin_reasoning": "Yerleşik akıl yürütme", + "model_behavior.title_extended_thinking": "Genişletilmiş düşünme", + "model_behavior.title_reasoning_budget": "Akıl yürütme bütçesi", + "model_behavior.title_reasoning_effort": "Akıl yürütme çabası", + "model_behavior.title_standard_generation": "Standart üretim", + "model_picker.chat_model_desc": "Bu sohbet için modeli seçin. Bir model akıl yürütme profillerini destekliyorsa, bunları kartında yapılandırın.", + "model_picker.chat_model_title": "Sohbet modeli", + "model_picker.connect_provider_hint": "Bu sağlayıcıyı bağlayarak modellere göz atın ve kaydedin", + "model_picker.default_model_desc": "Yeni sohbetler için varsayılan modeli seçin, ardından Bitti'ye basmadan önce akıl yürütme profillerini kartında ince ayarlayın.", + "model_picker.default_model_title": "Varsayılan model", + "model_picker.model_count_one": "{count} model", + "model_picker.model_count_other": "{count} model", + "model_picker.more_providers": "Daha fazla sağlayıcı", + "model_picker.no_results": "Aramanızla eşleşen model yok.", + "model_picker.other_connected_models": "Diğer bağlı modeller", + "model_picker.recommended": "Son kullanılanlar", + "onboarding.authorize_folder": "Klasörü yetkilendir", + "welcome.title": "OpenWork'e hoş geldiniz", + "welcome.subtitle": "Bilgisayarınız, ama sizin için çalışıyor.", + "welcome.get_started": "Başlayın", + "welcome.capability_spreadsheets": "Elektronik tabloları düzenleyin", + "welcome.capability_spreadsheets_desc": "CSV ve Excel dosyaları oluşturun, temizleyin ve dönüştürün.", + "welcome.capability_browser": "Tarayıcınızı kontrol edin", + "welcome.capability_browser_desc": "Yinelenen web görevleri için yerleşik tarayıcıyı otomatikleştirin.", + "welcome.capability_files": "Dosyaları düzenleyin", + "welcome.capability_files_desc": "Dosyaları ve klasörleri okuyun, yazın ve yönetin.", + "welcome.capability_automate": "Görevleri otomatikleştirin", + "welcome.capability_automate_desc": "Yetenekler ve komutlarla yeniden kullanılabilir iş akışları oluşturun.", + "welcome.capability_content": "İçerik oluşturun", + "welcome.capability_content_desc": "Belgeler, e-postalar ve raporlar taslağı hazırlayın.", + "welcome.capability_apis": "API'lere bağlanın", + "welcome.capability_apis_desc": "MCP aracılığıyla dış hizmetlere ve araçlara bağlanın.", + "welcome.folder_title": "Bir klasör seçin", + "welcome.folder_explanation": "Bu klasör çalışma alanınız olur. OpenWork şunları yapabilir:", + "welcome.folder_read": "İçine koyduğunuz dosyaları okumak", + "welcome.folder_write": "Sizin için dosya oluşturmak ve düzenlemek", + "welcome.folder_anything": "Elektronik tablolar, belgeler, görseller — klasördeki her şeyle çalışmak", + "welcome.folder_drop_hint": "Dosyaları istediğiniz zaman içine bırakın, OpenWork bunları kullanabilir.", + "plugins.add": "Ekle", + "plugins.add_hint": "npm paket adları ekleyin, ör. opencode-wakatime", + "plugins.add_label": "Eklenti ekle", + "plugins.added": "Eklendi", + "plugins.config": "Yapılandırma", + "plugins.config_label": "Yapılandırma", + "plugins.desc": "Projeniz veya genel OpenCode eklentileri için `opencode.json` dosyasını yönetin.", + "plugins.empty": "Henüz yapılandırılmış eklenti yok.", + "plugins.enabled": "Etkin", + "plugins.hide_setup": "Kurulumu gizle", + "plugins.not_loaded": "Henüz yüklenmedi", + "plugins.not_loaded_yet": "Henüz yüklenmedi", + "plugins.remove": "Kaldır", + "plugins.scope_global": "Genel", + "plugins.scope_project": "Proje", + "plugins.setup": "Kurulum", + "plugins.suggested": "Önerilen eklentiler", + "plugins.suggested_heading": "Önerilen eklentiler", + "plugins.title": "OpenCode eklentileri", + "providers.api_key_label": "API anahtarı", + "providers.api_key_required": "API anahtarı gereklidir", + "providers.auth_failed": "Kimlik doğrulama başarısız oldu", + "providers.connect_failed": "Sağlayıcı bağlantısı başarısız oldu", + "providers.disabled_in_config_suffix": "ve OpenCode yapılandırmasında devre dışı bırakıldı.", + "providers.disconnect_failed": "Sağlayıcı bağlantısını kesme başarısız oldu", + "providers.disconnected_prefix": "Bağlantı kesildi", + "providers.load_failed": "Sağlayıcılar yüklenemedi", + "providers.no_oauth_prefix": "Şunlar için OAuth akışı yok:", + "providers.no_providers_available": "Kullanılabilir sağlayıcı yok", + "providers.not_connected": "Bir sunucuya bağlı değil", + "providers.not_oauth_flow_prefix": "Seçili kimlik doğrulama yöntemi şunlar için bir OAuth akışı değil:", + "providers.oauth_failed": "OAuth tamamlanamadı", + "providers.oauth_method_required": "OAuth yöntemi gereklidir", + "providers.provider_error": "Sağlayıcı hatası ({provider})", + "providers.provider_id_required": "Sağlayıcı ID'si gereklidir", + "providers.rate_limit_exceeded": "Hız sınırı aşıldı", + "providers.removal_unsupported": "Sağlayıcı kimlik doğrulaması kaldırma bu istemci tarafından desteklenmiyor.", + "providers.request_failed": "İstek başarısız oldu", + "providers.save_api_key_failed": "API anahtarı kaydedilemedi", + "providers.still_connected_suffix": ", ancak worker hala bağlı olarak raporluyor. Kalan API anahtarını veya OAuth kimlik bilgilerini temizleyin ve bağlantıyı tamamen kesmek için worker'ı yeniden başlatın.", + "providers.unknown_provider": "Bilinmeyen sağlayıcı", + "providers.use_api_key_suffix": "Bunun yerine bir API anahtarı kullanın.", + "question_modal.custom_answer_label": "Veya özel bir yanıt yazın", + "question_modal.custom_answer_placeholder": "Yanıtınızı buraya yazın...", + "question_modal.question_counter": "Soru {current}/{total}", + "session.allow_for_session": "Oturum için izin ver", + "session.allow_once": "Bir kez izin ver", + "session.cmd_current_workspace": "Mevcut çalışma alanı", + "session.cmd_new_session_detail": "Mevcut çalışma alanında yeni bir görev başlatın", + "session.cmd_new_session_meta": "Oluştur", + "session.cmd_new_session_title": "Yeni oturum oluştur", + "session.cmd_sessions_detail": "Çalışma alanları arasında {count} kullanılabilir", + "session.cmd_sessions_meta": "Atla", + "session.cmd_sessions_title": "Oturumları ara", + "session.cmd_settings_meta": "Aç", + "session.cmd_switch": "Geç", + "session.palette_no_matches": "Eşleşme yok.", + "session.create_or_connect_workspace": "Çalışma alanı oluştur veya bağlan", + "session.default_agent": "Varsayılan ajan", + "session.default_model": "Bir model seçin", + "session.default_title": "Yeni oturum", + "session.delete": "Sil", + "session.delete_named_session_message": "Bu, \"{title}\" oturumunu ve mesajlarını kalıcı olarak silecek.", + "session.delete_session_generic": "Bu, seçili oturumu ve mesajlarını kalıcı olarak silecek.", + "session.delete_session_title": "Oturum silinsin mi?", + "session.deleting": "Siliniyor...", + "session.deny": "Reddet", + "session.details": "Ayrıntılar", + "session.details_label": "Ayrıntılar", + "session.doom_loop_label": "Sonsuz Döngü (Doom Loop)", + "session.doom_loop_message": "OpenCode, özdeş girdiyle yinelenen araç çağrıları algıladı ve yinelenen başarısızlıklardan sonra devam edip etmemesi gerektiğini soruyor.", + "session.doom_loop_note": "Döngüyü durdurmak için reddedin veya ajanın denemeye devam etmesini istiyorsanız izin verin.", + "session.doom_loop_repeated_call_label": "Yinelenen çağrı", + "session.doom_loop_repeated_tool_call": "Yinelenen araç çağrısı", + "session.doom_loop_title": "Sonsuz Döngü (Doom Loop) Algılandı", + "session.doom_loop_tool_label": "Araç", + "session.export_already_running": "Dışa aktarma zaten çalışıyor.", + "session.export_desktop_only": "Dışa aktarma masaüstü uygulamasında kullanılabilir.", + "session.export_desktop_only_local": "Dışa aktarma masaüstü uygulamasındaki yerel worker'lar için kullanılabilir.", + "session.export_local_only": "Dışa aktarma yalnızca yerel worker'lar için desteklenir.", + "session.loading_detail": "Bu görev için en son mesajlar çekiliyor.", + "session.preparing_workspace": "Çalışma alanı hazırlanıyor", + "session.model": "Model", + "session.new_task": "Yeni görev", + "session.open": "Aç", + "session.palette_hint_navigate": "Gezinmek için ok tuşları", + "session.palette_hint_run": "Çalıştırmak için Enter · kapatmak için Esc", + "session.palette_placeholder_actions": "Eylemleri ara", + "session.palette_placeholder_sessions": "Oturum başlığına veya çalışma alanına göre bul", + "session.palette_title_actions": "Hızlı eylemler", + "session.palette_title_sessions": "Oturumları ara", + "session.permission_label": "İzin", + "session.permission_detail_command": "Komut", + "session.permission_detail_cwd": "Çalışma dizini", + "session.permission_detail_description": "Açıklama", + "session.permission_detail_diff": "Fark", + "session.permission_detail_files": "Dosyalar", + "session.permission_detail_file": "Dosya", + "session.permission_detail_agent": "Ajan", + "session.permission_detail_parent_directory": "Üst dizin", + "session.permission_detail_path": "Yol", + "session.permission_detail_query": "Sorgu", + "session.permission_detail_target": "Hedef", + "session.permission_detail_tool": "Araç", + "session.permission_detail_url": "URL", + "session.permission_kind_edit": "Dosya düzenleme", + "session.permission_kind_external_directory": "Harici dizin", + "session.permission_kind_question": "Soru", + "session.permission_kind_read": "Dosya okuma", + "session.permission_kind_skill": "Yetenek", + "session.permission_kind_task": "Alt görev", + "session.permission_kind_todowrite": "Yapılacak yazma", + "session.permission_message": "OpenCode devam etmek için izin istiyor.", + "session.permission_message_bash": "OpenCode devam etmeden önce komut kapsamını inceleyin.", + "session.permission_message_edit": "OpenCode değişiklik yapmadan önce dosyayı ve farkı inceleyin.", + "session.permission_message_external_directory": "Çalışma alanı dışında erişime izin vermeden önce klasörü inceleyin.", + "session.permission_message_read": "Erişime izin vermeden önce istenen dosya kapsamını inceleyin.", + "session.permission_message_task": "Başlatmaya izin vermeden önce istenen alt görevi inceleyin.", + "session.permission_metadata_unavailable": "Üst veri görüntülenemedi.", + "session.permission_review_label": "İncele", + "session.permission_scope_empty": "Belirli bir kapsam sağlanmadı.", + "session.permission_title_bash": "Bir kabuk komutu çalıştırılsın mı?", + "session.permission_title_edit": "Dosyalar değiştirilsin mi?", + "session.permission_title_external_directory": "Harici bir klasöre erişilsin mi?", + "session.permission_title_generic": "{permission} onaylansın mı?", + "session.permission_title_read": "Dosyalar okunsun mu?", + "session.permission_title_task": "Bir alt görev başlatılsın mı?", + "session.permission_decision_hint": "Bu istek için bir kez izin verin veya bu kapsama güveniyorsanız oturum için izin verin.", + "session.redo_aria_label": "Son geri alınan mesajı yinele", + "session.redo_label": "Yinele", + "session.redo_title": "Son geri alınan mesajı yinele", + "session.rename_description": "Bu oturumun adını güncelleyin.", + "session.rename_label": "Oturum adı", + "session.rename_placeholder": "Yeni bir ad girin", + "session.rename_title": "Oturumu yeniden adlandır", + "session.resize_workspace_column": "Çalışma alanı sütununu yeniden boyutlandır", + "session.revert_label": "Geri al", + "session.scope_label": "Kapsam", + "session.select_or_create_session": "Başlamak için bir oturum seçin veya oluşturun.", + "session.share_collaborator_hint": "Yalnızca sahip olan eylemlere ihtiyacınız olmadığında rutin uzaktan erişim.", + "session.share_collaborator_host_hint": "Sahip olan eylemler olmadan bu host'a rutin uzaktan erişim.", + "session.share_collaborator_label": "Katılımcı token'ı", + "session.share_connected_with_hint": "Bu çalışma alanı şu anda bu parola ile bağlı.", + "session.share_desktop_app_required": "Masaüstü uygulaması gerekiyor", + "session.share_local_host_not_ready": "Yerel OpenWork host'u henüz hazır değil.", + "session.share_missing_host_url": "OpenWork host URL'si eksik.", + "session.share_missing_token": "OpenWork token'ı eksik.", + "session.share_note_direct_runtime": "Uzaktan erişim şu anda çalışan yerel worker'ı paylaşır. Daha sonra yerel klasörleri değiştirirseniz, URL'yi ve parolayı doğrulamak için bu paneli yeniden açın.", + "session.share_opencode_base_url": "OpenCode temel URL'si", + "session.share_openwork_workers_only": "Paylaşım hizmeti bağlantıları yalnızca OpenWork worker'ları için kullanılabilir.", + "session.share_owner_permission_hint": "Uzak istemcinin izin istemlerini yanıtlaması gerektiğinde kullanın.", + "session.share_password": "Parola", + "session.share_select_workspace": "Önce bir çalışma alanı seçin.", + "session.share_set_token_hint": "Çalışma alanı ayarlarında token'ı ayarlayın", + "session.share_starting_server": "Sunucu başlatılıyor...", + "session.share_worker_url": "Worker URL'si", + "session.share_worker_url_phones_hint": "Bu worker'a bağlanan telefonlarda veya dizüstü bilgisayarlarda kullanın.", + "session.share_worker_url_resolving_hint": "Worker URL'si çözümleniyor; host URL'si geri dönüş olarak gösterildi.", + "session.assistant_empty_response": "Ajan boş bir yanıt verdi. Tekrar deneyin.", + "session.assistant_compacting": "Sıkıştırılıyor", + "session.assistant_error": "Hata", + "session.assistant_idle": "Boşta", + "session.assistant_responding": "Yanıtlanıyor", + "session.assistant_thinking": "Düşünüyor", + "session.assistant_waiting": "Bekliyor", + "session.support_docs": "Belgeleri aç", + "session.support_feedback": "Geri bildirim aç", + "session.todo_label": "Görevler", + "session.todo_progress": "{completed}/{total} görev tamamlandı", + "session.todo_progress_label": "İlerleme", + "session.undo_label": "Geri al", + "session.undo_title": "Son mesajı geri al", + "session.untitled": "Başlıksız", + "session.workspace_fallback": "Çalışma Alanı", + "settings.audit_actor_host": "host", + "settings.audit_actor_remote": "uzak", + "settings.api_keys_info": "API anahtarları OpenCode tarafından yerel olarak depolanır. Ortam destekli sağlayıcılar worker ortamında değiştirilmeli ve ardından yeniden yüklenmelidir.", + "settings.appearance_hint": "Sistemle eşleştirin veya açık/koyu modu zorlayın.", + "settings.appearance_title": "Görünüm", + "settings.audit_log_title": "Denetim günlüğü", + "settings.auto_compact": "Otomatik bağlam sıkıştırma", + "settings.auto_compact_desc": "Bu çalışma alanı için OpenCode compaction.auto ayarını kontrol eder. Değiştirdikten sonra motoru yeniden yükleyin.", + "settings.auto_compact_unavailable": "Otomatik bağlam sıkıştırma henüz kullanılamıyor.", + "settings.auto_update_desc": "Yeni sürümler bulunduğunda otomatik olarak indirin. Yeniden başlatma zamanını siz seçersiniz.", + "settings.auto_update_title": "Otomatik indir", + "settings.background_checks_desc": "Arka planda yeni sürümleri arayın.", + "settings.background_checks_title": "Otomatik kontrol et", + "settings.cache_repair_requires_desktop": "Yalnızca masaüstü uygulamasında kullanılabilir", + "settings.cap_browser_tools": "Tarayıcı araçları: {value}", + "settings.cap_commands": "Komutlar: {value}", + "settings.cap_config": "Yapılandırma: {value}", + "settings.cap_file_tools": "Dosya araçları: {value}", + "settings.cap_inbox_off": "gelen kutusu kapalı", + "settings.cap_inbox_on": "gelen kutusu açık", + "settings.cap_mcp": "MCP: {value}", + "settings.cap_outbox_off": "giden kutusu kapalı", + "settings.cap_outbox_on": "giden kutusu açık", + "settings.cap_plugins": "Eklentiler: {value}", + "settings.cap_read": "oku", + "settings.cap_read_only": "salt okunur", + "settings.cap_read_write": "oku/yaz", + "settings.cap_sandbox": "Korumalı alan: {value}", + "settings.cap_skills": "Yetenekler: {value}", + "settings.cap_write": "yaz", + "settings.cap_write_only": "yalnızca yaz", + "settings.capabilities_title": "OpenWork sunucu yetenekleri", + "settings.capabilities_unavailable": "Yetenekler kullanılamıyor. Bir istemci token'ı ile bağlanın.", + "settings.change": "Değiştir", + "settings.choose": "Seç", + "settings.clear": "Temizle", + "settings.config_updated": "Yapılandırma güncellendi. Değişiklik OpenCode'u etkiliyorsa motoru yeniden yükleyin.", + "settings.configure": "Yapılandır", + "settings.connect_provider": "Sağlayıcı bağla", + "settings.connection": "Bağlantı", + "settings.connection_failed": "Bağlantı başarısız oldu", + "settings.connection_title": "Bağlantı", + "settings.copied_debug_report": "Çalışma ortamı raporu JSON'u kopyalandı.", + "settings.copy_json": "JSON'u kopyala", + "settings.custom_binary_hint": "OpenWork'ü yerel bir OpenCode derlemesine yönlendirmek için bunu kullanın", + "settings.custom_binary_label": "Özel OpenCode ikili dosyası", + "settings.debug_base_url": "Temel URL: {url}", + "settings.debug_commit": "İşleme: {sha}", + "settings.debug_connect_url": "Bağlantı URL'si: {url}", + "settings.debug_deeplink_unavailable": "Hata ayıklama derin bağlantıları henüz kullanılamıyor.", + "settings.debug_desktop_app": "Masaüstü uygulaması: {version}", + "settings.debug_hostname": "Ana bilgisayar adı: {hostname}", + "settings.debug_lan_url": "LAN URL'si: {url}", + "settings.debug_mdns_url": "mDNS URL'si: {url}", + "settings.debug_opencode_version": "OpenCode: {version}", + "settings.debug_openwork_server_version": "OpenWork sunucusu: {version}", + "settings.debug_pid": "PID: {pid}", + "settings.debug_port": "Bağlantı noktası: {port}", + "settings.debug_project_dir": "Proje dizini: {path}", + "settings.debug_remote_access": "Uzaktan erişim: {value}", + "settings.debug_runtime": "Çalışma ortamı: {runtime}", + "settings.error": "Hata", + "settings.idle": "Boşta", + "settings.loading": "Yükleniyor", + "settings.deeplink_hint": "openwork:// veya openwork-dev:// bağlantılarını kabul eder.", + "settings.default_label": "Varsayılan", + "settings.delete_containers": "Tümünü kaldır", + "settings.delete_local_config": "Yerel durum kaldırılıyor...", + "settings.dev_mode_badge": "Geliştirici modu", + "settings.developer": "Geliştirici", + "settings.developer_mode_desc": "Hata ayıklama araçlarını, tanılamayı ve Geliştirici sekmesini etkinleştirir.", + "settings.developer_mode_title": "Geliştirici modu", + "settings.developer_panel_disabled": "Geliştirici paneli etkinleştirildi.", + "settings.developer_panel_enabled": "Geliştirici paneli etkinleştirildi.", + "settings.diag_approval": "Onay: {mode} ({ms}ms)", + "settings.diag_config_path": "Yapılandırma yolu: {path}", + "settings.diag_default": "varsayılan", + "settings.diag_host_token_source": "Host token kaynağı: {source}", + "settings.diag_opencode_binary": "OpenCode ikili dosyası: {binary}", + "settings.diag_read_only": "Salt okunur: {value}", + "settings.diag_runtime_workspace": "Çalışma ortamı çalışma alanı: {id}", + "settings.diag_selected_workspace": "Seçili çalışma alanı: {id}", + "settings.diag_started": "Başlatıldı: {time}", + "settings.diag_token_source": "Token kaynağı: {source}", + "settings.diag_workspaces": "Çalışma alanları: {count}", + "settings.diagnostics_unavailable": "Tanılama kullanılamıyor.", + "settings.disable_developer_mode": "Geliştirici Modunu Kapat", + "settings.disabled": "Devre dışı", + "settings.disconnect": "Bağlantıyı kes", + "settings.disconnect_server": "Sunucu bağlantısını kes", + "settings.disconnecting": "Bağlantı kesiliyor...", + "settings.docker_containers_desc": "Görevler tamamlandıktan sonra arta kalan Docker konteynerlerini temizleyin.", + "settings.docker_containers_title": "Docker konteynerleri", + "settings.docker_requires_desktop": "Yalnızca masaüstü uygulamasında kullanılabilir", + "settings.done": "Bitti", + "settings.enable_developer_mode": "Geliştirici Modunu Etkinleştir", + "settings.enable_exa": "Exa web aramasını etkinleştir", + "settings.enable_exa_desc": "OpenWork tarafından OpenCode başlatıldığında uygulanır. Varsayılan olarak kapalıdır.", + "settings.exa_unavailable": "Exa web araması bu ayarlar görünümünde henüz yapılandırılamıyor.", + "settings.engine_bundled": "Paketlenmiş (önerilen)", + "settings.engine_bundled_hint": "Paketlenmiş motor en güvenilir seçenektir. Sistem", + "settings.engine_custom_binary": "Özel ikili dosya", + "settings.engine_desc": "OpenCode'un yerel olarak nasıl çalışacağını seçin.", + "settings.engine_source": "Motor kaynağı", + "settings.engine_source_debug": "Motor kaynağı", + "settings.engine_system_path": "Sistem kurulumu (PATH)", + "settings.engine_title": "Motor", + "settings.exa_restart_hint": "Bu ayarı değiştirdikten sonra OpenCode'u yeniden başlatın.", + "settings.export": "Dışa aktar", + "settings.exported_debug_report": "Çalışma ortamı raporu JSON'u dışa aktarıldı.", + "settings.feedback_badge": "Her mesajı okuyoruz", + "settings.feedback_desc": "Nelerin harika, nelerin zor olduğunu bize bildirin. Geri bildirimler doğrudan ekibe gider ve nelerin gönderileceğini önceliklendirmemize yardımcı olur.", + "settings.feedback_title": "OpenWork'ü şekillendirmeye yardımcı olun", + "settings.group_cloud": "Bulut", + "settings.group_global": "Genel", + "settings.group_workspace": "Çalışma alanı", + "settings.hide_titlebar": "Başlık çubuğunu gizle", + "settings.hide_titlebar_desc": "Pencere başlık çubuğunu gizler. Döşeme penceri", + "settings.join_discord": "Discord'a katıl", + "settings.language": "Dil", + "settings.language.description": "Tercih ettiğiniz dili seçin", + "settings.last_error": "Son hata", + "settings.last_stderr": "Son stderr", + "settings.last_stdout": "Son stdout", + "settings.loading_providers": "Sağlayıcılar yükleniyor...", + "settings.managed_by_env": "Ortam tarafından yönetiliyor", + "settings.model": "Model", + "settings.model_behavior": "Model davranışı", + "settings.model_behavior_desc": "Varsayılan model seçiciyi açarak akıl yürütme profilleri mevcut olduğunda yapılandırın.", + "settings.model_behavior_unavailable": "Model davranışı yapılandırması henüz kullanılamıyor.", + "settings.model_section_desc": "Varsayılan sohbet modelini seçin ve nasıl akıl yürüttüğünü inceleyin.", + "settings.model_title": "Model", + "settings.no_active_workspace": "Etkin yerel çalışma alanı yok.", + "settings.no_providers_connected": "Henüz bağlı sağlayıcı yok.", + "settings.no_audit_entries": "Henüz denetim girdisi yok.", + "settings.no_custom_path_set": "Özel yol ayarlanmamış", + "settings.nuke_hint": "Bunu yalnızca masaüstü uygulamasını ve OpenCode çalışma ortamı durumunu tamamen sıfırlamak istediğinizde kullanın.", + "settings.off": "Kapalı", + "settings.on": "Açık", + "settings.open_deeplink_action": "Açılıyor...", + "settings.open_deeplink_button": "Gizle", + "settings.open_deeplink_desc": "Açmak için bir OpenWork derin bağlantısı veya paylaşım URL'si yapıştırın.", + "settings.open_deeplink_failed": "Derin bağlantı açılamadı", + "settings.open_deeplink_title": "Derin Bağlantı Aç", + "settings.opencode_cache": "Yerel önbellek", + "settings.opencode_cache_description": "Eski yerel verilerin neden olduğu başlatma sorunlarını düzeltin.", + "settings.opencode_engine_desc": "Ajanlar, araçlar ve model sağlayıcıları için yerel çalışma ortamı.", + "settings.opencode_engine_label": "OpenCode motoru", + "settings.opencode_engine_sidecar": "OpenCode motoru", + "settings.opencode_engine_sidecar_desc": "OpenWork tarafından yönetilen yerel OpenCode süreci.", + "settings.opencode_sdk_desc": "Tarayıcı → motor bağlantısı.", + "settings.opencode_sdk_title": "OpenCode SDK bağlantısı", + "settings.opencode_section_label": "OpenCode", + "settings.opening": "Derin bağlantı açılıyor", + "settings.openwork_config_sidecar_desc": "Onayları, denetimi ve OpenCode yaşam döngüsünü barındıran yerel OpenWork sunucusu (Bun).", + "settings.openwork_diagnostics_title": "OpenWork sunucu tanılaması", + "settings.openwork_server_desc": "Uygulama senkronizasyonu, worker'lar ve uzak için oturum kontrol düzlemi", + "settings.openwork_server_label": "OpenWork sunucusu", + "settings.pending_permissions": "Bekleyen izinler", + "settings.production_mode_badge": "Üretim", + "settings.provider_default_desc": "Modelin yerleşik varsayılan akıl yürütme davranışını kullanın.", + "settings.provider_default_label": "Sağlayıcı varsayılanı", + "settings.provider_source_config": "Yapılandırma", + "settings.provider_source_custom": "Özel", + "settings.provider_source_env": "Ortam", + "settings.providers_desc": "Modeller ve araçlar için hizmetleri bağlayın.", + "settings.providers_title": "Sağlayıcılar", + "settings.quit_hint": "OpenWork temizleme işleminden hemen sonra kapanır, böylece sonraki başlatma bu mod için boş bir yerel durumdan başlar.", + "settings.recent_events": "Son etkinlikler", + "settings.reconnect_failed": "Yeniden bağlanma başarısız oldu. Sunucu URL'sini/token'ını kontrol edin ve tekrar deneyin.", + "settings.reconnect_server": "Yeniden bağlanılıyor...", + "settings.reconnect_server_failed": "OpenWork sunucusuna yeniden bağlanma başarısız oldu.", + "settings.reconnected": "OpenWork sunucusuna yeniden bağlanıldı.", + "settings.reconnecting": "Yeniden bağlanılıyor...", + "settings.removing_containers": "Konteynerler kaldırılıyor...", + "settings.removing_local_state": "Yerel durum kaldırılıyor...", + "settings.repair_cache": "Önbelleği onar", + "settings.repairing_cache": "Onarılıyor...", + "settings.report_issue": "Sorun bildir", + "settings.reset": "Sıfırla", + "settings.reset_app_data": "Uygulama verilerini sıfırla", + "settings.reset_app_data_description": "Daha agresif. OpenWork önbelleğini + uygulama verilerini temizler.", + "settings.reset_app_data_title": "Uygulama verilerini sıfırla", + "settings.reset_app_data_warning": "Bu cihazdaki OpenWork önbelleğini ve uygulama verilerini temizler.", + "settings.reset_button": "Sıfırla", + "settings.reset_cancel": "İptal", + "settings.reset_config_defaults": "Varsayılanlara sıfırla", + "settings.reset_confirm_button": "Sıfırla ve Yeniden Başlat", + "settings.reset_confirmation_hint": "Onaylamak için {resetWord} yazın. OpenWork yeniden başlayacak.", + "settings.reset_confirmation_label": "Onay", + "settings.reset_confirmation_placeholder": "RESET yazın", + "settings.reset_onboarding": "Tanıtımı sıfırla", + "settings.reset_onboarding_description": "OpenWork tercihlerini temizler ve uygulamayı yeniden başlatır.", + "settings.reset_onboarding_title": "Tanıtımı sıfırla", + "settings.reset_onboarding_warning": "OpenWork yerel tercihlerini ve çalışma alanı tanıtım işaretleyicilerini temizler.", + "settings.reset_openwork_desc_dev": "Geliştirici modu etkin olduğunda, yalnızca openwork-dev-data içindeki yalıtılmış OpenCode geliştirici durumunu temizler.", + "settings.reset_openwork_desc_prod": "Geliştirici modu etkin olduğunda, yalnızca openwork-dev-data içindeki yalıtılmış OpenCode geliştirici durumunu temizler.", + "settings.reset_openwork_title": "OpenWork + OpenCode durumunu sıfırla", + "settings.reset_requires_confirm": "RESET yazmayı gerektirir ve uygulamayı yeniden başlatır.", + "settings.reset_startup": "Varsayılan başlatma modunu sıfırla", + "settings.reset_startup_pref": "Başlatma tercihini sıfırla", + "settings.reset_stop_active_runs": "Sıfırlamadan önce etkin çalıştırmaları durdurun.", + "settings.resetting": "Sıfırlanıyor...", + "settings.restart_blocked_message": "Güncelleme hazır, ancak OpenWork etkin görevleriniz bitene kadar bekleyecek. Ayrıca bunları el ile durdurabilirsiniz.", + "settings.restart_failed": "Yeniden başlatma başarısız oldu. Günlükleri kontrol edin ve tekrar deneyin.", + "settings.restart_opencode": "OpenCode'u yeniden başlat", + "settings.restart_openwork_server": "OpenWork sunucusunu yeniden başlat", + "settings.restart_server_failed": "Yerel sunucu yeniden başlatılamadı.", + "settings.restarted": "Yerel sunucu yeniden başlatıldı.", + "settings.restarting": "Yeniden başlatılıyor…", + "settings.restart_succeeded_template": "{service} yeniden başlatıldı.", + "settings.restart_failed_template": "{service} yeniden başlatma başarısız oldu.", + "settings.copy_logs": "Günlükleri kopyala", + "settings.copied_service_logs": "{service} günlükleri kopyalandı.", + "settings.no_logs_captured": "Henüz günlük yakalanmadı.", + "settings.exported_developer_log": "Geliştirici günlüğü dışa aktarıldı.", + "settings.developer_log_title": "Geliştirici günlük akışı", + "settings.developer_log_desc": "Geliştirici Modu açıkken yakalanan uygulama, çalışma alanı, oturum ve performans etkinlikleri.", + "settings.developer_log_count": "En son {count} tutulan kayıt gösteriliyor.", + "settings.developer_log_empty": "Henüz geliştirici günlüğü yakalanmadı.", + "settings.services_section_title": "Hizmetler", + "settings.services_section_desc": "Bu OpenWork oturumunu destekleyen yerel hizmetler. Her hizmetin kendi yeniden başlatma ve günlük seçenekleri vardır.", + "settings.activity_section_title": "Etkinlik", + "settings.activity_section_desc": "Denetim izi ve son çalışma ortamı etkinlikleri.", + "settings.tools_section_title": "Araçlar", + "settings.tools_section_desc": "Yerel yürütmeyi tanılamak için yoklamalar ve ikili dosya seçiciler.", + "settings.recovery_section_title": "Sıfırlama ve kurtarma", + "settings.recovery_section_desc": "OpenWork'ten çıkmadan durumu geri alın.", + "settings.danger_section_title": "Tehlikeli bölge", + "settings.danger_section_desc": "Geri alınamaz eylemler. Yalnızca sonuçları anladığınızda kullanın.", + "settings.clear_button": "Temizle", + "settings.copy_log_button": "Günlüğü kopyala", + "settings.export_log_button": ".log dışa aktar", + "settings.reveal_config": "Dosyayı göster", + "settings.recovery_cache_repair_unavailable": "Önbellek onarımı henüz kullanılamıyor.", + "settings.recovery_docker_cleanup_unavailable": "Konteyner temizleme henüz kullanılamıyor.", + "settings.recovery_reset_config_unavailable": "Yapılandırma sıfırlama henüz kullanılamıyor.", + "settings.recovery_requires_desktop": "Bu eylemler masaüstü uygulaması gerektirir.", + "settings.recovery_requires_desktop_title": "Masaüstü uygulaması gerekiyor", + "settings.reveal_config_requires_desktop": "Yalnızca masaüstü uygulamasında kullanılabilir", + "settings.scheduler_plugin_unavailable": "Zamanlayıcı eklenti kurulumu henüz kullanılamıyor.", + "settings.run_sandbox_probe": "Yoklama çalıştırılıyor...", + "settings.running_probe": "Yoklama çalıştırılıyor...", + "settings.runtime_debug_desc": "Tek tıkla dışa aktarma ile okunabilir tanılama anlık görüntüsü.", + "settings.runtime_debug_title": "Çalışma ortamı hata ayıklama raporu", + "settings.runtime_desc": "Yerel motorunuz ve OpenWork sunucunuz için durum.", + "settings.runtime_title": "Çalışma ortamı", + "settings.sandbox_error": "Hata", + "settings.sandbox_export_hint": "Yukarıdaki Çalışma ortamı hata ayıklama raporunda Dışa aktar'ı kullanın", + "settings.sandbox_probe_desc": "Geçici bir Docker korumalı alan başlatma kontrolü çalıştırır ve", + "settings.sandbox_probe_success": "Korumalı alan yoklaması başarılı oldu. Destek için hata ayıklama raporunu dışa aktarın.", + "settings.sandbox_probe_title": "Korumalı alan yoklaması", + "settings.sandbox_ready": "Hazır", + "settings.sandbox_requires_desktop": "Korumalı alan yoklaması masaüstü uygulaması gerektirir", + "settings.sandbox_result": "Sonuç: {status}", + "settings.sandbox_run_id": "Çalıştırma ID'si: {id}", + "settings.sandbox_stop_runs_hint": "Yoklamadan önce etkin çalıştırmaları durdurun", + "settings.search_models": "Modelleri ara…", + "settings.send_feedback": "Geri bildirim gönder", + "settings.show_model_reasoning": "Model akıl yürütmesini göster", + "settings.show_model_reasoning_desc": "Bir model sunduğunda UI'da akıl yürütme izlerini genişlet.", + "settings.showing_models": "{total} modelden {count} gösteriliyor", + "settings.startup": "Başlatma", + "settings.startup_remote_warning": "Başlatma tercihi şu anda uzak. Motor ayarları", + "settings.startup_reset_hint": "Bu, kaydedilmiş tercihinizi temizler ve bağlantı", + "settings.startup_title": "Başlatma", + "settings.stop_local_server": "Yerel sunucuyu durdur", + "settings.stop_runs_before_cleanup": "Önce çalışan görevleri durdurun", + "settings.stop_runs_before_reset_config": "Önce çalışan görevleri durdurun", + "settings.stop_runs_to_reset": "Sıfırlamak için etkin çalıştırmaları durdurun", + "settings.switch": "Değiştir", + "settings.tab_advanced": "Gelişmiş", + "settings.tab_appearance": "Görünüm", + "settings.tab_cloud_account": "Hesap", + "settings.tab_cloud_marketplaces": "Pazar yeri", + "settings.tab_cloud_providers": "Bulut Sağlayıcılar", + "settings.tab_cloud_workers": "Bulut Worker'lar", + "settings.tab_debug": "Hata ayıklama", + "settings.tab_description_advanced": "Çalışma ortamı sağlığını, bağlantı durumunu ve geliştiriciye yönelik kontrolleri inceleyin.", + "settings.tab_description_appearance": "OpenWork'ün masaüstü, sistem teması ve uygulama çerçevesinde nasıl göründüğünü ayarlayın.", + "settings.tab_description_cloud_account": "Oturum açın, kuruluşunuzu yönetin ve bulut bağlantınızı yapılandırın.", + "settings.tab_description_cloud_marketplaces": "Kuruluşunuzun pazar yerlerinden eklentilere göz atın ve içe aktarın.", + "settings.tab_description_cloud_providers": "Kuruluşunuzdan LLM sağlayıcı anahtarlarını içe aktarın ve yönetin.", + "settings.tab_description_cloud_workers": "Bulutta barındırılan worker örneklerini görüntüleyin ve bağlanın.", + "settings.tab_description_debug": "Çalışma ortamı tanılamalarını, günlükleri ve düşük düzeyli hata ayıklama yardımcı programlarını inceleyin.", + "settings.tab_description_extensions": "Bu çalışma alanı için MCP uygulamalarını ve OpenCode eklentilerini yönetin.", + "settings.tab_description_general": "Sağlayıcıları bağlayın, varsayılan modeli seçin, klasörleri yetkilendirin ve seçili OpenWork çalışma alanını artı çalışma ortamı bağlantısını kontrol edin.", + "settings.environment.add_button": "Değişken ekle", + "settings.environment.add_title": "Ortam değişkeni ekle", + "settings.environment.cancel": "İptal", + "settings.environment.click_to_edit": "Düzenlemek için tıklayın", + "settings.environment.confirm_delete": "{key} silinsin mi? Değişiklikleri uyguladıktan sonra ajanlar bu anahtarı görmeyi durdurur.", + "settings.environment.close_editor": "Düzenleyiciyi kapat", + "settings.environment.delete": "Sil", + "settings.environment.delete_title": "Ortam değişkenini sil", + "settings.environment.delete_variable": "{key} sil", + "settings.environment.deleting": "Siliniyor…", + "settings.environment.description": "Yerel ajanlar, yetenekler ve MCP sunucuları için API anahtarlarını ve token'ları kaydedin. Gizli bilgiler bu cihazda kalır; değişiklikler uyguladıktan sonra kullanılabilir olur.", + "settings.environment.edit_title": "Ortam değişkenini düzenle", + "settings.environment.empty_body": "Ajanlarınızın ve MCP sunucularınızın ihtiyaç duyduğu hizmetler için ANTHROPIC_API_KEY, GOOGLE_API_KEY, ELEVENLABS_API_KEY veya GITHUB_TOKEN gibi anahtarlar ekleyin.", + "settings.environment.empty_title": "Henüz ortam değişkeni yok", + "settings.environment.empty_value": "(boş)", + "settings.environment.footer_hint": "OPENWORK_ ve OPENCODE_ anahtarları uygulama/çalışma ortamı bağlantısı için ayrılmıştır. OpenCode çalışma ortamı ayarlarını kabuğunuzdan yapılandırın.", + "settings.environment.override_hint": "OpenWork başlamadan önce ayarlanan ortam değişkenleri burada kaydedilen değerlere göre önceliklidir.", + "settings.environment.hide": "Gizle", + "settings.environment.hide_value": "{key} değerini gizle", + "settings.environment.key_hint": "Harfler, rakamlar ve alt çizgiler. Rakamla başlayamaz.", + "settings.environment.key_label": "Anahtar", + "settings.environment.loading": "Yükleniyor…", + "settings.environment.remote_workspace_hint": "Bu çalışma alanı uzaktır. Yerel ortam değişkenleri burada gizlidir; bulut LLM Sağlayıcılarını kullanın veya worker host'unu doğrudan yapılandırın.", + "settings.environment.apply_button": "Değişiklikleri uygula", + "settings.environment.apply_blocked_active_tasks": "Ortam değişikliklerini uygulamadan önce çalışan görevleri durdurun.", + "settings.environment.apply_confirm_body": "OpenWork yerel ajanları en son ortamı kullanabilmeleri için yeniden başlatacaktır. Çalışan yerel görevler durabilir.", + "settings.environment.apply_no_local_workspace": "OpenWork bir yerel çalışma alanına bağlı değil.", + "settings.environment.apply_pending_body": "Yerel ajanları yeniden başlatmak ve en son değerleri kullanılabilir kılmak için değişiklikleri uygulayın.", + "settings.environment.apply_pending_body_manual": "En son değerleri kullanılabilir kılmak için yerel ajanları yeniden başlatın.", + "settings.environment.apply_pending_title": "Değişiklikler kaydedildi, henüz etkin değil", + "settings.environment.apply_refresh_failed": "Değişiklikler etkin, ancak OpenWork durumu yenilenmedi. Eskimiş görünüyorsa uygulamayı yeniden açın.", + "settings.environment.apply_success": "Ortam değişiklikleri etkin.", + "settings.environment.apply_title": "Ortam değişiklikleri uygulansın mı?", + "settings.environment.apply_unavailable": "Değişiklikleri uygulamak yalnızca masaüstü uygulamasında kullanılabilir.", + "settings.environment.applying": "Uygulanıyor…", + "settings.environment.restart_required": "Kaydedildi. Güncellemeyi kullanılabilir kılmak için değişiklikleri uygulayın.", + "settings.environment.reveal": "Göster", + "settings.environment.reveal_value": "{key} değerini göster", + "settings.environment.save": "Kaydet", + "settings.environment.saving": "Kaydediliyor…", + "settings.environment.title": "Ortam değişkenleri", + "settings.environment.validation_duplicate": "Bu adda bir değişken zaten var.", + "settings.environment.validation_empty": "Ad gereklidir.", + "settings.environment.validation_reserved": "OPENWORK_ ve OPENCODE_ adları OpenWork/OpenCode tarafından yönetilir.", + "settings.environment.validation_shape": "Harfler, rakamlar ve alt çizgi kullanın; rakamla başlatmayın.", + "settings.environment.value_label": "Değer", + "settings.environment.table_actions": "Eylemler", + "settings.environment.updated_at": "Güncellenme: {date}", + "settings.tab_description_environment": "Yerel ajanlar, yetenekler ve MCP sunucuları için API anahtarlarını ve token'ları kaydedin. Gizli bilgiler bu cihazda kalır.", + "settings.tab_description_recovery": "Yaygın sorunları düzeltin, çalışma alanı ayarlarını sıfırlayın veya arta kalan verileri temizleyin.", + "settings.tab_description_skills": "Ayarlar'dan çıkmadan yeteneklere göz atın, düzenleyin ve kurun.", + "settings.tab_description_updates": "Sessiz arka plan kontrolleri ve kurulum kontrolleriyle uygulamayı güncel tutun.", + "settings.tab_environment": "Ortam", + "settings.tab_extensions": "Uzantılar", + "settings.tab_general": "Ayarlar", + "settings.tab_recovery": "Kurtarma", + "settings.tab_skills": "Yetenekler", + "settings.tab_updates": "Güncellemeler", + "settings.theme_dark": "Koyu", + "settings.theme_light": "Açık", + "settings.theme_system": "Sistem", + "settings.theme_system_hint": "Sistem modu işletim sistemi tercihinizi otomatik olarak takip eder.", + "settings.theme_title": "Tema", + "settings.update": "Güncelle", + "settings.update_available": "Güncelleme mevcut: v", + "settings.update_available_version": "Güncelleme mevcut: v{version}", + "settings.update_check_button": "Şimdi kontrol et", + "settings.update_check_failed": "Güncellemeler kontrol edilemedi", + "settings.update_checking": "Güncellemeler kontrol ediliyor…", + "settings.update_download_button": "İndir", + "settings.update_downloading": "Güncelleme indiriliyor…", + "settings.update_install_button": "Kur ve yeniden başlat", + "settings.update_last_checked": "Son kontrol: {time}", + "settings.update_published": "Yayımlanma: {date}", + "settings.update_ready": "Kuruluma hazır: v", + "settings.update_ready_version": "Kuruluma hazır: v{version}", + "settings.update_uptodate": "Güncelsiniz", + "settings.updates": "Güncellemeler", + "settings.updates_desc": "OpenWork'ü güncel tutun.", + "settings.updates_desktop_only": "Güncellemeler yalnızca masaüstü uygulamasında kullanılabilir.", + "settings.updates_not_supported": "Güncellemeler bu ortamda desteklenmiyor.", + "settings.updates_title": "Güncellemeler", + "settings.window_appearance_desc": "Pencere görünümünü özelleştirin.", + "settings.window_title": "Pencere görünümü", + "settings.worker_id_label": "Worker {id}", + "settings.worker_unresolved": "Worker {runtimeWorkspaceId}", + "settings.workspace_config_desc": "Bu çalışma alanının ayarlar dosyasını görüntüleyin veya sıfırlayın.", + "settings.workspace_config_title": "Çalışma alanı yapılandırması", + "settings.workspace_debug_events_label": "Çalışma alanı hata ayıklama etkinlikleri", + "share.back_hint": "Paylaşım seçeneklerine geri dön", + "share.chooser_subtitle": "Bu çalışma alanını nasıl paylaşmak istediğinizi seçin.", + "share.close_hint": "Kapat", + "share.option_access_desc": "Bu çalışan çalışma alanına başka bir makineden erişmek için gereken canlı bağlantı ayrıntılarını gösterin.", + "share.option_access_title": "Çalışma alanına uzaktan eriş", + "share.subtitle_access": "Bu çalışma alanına başka bir makineden erişmek için gereken canlı bağlantı ayrıntılarını gösterin.", + "share.title": "Çalışma alanını paylaş", + "share.view_access": "Çalışma alanına uzaktan eriş", + "share.workspace_fallback": "Çalışma Alanı", + "share_skill_destination.add_to_workspace": "Yeteneği çalışma alanına ekle", + "share_skill_destination.adding": "Yetenek ekleniyor...", + "share_skill_destination.connect_remote": "Uzak çalışma alanını bağla", + "share_skill_destination.connect_remote_hint": "Bir OpenWork host'u ekleyin, ardından bu yeteneği içe aktarmak için listeden seçin.", + "share_skill_destination.create_worker": "Yeni çalışma alanı oluştur", + "share_skill_destination.create_worker_hint": "Çalışma alanı kurulum akışını açın, ardından yeni çalışma alanı hazır olduktan sonra bu yeteneği ekleyin.", + "share_skill_destination.current_badge": "Mevcut", + "share_skill_destination.existing_workers": "Mevcut çalışma alanları", + "share_skill_destination.fallback_skill_name": "Paylaşılan yetenek", + "share_skill_destination.local_badge": "Yerel", + "share_skill_destination.more_options": "Daha fazla seçenek", + "share_skill_destination.no_workers": "Henüz hazır çalışma alanı yok. Bu yeteneği kurmak için bir tane oluşturun veya uzak bir çalışma alanını bağlayın.", + "share_skill_destination.remote_badge": "Uzaktan", + "share_skill_destination.sandbox_badge": "Korumalı alan", + "share_skill_destination.selected_badge": "Seçili", + "share_skill_destination.selected_hint": "Seçildi. Hedefi aşağıda inceleyin, ardından onaylayın.", + "share_skill_destination.skill_label": "Paylaşılan yetenek", + "share_skill_destination.subtitle": "Bu paylaşılan yeteneği içe aktarmadan önce mevcut bir çalışma alanı seçin veya yeni bir tane oluşturun.", + "share_skill_destination.title": "Bu yetenek nereye gitmeli?", + "share_skill_destination.trigger_label": "Tetikleyici", + "sidebar.collapse": "Daralt", + "sidebar.expand": "Genişlet", + "skills.add_custom_repo": "Özel GitHub deposu ekle", + "skills.add_git_repo": "Git deposu ekle", + "skills.add_openwork_hub": "OpenWork Hub ekle", + "skills.available_from_hub": "Hub'dan kullanılabilir", + "skills.catalog_search_placeholder": "Kurulu, ekip ve hub yeteneklerini ara", + "skills.cloud_choose_org_detail": "Bulut panelini kullanarak etkin kuruluşunuzu seçin, ardından bu listeyi yenileyin.", + "skills.cloud_choose_org_hint": "Ekip yeteneklerini yüklemek için Ayarlar → Bulut'ta bir kuruluş seçin.", + "skills.cloud_footer_label": "Ekip", + "skills.cloud_hub_label": "Hub: {name}", + "skills.cloud_installed": "{name} bu worker'a kuruldu.", + "skills.cloud_installed_as": "{name} olarak kuruldu", + "skills.cloud_installing": "{title} kuruluyor…", + "skills.cloud_installing_short": "Kuruluyor", + "skills.cloud_no_search_matches": "Aramayla eşleşen yetenek yok.", + "skills.cloud_org_empty": "Henüz kuruluş yeteneği mevcut değil.", + "skills.cloud_org_fallback": "OpenWork Cloud", + "skills.cloud_org_load_failed": "Kuruluş yetenekleri yüklenemedi.", + "skills.cloud_refresh": "Ekip yeteneklerini yenile", + "skills.cloud_section_subtitle": "OpenWork Cloud üzerinden sizinle paylaşılan yetenekler — erişebileceğiniz ekip yetenek hub'ları dahil.", + "skills.cloud_section_title": "Kuruluşunuzdan", + "skills.cloud_shared_org": "Kuruluş", + "skills.cloud_shared_private": "Özel", + "skills.cloud_shared_public": "Herkese açık", + "skills.cloud_sign_in": "Cloud'da oturum aç", + "skills.cloud_sign_in_hint": "Ekip ve kuruluş yeteneklerine göz atmak için OpenWork Cloud'da oturum açın.", + "skills.cloud_status_installed": "Kuruldu", + "skills.cloud_status_update": "Güncelleme mevcut", + "skills.cloud_update_skill": "Güncelle", + "skills.cloud_updated": "{name} bu worker'da güncellendi.", + "skills.cloud_updating": "{title} güncelleniyor…", + "skills.cloud_removed": "Yerel bulut yeteneği {name} kaldırıldı.", + "skills.create_in_chat": "Sohbette yetenek oluştur", + "skills.desktop_required": "Yetenek yönetimi masaüstü uygulaması gerektirir.", + "skills.enter_plugin_name": "Bir eklenti paket adı girin.", + "skills.failed_load_active": "Etkin eklentiler yüklenemedi.", + "skills.failed_load_opencode": "opencode.json yüklenemedi", + "skills.failed_parse_opencode": "opencode.json ayrıştırılamadı", + "skills.failed_to_load": "Yetenekler yüklenemedi", + "skills.failed_update_opencode": "opencode.json güncellenemedi", + "skills.filter_all": "Tümü", + "skills.filter_cloud": "Ekip", + "skills.filter_hub": "Hub", + "skills.filter_installed": "Kurulu", + "skills.from_repo": "Kaynak: {owner}/{repo}", + "skills.github_repo_hint": "GitHub deposunu sahip/depo biçiminde girin.", + "skills.host_mode_only": "Yalnızca yerel çalışma alanı", + "skills.host_only_error": "Yetenek yönetimi yerel bir çalışma alanı veya bağlı OpenWork sunucusu gerektirir.", + "skills.hub_desc": "GitHub destekli hub'lardan paylaşılan yeteneklere göz atın ve bunları bu worker'a ekleyin.", + "skills.hub_label": "Hub", + "skills.import": "İçe aktar", + "skills.import_failed": "İçe aktarma başarısız oldu ({status})", + "skills.import_local": "Yerel yeteneği içe aktar", + "skills.import_local_skill": "Yerel yeteneği içe aktar", + "skills.imported": "İçe aktarıldı.", + "skills.install": "Kur", + "skills.install_failed": "Yetenek kurulumu başarısız oldu.", + "skills.install_name_title": "{name} kur", + "skills.installed": "Kurulu yetenekler", + "skills.installed_desc": "Kurulu yetenekler bu worker'da bulunur ve düzenlenebilir veya paylaşılabilir.", + "skills.installed_status": "Kuruldu", + "skills.installing": "Yetenek ekle", + "skills.installing_prefix": "{name} kuruluyor…", + "skills.installing_skill_creator": "Yetenek oluşturucu kuruluyor...", + "skills.loading": "Yükleniyor…", + "skills.no_description": "Henüz açıklama yok.", + "skills.no_hub_repo_label": "Hub deposu seçilmedi", + "skills.no_hub_repo_selected": "Hub yeteneği mevcut değil.", + "skills.no_hub_skills": "Hub deposu seçilmedi. Yeteneklere göz atmak için bir GitHub deposu ekleyin.", + "skills.no_opencode_found": "Henüz opencode.json bulunamadı. Bir tane oluşturmak için bir eklenti ekleyin.", + "skills.no_opencode_workspace": "Bu çalışma alanında henüz opencode.json yok.", + "skills.no_skills": "`.opencode/skills`, `.claude/skills` veya `~/.agents/skills` içinde yetenek algılanmadı.", + "skills.no_skills_found": "Henüz yetenek bulunamadı.", + "skills.owner_label": "Sahip", + "skills.owner_repo_required": "Sahip ve depo gereklidir.", + "skills.pick_project_first": "Önce bir proje klasörü seçin.", + "skills.pick_project_for_active": "Etkin eklentileri yüklemek için bir proje klasörü seçin.", + "skills.pick_project_for_plugins": "Proje eklentilerini yönetmek için bir proje klasörü seçin.", + "skills.pick_workspace_first": "Önce bir çalışma alanı klasörü seçin.", + "skills.plugin_already_listed": "Eklenti zaten opencode.json içinde listelenmiş.", + "skills.plugin_management_host_only": "Eklenti yönetimi masaüstü uygulaması gerektirir.", + "skills.plugins_host_only": "Eklentiler yalnızca masaüstü uygulamasında kullanılabilir.", + "skills.ref_label": "Referans (dal/etiket/işleme)", + "skills.refresh": "Yenile", + "skills.refresh_hub": "Hub'ı yenile", + "skills.remove_saved_repo": "Kaydedilmiş depoyu kaldır", + "skills.repo_label": "Depo", + "skills.reveal_failed": "Yetenekler klasörü açılamadı.", + "skills.reveal_folder": "Yetenekler klasörünü aç", + "skills.save_and_load": "Kaydet ve yükle", + "skills.select_skill_folder": "Yetenek klasörü seç", + "skills.share_done": "Bitti", + "skills.share_option_team_desc": "Bu yeteneği etkin OpenWork Cloud kuruluşunuza ekleyin.", + "skills.share_option_team_title": "Ekip ile paylaş", + "skills.share_subtitle_team": "Kuruluşunuzda takım arkadaşlarınız için depolandı.", + "skills.share_team_choose_org": "Ekibinizle paylaşmadan önce Ayarlar → Bulut'tan bir kuruluş seçin.", + "skills.share_team_permissions_intro": "Bu yeteneği etkin OpenWork Cloud kuruluşunuza yükleyin ve kimlerin görebileceğine karar verin.", + "skills.share_team_permissions_label": "Paylaşım İzinleri", + "skills.share_team_permission_org": "Yalnızca Kuruluş - Hub'ta değil", + "skills.share_team_permission_private": "Yalnızca benim için özel", + "skills.share_team_hubs_loading": "Hub'lar yükleniyor…", + "skills.share_team_org_fallback": "Etkin Cloud kuruluşu", + "skills.share_team_upload_and_save": "Yükle ve kaydet", + "skills.share_team_uploading": "Yükleniyor…", + "skills.share_team_sign_in": "Ekip ile paylaşmak için oturum açın", + "skills.share_team_sign_in_hint": "OpenWork Cloud tarayıcınızda açılır. Oturum açtıktan sonra buraya dönün.", + "skills.share_team_uploaded_success": "{org} kuruluşuna yüklendi. Bulut yetenekleri hesabınız için yenilenecek.", + "skills.share_title": "Yeteneği paylaş", + "skills.shown_count": "{count} gösteriliyor", + "skills.skill_creator_already_installed": "Yetenek oluşturucu zaten kurulu.", + "skills.skill_creator_installed": "Yetenek oluşturucu kuruldu.", + "skills.skill_load_failed": "Yetenek yüklenemedi.", + "skills.source_label": "Kaynak", + "skills.title": "Yetenekler", + "skills.trigger_label": "Tetikleyici: {trigger}", + "skills.uninstall": "Kaldır", + "skills.uninstall_failed": "Yetenek kaldırma başarısız oldu.", + "skills.uninstall_title": "Yetenek kaldırılsın mı?", + "skills.uninstall_warning": "Bu, `{name}` yeteneğini çalışma alanınızdan kalıcı olarak silecek.", + "skills.uninstalled": "Yetenek kaldırıldı.", + "skills.unknown_error": "Bilinmeyen hata", + "skills.worker_profile_desc": "Yetenekler bu worker'ın temel yetenekleridir. Hub'dan keşfedin, kurulu olanları yönetin ve yeni yetenekleri doğrudan sohbette oluşturun.", + "status.back": "Önceki ekrana geri dön", + "status.connected": "Bağlı", + "status.connecting": "Bağlanıyor", + "status.creating_task": "Yeni görev oluşturuluyor", + "status.developer_mode": "Geliştirici modu", + "status.disconnected": "Bağlantı Kesildi", + "status.disconnected_hint": "Yeniden bağlanmak için ayarları açın", + "status.disconnected_label": "Bağlantı Kesildi", + "status.docs": "Belgeler", + "status.feedback": "Geri bildirim", + "status.limited_hint": "Tam OpenWork özelliklerini geri yüklemek için yeniden bağlanın", + "status.limited_mcp_hint": "{count} MCP bağlı · tam özellikler için yeniden bağlanın", + "status.limited_mode": "Sınırlı Mod", + "status.loading_session": "Oturum yükleniyor", + "status.mcp_connected": "{count} MCP bağlı", + "status.open_docs": "Belgeleri aç", + "status.openwork_ready": "OpenWork Hazır", + "status.providers_connected_one": "{count} sağlayıcı bağlı", + "status.providers_connected_other": "{count} sağlayıcı bağlı", + "status.ready_for_tasks": "Yeni görevler için hazır", + "status.running": "Çalışıyor", + "status.send_feedback": "Geri bildirim gönder", + "status.settings": "Ayarlar", + "system.reload_body_agents": "OpenCode ajanları başlangıçta yükler. Güncellenmiş ajanları kullanılabilir kılmak için motoru yeniden yükleyin.", + "system.reload_body_commands": "OpenCode komutları başlangıçta yükler. Güncellenmiş komutları kullanılabilir kılmak için motoru yeniden yükleyin.", + "system.reload_body_config": "OpenCode opencode.json dosyasını başlangıçta okur. Yapılandırma değişikliklerini uygulamak için motoru yeniden yükleyin.", + "system.reload_body_default": "OpenWork, OpenCode örneğinin yeniden yüklenmesini gerektiren değişiklikler algıladı.", + "system.reload_body_mcp": "OpenCode MCP sunucularını başlangıçta yükler. Yeni bağlantıyı etkinleştirmek için motoru yeniden yükleyin.", + "system.reload_body_mixed": "OpenWork, OpenCode yapılandırma değişiklikleri algıladı. Uygulamak için motoru yeniden yükleyin.", + "system.reload_body_plugins": "OpenCode npm eklentilerini başlangıçta yükler. opencode.json değişikliklerini uygulamak için motoru yeniden yükleyin.", + "system.reload_body_skills": "OpenCode yetenek keşfini/durumunu önbelleğe alabilir. Yeni kurulan yetenekleri kullanılabilir kılmak için motoru yeniden yükleyin.", + "system.reload_failed": "Motor yeniden yüklenemedi.", + "system.reload_required": "Yeniden yükleme gerekiyor", + "system.reload_unavailable": "Bu worker için yeniden yükleme kullanılamıyor.", + "system.stop_active_runs_before_reset": "Sıfırlamadan önce etkin çalıştırmaları durdurun.", + "time.hours_ago": "{count}sa önce", + "time.just_now": "az önce", + "time.minutes_ago": "{count}dk önce", + "time.seconds_ago": "{count}sn önce", + "workspace.create_workspace": "Çalışma alanı oluştur", + "workspace.empty_state_body": "Başlamak için bir çalışma alanı oluşturun veya bağlayın.", + "workspace.connected_no_tasks": "Bağlı. Bu uzak çalışma alanında görev bulunamadı.", + "workspace.loading_tasks": "Görevler yükleniyor...", + "workspace.local_badge": "Yerel", + "workspace.new_task_inline": "+ Yeni görev", + "workspace.no_tasks": "Henüz görev yok.", + "workspace.remote_badge": "Uzaktan", + "workspace.rename_description": "Kenar çubuğunda gösterilen adı güncelleyin.", + "workspace.rename_label": "Çalışma alanı adı", + "workspace.rename_placeholder": "Tasarım ekibi çalışma alanı", + "workspace.rename_title": "Çalışma alanı adını düzenle", + "workspace.sandbox_badge": "Korumalı alan", + "workspace.selected": "Seçili", + "workspace_list.add_workspace": "Çalışma alanı ekle", + "workspace_list.connected": "Bağlı", + "workspace_list.connected_loaded_tasks_one": "Bağlı. {count} görev yüklendi.", + "workspace_list.connected_loaded_tasks_other": "Bağlı. {count} görev yüklendi.", + "workspace_list.connecting": "Bağlanıyor...", + "workspace_list.delete_session": "Oturumu sil", + "workspace_list.edit_connection": "Bağlantıyı düzenle", + "workspace_list.edit_name": "Adı düzenle", + "workspace_list.hide_child_sessions": "Alt oturumları gizle", + "workspace_list.recover": "Kurtar", + "workspace_list.remove_confirm": "Bu çalışma alanı kenar çubuğundan kaldırılsın mı? Oturumlar ve diskteki dosyalar korunur.", + "workspace_list.remove_workspace": "Çalışma alanını kaldır", + "workspace_list.rename_session": "Oturumu yeniden adlandır", + "workspace_list.remote_worker_unavailable": "Uzak worker kullanılamıyor", + "workspace_list.remote_worker_unavailable_hint": "Bağlantı düzeltilene kadar OpenWork bu worker'dan görevleri yükleyemiyor.", + "workspace_list.reveal_explorer": "Gezgin'de göster", + "workspace_list.reveal_file_manager": "Dosyalar'da göster", + "workspace_list.reveal_finder": "Finder'da göster", + "workspace_list.session_actions": "Oturum eylemleri", + "workspace_list.session_active": "Oturum etkin", + "workspace_list.session_streaming": "Oturum aktarılıyor", + "workspace_list.share": "Paylaş...", + "workspace_list.show_child_sessions": "Alt oturumları göster", + "workspace_list.show_more": "{count} daha göster", + "workspace_list.show_more_fallback": "Daha fazla göster", + "workspace_list.loading_remote_tasks": "Uzak worker'dan görevler yükleniyor...", + "workspace_list.test_connection": "Bağlantıyı sına", + "workspace_list.unavailable": "Kullanılamıyor", + "workspace_list.workspace_fallback": "Çalışma Alanı", + "workspace_list.workspace_options": "Çalışma alanı seçenekleri", +} as const; diff --git a/translated_readmes/README.md b/translated_readmes/README.md index 11a38c2750..88dfd1719d 100644 --- a/translated_readmes/README.md +++ b/translated_readmes/README.md @@ -1,3 +1,3 @@ # OpenWork README Languages -Available: [English](../README.md), [简体中文](./README_ZH.md), [繁體中文](./README_ZH_hk.md), [日本語](./README_JA.md) +Available: [English](../README.md), [简体中文](./README_ZH.md), [繁體中文](./README_ZH_hk.md), [日本語](./README_JA.md), [Türkçe](./README_TR.md) diff --git a/translated_readmes/README_TR.md b/translated_readmes/README_TR.md new file mode 100644 index 0000000000..56da03ed53 --- /dev/null +++ b/translated_readmes/README_TR.md @@ -0,0 +1,252 @@ +> OpenWork, Claude Cowork/Codex'e açık kaynaklı bir alternatiftir (masaüstü uygulaması). + + +## Core Philosophy + +- Yerel öncelikli, buluta hazır: OpenWork makinenizde tek tıkla çalışır. Anında mesaj gönderin. +- Birleştirilebilir: masaüstü uygulaması, Slack/Telegram bağlayıcısı veya sunucu. Size uygun olanı kullanın, bağlı kalmayın. +- Çıkılabilir: OpenWork, OpenCode tarafından desteklenir, bu nedenle OpenCode'un yapabildiği her şey OpenWork'te çalışır; henüz bir kullanıcı arayüzü olmasa bile. +- Paylaşım önemlidir: localhost'ta tek başınıza başlayın, ardından ihtiyacınız olduğunda uzaktan paylaşıma açıkça geçin. + +

+ OpenWork demo +

+ +OpenWork, ajanslı iş akışlarınızı takımınız için tekrarlanabilir, ürünleştirilmiş bir süreç olarak kolayca yayınlamanızı sağlayan bir fikir etrafında tasarlanmıştır. + +> [!TIP] +> **[Kurumsal Plan](https://openworklabs.com/enterprise) mı arıyorsunuz?** [Satış ekibimizle bugün konuşun](https://calendar.app.google/86QpCENvhfEzDFLu5) +> +> Özellik önceliklendirmesi, SSO, SLA desteği, LTS sürümleri ve daha fazlasını içeren gelişmiş yetenekler edinin. + +## Alternate UIs +- **OpenWork Orchestrator (CLI sunucusu)**: masaüstü arayüzü olmadan OpenCode + OpenWork sunucusunu çalıştırın. + - kurulum: `npm install -g openwork-orchestrator` + - çalıştırma: `openwork start --workspace /path/to/workspace --approval auto` + - belgeler: [apps/orchestrator/README.md](../apps/orchestrator/README.md) + +## Quick start + +Masaüstü uygulamasını [openworklabs.com/download](https://openworklabs.com/download) adresinden indirin, en son [GitHub sürümünü](https://github.com/different-ai/openwork/releases) edinin veya aşağıda kaynaktan kurun. + +- macOS ve Linux indirmeleri doğrudan kullanılabilir. +- Windows erişimi şu anda [openworklabs.com/pricing#windows-support](https://openworklabs.com/pricing#windows-support) adresindeki ücretli destek planı üzerinden sağlanmaktadır. +- Barındırılan OpenWork Cloud worker'ları satın alma işleminden sonra web uygulamasından başlatılır, ardından masaüstü uygulamasından `Add a worker` -> `Connect remote` ile bağlanır. + +## Why + +OpenCode için mevcut CLI ve GUI'ler geliştiriciler etrafında yapılandırılmıştır. Bu, dosya farkları, araç adları ve bir CLI açığa çıkarmaya dayanmadan genişletilmesi zor yeteneklere odaklanma anlamına gelir. + +OpenWork şu şekilde tasarlanmıştır: + +- **Genişletilebilir**: skill ve opencode plugins kurulabilir modüllerdir. +- **Denetlenebilir**: ne olduğunu, ne zaman olduğunu ve neden olduğunu gösterir. +- **İzin tabanlı**: ayrıcalıklı akışlara erişim. +- **Yerel/Uzaktan**: OpenWork yerel olarak çalıştığı gibi uzaktan sunuculara da bağlanabilir. + +## What's Included + +- **Sunucu modu**: opencode'u bilgisayarınızda yerel olarak çalıştırır +- **İstemci modu**: mevcut bir OpenCode sunucusuna URL ile bağlanın. +- **Oturumlar**: oturum oluşturun/seçin ve komutlar gönderin. +- **Canlı akış**: gerçek zamanlı güncellemeler için SSE `/event` aboneliği. +- **Yürütme planı**: OpenCode todolarını bir zaman çizelgesi olarak görüntüleyin. +- **İzinler**: izin isteklerini görüntüleyin ve yanıtlayın (bir kez izin ver / her zaman / reddet). +- **Şablonlar**: yaygın iş akışlarını kaydedin ve yeniden çalıştırın (yerel olarak saklanır). +- **Hata ayıklama dışa aktarımları**: hata bildirmeniz gerektiğinde Ayarlar -> Hata ayıklama bölümünden çalışma ortamı hata ayıklama raporunu ve geliştirici günlüğü akışını kopyalayın veya dışa aktarın. +- **Skills yöneticisi**: + - kurulu `.opencode/skills` klasörlerini listeleyin + - yerel bir skill klasörünü `.opencode/skills/` konumuna aktarın + +## Skill Manager + +image + +## Works on local computer or servers + +Screenshot 2026-01-13 at 7 05 16 PM + +## Quick Start + +### Requirements + +- Node.js + `pnpm` +- Rust araç zinciri (Tauri için): `curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh` ile kurun +- Tauri CLI: `cargo install tauri-cli` +- OpenCode CLI kurulu ve PATH üzerinde kullanılabilir: `opencode` + +### Local Dev Prerequisites (Desktop) + +`pnpm dev` komutunu çalıştırmadan önce, bunların kurulu ve kabuğunuzda aktif olduğundan emin olun: + +- Node + pnpm (depo `pnpm@10.27.0` kullanır) +- **Bun 1.3.9+** (`bun --version`) +- Rust araç zinciri (Tauri için), güncel `rustup` stabil sürümünden Cargo ile (`Cargo.lock` v4'ü destekler) +- Xcode Command Line Tools (macOS) +- Linux'ta, `pkg-config`'in `webkit2gtk-4.1` ve `javascriptcoregtk-4.1` öğelerini çözebilmesi için WebKitGTK 4.1 geliştirme paketleri + +### One-minute sanity check + +Depo kökünden çalıştırın: + +```bash +git checkout dev +git pull --ff-only origin dev +pnpm install --frozen-lockfile + +which bun +bun --version +pnpm --filter @openwork/desktop exec tauri --version +``` + +### Install + +```bash +pnpm install +``` + +OpenWork artık `apps/app` (UI) ve `apps/desktop` (masaüstü kabuğu) konumlarında bulunur. + +### Run (Desktop) + +```bash +pnpm dev +``` + +`pnpm dev` artık `OPENWORK_DEV_MODE=1`'i otomatik olarak etkinleştirir, böylece masaüstü geliştirmesi kişisel genel yapılandırmanız/kimlik doğrulamanız/verileriniz yerine izole bir OpenCode durumu kullanır. + +### Run (Web UI only) + +```bash +pnpm dev:ui +``` + +Tüm depo `dev` giriş noktaları artık aynı geliştirme modu izolasyonunu seçer, bu nedenle yerel test tutarlı olarak OpenWork tarafından yönetilen OpenCode durumunu kullanır. + +### Arch Users: + +```bash +sudo pacman -S --needed webkit2gtk-4.1 +curl -fsSL https://opencode.ai/install | bash -s -- --version "$(node -e "const fs=require('fs'); const parsed=JSON.parse(fs.readFileSync('constants.json','utf8')); process.stdout.write(String(parsed.opencodeVersion||'').trim().replace(/^v/,''));")" --no-modify-path +``` + +## Architecture (high-level) + +- **Sunucu modunda**, OpenWork yerel bir sunucu yığınını çalıştırır ve arayüzü ona bağlar. + - Varsayılan çalışma ortamı: `openwork` (`openwork-orchestrator`dan kurulur), `opencode`, `openwork-server` ve isteğe bağlı olarak `opencode-router`'ı yönetir. + - Yedek çalışma ortamı: `direct`; masaüstü uygulaması `opencode serve --hostname 127.0.0.1 --port ` komutunu doğrudan başlatır. + +Bir proje klasörü seçtiğinizde, OpenWork sunucu yığınını bu klasörü kullanarak yerel olarak çalıştırır ve masaüstü arayüzüne bağlar. +Bu, ajanslı iş akışlarını çalıştırmanıza, komutlar göndermenize ve ilerlemeyi uzaktan bir sunucu olmadan tamamen makinenizde görmenizi sağlar. + +- Arayüz, `@opencode-ai/sdk/v2/client` kullanarak: + - sunucuya bağlanır + - oturumları listeler/oluşturur + - komutlar gönderir + - SSE olaylarına abone olur (Sunucu Tarafından Gönderilen Olaylar, sunucudan arayüze gerçek zamanlı güncellemeleri akış için kullanılır.) + - todoları ve izin isteklerini okur + +## Folder Picker + +Klasör seçici, Tauri iletişim eklentisini kullanır. +Yetenek izinleri şu dosyada tanımlanmıştır: + +- `apps/desktop/src-tauri/capabilities/default.json` + +## OpenCode Plugins + +Plugins, OpenCode'u genişletmenin **yerel** yoludur. OpenWork artık bunları +`opencode.json` dosyasını okuyup yazarak Skills sekmesinden yönetir. + +- **Proje kapsamı**: `/opencode.json` +- **Genel kapsam**: `~/.config/opencode/opencode.json` (veya `$XDG_CONFIG_HOME/opencode/opencode.json`) + +`opencode.json` dosyasını hala manuel olarak düzenleyebilirsiniz; OpenWork, OpenCode CLI ile aynı biçimi kullanır: + +```json +{ + "$schema": "https://opencode.ai/config.json", + "plugin": ["opencode-wakatime"] +} +``` + +## Useful Commands + +```bash +pnpm dev +pnpm dev:ui +pnpm typecheck +pnpm build +pnpm build:ui +pnpm test:e2e +``` + +## Troubleshooting + +Bir masaüstü veya oturum hatasını bildirmeniz gerekirse, bir sorun bildirmeden önce Ayarlar -> Hata ayıklama bölümünü açın ve hem çalışma ortamı hata ayıklama raporunu hem de geliştirici günlüklerini dışa aktarın. + +### Linux / Wayland (Hyprland) + +OpenWork başlatılırken `Failed to create GBM buffer` gibi WebKitGTK hatalarıyla çöküyorsa, başlatmadan önce dmabuf veya birleştirmeyi devre dışı bırakın. Aşağıdaki ortam değişkenlerinden birini deneyin. + +```bash +WEBKIT_DISABLE_DMABUF_RENDERER=1 openwork +``` + +```bash +WEBKIT_DISABLE_COMPOSITING_MODE=1 openwork +``` + +## Security Notes + +- OpenWork, model akıl yürütmesini ve hassas araç meta verilerini varsayılan olarak gizler. +- Sunucu modu varsayılan olarak `127.0.0.1` adresine bağlanır. + +## Contributing + +- Değişiklik yapmadan önce ürün hedeflerini anlamak için `AGENTS.md` ile birlikte `VISION.md`, `PRINCIPLES.md`, `PRODUCT.md` ve `ARCHITECTURE.md` dosyalarını inceleyin. +- Depo içinde çalışmaya başlamadan önce Node.js, `pnpm`, Rust araç zinciri ve `opencode` kurulu olduğundan emin olun. +- Her checkout'ta bir kez `pnpm install` çalıştırın, ardından bir PR açmadan önce değişikliğinizi `pnpm typecheck` ve `pnpm test:e2e` (veya hedeflenen betik alt kümesi) ile doğrulayın. +- PR açarken `.github/pull_request_template.md` dosyasını kullanın ve tam komutları, sonuçları, manuel doğrulama adımlarını ve kanıtları ekleyin. +- CI başarısız olursa, PR gövdesindeki hataları kodla ilgili gerilemeler veya dış/ortam/kimlik doğrulama engelleyicileri olarak sınıflandırın. +- Yeni PRD'leri `AGENTS.md` dosyasında açıklanan `.opencode/skills/prd-conventions/SKILL.md` kurallarını takip ederek `apps/app/pr/.md` konumuna ekleyin. + +Topluluk belgeleri: + +- `CODE_OF_CONDUCT.md` +- `SECURITY.md` +- `SUPPORT.md` +- `TRIAGE.md` + +İlk katkı kontrol listesi: + +- [ ] `pnpm install` ve temel doğrulama komutlarını çalıştırın. +- [ ] Değişikliğinizin net bir sorun bağlantısı ve kapsamı olduğunu doğrulayın. +- [ ] Davranışsal değişiklikler için testleri ekleyin/güncelleyin. +- [ ] PR'nizde çalıştırılan komutları ve sonuçları ekleyin. +- [ ] Kullanıcıyı ilgilendiren akış değişiklikleri için ekran görüntüsü/video ekleyin. + +## Supported Languages + +Çevrilmiş README'ler: [`translated_readmes/`](./README.md), İngilizce, 简体中文, 繁體中文, 日本語 ve Türkçe olarak mevcuttur. + +Uygulama şu dillerde kullanılabilir: +- English (`en`) +- French (`fr`) +- Spanish (`es`) +- Catalan (`ca`) +- Brazilian Portuguese (`pt-BR`) +- Japanese (`ja`) +- Simplified Chinese (`zh`) +- Thai (`th`) +- Vietnamese (`vi`) +- Russian (`ru`) +- Turkish (`tr`) + +## For Teams & Businesses + +Kuruluşunuzda OpenWork kullanmakla ilgileniyor musunuz? Sizden haber almak isteriz — kullanım durumunuz hakkında konuşmak için [ben@openworklabs.com](mailto:ben@openworklabs.com) adresine ulaşın. + +## License + +MIT — see `LICENSE`.