
# Daytona

Daytona, terminalinizi ve önizlemenizi bulut korumalı alanında çalıştırmak için Termbridge aracını kullanır. Tekrarlanabilir bir ortam, bulut önizlemesi istediğinizde veya dizüstü bilgisayarınızın boşta kalmasını sağlamak için kullanın.

## Gereksinimler

- Bir Daytona API anahtarı
- Depo, korumalı alanın klonlayabileceği URL
- Depo özelse Git kimlik bilgileri

## Hızlı başlangıç

Arka ucu Daytona olarak ayarlayın ve depo yapılandırmasını sağlayın:

```bash
export TERMBRIDGE_BACKEND=sandbox-daytona
export TERMBRIDGE_DAYTONA_API_KEY=your_key
export TERMBRIDGE_SANDBOX_REPO=https://github.com/you/your-repo.git
export TERMBRIDGE_SANDBOX_BRANCH=main
export TERMBRIDGE_SANDBOX_PATH=your-repo
export TERMBRIDGE_SANDBOX_NAME=termbridge-sandbox
export TERMBRIDGE_SANDBOX_PUBLIC=true
export TERMBRIDGE_SANDBOX_PREVIEW_PORT=5173
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true
```

Ardından Termbridge komutunu her zamanki gibi çalıştırın:

```bash
npx termbridge
```

Her zaman `TERMBRIDGE_SANDBOX_REPO` (veya `--sandbox-repo`) ayarlayın. Bu değer eksik olduğunda Termbridge şu anda herkese açık olmayan yerleşik varsayılan bir depoya geri döner; bu nedenle sandbox oluşturulur ancak klonlama başarısız olur ([#2](https://github.com/inline0/termbridge/issues/2)).

## Daytona bağlantısı

| Değişken | Amaç |
| --- | --- |
| `TERMBRIDGE_DAYTONA_API_KEY` | Daytona API anahtarınız |
| `TERMBRIDGE_DAYTONA_API_URL` | API uç noktası (varsayılan `https://app.daytona.io/api`) |
| `TERMBRIDGE_DAYTONA_TARGET` | Daytona hedef bölgesi (isteğe bağlı) |

Bunlar Daytona SDK'sına aktarılır. Bunlardan biri ayarlanmamışsa SDK kendi `DAYTONA_API_KEY`, `DAYTONA_API_URL` veya `DAYTONA_TARGET` değişkenini kullanır.

## Doğrudan sandbox modu (tünelsiz)

Doğrudan mod, Termbridge sunucusunu sandbox içinde çalıştırır ve Cloudflare adımını tamamen atlar. Paylaşım URL, sandbox'taki sunucunun Daytona önizleme bağlantısıdır.

```bash
export TERMBRIDGE_BACKEND=sandbox-daytona
export TERMBRIDGE_SANDBOX_DIRECT=true
export TERMBRIDGE_SANDBOX_SERVER_PORT=8080
```

`TERMBRIDGE_SANDBOX_SERVER_PORT` (veya `--port`) varsayılan olarak `8080` değerini alır. `TERMBRIDGE_SANDBOX_PUBLIC=false` ayarlamadığınız sürece doğrudan mod herkese açık bir sandbox oluşturur ve UI terminal değiştiricisini gizler.

`TERMBRIDGE_SANDBOX_PREVIEW_PORT` ayarlayarak önizlemeyi yine de etkinleştirebilirsiniz; doğrudan modda bu, sunucu `--proxy` bağlantı noktası olarak iletilir.

## Depo klonlama

Termbridge bir sandbox oluşturur ve deponuzu sandbox çalışma dizinine klonlar.

Şu ayarları kullanın:

| Değişken | Amaç |
| --- | --- |
| `TERMBRIDGE_SANDBOX_REPO` | Klonlanacak depo URL (her zaman ayarlayın, hızlı başlangıca bakın) |
| `TERMBRIDGE_SANDBOX_BRANCH` | Kontrol edilecek dal (isteğe bağlı) |
| `TERMBRIDGE_SANDBOX_PATH` | Deponun sandbox içindeki yolu (isteğe bağlı) |
| `TERMBRIDGE_SANDBOX_NAME` | Sandbox adı (isteğe bağlı, varsayılan `termbridge-<random hex>`) |

`TERMBRIDGE_SANDBOX_PATH` ayarlanmadıysa Termbridge bu değeri depo adından türetir.

## Özel depolar

Özel depoları klonlarken git kimlik bilgilerini sağlayın:

```bash
export TERMBRIDGE_SANDBOX_GIT_USERNAME=your_github_username
export TERMBRIDGE_SANDBOX_GIT_TOKEN=your_github_token
```

`TERMBRIDGE_SANDBOX_GIT_PASSWORD` da desteklenir ve ayarlanmışsa belirtecin yerini alır.

## Kodlama ajanları

Termbridge sandbox içine kodlama ajanları yükleyebilir ve yerel kimlik doğrulamanızı eşitleyerek hemen hazır olmalarını sağlayabilir.

Tüm kurulum, otomatik mod ve güvenlik ayrıntıları için [Kodlama ajanları](https://termbridge.inline0.dev/tr/docs/sandboxes/coding-agents) kılavuzuna bakın.

## Önizleme modu

Önizleme görünümünü göstermek için `TERMBRIDGE_SANDBOX_PREVIEW_PORT` değerini, geliştirme sunucunuzun sandbox içinde kullandığı bağlantı noktası olarak ayarlayın.

Vite için tüm arayüzlere bağlandığınızdan emin olun:

```bash
npm run dev -- --host 0.0.0.0 --port 5173
```

Termbridge, Daytona önizleme bağlantısını alır ve önizlemenin UI içinde yüklenmesi için bu bağlantıyı Termbridge sunucusu üzerinden vekil olarak iletir.

## Herkese açık ve özel sandbox'lar

| Değişken | İşlevi |
| --- | --- |
| `TERMBRIDGE_SANDBOX_PUBLIC=true` | Herkese açık bir sandbox oluşturur |
| `TERMBRIDGE_SANDBOX_PUBLIC=false` | Özel bir sandbox oluşturur |

Değişken ayarlanmamışsa sandbox'lar özeldir; doğrudan modda ise herkese açıktır.

Özel sandbox'larda Termbridge, önizleme vekil olarak iletilirken önizleme belirtecini otomatik olarak aktarır.

## Temizleme ve yaşam döngüsü

Termbridge çıktığında sandbox'ları silmek için:

```bash
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true
```

Kısa ömürlü veya test amaçlı sandbox'lar için bir önek kullanın:

```bash
export TERMBRIDGE_SANDBOX_NAME=termbridge-test-$(date +%s)
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true
```

Bu, sandbox kullanımını denetim altında tutar ve disk kotası sorunlarını önler.

## CLI bayrakları

Daytona ayarlarını bayraklarla da yapılandırabilirsiniz. Bir bayrak, eşleşen ortam değişkenine göre önceliklidir.

| Bayrak | Ortam değişkeni | Amaç |
| --- | --- | --- |
| `--backend sandbox-daytona` | `TERMBRIDGE_BACKEND` | Daytona arka ucunu kullanır |
| `--sandbox-repo <url>` | `TERMBRIDGE_SANDBOX_REPO` | Depo URL |
| `--sandbox-branch <branch>` | `TERMBRIDGE_SANDBOX_BRANCH` | Dal |
| `--sandbox-path <path>` | `TERMBRIDGE_SANDBOX_PATH` | Deponun sandbox içindeki yolu |
| `--sandbox-name <name>` | `TERMBRIDGE_SANDBOX_NAME` | Sandbox adı |
| `--sandbox-preview-port <port>` | `TERMBRIDGE_SANDBOX_PREVIEW_PORT` | Önizleme bağlantı noktası |
| `--sandbox-public` | `TERMBRIDGE_SANDBOX_PUBLIC=true` | Herkese açık bir sandbox oluşturur |
| `--sandbox-direct` | `TERMBRIDGE_SANDBOX_DIRECT=true` | Sunucuyu sandbox içinde çalıştırır (tünelsiz) |

Özel sandbox için bir bayrak yoktur; `TERMBRIDGE_SANDBOX_PUBLIC=false` kullanın. Yerleşik `termbridge --help` çıktısı, reddedilen `--daytona-*` adlarını ve `--backend daytona` değerini yine de gösterir ([#1](https://github.com/inline0/termbridge/issues/1)).

## Sorun giderme

**Önizleme görünümü boş**
- Geliştirme sunucusunun sandbox içinde çalıştığından emin olun.
- Önizleme bağlantı noktasına erişilebilmesi için `--host 0.0.0.0` kullanın.
- `TERMBRIDGE_SANDBOX_PREVIEW_PORT` değerinin geliştirme sunucusu bağlantı noktasıyla eşleştiğini doğrulayın.

**Sandbox oluşturma kota hatalarıyla başarısız oluyor**
- Eski sandbox'ları Daytona panosundan silin.
- Kısa ömürlü oturumlar için `TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true` kullanın.

**Depo klonlama başarısız oluyor**
- Depo URL değerini, dalı ve kimlik bilgilerini yeniden kontrol edin.
- Git belirtecinin depoyu okuma erişimi olduğundan emin olun.
