File size: 5,506 Bytes
33ae6b5
 
 
 
 
 
725264a
33ae6b5
 
 
 
725264a
33ae6b5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
725264a
 
 
33ae6b5
 
725264a
 
 
 
 
 
 
33ae6b5
 
399a0cb
 
 
33ae6b5
725264a
 
399a0cb
33ae6b5
 
 
399a0cb
 
725264a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33ae6b5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
399a0cb
33ae6b5
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
---
title: Referência de configurações
---

# Referência de configurações

A tela de configurações do Koharu atualmente expõe seis áreas principais:

- `Appearance`
- `Engines`
- `API Keys`
- `Keybinds`
- `Runtime`
- `About`

Esta página documenta a superfície atual de configurações conforme implementada no app.

## Appearance

A aba `Appearance` atualmente inclui:

- tema: `Light`, `Dark` ou `System`
- idioma da UI a partir da lista de traduções embutidas
- `Rendering Font`, que é usada quando o Koharu renderiza o texto traduzido na página

Alterações de tema, idioma e fonte de renderização aplicam-se imediatamente no frontend.

## Engines

A aba `Engines` seleciona o backend usado para cada etapa do pipeline:

- `Detector`
- `Bubble Detector`
- `Font Detector`
- `Segmenter`
- `OCR`
- `Translator`
- `Inpainter`
- `Renderer`

Esses valores são armazenados na config compartilhada do app e salvos imediatamente quando alterados.

## API Keys

A aba `API Keys` cobre atualmente estes provedores embutidos:

- `OpenAI`
- `Gemini`
- `Claude`
- `DeepSeek`
- `DeepL`
- `Google Cloud Translation`
- `Caiyun`
- `OpenAI Compatible`

Cada provedor aparece como um accordion com um indicador de status (status dot):

- verde — pronto (chave salva e descoberta bem-sucedida)
- âmbar — falta configuração obrigatória (chave de API ou, para `OpenAI Compatible`, uma base URL)
- vermelho — a descoberta falhou contra o endpoint configurado
- cinza — sem configuração ainda

Comportamento atual:

- as chaves de API dos provedores não são escritas em `config.toml`
- no macOS e no Windows, as chaves de API dos provedores são armazenadas pelo keyring do sistema
- no Linux, as chaves de API dos provedores são armazenadas no armazenamento local de credenciais do Koharu sob o diretório de dados do app com permissões somente para o usuário dono
- as base URLs dos provedores são armazenadas na config do app
- `OpenAI Compatible` requer uma `Base URL` customizada; os modelos são descobertos dinamicamente chamando `GET /v1/models` contra essa URL
- provedores de tradução automática (`DeepL`, `Google Cloud Translation`, `Caiyun`) precisam apenas de uma chave de API; o `Caiyun` suporta um conjunto limitado de idiomas de destino
- limpar uma chave a remove do armazenamento de credenciais

O response da API intencionalmente redacta as chaves salvas em vez de retornar o segredo bruto.

O armazenamento local de credenciais no Linux depende das permissões do filesystem em vez de criptografia em nível de sistema operacional.

## Keybinds

A aba `Keybinds` permite remapear os atalhos de troca de ferramenta e de tamanho de pincel, além dos atalhos de desfazer e refazer.

Comportamento atual:

- os padrões são `V`/`M`/`B`/`E`/`R` para as ferramentas Selecionar / Bloco / Pincel / Borracha / Pincel de Reparo
- os padrões são `[` e `]` para o passo do tamanho do pincel
- os padrões são `Ctrl + Z` e `Ctrl + Shift + Z` (`Cmd + Z` e `Cmd + Shift + Z` no macOS) para desfazer e refazer
- o zoom do canvas (`Ctrl` + roda), o pan (`Ctrl` + arrastar), o select-all (`Ctrl + A`) e o fallback legado de refazer com `Ctrl + Y` não são remapeáveis
- conflitos são destacados no editor; você pode redefinir tudo para os padrões na mesma tela

As preferências de atalhos ficam armazenadas na camada de preferências do frontend, não em `config.toml`.

Para a lista completa de padrões, veja [Atalhos de teclado](keyboard-shortcuts.md).

## Runtime

A aba `Runtime` agrupa configurações que exigem reinicialização e afetam o runtime local compartilhado:

- `Data Path`
- `HTTP Connect Timeout`
- `HTTP Read Timeout`
- `HTTP Max Retries`

Comportamento atual:

- `Data Path` controla onde o Koharu armazena pacotes de runtime, modelos baixados, manifests de página e blobs de imagem
- `HTTP Connect Timeout` define quanto tempo o Koharu aguarda ao estabelecer conexões HTTP
- `HTTP Read Timeout` define quanto tempo o Koharu aguarda ao ler responses HTTP
- `HTTP Max Retries` controla as retentativas automáticas para falhas transitórias de HTTP
- esses valores HTTP são usados pelo client HTTP compartilhado do runtime para downloads e requests baseados em provedores
- aplicar as alterações salva a config e reinicia o app desktop porque o client de runtime é construído na inicialização

## About

A aba `About` atualmente mostra:

- a versão atual do app
- se existe um release mais novo no GitHub
- o link do autor
- o link do repositório

No modo de app empacotado, a verificação de versão compara a versão local do app com o último release no GitHub em `mayocream/koharu`.

## Modelo de persistência

O comportamento atual das configurações é dividido em camadas de armazenamento:

- `config.toml` armazena a config compartilhada do app, como `data`, `http`, `pipeline` e `baseUrl` dos provedores
- as chaves de API dos provedores são armazenadas separadamente de `config.toml` pelo armazenamento de credenciais da plataforma descrito acima
- as preferências de tema, idioma e fonte de renderização são armazenadas na camada de preferências do frontend

Ou seja, limpar as preferências do frontend não é o mesmo que limpar as chaves de API salvas dos provedores ou a config compartilhada de runtime.

## Páginas relacionadas

- [Usar APIs compatíveis com OpenAI](../how-to/use-openai-compatible-api.md)
- [Modelos e provedores](../explanation/models-and-providers.md)
- [Referência da API HTTP](http-api.md)