mirror of
https://gitea.toothfairyai.com/ToothFairyAI/tf_code.git
synced 2026-04-03 23:53:46 +00:00
332 lines
8.7 KiB
Plaintext
332 lines
8.7 KiB
Plaintext
---
|
||
title: Tryby
|
||
description: Różne tryby dla różnych zastosowań.
|
||
---
|
||
|
||
:::caution
|
||
Tryby są teraz konfigurowane za pomocą opcji `agent` w konfiguracji opencode.
|
||
Opcja `mode` jest obecnie przestarzała. [Dowiedz się więcej](/docs/agents).
|
||
:::
|
||
|
||
Tryb udostępniania możliwości stosowania, narzędzie i podpowiedzi do różnych zastosowań.
|
||
|
||
Posiadanie dwa tryby: **budowanie** i **planowanie**. Można dostosować
|
||
te lub skonfiguruj własne za pomocą konfiguracji opencode.
|
||
|
||
Można przełączać się między trybami podczas sesji lub konfigurować je w pliku konfiguracyjnym.
|
||
|
||
---
|
||
|
||
## Wbudowany
|
||
|
||
opencode ma dwa puste tryby.
|
||
|
||
---
|
||
|
||
### Zbudować
|
||
|
||
Kompilacja jest trybem **domyślnym** z dostępnymi narzędziami. Jest to standardowy tryb pracy programistycznej, który jest dostępny z pełnym dostępem do operacji na plikach i oryginalnych systemach systemowych.
|
||
|
||
---
|
||
|
||
### Plan
|
||
|
||
Tryb ograniczony do analizy. W urządzeniu planowym narzędzia są przydatne:
|
||
|
||
- `write` - Nie można stworzyć nowych plików
|
||
- `edit` — Nie można zastosować naruszenia plików, z naruszeniem praw autorskich w `.opencode/plans/*.md` w celu uszczegółowienia samego planu
|
||
- `patch` - Nie można zastosować poprawek
|
||
- `bash` - Nie można wykonać poleceń shell
|
||
|
||
Ten tryb jest alternatywny, gdy chcesz, aby sztuczna inteligencja analizowała kod, sugerowała zmianę lub tworzyła projekty bez źródła zewnętrznego, które stanowi bazę kodu.
|
||
|
||
---
|
||
|
||
## Przełączanie
|
||
|
||
Możesz przełączać się między trybami podczas sesji za pomocą klawisza _Tab_. Lub skrót klawiszowy `switch_mode`.
|
||
|
||
Zobacz także: [Formaterzy](/docs/formatters), aby uzyskać informacje na temat konfiguracji formatowania kodu.
|
||
|
||
---
|
||
|
||
## Skonfiguruj
|
||
|
||
Możliwość dostosowania alternatywnego trybu lub konfiguracji poprzez własną konfigurację. Tryb można skonfigurować na dwa systemy:
|
||
|
||
### Konfiguracja JSON-a
|
||
|
||
Skonfiguruj tryb w pliku konfiguracyjnym `opencode.json`:
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"$schema": "https://opencode.ai/config.json",
|
||
"mode": {
|
||
"build": {
|
||
"model": "anthropic/claude-sonnet-4-20250514",
|
||
"prompt": "{file:./prompts/build.txt}",
|
||
"tools": {
|
||
"write": true,
|
||
"edit": true,
|
||
"bash": true
|
||
}
|
||
},
|
||
"plan": {
|
||
"model": "anthropic/claude-haiku-4-20250514",
|
||
"tools": {
|
||
"write": false,
|
||
"edit": false,
|
||
"bash": false
|
||
}
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
### Konfiguracja przecen
|
||
|
||
Można także definiować tryby za pomocą plików przecen. Trzymaj je w:
|
||
|
||
- Globalnie: `~/.config/opencode/modes/`
|
||
- Projekt: `.opencode/modes/`
|
||
|
||
```markdown title="~/.config/opencode/modes/review.md"
|
||
---
|
||
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.
|
||
```
|
||
|
||
Nazwa pliku przecen staje się kluczem trybunału (np. `review.md` tworzy tryb `review`).
|
||
|
||
Przyjrzyjmy się szczegółowo tym opcjom konfiguracji.
|
||
|
||
---
|
||
|
||
### Model
|
||
|
||
Zastosowanie konstrukcji `model`, aby zastosować domyślny model dla tego trybunału. Przydatne przy wykorzystaniu różnych modeli dostępnych w różnych zadaniach. Na przykład zastosowanie modelu, skuteczniejsze wykonanie modelu.
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"mode": {
|
||
"plan": {
|
||
"model": "anthropic/claude-haiku-4-20250514"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
### Temperatura
|
||
|
||
Kontroluj losowość i kreatywność reakcji AI za pomocą konstrukcji `temperature`. Niższe wartości, że odpowiedzi są bardziej skupione i deterministyczne, podczas gdy najwyższa wartość jest innowacyjna i złożona.
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"mode": {
|
||
"plan": {
|
||
"temperature": 0.1
|
||
},
|
||
"creative": {
|
||
"temperature": 0.8
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
Wartości temperatury zazwyczaj wahają się od 0,0 do 1,0:
|
||
|
||
- **0,0-0,2**: Bardzo skoncentrowane i deterministyczne odpowiedzi, idealne do analizy i kodu źródłowego
|
||
- **0,3-0,5**: Zrównoważona odpowiedź z chwilą powstania, dobre do ogólnych zadań rozwojowych
|
||
- **0,6–1,0**: Bardziej kreatywne i odpowiedzi, rozstrzygnięte podczas burzy mózgów i eksploracji
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"mode": {
|
||
"analyze": {
|
||
"temperature": 0.1,
|
||
"prompt": "{file:./prompts/analysis.txt}"
|
||
},
|
||
"build": {
|
||
"temperature": 0.3
|
||
},
|
||
"brainstorm": {
|
||
"temperature": 0.7,
|
||
"prompt": "{file:./prompts/creative.txt}"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
Jeśli nie ma wpływu na temperaturę, opencode stosuje się narzędzia badawcze dla modelu (zwykle 0 dla największych modeli, 0,55 dla modeli Qwen).
|
||
|
||
---
|
||
|
||
### Podpowiedź
|
||
|
||
niestandardowy plik podpowiedzi systemowych dla tej procedury za pomocą konfiguracji `prompt`. Plik informacyjny powinien zawierać instrukcje dotyczące przeznaczenia trybunału.
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"mode": {
|
||
"review": {
|
||
"prompt": "{file:./prompts/code-review.txt}"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
Ścieżka ta zależy od miejsca, w którym znajduje się plik konfiguracyjny. Więc to dla działa
|
||
zarówno globalna opencode, jak i specjalna dla projektu.
|
||
|
||
---
|
||
|
||
### Narzędzia
|
||
|
||
Kontroluj, które narzędzia są dostępne w tym urządzeniu, za pomocą konfiguracji `tools`. Można włączyć lub dostępne narzędzie, ustawiając je na `true` lub `false`.
|
||
|
||
```json
|
||
{
|
||
"mode": {
|
||
"readonly": {
|
||
"tools": {
|
||
"write": false,
|
||
"edit": false,
|
||
"bash": false,
|
||
"read": true,
|
||
"grep": true,
|
||
"glob": true
|
||
}
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
Jeśli nie ma żadnych narzędzi, wszystkie narzędzia są wyłączone.
|
||
|
||
---
|
||
|
||
#### Dostępne narzędzie
|
||
|
||
Oto wszystkie narzędzia, które można sterować za pomocą konfiguracji trybunałów.
|
||
|
||
| Narzędzie | Opis |
|
||
| ----------- | ------------------------------------- |
|
||
| `bash` | Wykonaj polecenia shell |
|
||
| `edit` | Modyfikuj istniejące pliki |
|
||
| `write` | Utwórz nowe pliki |
|
||
| `read` | Przeczytaj zawartość pliku |
|
||
| `grep` | Wyszukaj zawartość pliku |
|
||
| `glob` | Znajdź pliki według wzorca |
|
||
| `list` | Lista zawartości katalogu |
|
||
| `patch` | Zastosuj poprawki do plików |
|
||
| `todowrite` | Zarządzaj listami rzeczy do wykonania |
|
||
| `todoread` | Przeczytaj listy rzeczy do zrobienia |
|
||
| `webfetch` | Pobierz zawartość internetową |
|
||
|
||
---
|
||
|
||
## Tryby niestandardowe
|
||
|
||
Możesz stworzyć własny tryb prywatny, dodając je do konfiguracji. Oto zastosowanie obu rozwiązań:
|
||
|
||
### Korzystanie z konfiguracji JSON
|
||
|
||
```json title="opencode.json" {4-14}
|
||
{
|
||
"$schema": "https://opencode.ai/config.json",
|
||
"mode": {
|
||
"docs": {
|
||
"prompt": "{file:./prompts/documentation.txt}",
|
||
"tools": {
|
||
"write": true,
|
||
"edit": true,
|
||
"bash": false,
|
||
"read": true,
|
||
"grep": true,
|
||
"glob": true
|
||
}
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
### Korzystanie z plików Markdown
|
||
|
||
Utwórz pliki trybów w `.opencode/modes/` dla trybów zapisanych dla projektu lub `~/.config/opencode/modes/` dla trybów globalnych:
|
||
|
||
```markdown title=".opencode/modes/debug.md"
|
||
---
|
||
temperature: 0.1
|
||
tools:
|
||
bash: true
|
||
read: true
|
||
grep: true
|
||
write: false
|
||
edit: false
|
||
---
|
||
|
||
You are in debug mode. Your primary goal is to help investigate and diagnose issues.
|
||
|
||
Focus on:
|
||
|
||
- Understanding the problem through careful analysis
|
||
- Using bash commands to inspect system state
|
||
- Reading relevant files and logs
|
||
- Searching for patterns and anomalies
|
||
- Providing clear explanations of findings
|
||
|
||
Do not make any changes to files. Only investigate and report.
|
||
```
|
||
|
||
```markdown title="~/.config/opencode/modes/refactor.md"
|
||
---
|
||
model: anthropic/claude-sonnet-4-20250514
|
||
temperature: 0.2
|
||
tools:
|
||
edit: true
|
||
read: true
|
||
grep: true
|
||
glob: true
|
||
---
|
||
|
||
You are in refactoring mode. Focus on improving code quality without changing functionality.
|
||
|
||
Priorities:
|
||
|
||
- Improve code readability and maintainability
|
||
- Apply consistent naming conventions
|
||
- Reduce code duplication
|
||
- Optimize performance where appropriate
|
||
- Ensure all tests continue to pass
|
||
```
|
||
|
||
---
|
||
|
||
### Przypadki użycia
|
||
|
||
Oto kilka typowych zastosowań dla różnych trybów.
|
||
|
||
- **Tryb stosowania**: Pełne prace programistyczne z dostępnymi narzędziami
|
||
- **Tryb planowania**: Analiza i planowanie bez zmian
|
||
- **Wypróbuj**: Przegląd kodu z możliwością odczytu i narzędzi do dokumentacji
|
||
- **Spróbuj debugowania**: Koncentruje się na urządzeniu z dostępnymi narzędziami bash i odczytu
|
||
- **Tryb Dokumenty**: Zapisywanie dokumentacji przy użyciu operacji na plikach, ale bez oryginalnych systemów systemowych
|
||
|
||
Może się również zdarzyć, że różne modele są dobre w różnych wersjach użycia.
|