mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-03 11:16:46 +00:00
chore(docs): i18n sync (#15417)
This commit is contained in:
@@ -21,7 +21,7 @@ opencode'da iki tür agent vardır; birincil agent'lar ve alt agent'lar.
|
||||
|
||||
### Birincil agent'lar
|
||||
|
||||
Birincil agent'lar, doğrudan etkileşim kurduğunuz ana yardımcılardır. **Sekme** tuşunu veya yapılandırılmış `switch_agent` tuş atamanızı kullanarak bunlar arasında geçiş yapabilirsiniz. Bu agent'lar ana görüşmenizi yönetir. Araç erişimi, izinler aracılığıyla yapılandırılır; örneğin, Plan kısıtlıyken Build'de tüm araçlar etkindir.
|
||||
Birincil agent'lar, doğrudan etkileşim kurduğunuz ana yardımcılardır. **Sekme** tuşunu veya yapılandırılmış `switch_agent` tuş atamanızı kullanarak bunlar arasında geçiş yapabilirsiniz. Bu agent'lar ana görüşmenizi yönetir. Araç erişimi, izinler aracılığıyla yapılandırılır; örneğin, Build'de tüm araçlar etkindir ancak Plan kısıtlıdır.
|
||||
|
||||
:::tip
|
||||
Bir oturum sırasında birincil agent'lar arasında geçiş yapmak için **Sekme** tuşunu kullanabilirsiniz.
|
||||
@@ -83,7 +83,7 @@ Kod tabanlarını keşfetmeye yönelik hızlı, salt okunur bir agent. Dosyalar
|
||||
|
||||
---
|
||||
|
||||
### Compact Kullanımı
|
||||
### Compaction Kullanımı
|
||||
|
||||
_Mod_: `primary`
|
||||
|
||||
@@ -181,7 +181,7 @@ Agent'ları `opencode.json` yapılandırma dosyanızda yapılandırın:
|
||||
Ayrıca agent'ları Markdown dosyalarını kullanarak da tanımlayabilirsiniz. Bunları şuraya yerleştirin:
|
||||
|
||||
- Global: `~/.config/opencode/agents/`
|
||||
- Per-project: `.opencode/agents/`
|
||||
- Proje başına: `.opencode/agents/`
|
||||
|
||||
```markdown title="~/.config/opencode/agents/review.md"
|
||||
---
|
||||
@@ -342,10 +342,10 @@ Bu yol, yapılandırma dosyasının bulunduğu yere göredir. Yani bu hem global
|
||||
|
||||
### Model
|
||||
|
||||
Bu agent'ın kodu geçersiz için `model` ayarını kullanın. Farklı bölümler için optimize edilmiş farklı modelleri kullanmak için kullanışlıdır. Örneğin planlama için daha hızlı bir model, uygulama için daha yetenekli bir model.
|
||||
Bu agent'ın modelini geçersiz kılmak için `model` ayarını kullanın. Farklı bölümler için optimize edilmiş farklı modelleri kullanmak için kullanışlıdır. Örneğin planlama için daha hızlı bir model, uygulama için daha yetenekli bir model.
|
||||
|
||||
:::tip
|
||||
Bir model belirtmezseniz, birincil agent'lar [model globally configured](/docs/config#models)'yi kullanırken alt agent'lar, alt agent'ı çağıran birincil agent'ın modelini kullanır.
|
||||
Bir model belirtmezseniz, birincil agent'lar [küresel olarak yapılandırılmış modeli](/docs/config#models) kullanırken alt agent'lar, alt agent'ı çağıran birincil agent'ın modelini kullanır.
|
||||
:::
|
||||
|
||||
```json title="opencode.json"
|
||||
@@ -358,7 +358,7 @@ Bir model belirtmezseniz, birincil agent'lar [model globally configured](/docs/c
|
||||
}
|
||||
```
|
||||
|
||||
opencode hesabınızdaki model kimliğini `provider/model-id` biçimini kullanır. Örneğin, [OpenCode Zen](/docs/zen) kullanıyorsanız, GPT 5.1 Codex için `opencode/gpt-5.1-codex` kullanırsınız.
|
||||
opencode yapılandırmanızdaki model kimliği `provider/model-id` biçimini kullanır. Örneğin, [OpenCode Zen](/docs/zen) kullanıyorsanız, GPT 5.1 Codex için `opencode/gpt-5.1-codex` kullanırsınız.
|
||||
|
||||
---
|
||||
|
||||
@@ -599,7 +599,7 @@ Kullanıcılar, agent'ın görev izinleri bunu reddetse bile, her zaman herhangi
|
||||
|
||||
Agent'ın kullanıcı arayüzündeki görsel görünümünü `color` seçeneğiyle özelleştirin. Bu, agent'ın arayüzde nasıl göründüğünü etkiler.
|
||||
|
||||
geçerli bir onaltılık renk (ör. `#FF5733`) veya tema rengini kullanın: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`.
|
||||
Geçerli bir onaltılık renk (ör. `#FF5733`) veya tema rengini kullanın: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -744,627 +744,3 @@ Look for:
|
||||
- Dependency vulnerabilities
|
||||
- Configuration security issues
|
||||
```
|
||||
|
||||
3. **Oturumlar arasında gezinme**: Subagent'lar kendi alt oturumlarını oluşturduğunda, aşağıdakileri kullanarak ana oturum ile tüm alt oturumlar arasında gezinebilirsiniz:
|
||||
- **\<Leader>+Right** (veya yapılandırılmış `session_child_cycle` tuş atamanız) ebeveyn → çocuk1 → çocuk2 → ... → ebeveyn arasında ileri doğru geçiş yapmak için
|
||||
- **\<Leader>+Left** (veya yapılandırılmış `session_child_cycle_reverse` tuş atamanız) ebeveyn ← çocuk1 ← çocuk2 ← ... ← ebeveyn arasında geriye doğru geçiş yapmak için
|
||||
|
||||
Bu, ana görüşme ile özel subagent çalışması arasında sorunsuz bir şekilde geçiş yapmanıza olanak tanır.
|
||||
|
||||
---
|
||||
|
||||
## Yapılandırma veya yapılandırma yoluyla kendinizinkini oluşturabilirsiniz. Agent'lar iki şekilde yapılandırılabilir:
|
||||
|
||||
---
|
||||
|
||||
### JSON
|
||||
|
||||
Agent'ları `opencode.json` yapılandırma dosyanızda yapılandırın:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"agent": {
|
||||
"build": {
|
||||
"mode": "primary",
|
||||
"model": "anthropic/claude-sonnet-4-20250514",
|
||||
"prompt": "{file:./prompts/build.txt}",
|
||||
"tools": {
|
||||
"write": true,
|
||||
"edit": true,
|
||||
"bash": true
|
||||
}
|
||||
},
|
||||
"plan": {
|
||||
"mode": "primary",
|
||||
"model": "anthropic/claude-haiku-4-20250514",
|
||||
"tools": {
|
||||
"write": false,
|
||||
"edit": false,
|
||||
"bash": false
|
||||
}
|
||||
},
|
||||
"code-reviewer": {
|
||||
"description": "Reviews code for best practices and potential issues",
|
||||
"mode": "subagent",
|
||||
"model": "anthropic/claude-sonnet-4-20250514",
|
||||
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
|
||||
"tools": {
|
||||
"write": false,
|
||||
"edit": false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Markdown
|
||||
|
||||
Ayrıca agent'ları Markdown dosyalarını kullanarak da tanımlayabilirsiniz. Bunları şuraya yerleştirin:
|
||||
|
||||
- Global: `~/.config/opencode/agents/`
|
||||
- Per-project: `.opencode/agents/`
|
||||
|
||||
```markdown title="~/.config/opencode/agents/review.md"
|
||||
---
|
||||
description: Reviews code for quality and best practices
|
||||
mode: subagent
|
||||
model: anthropic/claude-sonnet-4-20250514
|
||||
temperature: 0.1
|
||||
tools:
|
||||
write: false
|
||||
edit: false
|
||||
bash: false
|
||||
---
|
||||
|
||||
You are in code review mode. Focus on:
|
||||
|
||||
- Code quality and best practices
|
||||
- Potential bugs and edge cases
|
||||
- Performance implications
|
||||
- Security considerations
|
||||
|
||||
Provide constructive feedback without making direct changes.
|
||||
```
|
||||
|
||||
Markdown dosyasının adı agent'ın adı olur. Örneğin, `review.md` bir `review` agent'ı oluşturur.
|
||||
|
||||
---
|
||||
|
||||
## Seçenekler
|
||||
|
||||
Bu yapılandırma seçeneklerine ayrıntılı olarak bakalım.
|
||||
|
||||
---
|
||||
|
||||
### Açıklama
|
||||
|
||||
Agent'ın ne yaptığına ve ne zaman kullanılacağına ilişkin kısa bir açıklama sağlamak için `description` seçeneğini kullanın.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"review": {
|
||||
"description": "Reviews code for best practices and potential issues"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu **gerekli** bir yapılandırma seçeneğidir.
|
||||
|
||||
---
|
||||
|
||||
### Sıcaklık
|
||||
|
||||
LLM'nin yanıtlarının rastgeleliğini ve yaratıcılığını `temperature` yapılandırmasıyla kontrol edin.
|
||||
|
||||
Düşük değerler yanıtları daha odaklı ve belirleyici hale getirirken, yüksek değerler yaratıcılığı ve değişkenliği artırır.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"plan": {
|
||||
"temperature": 0.1
|
||||
},
|
||||
"creative": {
|
||||
"temperature": 0.8
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Sıcaklık değerleri tipik olarak 0,0 ila 1,0 arasındadır:
|
||||
|
||||
- **0,0-0,2**: Çok odaklı ve belirleyici yanıtlar, kod analizi ve planlama için idealdir
|
||||
- **0,3-0,5**: Biraz yaratıcılık içeren dengeli yanıtlar, genel gelişim görevleri için iyi
|
||||
- **0,6-1,0**: Daha yaratıcı ve çeşitli yanıtlar, beyin fırtınası ve keşif için yararlı
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"analyze": {
|
||||
"temperature": 0.1,
|
||||
"prompt": "{file:./prompts/analysis.txt}"
|
||||
},
|
||||
"build": {
|
||||
"temperature": 0.3
|
||||
},
|
||||
"brainstorm": {
|
||||
"temperature": 0.7,
|
||||
"prompt": "{file:./prompts/creative.txt}"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Sıcaklık belirtilmezse opencode modeline özgü varsayılanları kullanır; çoğu model için genellikle 0, Qwen modelleri için 0,55.
|
||||
|
||||
---
|
||||
|
||||
### Maksimum adım
|
||||
|
||||
Bir agent'ın yalnızca metinle yanıt vermeye zorlanmadan önce gerçekleştirebileceği maksimum agent yineleme sayısını kontrol edin. Bu, maliyetleri kontrol etmek isteyen kullanıcıların agent eylemlerine bir sınır koymasına olanak tanır.
|
||||
|
||||
Bu ayarlanmazsa, model durmayı seçene veya kullanıcı oturumu kesene kadar agent yinelemeye devam edecektir.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"quick-thinker": {
|
||||
"description": "Fast reasoning with limited iterations",
|
||||
"prompt": "You are a quick thinker. Solve problems with minimal steps.",
|
||||
"steps": 5
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Sınıra ulaşıldığında, agent, işinin özeti ve önerilen kalan görevlerin bir özetiyle yanıt vermesi talimatını veren özel bir sistem prompt'u alır.
|
||||
|
||||
:::caution
|
||||
Eski `maxSteps` alanı kullanımdan kaldırıldı. Bunun yerine `steps` kullanın.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Devre dışı bırakma
|
||||
|
||||
Agent'ı devre dışı bırakmak için `true` olarak ayarlayın.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"review": {
|
||||
"disable": true
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### İstem
|
||||
|
||||
Bu agent için `prompt` yapılandırmasıyla özel bir sistem prompt dosyası belirtin. Prompt dosyası, agent'ın amacına özel talimatlar içermelidir.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"review": {
|
||||
"prompt": "{file:./prompts/code-review.txt}"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu yol, yapılandırma dosyasının bulunduğu yere göredir. Yani bu hem global opencode yapılandırması hem de projeye özel yapılandırma için işe yarar.
|
||||
|
||||
---
|
||||
|
||||
### Model
|
||||
|
||||
Bu agent'ın varsayılan modelini geçersiz kılmak için `model` ayarını kullanın. Farklı bölümler için optimize edilmiş farklı modelleri kullanmak için kullanışlıdır. Örneğin planlama için daha hızlı bir model, uygulama için daha yetenekli bir model.
|
||||
|
||||
:::tip
|
||||
Bir model belirtmezseniz, primary agent'lar [model globally configured](/docs/config#models)'yi kullanırken subagent'lar, subagent'ı çağıran primary agent'ın modelini kullanır.
|
||||
:::
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"plan": {
|
||||
"model": "anthropic/claude-haiku-4-20250514"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
opencode hesabınızdaki model kimliğini `provider/model-id` biçimini kullanır. Örneğin, [OpenCode Zen](/docs/zen) kullanıyorsanız, GPT 5.1 Codex için `opencode/gpt-5.1-codex` kullanırsınız.
|
||||
|
||||
---
|
||||
|
||||
### Araçlar
|
||||
|
||||
`tools` yapılandırmasıyla bu agent'ta hangi araçların mevcut olduğunu kontrol edin. Belirli araçları `true` veya `false` olarak ayarlayarak etkinleştirebilir veya devre dışı bırakabilirsiniz.
|
||||
|
||||
```json title="opencode.json" {3-6,9-12}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"tools": {
|
||||
"write": true,
|
||||
"bash": true
|
||||
},
|
||||
"agent": {
|
||||
"plan": {
|
||||
"tools": {
|
||||
"write": false,
|
||||
"bash": false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
:::note
|
||||
Agent'a özgü yapılandırma, genel yapılandırmayı geçersiz kılar.
|
||||
:::
|
||||
|
||||
Aynı anda birden fazla aracı kontrol etmek için joker karakterleri de kullanabilirsiniz. Örneğin, bir MCP sunucusundaki tüm araçları devre dışı bırakmak için:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"agent": {
|
||||
"readonly": {
|
||||
"tools": {
|
||||
"mymcp_*": false,
|
||||
"write": false,
|
||||
"edit": false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
[Araçlar hakkında daha fazla bilgi](/docs/tools).
|
||||
|
||||
---
|
||||
|
||||
### İzinler
|
||||
|
||||
Bir agent'ın gerçekleştirebileceği eylemleri yönetmek için izinleri yapılandırabilirsiniz. Şu anda `edit`, `bash` ve `webfetch` araçlarının izinleri şu şekilde yapılandırılabilir:
|
||||
|
||||
- `"ask"` — Agent çalıştırmadan önce onay iste
|
||||
- `"allow"` — Onay olmadan tüm işlemlere izin ver
|
||||
- `"deny"` — Agent'ı devre dışı bırakır
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu izinleri agent başına geçersiz kılabilirsiniz.
|
||||
|
||||
```json title="opencode.json" {3-5,8-10}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"permission": {
|
||||
"edit": "deny"
|
||||
},
|
||||
"agent": {
|
||||
"build": {
|
||||
"permission": {
|
||||
"edit": "ask"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
İzinleri Markdown agent'larında da ayarlayabilirsiniz.
|
||||
|
||||
```markdown title="~/.config/opencode/agents/review.md"
|
||||
---
|
||||
description: Code review without edits
|
||||
mode: subagent
|
||||
permission:
|
||||
edit: deny
|
||||
bash:
|
||||
"*": ask
|
||||
"git diff": allow
|
||||
"git log*": allow
|
||||
"grep *": allow
|
||||
webfetch: deny
|
||||
---
|
||||
|
||||
Only analyze code and suggest changes.
|
||||
```
|
||||
|
||||
Belirli bash komutları için izinleri ayarlayabilirsiniz.
|
||||
|
||||
```json title="opencode.json" {7}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"agent": {
|
||||
"build": {
|
||||
"permission": {
|
||||
"bash": {
|
||||
"git push": "ask",
|
||||
"grep *": "allow"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu küresel bir desen alabilir.
|
||||
|
||||
```json title="opencode.json" {7}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"agent": {
|
||||
"build": {
|
||||
"permission": {
|
||||
"bash": {
|
||||
"git *": "ask"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Ayrıca tüm komutların izinlerini yönetmek için `*` joker karakterini de kullanabilirsiniz.
|
||||
Son eşleşen kural öncelikli olduğundan, `*` joker karakterini ilk sıraya ve belirli kuralları sonraya koyun.
|
||||
|
||||
```json title="opencode.json" {8}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"agent": {
|
||||
"build": {
|
||||
"permission": {
|
||||
"bash": {
|
||||
"*": "ask",
|
||||
"git status *": "allow"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
[İzinler hakkında daha fazla bilgi](/docs/permissions).
|
||||
|
||||
---
|
||||
|
||||
### Mod
|
||||
|
||||
Agent'ın modunu `mode` yapılandırmasıyla kontrol edin. `mode` seçeneği agent'ın nasıl kullanılabileceğini belirlemek için kullanılır.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"review": {
|
||||
"mode": "subagent"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
`mode` seçeneği `primary`, `subagent` veya `all` olarak ayarlanabilir. `mode` belirtilmezse varsayılan olarak `all` olur.
|
||||
|
||||
---
|
||||
|
||||
### Gizli
|
||||
|
||||
`@` otomatik tamamlama menüsünden bir subagent'ı `hidden: true` ile gizleyin. Yalnızca diğer agent'lar tarafından Task aracı aracılığıyla programlı olarak çağrılması gereken dahili subagent'lar için kullanışlıdır.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"internal-helper": {
|
||||
"mode": "subagent",
|
||||
"hidden": true
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu yalnızca otomatik menüdeki kullanıcının görünümlerinin etkileri. İzinler izin vermesine, gizli agent'lar modeli tarafından Task aracı aracılığıyla çağrılmaya devam edilebilir.
|
||||
|
||||
:::note
|
||||
Yalnızca `mode: subagent` agent'ları için geçerlidir.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Görev izinleri
|
||||
|
||||
`permission.task` ile bir agent'ın Task aracı aracılığıyla hangi subagent'ları çağırabileceğini kontrol edin. Esnek eşleştirme için küresel desenleri kullanır.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"orchestrator": {
|
||||
"mode": "primary",
|
||||
"permission": {
|
||||
"task": {
|
||||
"*": "deny",
|
||||
"orchestrator-*": "allow",
|
||||
"code-reviewer": "ask"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
`deny` olarak ayarlandığında, subagent Task aracı açıklamasından tamamen kaldırılır, böylece model onu çağırmaya çalışmaz.
|
||||
|
||||
:::tip
|
||||
Kurallar sırayla değerlendirilir ve **son eşleşen kural kazanır**. Yukarıdaki örnekte `orchestrator-planner`, hem `*` (reddet) hem de `orchestrator-*` (izin ver) ile eşleşir, ancak `orchestrator-*`, `*`'den sonra geldiğinden sonuç `allow` olur.
|
||||
:::
|
||||
|
||||
:::tip
|
||||
Kullanıcılar, agent'ın görev izinleri bunu reddetse bile, her zaman herhangi bir subagent'ı `@` otomatik tamamlama menüsü aracılığıyla doğrudan çağırabilir.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Renk
|
||||
|
||||
Agent'ın kullanıcı arayüzündeki görsel görünümünü `color` seçeneğiyle özelleştirin. Bu, agent'ın arayüzde nasıl göründüğünü etkiler.
|
||||
|
||||
geçerli bir onaltılık renk (ör. `#FF5733`) veya tema rengini kullanın: `primary`, `secondary`, `accent`, `success`, `warning`, `error`, `info`.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"creative": {
|
||||
"color": "#ff6b6b"
|
||||
},
|
||||
"code-reviewer": {
|
||||
"color": "accent"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Top P
|
||||
|
||||
`top_p` seçeneğiyle yanıt çeşitliliğini kontrol edin. Rastgeleliği kontrol etmek için sıcaklığa alternatif.
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"agent": {
|
||||
"brainstorm": {
|
||||
"top_p": 0.9
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Değerler 0,0 ile 1,0 arasında değişir. Düşük değerler daha odaklıdır, yüksek değerler ise daha çeşitlidir.
|
||||
|
||||
---
|
||||
|
||||
### Ek
|
||||
|
||||
Agent yapılandırmanızdaki diğer seçenekler, model seçenekleri olarak **doğrudan sağlayıcıya** iletilecektir. Bu, sağlayıcıya özgü özelliklerin kullanılmasını sağlar.
|
||||
|
||||
Örneğin OpenAI'nin akıl yürütme modelleriyle akıl yürütme çabasını kontrol edebilirsiniz:
|
||||
|
||||
```json title="opencode.json" {6,7}
|
||||
{
|
||||
"agent": {
|
||||
"deep-thinker": {
|
||||
"description": "Agent that uses high reasoning effort for complex problems",
|
||||
"model": "openai/gpt-5",
|
||||
"reasoningEffort": "high",
|
||||
"textVerbosity": "low"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Bu ek seçenekler modele ve sağlayıcıya özeldir. Kullanılabilir parametreler için sağlayıcınızın belgelerine bakın.
|
||||
|
||||
:::tip
|
||||
Mevcut modellerin listesini görmek için `opencode models` komutunu çalıştırın.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## Agent Oluşturma
|
||||
|
||||
Aşağıdaki komutu kullanarak yeni agent'lar oluşturabilirsiniz:
|
||||
|
||||
```bash
|
||||
opencode agent create
|
||||
```
|
||||
|
||||
Bu etkileşimli komut şunları sağlayacaktır:
|
||||
|
||||
1. Agent'ı nereye kaydedeceğinizi sorun; küresel veya projeye özel.
|
||||
2. Agent'ın ne yapması gerektiğinin açıklaması.
|
||||
3. Uygun bir sistem istemi ve tanımlayıcı oluşturun.
|
||||
4. Agent'ın hangi araçlara erişebileceğini seçmenize izin verin.
|
||||
5. Son olarak agent yapılandırmasıyla bir Markdown dosyası oluşturun.
|
||||
|
||||
---
|
||||
|
||||
## Kullanım Senaryoları
|
||||
|
||||
Farklı agent'lara yönelik bazı yaygın kullanım senaryoları aşağıda verilmiştir.
|
||||
|
||||
- **Build agent**: Tüm araçların etkinleştirildiği tam geliştirme çalışması
|
||||
- **Plan agent**: Değişiklik yapmadan analiz ve planlama
|
||||
- **Review agent**: Salt okunur erişim ve belgeleme araçlarıyla kod incelemesi
|
||||
- **Debug agent**: Bash ve okuma araçları etkinken araştırmaya odaklanmıştır
|
||||
- **Docs agent**: Dosya işlemleriyle ancak sistem komutları olmadan belge yazma
|
||||
|
||||
---
|
||||
|
||||
## Örnekler
|
||||
|
||||
Yararlı bulabileceğiniz bazı örnek agent'ları burada bulabilirsiniz.
|
||||
|
||||
:::tip
|
||||
Paylaşmak istediğiniz bir agent'ınız var mı? [Submit a PR](https://github.com/anomalyco/opencode).
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Dokümantasyon agent'ı
|
||||
|
||||
```markdown title="~/.config/opencode/agents/docs-writer.md"
|
||||
---
|
||||
description: Writes and maintains project documentation
|
||||
mode: subagent
|
||||
tools:
|
||||
bash: false
|
||||
---
|
||||
|
||||
You are a technical writer. Create clear, comprehensive documentation.
|
||||
|
||||
Focus on:
|
||||
|
||||
- Clear explanations
|
||||
- Proper structure
|
||||
- Code examples
|
||||
- User-friendly language
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Güvenlik denetçisi
|
||||
|
||||
```markdown title="~/.config/opencode/agents/security-auditor.md"
|
||||
---
|
||||
description: Performs security audits and identifies vulnerabilities
|
||||
mode: subagent
|
||||
tools:
|
||||
write: false
|
||||
edit: false
|
||||
---
|
||||
|
||||
You are a security expert. Focus on identifying potential security issues.
|
||||
|
||||
Look for:
|
||||
|
||||
- Input validation vulnerabilities
|
||||
- Authentication and authorization flaws
|
||||
- Data exposure risks
|
||||
- Dependency vulnerabilities
|
||||
- Configuration security issues
|
||||
```
|
||||
|
||||
@@ -558,6 +558,7 @@ opencode ortam değişkenleri kullanılarak yapılandırılabilir.
|
||||
| `OPENCODE_AUTO_SHARE` | boolean | Oturumları otomatik olarak paylaş |
|
||||
| `OPENCODE_GIT_BASH_PATH` | string | Windows'ta yürütülebilir Git Bash'in Yolu |
|
||||
| `OPENCODE_CONFIG` | string | Yapılandırma dosyasının yolu |
|
||||
| `OPENCODE_TUI_CONFIG` | string | TUI yapılandırma dosyasının yolu |
|
||||
| `OPENCODE_CONFIG_DIR` | string | Yapılandırma dizinine giden yol |
|
||||
| `OPENCODE_CONFIG_CONTENT` | string | Satır içi JSON config içeriği |
|
||||
| `OPENCODE_DISABLE_AUTOUPDATE` | boolean | Otomatik güncelleme kontrollerini devre dışı bırak |
|
||||
|
||||
@@ -491,13 +491,15 @@ Bağlam sıkıştırma davranışını `compaction` seçeneği aracılığıyla
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"compaction": {
|
||||
"auto": true,
|
||||
"prune": true
|
||||
"prune": true,
|
||||
"reserved": 10000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
- `auto` - Bağlam dolduğunda oturumu otomatik olarak sıkıştırır (varsayılan: `true`).
|
||||
- `prune` - Belirteçleri kaydetmek için eski araç çıktılarını kaldırın (varsayılan: `true`).
|
||||
- `reserved` - Sıkıştırma için belirteç tamponu. Sıkıştırma sırasında taşmayı önlemek için yeterli pencere bırakır.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -79,6 +79,32 @@ Bu iki araç oluşturur: `math_add` ve `math_multiply`.
|
||||
|
||||
---
|
||||
|
||||
#### Yerleşik araçlarla ad çakışmaları
|
||||
|
||||
Özel araçlar, araç adına göre anahtarlanır. Özel bir araç yerleşik bir araçla aynı adı kullanıyorsa, özel araç önceliklidir.
|
||||
|
||||
Örneğin, bu dosya yerleşik `bash` aracının yerini alır:
|
||||
|
||||
```ts title=".opencode/tools/bash.ts"
|
||||
import { tool } from "@opencode-ai/plugin"
|
||||
|
||||
export default tool({
|
||||
description: "Restricted bash wrapper",
|
||||
args: {
|
||||
command: tool.schema.string(),
|
||||
},
|
||||
async execute(args) {
|
||||
return `blocked: ${args.command}`
|
||||
},
|
||||
})
|
||||
```
|
||||
|
||||
:::note
|
||||
Kasıtlı olarak yerleşik bir aracı değiştirmek istemiyorsanız benzersiz adları tercih edin. Yerleşik bir aracı devre dışı bırakmak ancak geçersiz kılmak istemiyorsanız [izinleri](/docs/permissions) kullanın.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Argümanlar
|
||||
|
||||
Bağımsız değişken türlerini tanımlamak için yalnızca [Zod](https://zod.dev) olan `tool.schema` öğesini kullanabilirsiniz.
|
||||
|
||||
@@ -3,11 +3,11 @@ title: Tuş atamaları
|
||||
description: Tuş bağlantılarınızı özelleştirin.
|
||||
---
|
||||
|
||||
opencode, opencode yapılandırması aracılığıyla özelleştirebileceğiniz bir tuş bağlantıları listesine sahiptir.
|
||||
opencode, `tui.json` aracılığıyla özelleştirebileceğiniz bir tuş bağlantıları listesine sahiptir.
|
||||
|
||||
```json title="opencode.json"
|
||||
```json title="tui.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"$schema": "https://opencode.ai/tui.json",
|
||||
"keybinds": {
|
||||
"leader": "ctrl+x",
|
||||
"app_exit": "ctrl+c,ctrl+d,<leader>q",
|
||||
@@ -119,9 +119,9 @@ Tuş atamalarınız için lider anahtar kullanmanıza gerek yoktur ancak bunu ya
|
||||
|
||||
Anahtarı yapılandırmanıza "none" değeriyle ekleyerek bir tuş atamasını devre dışı bırakabilirsiniz.
|
||||
|
||||
```json title="opencode.json"
|
||||
```json title="tui.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"$schema": "https://opencode.ai/tui.json",
|
||||
"keybinds": {
|
||||
"session_compact": "none"
|
||||
}
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
---
|
||||
title: LSP Sunucuları
|
||||
description: opencode, LSP sunucularınızla bütünleşir.
|
||||
description: OpenCode, LSP sunucularınızla bütünleşir.
|
||||
---
|
||||
|
||||
opencode, LLM'in kod tabanınızla etkileşime girmesine yardımcı olmak için Dil Sunucusu Protokolünüzle (LSP) bütünleşir. LLM'ye geri bildirim sağlamak için tanılamayı kullanır.
|
||||
OpenCode, LLM'in kod tabanınızla etkileşime girmesine yardımcı olmak için Dil Sunucusu Protokolünüzle (LSP) bütünleşir. LLM'ye geri bildirim sağlamak için tanılamayı kullanır.
|
||||
|
||||
---
|
||||
|
||||
## Yerleşik
|
||||
|
||||
opencode, popüler diller için çeşitli yerleşik LSP sunucularıyla birlikte gelir:
|
||||
OpenCode, popüler diller için çeşitli yerleşik LSP sunucularıyla birlikte gelir:
|
||||
|
||||
| LSP Sunucu | Uzantılar | Gereksinimler |
|
||||
| ------------------ | ------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
||||
@@ -27,6 +27,7 @@ opencode, popüler diller için çeşitli yerleşik LSP sunucularıyla birlikte
|
||||
| gopls | .go | `go` komutu mevcut |
|
||||
| hls | .hs, .lhs | `haskell-language-server-wrapper` komutu mevcut |
|
||||
| jdtls | .java | `Java SDK (version 21+)` kurulu |
|
||||
| julials | .jl | `julia` ve `LanguageServer.jl` kurulu |
|
||||
| kotlin-ls | .kt, .kts | Kotlin projeleri için otomatik kurulumlar |
|
||||
| lua-ls | .lua | Lua projeleri için otomatik kurulumlar |
|
||||
| nixd | .nix | `nixd` komutu mevcut |
|
||||
@@ -56,7 +57,7 @@ Yukarıdaki dosya uzantılarından biri tespit edildiğinde ve gereksinimler kar
|
||||
|
||||
## Nasıl Çalışır?
|
||||
|
||||
Opencode bir dosyayı açtığında:
|
||||
opencode bir dosyayı açtığında:
|
||||
|
||||
1. Dosya uzantısını tüm etkin LSP sunucularına göre kontrol eder.
|
||||
2. Henüz çalışmıyorsa uygun LSP sunucusunu başlatır.
|
||||
@@ -182,7 +183,7 @@ Komutu ve dosya uzantılarını belirterek özel LSP sunucuları ekleyebilirsini
|
||||
|
||||
PHP Intelephense, bir lisans anahtarı aracılığıyla premium özellikler sunar. Anahtarı (yalnızca) şu adresteki bir metin dosyasına yerleştirerek bir lisans anahtarı sağlayabilirsiniz:
|
||||
|
||||
- MacOS/Linux'ta: `$HOME/intelephense/license.txt`
|
||||
- macOS/Linux'ta: `$HOME/intelephense/license.txt`
|
||||
- Windows'ta: `%USERPROFILE%/intelephense/license.txt`
|
||||
|
||||
Dosya, ek içerik olmadan yalnızca lisans anahtarını içermelidir.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: Eklentiler
|
||||
description: opencode'u genişletmek için kendi eklentilerinizi yazın.
|
||||
description: OpenCode'u genişletmek için kendi eklentilerinizi yazın.
|
||||
---
|
||||
|
||||
Eklentiler, çeşitli olaylara bağlanarak ve davranışı özelleştirerek opencode'u genişletmenize olanak tanır. Yeni özellikler eklemek, harici hizmetlerle entegrasyon sağlamak veya opencode'un varsayılan davranışını değiştirmek için eklentiler oluşturabilirsiniz.
|
||||
Eklentiler, çeşitli olaylara bağlanarak ve davranışı özelleştirerek OpenCode'u genişletmenize olanak tanır. Yeni özellikler eklemek, harici hizmetlerle entegrasyon sağlamak veya OpenCode'un varsayılan davranışını değiştirmek için eklentiler oluşturabilirsiniz.
|
||||
|
||||
Örnekler için topluluk tarafından oluşturulan [eklentilere](/docs/ecosystem#plugins) göz atın.
|
||||
|
||||
@@ -47,7 +47,7 @@ Hem normal hem de kapsamlı npm paketleri desteklenir.
|
||||
|
||||
**npm eklentileri** başlangıçta Bun kullanılarak otomatik olarak yüklenir. Paketler ve bağımlılıkları `~/.cache/opencode/node_modules/`'da önbelleğe alınır.
|
||||
|
||||
**Yerel eklentiler** doğrudan eklenti dizininden yüklenir. Harici paketleri kullanmak için, sisteminizin dizininde bir `package.json` oluşturmanız (bkz. [Bağımlılıklar](#dependencies)) veya eklentiyi npm ve [add it to your config](/docs/config#plugins)'de yayınlamanız gerekir.
|
||||
**Yerel eklentiler** doğrudan eklenti dizininden yüklenir. Harici paketleri kullanmak için, sisteminizin dizininde bir `package.json` oluşturmanız (bkz. [Bağımlılıklar](#dependencies)) veya eklentiyi npm ve [yapılandırmanıza eklemeniz](/docs/config#plugins) gerekir.
|
||||
|
||||
---
|
||||
|
||||
@@ -66,8 +66,7 @@ Aynı ad ve sürüme sahip yinelenen npm paketleri bir kez yüklenir. Ancak benz
|
||||
|
||||
## Eklenti oluşturma
|
||||
|
||||
Eklenti, bir veya daha fazla eklentiyi dışa aktaran bir **JavaScript/TypeScript modülüdür**
|
||||
işlevler. Her işlev bir bağlam nesnesi alır ve bir kanca nesnesi döndürür.
|
||||
Eklenti, bir veya daha fazla eklenti işlevini dışa aktaran bir **JavaScript/TypeScript modülüdür**. Her işlev bir bağlam nesnesi alır ve bir kanca nesnesi döndürür.
|
||||
|
||||
---
|
||||
|
||||
@@ -83,7 +82,7 @@ Yerel eklentiler ve özel araçlar harici npm paketlerini kullanabilir. İhtiyac
|
||||
}
|
||||
```
|
||||
|
||||
opencode bunları yüklemek için başlangıçta `bun install` komutunu çalıştırır. Eklentileriniz ve araçlarınız daha sonra bunları içe aktarabilir.
|
||||
OpenCode bunları yüklemek için başlangıçta `bun install` komutunu çalıştırır. Eklentileriniz ve araçlarınız daha sonra bunları içe aktarabilir.
|
||||
|
||||
```ts title=".opencode/plugins/my-plugin.ts"
|
||||
import { escape } from "shescape"
|
||||
@@ -116,9 +115,9 @@ export const MyPlugin = async ({ project, client, $, directory, worktree }) => {
|
||||
Eklenti işlevi şunları alır:
|
||||
|
||||
- `project`: Mevcut proje bilgisi.
|
||||
- `directory`: güncel çalışma dizini.
|
||||
- `directory`: Güncel çalışma dizini.
|
||||
- `worktree`: Git çalışma ağacı yolu.
|
||||
- `client`: Yapay zeka ile etkileşime geçmek için opencode'lu bir SDK istemcisi.
|
||||
- `client`: Yapay zeka ile etkileşim kurmak için bir OpenCode SDK istemcisi.
|
||||
- `$`: Bun'un komutları yürütmek için kullandığı [shell API](https://bun.com/docs/runtime/shell).
|
||||
|
||||
---
|
||||
@@ -211,7 +210,7 @@ Eklentiler aşağıdaki Örnekler bölümünde görüldüğü gibi etkinliklere
|
||||
|
||||
## Örnekler
|
||||
|
||||
opencode'u genişletmek için kullanabileceğiniz bazı eklenti örneklerini burada bulabilirsiniz.
|
||||
OpenCode'u genişletmek için kullanabileceğiniz bazı eklenti örneklerini burada bulabilirsiniz.
|
||||
|
||||
---
|
||||
|
||||
@@ -232,17 +231,17 @@ export const NotificationPlugin = async ({ project, client, $, directory, worktr
|
||||
}
|
||||
```
|
||||
|
||||
MacOS'ta AppleScript'i çalıştırmak için `osascript` kullanıyoruz. Burada bildirim göndermek için kullanıyoruz.
|
||||
macOS'ta AppleScript'i çalıştırmak için `osascript` kullanıyoruz. Burada bildirim göndermek için kullanıyoruz.
|
||||
|
||||
:::note
|
||||
opencode masaüstü uygulamasını kullanıyorsanız yanıt hazır olduğunda veya oturum hataları oluştuğunda otomatik olarak sistem bildirimleri gönderebilir.
|
||||
OpenCode masaüstü uygulamasını kullanıyorsanız yanıt hazır olduğunda veya oturum hataları oluştuğunda otomatik olarak sistem bildirimleri gönderebilir.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### .env Koruması
|
||||
|
||||
opencode'un `.env` dosyalarını okumasını önleyin:
|
||||
OpenCode'un `.env` dosyalarını okumasını önleyin:
|
||||
|
||||
```javascript title=".opencode/plugins/env-protection.js"
|
||||
export const EnvProtection = async ({ project, client, $, directory, worktree }) => {
|
||||
@@ -277,7 +276,7 @@ export const InjectEnvPlugin = async () => {
|
||||
|
||||
### Özel araçlar
|
||||
|
||||
Eklentiler ayrıca opencode'a özel araçlar da ekleyebilir:
|
||||
Eklentiler ayrıca OpenCode'a özel araçlar da ekleyebilir:
|
||||
|
||||
```ts title=".opencode/plugins/custom-tools.ts"
|
||||
import { type Plugin, tool } from "@opencode-ai/plugin"
|
||||
@@ -300,19 +299,23 @@ export const CustomToolsPlugin: Plugin = async (ctx) => {
|
||||
}
|
||||
```
|
||||
|
||||
`tool` yardımcısı, opencode'un çağırabileceği özel bir araç oluşturur. Bir Zod şeması işlevini alır ve aşağıdakileri içeren bir araç tanımı döndürür:
|
||||
`tool` yardımcısı, OpenCode'un çağırabileceği özel bir araç oluşturur. Bir Zod şeması işlevini alır ve aşağıdakileri içeren bir araç tanımı döndürür:
|
||||
|
||||
- `description`: Araç ne yapar?
|
||||
- `args`: Aracın argümanları için Zod şeması
|
||||
- `execute`: Araç çağrıldığında çalışan fonksiyon
|
||||
|
||||
Özel araçlarınız, yerleşik araçların yanı sıra kod açmaya da hazır olacaktır.
|
||||
Özel araçlarınız, yerleşik araçların yanı sıra OpenCode'a da hazır olacaktır.
|
||||
|
||||
:::note
|
||||
Eğer bir eklenti aracı yerleşik bir araçla aynı adı kullanırsa, eklenti aracı öncelik kazanır.
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### Günlüğe kaydetme
|
||||
|
||||
Yapılandırılmış günlük kaydı için `client.app.log()` yerine `console.log` kullanın:
|
||||
Yapılandırılmış günlük kaydı için `console.log` yerine `client.app.log()` kullanın:
|
||||
|
||||
```ts title=".opencode/plugins/my-plugin.ts"
|
||||
export const MyPlugin = async ({ client }) => {
|
||||
@@ -327,7 +330,7 @@ export const MyPlugin = async ({ client }) => {
|
||||
}
|
||||
```
|
||||
|
||||
Seviyeler: `debug`, `info`, `warn`, `error`. Ayrıntılar için [SDK documentation](https://opencode.ai/docs/sdk)'e bakın.
|
||||
Seviyeler: `debug`, `info`, `warn`, `error`. Ayrıntılar için [SDK belgelerine](https://opencode.ai/docs/sdk) bakın.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -84,6 +84,37 @@ opencode'daki diğer sağlayıcılar gibi çalışır ve kullanımı tamamen ist
|
||||
|
||||
---
|
||||
|
||||
## OpenCode Go
|
||||
|
||||
OpenCode Go, opencode ile iyi çalıştığı test edilmiş ve doğrulanmış, opencode ekibi tarafından sağlanan popüler açık kodlama modellerine güvenilir erişim sağlayan düşük maliyetli bir abonelik planıdır.
|
||||
|
||||
1. TUI'de `/connect` komutunu çalıştırın, `OpenCode Go`'yu seçin ve [opencode.ai/auth](https://opencode.ai/zen) adresine gidin.
|
||||
|
||||
```txt
|
||||
/connect
|
||||
```
|
||||
|
||||
2. Oturum açın, fatura ayrıntılarınızı ekleyin ve API anahtarınızı kopyalayın.
|
||||
|
||||
3. API anahtarınızı yapıştırın.
|
||||
|
||||
```txt
|
||||
┌ API key
|
||||
│
|
||||
│
|
||||
└ enter
|
||||
```
|
||||
|
||||
4. Önerdiğimiz modellerin listesini görmek için TUI'de `/models` komutunu çalıştırın.
|
||||
|
||||
```txt
|
||||
/models
|
||||
```
|
||||
|
||||
opencode'daki diğer sağlayıcılar gibi çalışır ve kullanımı tamamen isteğe bağlıdır.
|
||||
|
||||
---
|
||||
|
||||
## Dizin
|
||||
|
||||
Sağlayıcılardan bazılarına ayrıntılı olarak bakalım. Bir sağlayıcı eklemek istiyorsanız
|
||||
@@ -1481,6 +1512,39 @@ SAP AI Core, birleşik bir platform aracılığıyla OpenAI, Anthropic, Google,
|
||||
|
||||
---
|
||||
|
||||
### STACKIT
|
||||
|
||||
STACKIT AI Model Serving, Llama, Mistral ve Qwen gibi LLM'lere odaklanarak, Avrupa altyapısında maksimum veri egemenliğine sahip AI modelleri için tam olarak yönetilen bağımsız barındırma ortamı sağlar.
|
||||
|
||||
1. [STACKIT Portal](https://portal.stackit.cloud) adresine gidin, **AI Model Serving**'e gidin ve projeniz için bir yetkilendirme belirteci oluşturun.
|
||||
|
||||
:::tip
|
||||
Yetkilendirme belirteçleri oluşturmadan önce bir STACKIT müşteri hesabına, kullanıcı hesabına ve projesine ihtiyacınız vardır.
|
||||
:::
|
||||
|
||||
2. `/connect` komutunu çalıştırın ve **STACKIT**'i arayın.
|
||||
|
||||
```txt
|
||||
/connect
|
||||
```
|
||||
|
||||
3. STACKIT AI Model Serving yetkilendirme belirtecinizi girin.
|
||||
|
||||
```txt
|
||||
┌ API key
|
||||
│
|
||||
│
|
||||
└ enter
|
||||
```
|
||||
|
||||
4. _Qwen3-VL 235B_ veya _Llama 3.3 70B_ gibi mevcut modellerden seçim yapmak için `/models` komutunu çalıştırın.
|
||||
|
||||
```txt
|
||||
/models
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### OVHcloud AI Endpoints
|
||||
|
||||
1. [OVHcloud panel](https://ovh.com/manager)'a gidin. `Public Cloud` bölümüne gidin, `AI & Machine Learning` > `AI Endpoints` ve `API Keys` sekmesinde **Yeni bir API anahtarı oluştur**'u tıklayın.
|
||||
|
||||
@@ -117,6 +117,78 @@ try {
|
||||
|
||||
---
|
||||
|
||||
## Yapılandırılmış Çıktı
|
||||
|
||||
Bir JSON şeması ile `format` belirterek modelden yapılandırılmış JSON çıktısı isteyebilirsiniz. Model, şemanızla eşleşen doğrulanmış JSON'u döndürmek için bir `StructuredOutput` aracı kullanacaktır.
|
||||
|
||||
### Temel Kullanım
|
||||
|
||||
```typescript
|
||||
const result = await client.session.prompt({
|
||||
path: { id: sessionId },
|
||||
body: {
|
||||
parts: [{ type: "text", text: "Anthropic'i araştırın ve şirket bilgileri sağlayın" }],
|
||||
format: {
|
||||
type: "json_schema",
|
||||
schema: {
|
||||
type: "object",
|
||||
properties: {
|
||||
company: { type: "string", description: "Şirket adı" },
|
||||
founded: { type: "number", description: "Kuruluş yılı" },
|
||||
products: {
|
||||
type: "array",
|
||||
items: { type: "string" },
|
||||
description: "Ana ürünler",
|
||||
},
|
||||
},
|
||||
required: ["company", "founded"],
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
// Yapılandırılmış çıktıya erişin
|
||||
console.log(result.data.info.structured_output)
|
||||
// { company: "Anthropic", founded: 2021, products: ["Claude", "Claude API"] }
|
||||
```
|
||||
|
||||
### Çıktı Format Türleri
|
||||
|
||||
| Tür | Açıklama |
|
||||
| ------------- | ------------------------------------------------------------- |
|
||||
| `text` | Varsayılan. Standart metin yanıtı (yapılandırılmış çıktı yok) |
|
||||
| `json_schema` | Sağlanan şema ile eşleşen doğrulanmış JSON döndürür |
|
||||
|
||||
### JSON Şema Formatı
|
||||
|
||||
`type: 'json_schema'` kullanırken şunları sağlayın:
|
||||
|
||||
| Alan | Tür | Açıklama |
|
||||
| ------------ | --------------- | ------------------------------------------------------------- |
|
||||
| `type` | `'json_schema'` | Gerekli. JSON şema modunu belirtir |
|
||||
| `schema` | `object` | Gerekli. Çıktı yapısını tanımlayan JSON Şema nesnesi |
|
||||
| `retryCount` | `number` | İsteğe bağlı. Doğrulama yeniden deneme sayısı (varsayılan: 2) |
|
||||
|
||||
### Hata Yönetimi
|
||||
|
||||
Model, tüm yeniden denemelerden sonra geçerli bir yapılandırılmış çıktı üretemezse, yanıt bir `StructuredOutputError` içerecektir:
|
||||
|
||||
```typescript
|
||||
if (result.data.info.error?.name === "StructuredOutputError") {
|
||||
console.error("Yapılandırılmış çıktı üretilemedi:", result.data.info.error.message)
|
||||
console.error("Denemeler:", result.data.info.error.retries)
|
||||
}
|
||||
```
|
||||
|
||||
### En İyi Uygulamalar
|
||||
|
||||
1. **Açık açıklamalar sağlayın**: Modelin hangi verileri çıkaracağını anlamasına yardımcı olmak için şema özelliklerinde
|
||||
2. **`required` kullanın**: Hangi alanların mevcut olması gerektiğini belirtmek için
|
||||
3. **Şemaları odaklı tutun**: Karmaşık iç içe geçmiş şemaların model tarafından doğru doldurulması daha zor olabilir
|
||||
4. **Uygun `retryCount` ayarlayın**: Karmaşık şemalar için artırın, basit olanlar için azaltın
|
||||
|
||||
---
|
||||
|
||||
## API'ler
|
||||
|
||||
SDK, tüm sunucu API'lerini type-safe bir istemci aracılığıyla sunar.
|
||||
@@ -226,27 +298,27 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
|
||||
### Oturumlar
|
||||
|
||||
| Yöntem | Açıklama | Notlar |
|
||||
| ---------------------------------------------------------- | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `session.list()` | Oturumları listele | <a href={typesUrl}><code>Session[]</code></a> döndürür |
|
||||
| `session.get({ path })` | Oturum al | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.children({ path })` | Alt oturumları listele | <a href={typesUrl}><code>Session[]</code></a> döndürür |
|
||||
| `session.create({ body })` | Oturum oluştur | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.delete({ path })` | Oturum sil | `boolean` döndürür |
|
||||
| `session.update({ path, body })` | Oturum özelliklerini güncelle | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.init({ path, body })` | Uygulamayı analiz et ve `AGENTS.md` oluştur | `boolean` döndürür |
|
||||
| `session.abort({ path })` | Çalışan bir oturumu iptal et | `boolean` döndürür |
|
||||
| `session.share({ path })` | Oturum paylaş | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.unshare({ path })` | Oturum paylaşımını kaldır | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.summarize({ path, body })` | Oturumu özetle | `boolean` döndürür |
|
||||
| `session.messages({ path })` | Oturumdaki mesajları listele | `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` döndürür |
|
||||
| `session.message({ path })` | Mesaj ayrıntılarını al | `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` döndürür |
|
||||
| `session.prompt({ path, body })` | İstem mesajı gönder | `body.noReply: true` UserMessage (yalnızca bağlam) döndürür. Varsayılan olarak AI yanıtıyla <a href={typesUrl}><code>AssistantMessage</code></a> döndürür |
|
||||
| `session.command({ path, body })` | Oturuma komut gönder | `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` döndürür |
|
||||
| `session.shell({ path, body })` | Bir kabuk komutu çalıştır | <a href={typesUrl}><code>AssistantMessage</code></a> döndürür |
|
||||
| `session.revert({ path, body })` | Bir mesajı geri al | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.unrevert({ path })` | Geri alınan mesajları geri yükle | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `postSessionByIdPermissionsByPermissionId({ path, body })` | Bir izin isteğine yanıt ver | `boolean` döndürür |
|
||||
| Yöntem | Açıklama | Notlar |
|
||||
| ---------------------------------------------------------- | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `session.list()` | Oturumları listele | <a href={typesUrl}><code>Session[]</code></a> döndürür |
|
||||
| `session.get({ path })` | Oturum al | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.children({ path })` | Alt oturumları listele | <a href={typesUrl}><code>Session[]</code></a> döndürür |
|
||||
| `session.create({ body })` | Oturum oluştur | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.delete({ path })` | Oturum sil | `boolean` döndürür |
|
||||
| `session.update({ path, body })` | Oturum özelliklerini güncelle | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.init({ path, body })` | Uygulamayı analiz et ve `AGENTS.md` oluştur | `boolean` döndürür |
|
||||
| `session.abort({ path })` | Çalışan bir oturumu iptal et | `boolean` döndürür |
|
||||
| `session.share({ path })` | Oturum paylaş | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.unshare({ path })` | Oturum paylaşımını kaldır | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.summarize({ path, body })` | Oturumu özetle | `boolean` döndürür |
|
||||
| `session.messages({ path })` | Oturumdaki mesajları listele | `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` döndürür |
|
||||
| `session.message({ path })` | Mesaj ayrıntılarını al | `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` döndürür |
|
||||
| `session.prompt({ path, body })` | İstem mesajı gönder | `body.noReply: true` UserMessage (yalnızca bağlam) döndürür. Varsayılan olarak AI yanıtıyla <a href={typesUrl}><code>AssistantMessage</code></a> döndürür. [yapılandırılmış çıktı](#yapılandırılmış-çıktı) için `body.outputFormat` destekler |
|
||||
| `session.command({ path, body })` | Oturuma komut gönder | `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` döndürür |
|
||||
| `session.shell({ path, body })` | Bir kabuk komutu çalıştır | <a href={typesUrl}><code>AssistantMessage</code></a> döndürür |
|
||||
| `session.revert({ path, body })` | Bir mesajı geri al | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `session.unrevert({ path })` | Geri alınan mesajları geri yükle | <a href={typesUrl}><code>Session</code></a> döndürür |
|
||||
| `postSessionByIdPermissionsByPermissionId({ path, body })` | Bir izin isteğine yanıt ver | `boolean` döndürür |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -61,11 +61,11 @@ Sistem teması şu kullanıcılar için idealdir:
|
||||
|
||||
## Tema kullanımı
|
||||
|
||||
`/theme` komutuyla tema seçicisini açıp tema seçebilirsiniz. İsterseniz [config](/docs/config) dosyanızda da belirtebilirsiniz.
|
||||
`/theme` komutuyla tema seçicisini açıp tema seçebilirsiniz. İsterseniz `tui.json` içinde de belirtebilirsiniz.
|
||||
|
||||
```json title="opencode.json" {3}
|
||||
```json title="tui.json" {3}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"$schema": "https://opencode.ai/tui.json",
|
||||
"theme": "tokyonight"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
---
|
||||
title: TUI
|
||||
description: opencode terminal arayuzunu kullanin.
|
||||
description: OpenCode terminal kullanıcı arayüzünü kullanma.
|
||||
---
|
||||
|
||||
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||||
|
||||
opencode, projelerinizde LLM ile calismak icin etkilesimli bir terminal arayuzu (TUI) sunar.
|
||||
OpenCode, projelerinizde LLM ile çalışmak için etkileşimli bir terminal arayüzü (TUI) sunar.
|
||||
|
||||
opencode'u calistirdiginizda mevcut dizin icin TUI baslar.
|
||||
OpenCode'u çalıştırdığınızda mevcut dizin için TUI başlar.
|
||||
|
||||
```bash
|
||||
opencode
|
||||
```
|
||||
|
||||
Isterseniz belirli bir calisma dizini icin de baslatabilirsiniz.
|
||||
İsterseniz belirli bir çalışma dizini için de başlatabilirsiniz.
|
||||
|
||||
```bash
|
||||
opencode /path/to/project
|
||||
```
|
||||
|
||||
TUI icinde bir mesaj yazarak istem gonderebilirsiniz.
|
||||
TUI içine girdiğinizde, bir mesajla istem gönderebilirsiniz.
|
||||
|
||||
```text
|
||||
Give me a quick summary of the codebase.
|
||||
@@ -27,51 +27,51 @@ Give me a quick summary of the codebase.
|
||||
|
||||
---
|
||||
|
||||
## Dosya referanslari
|
||||
## Dosya referansları
|
||||
|
||||
Mesajlarinizda `@` kullanarak dosyalara referans verebilirsiniz. Bu, mevcut calisma dizininde bulanik dosya aramasi yapar.
|
||||
Mesajlarınızda `@` kullanarak dosyalara referans verebilirsiniz. Bu, mevcut çalışma dizininde bulanık dosya araması yapar.
|
||||
|
||||
:::tip
|
||||
Mesajlarinizda dosyalara referans vermek icin `@` kullanabilirsiniz.
|
||||
Mesajlarınızda dosyalara referans vermek için `@` kullanabilirsiniz.
|
||||
:::
|
||||
|
||||
```text "@packages/functions/src/api/index.ts"
|
||||
How is auth handled in @packages/functions/src/api/index.ts?
|
||||
```
|
||||
|
||||
Dosya icerigi otomatik olarak konusmaya eklenir.
|
||||
Dosya içeriği otomatik olarak konuşmaya eklenir.
|
||||
|
||||
---
|
||||
|
||||
## Bash komutlari
|
||||
## Bash komutları
|
||||
|
||||
Bir mesaji `!` ile baslatarak shell komutu calistirin.
|
||||
Bir mesajı `!` ile başlatarak shell komutu çalıştırın.
|
||||
|
||||
```bash frame="none"
|
||||
!ls -la
|
||||
```
|
||||
|
||||
Komut ciktiisi bir arac sonucu olarak konusmaya eklenir.
|
||||
Komut çıktısı bir araç sonucu olarak konuşmaya eklenir.
|
||||
|
||||
---
|
||||
|
||||
## Komutlar
|
||||
|
||||
opencode TUI kullanirken `/` ve komut adini yazarak hizli eylemler calistirabilirsiniz. Ornek:
|
||||
OpenCode TUI kullanırken `/` ve ardından komut adını yazarak hızlı eylemler çalıştırabilirsiniz. Örneğin:
|
||||
|
||||
```bash frame="none"
|
||||
/help
|
||||
```
|
||||
|
||||
Komutlarin cogu, lider tusu `ctrl+x` olan bir kisayola da sahiptir. [Daha fazla bilgi](/docs/keybinds).
|
||||
Komutların çoğu, lider tuşu `ctrl+x` olan bir kısayola da sahiptir. [Daha fazla bilgi](/docs/keybinds).
|
||||
|
||||
Mevcut slash komutlarinin tam listesi:
|
||||
İşte mevcut slash komutlarının tümü:
|
||||
|
||||
---
|
||||
|
||||
### connect
|
||||
|
||||
opencode'a bir provider ekler. Mevcut provider'lari secip API anahtarlari eklemenizi saglar.
|
||||
OpenCode'a bir sağlayıcı ekler. Mevcut sağlayıcıları seçip API anahtarları eklemenizi sağlar.
|
||||
|
||||
```bash frame="none"
|
||||
/connect
|
||||
@@ -81,172 +81,172 @@ opencode'a bir provider ekler. Mevcut provider'lari secip API anahtarlari ekleme
|
||||
|
||||
### compact
|
||||
|
||||
Guncel oturumu sikistirir. _Takma ad_: `/summarize`
|
||||
Mevcut oturumu sıkıştırır. _Takma ad_: `/summarize`
|
||||
|
||||
```bash frame="none"
|
||||
/compact
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x c`
|
||||
**Kısayol:** `ctrl+x c`
|
||||
|
||||
---
|
||||
|
||||
### details
|
||||
|
||||
Arac calistirma detaylarini goster/gizle yapar.
|
||||
Araç çalıştırma detaylarını göster/gizle yapar.
|
||||
|
||||
```bash frame="none"
|
||||
/details
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x d`
|
||||
**Kısayol:** `ctrl+x d`
|
||||
|
||||
---
|
||||
|
||||
### editor
|
||||
|
||||
Mesaj yazmak icin harici editor acar. `EDITOR` ortam degiskeninde ayarli editoru kullanir. [Daha fazla bilgi](#editor-setup).
|
||||
Mesaj yazmak için harici editör açar. `EDITOR` ortam değişkeninde ayarlı editörü kullanır. [Daha fazla bilgi](#editor-setup).
|
||||
|
||||
```bash frame="none"
|
||||
/editor
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x e`
|
||||
**Kısayol:** `ctrl+x e`
|
||||
|
||||
---
|
||||
|
||||
### exit
|
||||
|
||||
opencode'dan cikar. _Takma adlar_: `/quit`, `/q`
|
||||
OpenCode'dan çıkar. _Takma adlar_: `/quit`, `/q`
|
||||
|
||||
```bash frame="none"
|
||||
/exit
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x q`
|
||||
**Kısayol:** `ctrl+x q`
|
||||
|
||||
---
|
||||
|
||||
### export
|
||||
|
||||
Mevcut konusmayi Markdown olarak disa aktarir ve varsayilan editorunuzde acar. `EDITOR` ortam degiskenindeki editoru kullanir. [Daha fazla bilgi](#editor-setup).
|
||||
Mevcut konuşmayı Markdown olarak dışa aktarır ve varsayılan editörünüzde açar. `EDITOR` ortam değişkeninde ayarlı editörü kullanır. [Daha fazla bilgi](#editor-setup).
|
||||
|
||||
```bash frame="none"
|
||||
/export
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x x`
|
||||
**Kısayol:** `ctrl+x x`
|
||||
|
||||
---
|
||||
|
||||
### help
|
||||
|
||||
Yardim penceresini gosterir.
|
||||
Yardım penceresini gösterir.
|
||||
|
||||
```bash frame="none"
|
||||
/help
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x h`
|
||||
**Kısayol:** `ctrl+x h`
|
||||
|
||||
---
|
||||
|
||||
### init
|
||||
|
||||
`AGENTS.md` dosyasini olusturur veya gunceller. [Daha fazla bilgi](/docs/rules).
|
||||
`AGENTS.md` dosyasını oluşturur veya günceller. [Daha fazla bilgi](/docs/rules).
|
||||
|
||||
```bash frame="none"
|
||||
/init
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x i`
|
||||
**Kısayol:** `ctrl+x i`
|
||||
|
||||
---
|
||||
|
||||
### models
|
||||
|
||||
Kullanilabilir modelleri listeler.
|
||||
Kullanılabilir modelleri listeler.
|
||||
|
||||
```bash frame="none"
|
||||
/models
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x m`
|
||||
**Kısayol:** `ctrl+x m`
|
||||
|
||||
---
|
||||
|
||||
### new
|
||||
|
||||
Yeni bir oturum baslatir. _Takma ad_: `/clear`
|
||||
Yeni bir oturum başlatır. _Takma ad_: `/clear`
|
||||
|
||||
```bash frame="none"
|
||||
/new
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x n`
|
||||
**Kısayol:** `ctrl+x n`
|
||||
|
||||
---
|
||||
|
||||
### redo
|
||||
|
||||
Geri alinan bir mesaji tekrar uygular. Yalnizca `/undo` kullanildiktan sonra kullanilabilir.
|
||||
Geri alınan bir mesajı tekrar uygular. Yalnızca `/undo` kullanıldıktan sonra kullanılabilir.
|
||||
|
||||
:::tip
|
||||
Dosya degisiklikleri de geri yuklenir.
|
||||
Herhangi bir dosya değişikliği de geri yüklenir.
|
||||
:::
|
||||
|
||||
Dahilde bu islem dosya degisikliklerini yonetmek icin Git kullanir. Bu nedenle projenizin **bir Git deposu olmasi gerekir**.
|
||||
Dahili olarak bu işlem dosya değişikliklerini yönetmek için Git kullanır. Bu nedenle projenizin **bir Git deposu olması gerekir**.
|
||||
|
||||
```bash frame="none"
|
||||
/redo
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x r`
|
||||
**Kısayol:** `ctrl+x r`
|
||||
|
||||
---
|
||||
|
||||
### sessions
|
||||
|
||||
Oturumlari listeler ve aralarinda gecis yapar. _Takma adlar_: `/resume`, `/continue`
|
||||
Oturumları listeler ve aralarında geçiş yapar. _Takma adlar_: `/resume`, `/continue`
|
||||
|
||||
```bash frame="none"
|
||||
/sessions
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x l`
|
||||
**Kısayol:** `ctrl+x l`
|
||||
|
||||
---
|
||||
|
||||
### share
|
||||
|
||||
Mevcut oturumu paylasir. [Daha fazla bilgi](/docs/share).
|
||||
Mevcut oturumu paylaşır. [Daha fazla bilgi](/docs/share).
|
||||
|
||||
```bash frame="none"
|
||||
/share
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x s`
|
||||
**Kısayol:** `ctrl+x s`
|
||||
|
||||
---
|
||||
|
||||
### themes
|
||||
|
||||
Kullanilabilir temalari listeler.
|
||||
Kullanılabilir temaları listeler.
|
||||
|
||||
```bash frame="none"
|
||||
/theme
|
||||
/themes
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x t`
|
||||
**Kısayol:** `ctrl+x t`
|
||||
|
||||
---
|
||||
|
||||
### thinking
|
||||
|
||||
Konusmadaki thinking/reasoning bloklarinin gorunurlugunu degistirir. Etkin oldugunda, genisletilmis dusunmeyi destekleyen modellerin akil yurutmelerini gorebilirsiniz.
|
||||
Konuşmadaki thinking/reasoning bloklarının görünürlüğünü değiştirir. Etkin olduğunda, genişletilmiş düşünmeyi destekleyen modellerin akıl yürütme sürecini görebilirsiniz.
|
||||
|
||||
:::note
|
||||
Bu komut sadece thinking bloklarinin **gosterimini** kontrol eder, modelin gercek akil yurutmelerini acip kapatmaz. Gercek akil yurutme yetenegini degistirmek icin `ctrl+t` ile model varyantlari arasinda gecis yapin.
|
||||
Bu komut sadece thinking bloklarının **gösterilip gösterilmeyeceğini** kontrol eder - modelin akıl yürütme yeteneklerini etkinleştirmez veya devre dışı bırakmaz. Gerçek akıl yürütme yeteneklerini değiştirmek için `ctrl+t` kullanarak model varyantları arasında geçiş yapın.
|
||||
:::
|
||||
|
||||
```bash frame="none"
|
||||
@@ -257,25 +257,25 @@ Bu komut sadece thinking bloklarinin **gosterimini** kontrol eder, modelin gerce
|
||||
|
||||
### undo
|
||||
|
||||
Konusmadaki son mesaji geri alir. En son kullanici mesaji, sonraki tum yanitlar ve dosya degisiklikleri kaldirilir.
|
||||
Konuşmadaki son mesajı geri alır. En son kullanıcı mesajını, sonraki tüm yanıtları ve dosya değişikliklerini kaldırır.
|
||||
|
||||
:::tip
|
||||
Yapilan dosya degisiklikleri de geri cevrilir.
|
||||
Yapılan tüm dosya değişiklikleri de geri alınır.
|
||||
:::
|
||||
|
||||
Dahilde bu islem dosya degisikliklerini yonetmek icin Git kullanir. Bu nedenle projenizin **bir Git deposu olmasi gerekir**.
|
||||
Dahili olarak bu işlem dosya değişikliklerini yönetmek için Git kullanır. Bu nedenle projenizin **bir Git deposu olması gerekir**.
|
||||
|
||||
```bash frame="none"
|
||||
/undo
|
||||
```
|
||||
|
||||
**Kisayol:** `ctrl+x u`
|
||||
**Kısayol:** `ctrl+x u`
|
||||
|
||||
---
|
||||
|
||||
### unshare
|
||||
|
||||
Mevcut oturumun paylasimini kaldirir. [Daha fazla bilgi](/docs/share#paylasimi-kaldirma).
|
||||
Mevcut oturumun paylaşımını kaldırır. [Daha fazla bilgi](/docs/share#un-sharing).
|
||||
|
||||
```bash frame="none"
|
||||
/unshare
|
||||
@@ -283,9 +283,9 @@ Mevcut oturumun paylasimini kaldirir. [Daha fazla bilgi](/docs/share#paylasimi-k
|
||||
|
||||
---
|
||||
|
||||
## Editor kurulumu
|
||||
## Editör kurulumu
|
||||
|
||||
`/editor` ve `/export` komutlari, `EDITOR` ortam degiskeninde tanimli editoru kullanir.
|
||||
Hem `/editor` hem de `/export` komutları, `EDITOR` ortam değişkeninde belirtilen editörü kullanır.
|
||||
|
||||
<Tabs>
|
||||
<TabItem label="Linux/macOS">
|
||||
@@ -299,7 +299,7 @@ Mevcut oturumun paylasimini kaldirir. [Daha fazla bilgi](/docs/share#paylasimi-k
|
||||
export EDITOR="code --wait"
|
||||
```
|
||||
|
||||
Kalici yapmak icin bunu kabuk profilinize ekleyin:
|
||||
Kalıcı yapmak için bunu kabuk profilinize ekleyin;
|
||||
`~/.bashrc`, `~/.zshrc` vb.
|
||||
|
||||
</TabItem>
|
||||
@@ -313,7 +313,8 @@ Mevcut oturumun paylasimini kaldirir. [Daha fazla bilgi](/docs/share#paylasimi-k
|
||||
set EDITOR=code --wait
|
||||
```
|
||||
|
||||
Kalici yapmak icin **System Properties** > **Environment Variables** yolunu kullanin.
|
||||
Kalıcı yapmak için **System Properties** > **Environment
|
||||
Variables** yolunu kullanın.
|
||||
|
||||
</TabItem>
|
||||
|
||||
@@ -326,62 +327,72 @@ Mevcut oturumun paylasimini kaldirir. [Daha fazla bilgi](/docs/share#paylasimi-k
|
||||
$env:EDITOR = "code --wait"
|
||||
```
|
||||
|
||||
Kalici yapmak icin bunu PowerShell profilinize ekleyin.
|
||||
Kalıcı yapmak için bunu PowerShell profilinize ekleyin.
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
Yaygin editor secenekleri:
|
||||
Popüler editör seçenekleri şunları içerir:
|
||||
|
||||
- `code` - Visual Studio Code
|
||||
- `cursor` - Cursor
|
||||
- `windsurf` - Windsurf
|
||||
- `nvim` - Neovim editoru
|
||||
- `vim` - Vim editoru
|
||||
- `nano` - Nano editoru
|
||||
- `nvim` - Neovim editörü
|
||||
- `vim` - Vim editörü
|
||||
- `nano` - Nano editörü
|
||||
- `notepad` - Windows Notepad
|
||||
- `subl` - Sublime Text
|
||||
|
||||
:::note
|
||||
VS Code gibi bazi editorlerin `--wait` parametresiyle baslatilmasi gerekir.
|
||||
VS Code gibi bazı editörlerin `--wait` bayrağı ile başlatılması gerekir.
|
||||
:::
|
||||
|
||||
Bazi editorler bloklayici modda calismak icin komut satiri argumanlari ister. `--wait` bayragi editor surecinin kapanana kadar beklemesini saglar.
|
||||
Bazı editörler bloklama modunda çalışmak için komut satırı argümanlarına ihtiyaç duyar. `--wait` bayrağı, editör süreci kapanana kadar işlemin bloklanmasını sağlar.
|
||||
|
||||
---
|
||||
|
||||
## Yapilandirin
|
||||
## Yapılandırma
|
||||
|
||||
TUI davranisini opencode config dosyanizdan ozellestirebilirsiniz.
|
||||
TUI davranışını `tui.json` (veya `tui.jsonc`) aracılığıyla özelleştirebilirsiniz.
|
||||
|
||||
```json title="opencode.json"
|
||||
```json title="tui.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"tui": {
|
||||
"scroll_speed": 3,
|
||||
"scroll_acceleration": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
"$schema": "https://opencode.ai/tui.json",
|
||||
"theme": "opencode",
|
||||
"keybinds": {
|
||||
"leader": "ctrl+x"
|
||||
},
|
||||
"scroll_speed": 3,
|
||||
"scroll_acceleration": {
|
||||
"enabled": true
|
||||
},
|
||||
"diff_style": "auto"
|
||||
}
|
||||
```
|
||||
|
||||
### Secenekler
|
||||
Bu, sunucu/çalışma zamanı davranışını yapılandıran `opencode.json` dosyasından ayrıdır.
|
||||
|
||||
- `scroll_acceleration` - Daha akici ve dogal kaydirma icin macOS tarzı hizlanmayi acar. Etkin oldugunda hizli kaydirma hareketlerinde hiz artar, yavas hareketlerde hassas kalir. **Bu ayar etkin oldugunda `scroll_speed` degerini gecersiz kilar.**
|
||||
- `scroll_speed` - Kaydirma komutlariyla TUI'nin ne kadar hizli kayacagini belirler (minimum: `1`). Varsayilan `3` degeridir. **Not: `scroll_acceleration.enabled` `true` ise yok sayilir.**
|
||||
### Seçenekler
|
||||
|
||||
- `theme` - UI temanızı ayarlar. [Daha fazla bilgi](/docs/themes).
|
||||
- `keybinds` - Klavye kısayollarını özelleştirir. [Daha fazla bilgi](/docs/keybinds).
|
||||
- `scroll_acceleration.enabled` - Pürüzsüz, doğal kaydırma için macOS tarzı kaydırma ivmesini etkinleştirin. Etkinleştirildiğinde, kaydırma hızı hızlı kaydırma hareketleriyle artar ve daha yavaş hareketler için hassas kalır. **Bu ayar `scroll_speed` ayarından önceliklidir ve etkinleştirildiğinde onu geçersiz kılar.**
|
||||
- `scroll_speed` - Kaydırma komutlarını kullanırken TUI'nin ne kadar hızlı kaydırılacağını kontrol eder (minimum: `0.001`, ondalık değerleri destekler). Varsayılan değer `3`'tür. **Not: `scroll_acceleration.enabled` `true` olarak ayarlanmışsa bu yok sayılır.**
|
||||
- `diff_style` - Fark (diff) oluşturmayı kontrol eder. `"auto"` terminal genişliğine uyum sağlar, `"stacked"` her zaman tek sütunlu bir düzen gösterir.
|
||||
|
||||
Özel bir TUI yapılandırma yolu yüklemek için `OPENCODE_TUI_CONFIG` kullanın.
|
||||
|
||||
---
|
||||
|
||||
## Ozellestirme
|
||||
## Özelleştirme
|
||||
|
||||
TUI gorunumunun cesitli kisimlarini komut paletiyle (`ctrl+x h` veya `/help`) ozellestirebilirsiniz. Bu ayarlar yeniden baslatmalar arasinda korunur.
|
||||
Komut paletini (`ctrl+x h` veya `/help`) kullanarak TUI görünümünün çeşitli yönlerini özelleştirebilirsiniz. Bu ayarlar yeniden başlatmalar arasında korunur.
|
||||
|
||||
---
|
||||
|
||||
#### Kullanici adi gorunumu
|
||||
#### Kullanıcı adı görünümü
|
||||
|
||||
Sohbet mesajlarinda kullanici adinizin gosterilip gosterilmeyecegini degistirir. Sunlardan erisebilirsiniz:
|
||||
Sohbet mesajlarında kullanıcı adınızın görünüp görünmeyeceğini değiştirin. Buna şuradan erişin:
|
||||
|
||||
- Komut paleti: "username" veya "hide username" aratin
|
||||
- Ayar otomatik saklanir ve TUI oturumlarinda hatirlanir
|
||||
- Komut paleti: "username" veya "hide username" araması yapın
|
||||
- Ayar otomatik olarak kalıcı hale gelir ve TUI oturumları arasında hatırlanır
|
||||
|
||||
@@ -1,61 +1,61 @@
|
||||
---
|
||||
title: Zen
|
||||
description: opencode ekibinin sundugu secili model listesi.
|
||||
description: opencode tarafından sağlanan seçilmiş modeller listesi.
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
import config from "../../../config.mjs"
|
||||
export const console = config.console
|
||||
export const email = `mailto:${config.email}`
|
||||
|
||||
OpenCode Zen, opencode ekibi tarafindan test edilip dogrulanmis modellerin listesidir.
|
||||
OpenCode Zen, opencode ekibi tarafından test edilip doğrulanmış modellerin bir listesidir.
|
||||
|
||||
:::note
|
||||
OpenCode Zen su anda beta asamasindadir.
|
||||
OpenCode Zen şu anda beta aşamasındadır.
|
||||
:::
|
||||
|
||||
Zen, opencode'daki diger provider'lar gibi calisir. OpenCode Zen'e giris yapar ve API anahtarinizi alirsiniz.
|
||||
Tamamen istege baglidir; opencode kullanmak icin Zen kullanmak zorunda degilsiniz.
|
||||
Zen, opencode'daki diğer sağlayıcılar gibi çalışır. OpenCode Zen'e giriş yapar ve API anahtarınızı alırsınız. Tamamen isteğe bağlıdır ve opencode kullanmak için bunu kullanmanıza gerek yoktur.
|
||||
|
||||
---
|
||||
|
||||
## Arka plan
|
||||
|
||||
Piyasada cok sayida model var, ancak bunlarin sadece bir kismi kodlama ajani olarak iyi calisir. Ayrica provider'larin cogu birbirinden cok farkli sekilde ayarlanir; bu da performans ve kaliteyi ciddi bicimde degistirir.
|
||||
Piyasada çok sayıda model var ancak bu modellerden sadece birkaçı kodlama ajanı olarak iyi çalışır. Ayrıca çoğu sağlayıcı çok farklı şekilde yapılandırılmıştır; bu nedenle çok farklı performans ve kalite elde edersiniz.
|
||||
|
||||
:::tip
|
||||
opencode ile iyi calisan belirli model/provider kombinasyonlarini test ettik.
|
||||
opencode ile iyi çalışan seçkin bir grup model ve sağlayıcıyı test ettik.
|
||||
:::
|
||||
|
||||
Bu nedenle OpenRouter benzeri bir servis uzerinden model kullaniyorsaniz, istediginiz modelin en iyi surumunu alip almadiginizdan her zaman emin olamazsiniz.
|
||||
Bu nedenle, OpenRouter gibi bir şey üzerinden bir model kullanıyorsanız, istediğiniz modelin en iyi sürümünü alıp almadığınızdan asla emin olamazsınız.
|
||||
|
||||
Bunu cozmeye yonelik olarak sunlari yaptik:
|
||||
Bunu düzeltmek için birkaç şey yaptık:
|
||||
|
||||
1. Secili bir model grubunu test ettik ve ekipleriyle en iyi calisma sekli uzerine gorustuk
|
||||
2. Daha sonra bazi provider'larla bu modellerin dogru sekilde sunuldugunu dogruladik
|
||||
3. Son olarak model/provider kombinasyonlarini benchmark ederek guvenle onerebilecegimiz bir liste olusturduk
|
||||
1. Seçkin bir grup modeli test ettik ve ekipleriyle bunları en iyi nasıl çalıştıracakları hakkında konuştuk.
|
||||
2. Daha sonra bunların doğru şekilde sunulduğundan emin olmak için birkaç sağlayıcıyla çalıştık.
|
||||
3. Son olarak model/sağlayıcı kombinasyonunu karşılaştırdık ve önermekten memnuniyet duyduğumuz bir liste oluşturduk.
|
||||
|
||||
OpenCode Zen, bu modellere erisim saglayan bir AI gateway'dir.
|
||||
OpenCode Zen, bu modellere erişmenizi sağlayan bir AI ağ geçididir.
|
||||
|
||||
---
|
||||
|
||||
## Nasil calisir
|
||||
## Nasıl çalışır
|
||||
|
||||
OpenCode Zen, opencode'daki diger provider'lar gibi calisir.
|
||||
OpenCode Zen, opencode'daki diğer sağlayıcılar gibi çalışır.
|
||||
|
||||
1. **<a href={console}>OpenCode Zen</a>** hesabina giris yapin, odeme bilgilerinizi ekleyin ve API anahtarinizi kopyalayin
|
||||
2. TUI'da `/connect` komutunu calistirin, OpenCode Zen'i secin ve API anahtarinizi yapistirin
|
||||
3. Onerdigimiz model listesini gormek icin TUI'da `/models` calistirin
|
||||
1. **<a href={console}>OpenCode Zen</a>**'de oturum açın, fatura ayrıntılarınızı ekleyin ve API anahtarınızı kopyalayın.
|
||||
2. TUI'de `/connect` komutunu çalıştırın, OpenCode Zen'i seçin ve API anahtarınızı yapıştırın.
|
||||
3. Önerdiğimiz modellerin listesini görmek için TUI'de `/models` komutunu çalıştırın.
|
||||
|
||||
Ucretlendirme istek basina yapilir ve hesabiniza kredi yukleyebilirsiniz.
|
||||
İstek başına ücretlendirilirsiniz ve hesabınıza kredi ekleyebilirsiniz.
|
||||
|
||||
---
|
||||
|
||||
## Endpoint'ler
|
||||
## Uç Noktalar
|
||||
|
||||
Modellerimize asagidaki API endpoint'leri uzerinden de erisebilirsiniz.
|
||||
Modellerimize aşağıdaki API uç noktaları aracılığıyla da erişebilirsiniz.
|
||||
|
||||
| Model | Model ID | Endpoint | AI SDK Package |
|
||||
| ------------------ | ------------------ | -------------------------------------------------- | --------------------------- |
|
||||
| GPT 5.3 Codex | gpt-5.3-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.2 | gpt-5.2 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.2 Codex | gpt-5.2-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5.1 | gpt-5.1 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
@@ -65,35 +65,36 @@ Modellerimize asagidaki API endpoint'leri uzerinden de erisebilirsiniz.
|
||||
| GPT 5 | gpt-5 | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 Codex | gpt-5-codex | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| GPT 5 Nano | gpt-5-nano | `https://opencode.ai/zen/v1/responses` | `@ai-sdk/openai` |
|
||||
| Claude Opus 4.6 | claude-opus-4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Opus 4.5 | claude-opus-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Opus 4.1 | claude-opus-4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Sonnet 4.6 | claude-sonnet-4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Sonnet 4.5 | claude-sonnet-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Sonnet 4 | claude-sonnet-4 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Haiku 4.5 | claude-haiku-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Haiku 3.5 | claude-3-5-haiku | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Opus 4.6 | claude-opus-4-6 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Opus 4.5 | claude-opus-4-5 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Claude Opus 4.1 | claude-opus-4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| Gemini 3.1 Pro | gemini-3.1-pro | `https://opencode.ai/zen/v1/models/gemini-3.1-pro` | `@ai-sdk/google` |
|
||||
| Gemini 3 Pro | gemini-3-pro | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
|
||||
| Gemini 3 Flash | gemini-3-flash | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
|
||||
| MiniMax M2.5 | minimax-m2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| MiniMax M2.5 Free | minimax-m2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| MiniMax M2.1 | minimax-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| MiniMax M2.1 Free | minimax-m2.1-free | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||
| GLM 5 | glm-5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.7 Free | glm-4.7-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2.5 | kimi-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2.5 Free | kimi-k2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2 Thinking | kimi-k2-thinking | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Kimi K2 | kimi-k2 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Qwen3 Coder 480B | qwen3-coder | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
| Big Pickle | big-pickle | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
|
||||
opencode config'inizdeki [model id](/docs/config/#models), `opencode/<model-id>` formatini kullanir.
|
||||
Ornegin GPT 5.2 Codex icin config'te `opencode/gpt-5.2-codex` kullanirsiniz.
|
||||
opencode yapılandırmanızdaki [model kimliği](/docs/config/#models) `opencode/<model-id>` biçimini kullanır. Örneğin, GPT 5.2 Codex için yapılandırmanızda `opencode/gpt-5.2-codex` kullanırsınız.
|
||||
|
||||
---
|
||||
|
||||
### Modeller
|
||||
|
||||
Mevcut modellerin tam listesini ve metadatasini su adresten cekebilirsiniz:
|
||||
Mevcut modellerin tam listesini ve meta verilerini şuradan alabilirsiniz:
|
||||
|
||||
```
|
||||
https://opencode.ai/zen/v1/models
|
||||
@@ -101,36 +102,41 @@ https://opencode.ai/zen/v1/models
|
||||
|
||||
---
|
||||
|
||||
## Fiyatlandirma
|
||||
## Fiyatlandırma
|
||||
|
||||
Kullandikca ode modelini destekliyoruz. Asagidaki fiyatlar **1M token basina** verilmistir.
|
||||
Kullandıkça öde modelini destekliyoruz. Aşağıda **1 milyon token başına** fiyatlar verilmiştir.
|
||||
|
||||
| Model | Input | Output | Cached Read | Cached Write |
|
||||
| --------------------------------- | ------ | ------ | ----------- | ------------ |
|
||||
| Big Pickle | Free | Free | Free | - |
|
||||
| MiniMax M2.1 Free | Free | Free | Free | - |
|
||||
| MiniMax M2.5 Free | Free | Free | Free | - |
|
||||
| MiniMax M2.5 | $0.30 | $1.20 | $0.06 | - |
|
||||
| MiniMax M2.1 | $0.30 | $1.20 | $0.10 | - |
|
||||
| GLM 4.7 Free | Free | Free | Free | - |
|
||||
| GLM 5 | $1.00 | $3.20 | $0.20 | - |
|
||||
| GLM 4.7 | $0.60 | $2.20 | $0.10 | - |
|
||||
| GLM 4.6 | $0.60 | $2.20 | $0.10 | - |
|
||||
| Kimi K2.5 Free | Free | Free | Free | - |
|
||||
| Kimi K2.5 | $0.60 | $3.00 | $0.08 | - |
|
||||
| Kimi K2 Thinking | $0.40 | $2.50 | - | - |
|
||||
| Kimi K2 | $0.40 | $2.50 | - | - |
|
||||
| Qwen3 Coder 480B | $0.45 | $1.50 | - | - |
|
||||
| Claude Opus 4.6 (≤ 200K tokens) | $5.00 | $25.00 | $0.50 | $6.25 |
|
||||
| Claude Opus 4.6 (> 200K tokens) | $10.00 | $37.50 | $1.00 | $12.50 |
|
||||
| Claude Opus 4.5 | $5.00 | $25.00 | $0.50 | $6.25 |
|
||||
| Claude Opus 4.1 | $15.00 | $75.00 | $1.50 | $18.75 |
|
||||
| Claude Sonnet 4.6 (≤ 200K tokens) | $3.00 | $15.00 | $0.30 | $3.75 |
|
||||
| Claude Sonnet 4.6 (> 200K tokens) | $6.00 | $22.50 | $0.60 | $7.50 |
|
||||
| Claude Sonnet 4.5 (≤ 200K tokens) | $3.00 | $15.00 | $0.30 | $3.75 |
|
||||
| Claude Sonnet 4.5 (> 200K tokens) | $6.00 | $22.50 | $0.60 | $7.50 |
|
||||
| Claude Sonnet 4 (≤ 200K tokens) | $3.00 | $15.00 | $0.30 | $3.75 |
|
||||
| Claude Sonnet 4 (> 200K tokens) | $6.00 | $22.50 | $0.60 | $7.50 |
|
||||
| Claude Haiku 4.5 | $1.00 | $5.00 | $0.10 | $1.25 |
|
||||
| Claude Haiku 3.5 | $0.80 | $4.00 | $0.08 | $1.00 |
|
||||
| Claude Opus 4.6 (≤ 200K tokens) | $5.00 | $25.00 | $0.50 | $6.25 |
|
||||
| Claude Opus 4.6 (> 200K tokens) | $10.00 | $37.50 | $1.00 | $12.50 |
|
||||
| Claude Opus 4.5 | $5.00 | $25.00 | $0.50 | $6.25 |
|
||||
| Claude Opus 4.1 | $15.00 | $75.00 | $1.50 | $18.75 |
|
||||
| Gemini 3.1 Pro (≤ 200K tokens) | $2.00 | $12.00 | $0.20 | - |
|
||||
| Gemini 3.1 Pro (> 200K tokens) | $4.00 | $18.00 | $0.40 | - |
|
||||
| Gemini 3 Pro (≤ 200K tokens) | $2.00 | $12.00 | $0.20 | - |
|
||||
| Gemini 3 Pro (> 200K tokens) | $4.00 | $18.00 | $0.40 | - |
|
||||
| Gemini 3 Flash | $0.50 | $3.00 | $0.05 | - |
|
||||
| GPT 5.3 Codex | $1.75 | $14.00 | $0.175 | - |
|
||||
| GPT 5.2 | $1.75 | $14.00 | $0.175 | - |
|
||||
| GPT 5.2 Codex | $1.75 | $14.00 | $0.175 | - |
|
||||
| GPT 5.1 | $1.07 | $8.50 | $0.107 | - |
|
||||
@@ -141,98 +147,94 @@ Kullandikca ode modelini destekliyoruz. Asagidaki fiyatlar **1M token basina** v
|
||||
| GPT 5 Codex | $1.07 | $8.50 | $0.107 | - |
|
||||
| GPT 5 Nano | Free | Free | Free | - |
|
||||
|
||||
Kullanim gecmisinizde _Claude Haiku 3.5_ gorebilirsiniz. Bu, oturum basliklarini olusturmak icin kullanilan [dusuk maliyetli bir modeldir](/docs/config/#models).
|
||||
Kullanım geçmişinizde _Claude Haiku 3.5_ fark edebilirsiniz. Bu, oturumlarınızın başlıklarını oluşturmak için kullanılan [düşük maliyetli bir modeldir](/docs/config/#models).
|
||||
|
||||
:::note
|
||||
Kredi karti ucretleri maliyetine yansitilir (islem basina %4.4 + $0.30); bunun disinda ek ucret almiyoruz.
|
||||
Kredi kartı ücretleri maliyetine yansıtılır (işlem başına %4,4 + 0,30$); bunun ötesinde hiçbir ücret talep etmiyoruz.
|
||||
:::
|
||||
|
||||
Ucretsiz modeller:
|
||||
Ücretsiz modeller:
|
||||
|
||||
- GLM 4.7 Free, sinirli bir sure icin opencode'da ucretsizdir. Ekip bu surede geri bildirim toplayip modeli iyilestiriyor
|
||||
- Kimi K2.5 Free, sinirli bir sure icin opencode'da ucretsizdir. Ekip bu surede geri bildirim toplayip modeli iyilestiriyor
|
||||
- MiniMax M2.1 Free, sinirli bir sure icin opencode'da ucretsizdir. Ekip bu surede geri bildirim toplayip modeli iyilestiriyor
|
||||
- Big Pickle, sinirli bir sure icin opencode'da ucretsiz olan gizli bir modeldir. Ekip bu surede geri bildirim toplayip modeli iyilestiriyor
|
||||
- MiniMax M2.5 Free, sınırlı bir süre için OpenCode'da ücretsizdir. Ekip bu süreyi geri bildirim toplamak ve modeli iyileştirmek için kullanıyor.
|
||||
- Big Pickle, sınırlı bir süre için OpenCode'da ücretsiz olan gizli bir modeldir. Ekip bu süreyi geri bildirim toplamak ve modeli iyileştirmek için kullanıyor.
|
||||
|
||||
Sorunuz varsa <a href={email}>bize ulasin</a>.
|
||||
Sorularınız varsa <a href={email}>bizimle iletişime geçin</a>.
|
||||
|
||||
---
|
||||
|
||||
### Otomatik yukleme
|
||||
### Otomatik yükleme
|
||||
|
||||
Bakiyeniz $5'in altina dustugunde Zen otomatik olarak $20 yukler.
|
||||
Bakiyeniz 5$'ın altına düşerse, Zen otomatik olarak 20$ yükler.
|
||||
|
||||
Otomatik yukleme tutarini degistirebilir veya bu ozelligi tamamen kapatabilirsiniz.
|
||||
Otomatik yükleme tutarını değiştirebilirsiniz. Otomatik yüklemeyi tamamen devre dışı da bırakabilirsiniz.
|
||||
|
||||
---
|
||||
|
||||
### Aylik limitler
|
||||
### Aylık limitler
|
||||
|
||||
Tum calisma alani ve ekip uyeleri icin aylik kullanim limiti belirleyebilirsiniz.
|
||||
Ayrıca tüm çalışma alanı ve ekibinizin her üyesi için aylık kullanım limiti belirleyebilirsiniz.
|
||||
|
||||
Ornegin aylik limiti $20 yaptiysaniz Zen bir ayda $20'den fazla kullandirtmaz. Ancak otomatik yukleme aciksa bakiye $5 altina dustugunde toplam odemeniz $20'nin uzerine cikabilir.
|
||||
Örneğin, aylık kullanım limitini 20$ olarak ayarladığınızı varsayalım, Zen bir ayda 20$'dan fazla kullanmaz. Ancak otomatik yüklemeyi etkinleştirdiyseniz, bakiyeniz 5$'ın altına düşerse Zen sizden 20$'dan fazla ücret alabilir.
|
||||
|
||||
---
|
||||
|
||||
## Gizlilik
|
||||
|
||||
Tum modellerimiz ABD'de barindiriliyor. Provider'larimiz sifir saklama politikasini izler ve verilerinizi model egitimi icin kullanmaz; asagidaki istisnalar haric:
|
||||
Tüm modellerimiz ABD'de barındırılmaktadır. Sağlayıcılarımız sıfır saklama politikasını izler ve aşağıdaki istisnalar dışında verilerinizi model eğitimi için kullanmaz:
|
||||
|
||||
- Big Pickle: Ucretsiz donemde toplanan veriler modeli iyilestirmek icin kullanilabilir
|
||||
- GLM 4.7 Free: Ucretsiz donemde toplanan veriler modeli iyilestirmek icin kullanilabilir
|
||||
- Kimi K2.5 Free: Ucretsiz donemde toplanan veriler modeli iyilestirmek icin kullanilabilir
|
||||
- MiniMax M2.1 Free: Ucretsiz donemde toplanan veriler modeli iyilestirmek icin kullanilabilir
|
||||
- OpenAI API'leri: Istekler [OpenAI veri politikalari](https://platform.openai.com/docs/guides/your-data) kapsaminda 30 gun saklanir
|
||||
- Anthropic API'leri: Istekler [Anthropic veri politikalari](https://docs.anthropic.com/en/docs/claude-code/data-usage) kapsaminda 30 gun saklanir
|
||||
- Big Pickle: Ücretsiz döneminde toplanan veriler modeli iyileştirmek için kullanılabilir.
|
||||
- MiniMax M2.5 Free: Ücretsiz döneminde toplanan veriler modeli iyileştirmek için kullanılabilir.
|
||||
- OpenAI API'leri: İstekler [OpenAI'nin Veri Politikaları](https://platform.openai.com/docs/guides/your-data) uyarınca 30 gün boyunca saklanır.
|
||||
- Anthropic API'leri: İstekler [Anthropic'in Veri Politikaları](https://docs.anthropic.com/en/docs/claude-code/data-usage) uyarınca 30 gün boyunca saklanır.
|
||||
|
||||
---
|
||||
|
||||
## Ekipler icin
|
||||
## Ekipler İçin
|
||||
|
||||
Zen ekipler icin de guclu bir cozumdur. Ekip arkadaslarini davet edebilir, roller atayabilir, kullanilacak modelleri yonetebilir ve daha fazlasini yapabilirsiniz.
|
||||
Zen ekipler için de harika çalışır. Ekip arkadaşlarınızı davet edebilir, roller atayabilir, ekibinizin kullandığı modelleri düzenleyebilir ve daha fazlasını yapabilirsiniz.
|
||||
|
||||
:::note
|
||||
Calisma alanlari beta kapsaminda su anda ekipler icin ucretsizdir.
|
||||
Çalışma alanları şu anda beta'nın bir parçası olarak ekipler için ücretsizdir.
|
||||
:::
|
||||
|
||||
Calisma alani yonetimi su anda beta kapsaminda ucretsizdir. Fiyatlandirma detaylarini yakinda paylasacagiz.
|
||||
Çalışma alanınızı yönetmek şu anda beta'nın bir parçası olarak ekipler için ücretsizdir. Yakında fiyatlandırma hakkında daha fazla ayrıntı paylaşacağız.
|
||||
|
||||
---
|
||||
|
||||
### Roller
|
||||
|
||||
Calisma alaniniza ekip arkadaslarini davet edip rol atayabilirsiniz:
|
||||
Ekip arkadaşlarınızı çalışma alanınıza davet edebilir ve roller atayabilirsiniz:
|
||||
|
||||
- **Admin**: Modelleri, uyeleri, API anahtarlarini ve faturalandirmayi yonetir
|
||||
- **Member**: Yalnizca kendi API anahtarlarini yonetir
|
||||
- **Admin**: Modelleri, üyeleri, API anahtarlarını ve faturalandırmayı yönetin
|
||||
- **Member**: Yalnızca kendi API anahtarlarını yönetin
|
||||
|
||||
Admin'ler maliyet kontrolu icin uye bazinda aylik harcama limitleri de ayarlayabilir.
|
||||
Yöneticiler, maliyetleri kontrol altında tutmak için her üye için aylık harcama limitleri de belirleyebilir.
|
||||
|
||||
---
|
||||
|
||||
### Model erisimi
|
||||
### Model erişimi
|
||||
|
||||
Admin'ler calisma alani icin belirli modelleri acip kapatabilir. Devre disi bir modele yapilan istekler hata dondurur.
|
||||
Yöneticiler çalışma alanı için belirli modelleri etkinleştirebilir veya devre dışı bırakabilir. Devre dışı bırakılmış bir modele yapılan istekler bir hata döndürür.
|
||||
|
||||
Bu, veri toplayan bir modelin kullanimini kapatmak istediginiz durumlarda kullanislidir.
|
||||
Bu, veri toplayan bir modelin kullanımını devre dışı bırakmak istediğiniz durumlarda kullanışlıdır.
|
||||
|
||||
---
|
||||
|
||||
### Kendi anahtarinizi kullanin
|
||||
### Kendi anahtarınızı getirin
|
||||
|
||||
Zen'deki diger modellere erisirken kendi OpenAI veya Anthropic API anahtarlarinizi da kullanabilirsiniz.
|
||||
Zen'deki diğer modellere erişmeye devam ederken kendi OpenAI veya Anthropic API anahtarlarınızı kullanabilirsiniz.
|
||||
|
||||
Kendi anahtarinizi kullandiginizda token ucreti Zen yerine dogrudan provider tarafindan faturalandirilir.
|
||||
Kendi anahtarlarınızı kullandığınızda, tokenler Zen tarafından değil, doğrudan sağlayıcı tarafından faturalandırılır.
|
||||
|
||||
Ornegin kurulusunuzun zaten OpenAI veya Anthropic anahtari varsa Zen'in sagladigi anahtar yerine onu kullanabilirsiniz.
|
||||
Örneğin, kuruluşunuzun halihazırda OpenAI veya Anthropic için bir anahtarı olabilir ve Zen'in sağladığı anahtar yerine onu kullanmak isteyebilirsiniz.
|
||||
|
||||
---
|
||||
|
||||
## Hedefler
|
||||
|
||||
OpenCode Zen'i su amaclarla olusturduk:
|
||||
OpenCode Zen'i şu amaçlarla oluşturduk:
|
||||
|
||||
1. Kodlama ajanlari icin en iyi model/provider kombinasyonlarini **benchmark etmek**
|
||||
2. Performansi dusurmeden veya daha ucuz provider'a yonlendirmeden **en yuksek kaliteye** erismek
|
||||
3. Maliyetine satarak fiyat dususlerini kullaniciya yansitmak ve yalnizca islem ucretlerini kapsayan pay birakmak
|
||||
4. Herhangi bir kodlama ajaniyla kullanima izin vererek **kilitlenmeyi onlemek** ve opencode'da diger provider'lari her zaman acik tutmak
|
||||
1. Kodlama ajanları için en iyi modelleri/sağlayıcıları **kıyaslamak**.
|
||||
2. **En yüksek kaliteli** seçeneklere erişmek ve performansı düşürmemek veya daha ucuz sağlayıcılara yönlendirmemek.
|
||||
3. Maliyetine satış yaparak herhangi bir **fiyat düşüşünü** yansıtmak; böylece tek kâr marjı işlem ücretlerimizi karşılamaktır.
|
||||
4. Başka bir kodlama ajanıyla kullanmanıza izin vererek **kilitlenmeyi önlemek**. Ve her zaman OpenCode ile başka bir sağlayıcıyı kullanmanıza izin vermek.
|
||||
|
||||
Reference in New Issue
Block a user