
# Daytona

Daytona leidžia Termbridge paleisti terminalą ir peržiūrą debesijos smėlio dėžėje. Naudokite tai, kai reikia atkuriamos aplinkos ar debesijos peržiūros arba norite palikti nešiojamąjį kompiuterį nenaudojamą.

## Reikalavimai

- Daytona API raktas
- Saugykla URL, kurią smėlio dėžė gali klonuoti
- Git kredencialai, jei saugykla privati

## Greita pradžia

Nustatykite vidinę sistemą į Daytona ir pateikite saugyklos konfigūraciją:

```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
```

Tada paleiskite Termbridge kaip įprastai:

```bash
npx termbridge
```

Visada nustatykite `TERMBRIDGE_SANDBOX_REPO` (arba `--sandbox-repo`). Jei jo nėra, Termbridge šiuo metu naudoja įtaisytąją numatytąją saugyklą, kuri nėra viešai pasiekiama, todėl smėlio dėžė sukuriama, bet klonavimas nepavyksta ([#2](https://github.com/inline0/termbridge/issues/2)).

## Daytona ryšys

| Kintamasis | Paskirtis |
| --- | --- |
| `TERMBRIDGE_DAYTONA_API_KEY` | Jūsų Daytona API raktas |
| `TERMBRIDGE_DAYTONA_API_URL` | API galinis taškas (numatytasis `https://app.daytona.io/api`) |
| `TERMBRIDGE_DAYTONA_TARGET` | Daytona tikslinis regionas (pasirinktinis) |

Šios reikšmės perduodamos Daytona SDK. Jei kuri nors iš jų nenustatyta, SDK naudoja savo `DAYTONA_API_KEY`, `DAYTONA_API_URL` arba `DAYTONA_TARGET` kintamąjį.

## Tiesioginis smėlio dėžės režimas (be tunelio)

Tiesioginiu režimu Termbridge serveris veikia smėlio dėžėje, o Cloudflare visai nenaudojamas. Bendrinimo URL yra Daytona peržiūros nuoroda į smėlio dėžėje veikiantį serverį.

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

`TERMBRIDGE_SANDBOX_SERVER_PORT` (arba `--port`) pagal numatytuosius nustatymus yra `8080`. Tiesioginiu režimu sukuriama vieša smėlio dėžė, nebent nustatysite `TERMBRIDGE_SANDBOX_PUBLIC=false`, o UI paslepia terminalų perjungiklį.

Peržiūrą vis tiek galite įjungti nustatę `TERMBRIDGE_SANDBOX_PREVIEW_PORT`; tiesioginiu režimu ši reikšmė perduodama kaip serverio `--proxy` prievadas.

## Saugyklos klonavimas

Termbridge sukurs smėlio dėžę ir klonuos jūsų saugyklą į jos darbinį katalogą.

Naudokite šiuos nustatymus:

| Kintamasis | Paskirtis |
| --- | --- |
| `TERMBRIDGE_SANDBOX_REPO` | Klonuojamos saugyklos URL (visada nustatykite, žr. greitojo paleidimo vadovą) |
| `TERMBRIDGE_SANDBOX_BRANCH` | Šaka, kurią reikia išsiregistruoti (pasirinktinai) |
| `TERMBRIDGE_SANDBOX_PATH` | Saugyklos kelias smėlio dėžėje (pasirinktinai) |
| `TERMBRIDGE_SANDBOX_NAME` | Smėlio dėžės pavadinimas (pasirinktinai, numatytasis `termbridge-<random hex>`) |

Jei `TERMBRIDGE_SANDBOX_PATH` nenustatytas, Termbridge nustato jį pagal saugyklos pavadinimą.

## Privačios saugyklos

Klonuodami privačias saugyklas, pateikite git prisijungimo duomenis:

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

Taip pat palaikomas `TERMBRIDGE_SANDBOX_GIT_PASSWORD`; jį nustačius, jis turi pirmenybę prieš prieigos raktą.

## Programavimo agentai

Termbridge gali įdiegti programavimo agentus smėlio dėžėje ir sinchronizuoti vietinius autentifikavimo duomenis, kad agentai iškart būtų paruošti naudoti.

Išsamią konfigūraciją, automatinį režimą ir saugumo informaciją rasite vadove [Programavimo agentai](https://termbridge.inline0.dev/lt/docs/sandboxes/coding-agents).

## Peržiūros režimas

Norėdami rodyti peržiūros rodinį, nustatykite `TERMBRIDGE_SANDBOX_PREVIEW_PORT` į prievadą, kurį smėlio dėžėje naudoja kūrimo serveris.

Jei naudojate Vite, būtinai susiekite serverį su visomis sąsajomis:

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

Termbridge gauna Daytona peržiūros nuorodą ir perduoda ją per Termbridge serverį, kad peržiūra būtų įkelta į UI.

## Viešos ir privačios smėlio dėžės

| Kintamasis | Paskirtis |
| --- | --- |
| `TERMBRIDGE_SANDBOX_PUBLIC=true` | Sukuria viešą smėlio dėžę |
| `TERMBRIDGE_SANDBOX_PUBLIC=false` | Sukuria privačią smėlio dėžę |

Jei kintamasis nenustatytas, smėlio dėžės yra privačios, išskyrus tiesioginį režimą, kuriame jos yra viešos.

Privačiose smėlio dėžėse Termbridge automatiškai perduoda peržiūros prieigos raktą, kai tarpininkauja peržiūrai.

## Valymas ir gyvavimo ciklas

Jei norite ištrinti smėlio dėžes išėjus Termbridge:

```bash
export TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true
```

Trumpalaikėms arba bandomosioms smėlio dėžėms naudokite prefiksą:

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

Taip galėsite kontroliuoti smėlio dėžių naudojimą ir išvengti disko kvotos problemų.

## CLI vėliavėlės

Daytona taip pat galite konfigūruoti vėliavėlėmis. Vėliavėlės reikšmė turi pirmenybę prieš atitinkamą aplinkos kintamąjį.

| Vėliavėlė | Aplinkos kintamasis | Paskirtis |
| --- | --- | --- |
| `--backend sandbox-daytona` | `TERMBRIDGE_BACKEND` | Naudoti Daytona vidinę sistemą |
| `--sandbox-repo <url>` | `TERMBRIDGE_SANDBOX_REPO` | Saugyklos URL |
| `--sandbox-branch <branch>` | `TERMBRIDGE_SANDBOX_BRANCH` | Šaka |
| `--sandbox-path <path>` | `TERMBRIDGE_SANDBOX_PATH` | Saugyklos kelias smėlio dėžėje |
| `--sandbox-name <name>` | `TERMBRIDGE_SANDBOX_NAME` | Smėlio dėžės pavadinimas |
| `--sandbox-preview-port <port>` | `TERMBRIDGE_SANDBOX_PREVIEW_PORT` | Peržiūros prievadas |
| `--sandbox-public` | `TERMBRIDGE_SANDBOX_PUBLIC=true` | Sukurti viešą smėlio dėžę |
| `--sandbox-direct` | `TERMBRIDGE_SANDBOX_DIRECT=true` | Paleisti serverį smėlio dėžėje (be tunelio) |

Privataus smėlio dėžės režimo vėliavėlės nėra; naudokite `TERMBRIDGE_SANDBOX_PUBLIC=false`. Įtaisytame `termbridge --help` išvestyje vis tiek rodomi `--daytona-*` pavadinimai ir `--backend daytona`, kurie atmetami ([#1](https://github.com/inline0/termbridge/issues/1)).

## Trikčių šalinimas

**Peržiūros langas tuščias**
- Įsitikinkite, kad kūrimo serveris veikia smėlio dėžėje.
- Naudokite `--host 0.0.0.0`, kad peržiūros prievadas būtų pasiekiamas.
- Patikrinkite, ar `TERMBRIDGE_SANDBOX_PREVIEW_PORT` sutampa su kūrimo serverio prievadu.

**Nepavyksta sukurti smėlio dėžės dėl kvotos klaidų**
- Ištrinkite senas smėlio dėžes Daytona valdymo skydelyje.
- Trumpalaikiams seansams naudokite `TERMBRIDGE_SANDBOX_DELETE_ON_EXIT=true`.

**Nepavyksta klonuoti saugyklos**
- Dar kartą patikrinkite saugyklos URL, šaką ir kredencialus.
- Įsitikinkite, kad Git prieigos raktas suteikia skaitymo prieigą prie saugyklos.
