Cmd/Ctrl+T now opens the focused pane's launcher, while explicit target shortcuts bypass the menu. Dispatcher ownership is scoped to the app tree so retained workspaces cannot intercept commands.
2539 lines
96 KiB
TypeScript
2539 lines
96 KiB
TypeScript
import type { TranslationResources } from "./en";
|
|
import { pluginSettings } from "./plugin-settings";
|
|
|
|
export const ptBR: TranslationResources = {
|
|
common: {
|
|
back: "Voltar",
|
|
loading: "Carregando...",
|
|
actions: {
|
|
back: "Voltar",
|
|
cancel: "Cancelar",
|
|
close: "Fechar",
|
|
copy: "Copiar",
|
|
dismiss: "Dispensar",
|
|
retry: "Tentar novamente",
|
|
search: "Buscar",
|
|
select: "Selecionar",
|
|
},
|
|
placeholders: {
|
|
search: "Buscar...",
|
|
},
|
|
empty: {
|
|
noResults: "Nenhum resultado encontrado",
|
|
noOptionsMatchSearch: "Nenhuma opção corresponde à sua busca.",
|
|
},
|
|
states: {
|
|
loading: "Carregando...",
|
|
starting: "Iniciando...",
|
|
copied: "Copiado",
|
|
copiedLabel: "{{label}} copiado",
|
|
downloadComplete: "Download concluído",
|
|
downloadFailed: "Falha no download",
|
|
},
|
|
errors: {
|
|
error: "Erro",
|
|
unableToSave: "Não foi possível salvar",
|
|
nameRequired: "O nome é obrigatório",
|
|
daemonUnavailable: "Daemon indisponível",
|
|
daemonClientUnavailable: "Cliente do daemon indisponível",
|
|
daemonClientDisconnected: "O cliente do daemon está desconectado",
|
|
noFileFound: "Nenhum arquivo encontrado para {{token}}",
|
|
unexpectedDictationError: "Ocorreu um erro inesperado ao processar o ditado.",
|
|
},
|
|
connectionStatus: {
|
|
online: "Online",
|
|
connecting: "Conectando",
|
|
offline: "Offline",
|
|
error: "Erro",
|
|
idle: "Ocioso",
|
|
},
|
|
},
|
|
shell: {
|
|
menu: {
|
|
toggleSidebar: "Alternar barra lateral",
|
|
open: "Abrir menu",
|
|
close: "Fechar menu",
|
|
},
|
|
commandCenter: {
|
|
placeholder: "Buscar comandos, arquivos, espaços de trabalho e agentes...",
|
|
filePlaceholder: "Pesquisar arquivos...",
|
|
searchingFiles: "Pesquisando arquivos...",
|
|
noMatches: "Nenhuma correspondência",
|
|
actions: "Ações",
|
|
files: "Arquivos",
|
|
workspaces: "Espaços de trabalho",
|
|
agents: "Agentes",
|
|
newAgent: "Novo agente",
|
|
addProject: "Adicionar projeto",
|
|
home: "Início",
|
|
groupByProject: "Agrupar por projeto",
|
|
groupByStatus: "Agrupar por status",
|
|
modelGroupLabel: "Modelo",
|
|
modelSearchKeywords: "trocar modelo mudar modelo definir modelo selecionar modelo",
|
|
thinkingGroupLabel: "Raciocínio",
|
|
thinkingSearchKeywords: "raciocínio esforço pensamento",
|
|
modeGroupLabel: "Modo",
|
|
modeSearchKeywords: "acesso permissão aprovação modo",
|
|
planModeGroupLabel: "Modo plano",
|
|
planModeSearchKeywords: "plano planejamento modo plano",
|
|
fastModeGroupLabel: "Rápido",
|
|
fastModeSearchKeywords: "rápido velocidade baixa latência",
|
|
settingOn: "Ligado",
|
|
settingOff: "Desligado",
|
|
},
|
|
},
|
|
composer: {
|
|
placeholders: {
|
|
desktop: "Envie uma mensagem ao agente, marque @files ou use /commands e /skills",
|
|
mobile: "Mensagem, @files, /commands",
|
|
fallback: "Mensagem...",
|
|
terminal: "Prompt",
|
|
},
|
|
input: {
|
|
accessibilityLabel: "Enviar mensagem ao agente...",
|
|
terminalAccessibilityLabel: "Terminal prompt",
|
|
focusHint: "{{shortcut}} para focar",
|
|
addAttachment: "Adicionar anexo",
|
|
interruptAgent: "Interromper agente",
|
|
queueMessage: "Enfileirar mensagem",
|
|
sendAndInterrupt: "Enviar e interromper",
|
|
sendAndSteer: "Enviar e orientar",
|
|
sendMessage: "Enviar mensagem",
|
|
queue: "Fila",
|
|
send: "Enviar",
|
|
},
|
|
cancel: {
|
|
cancelingAgent: "Cancelando agente",
|
|
stopAgent: "Parar agente",
|
|
interrupt: "Interromper",
|
|
},
|
|
voice: {
|
|
enableVoiceMode: "Ativar modo de voz",
|
|
voiceMode: "Modo de voz",
|
|
unmuteVoiceMode: "Ativar som do modo de voz",
|
|
muteVoiceMode: "Silenciar modo de voz",
|
|
stopDictation: "Parar ditado",
|
|
startDictation: "Iniciar ditado",
|
|
unmuteVoice: "Ativar som da voz",
|
|
muteVoice: "Silenciar voz",
|
|
dictation: "Ditado",
|
|
interruptBeforeVoice: "Interrompa o agente antes de iniciar o modo de voz",
|
|
},
|
|
attachments: {
|
|
addImage: "Adicionar imagem",
|
|
pasteImage: "Colar imagem",
|
|
addFile: "Enviar arquivo",
|
|
addIssueOrPr: "Adicionar issue ou PR",
|
|
addIssueOrPr_mr: "Adicionar issue ou MR",
|
|
dropImagesHere: "Solte imagens aqui",
|
|
dropFilesHere: "Solte arquivos aqui",
|
|
editQueuedMessage: "Editar mensagem na fila",
|
|
sendQueuedMessageNow: "Enviar mensagem da fila agora",
|
|
openImage: "Abrir anexo de imagem",
|
|
removeImage: "Remover anexo de imagem",
|
|
removeFile: "Remover anexo de arquivo",
|
|
openGithub: "Abrir {{kind}} {{number}}",
|
|
removeGithub: "Remover {{kind}} {{number}}",
|
|
element: "Elemento",
|
|
openBrowserElement: "Abrir anexo de elemento do navegador",
|
|
removeBrowserElement: "Remover anexo de elemento do navegador",
|
|
openReview: "Abrir anexo de revisão",
|
|
removeReview: "Remover anexo de revisão",
|
|
},
|
|
errors: {
|
|
failedToSend: "Falha ao enviar mensagem",
|
|
failedToCreateAgent: "Falha ao criar agente",
|
|
noHostSelected: "Nenhum host selecionado",
|
|
initialPromptRequired: "O prompt inicial é obrigatório",
|
|
alreadyLoading: "Já está carregando",
|
|
uploadFailed: "Falha ao enviar arquivo",
|
|
noClipboardImage: "Não há imagem na área de transferência",
|
|
pasteImageFailed: "Falha ao colar a imagem",
|
|
fileTooLarge: "{{fileName}} é grande demais (máximo {{size}})",
|
|
},
|
|
clientCommands: {
|
|
archiveAgent: "Arquivar o agente atual",
|
|
freshDraft: "Arquivar este agente e iniciar um novo rascunho",
|
|
},
|
|
github: {
|
|
searching: "Buscando...",
|
|
noResults: "Nenhum resultado encontrado.",
|
|
searchPlaceholder: "Buscar issues e PRs...",
|
|
searchPlaceholder_mr: "Buscar issues e MRs...",
|
|
title: "Anexar issue ou PR",
|
|
title_mr: "Anexar issue ou MR",
|
|
},
|
|
},
|
|
agentControls: {
|
|
provider: {
|
|
fallback: "Provedor",
|
|
select: "Selecionar provedor do agente",
|
|
},
|
|
thinking: {
|
|
title: "Raciocínio",
|
|
unknown: "Desconhecido",
|
|
extraHigh: "Extra alto",
|
|
select: "Selecionar opção de raciocínio",
|
|
selectWithValue: "Selecionar opção de raciocínio ({{value}})",
|
|
},
|
|
model: {
|
|
unknown: "Modelo desconhecido",
|
|
},
|
|
features: {
|
|
title: "Recursos",
|
|
open: "Abrir recursos do agente",
|
|
on: "Ativado",
|
|
off: "Desativado",
|
|
},
|
|
mode: {
|
|
title: "Modo",
|
|
searchPlaceholder: "Buscar modos...",
|
|
selectWithValue: "Selecionar modo do agente ({{value}})",
|
|
},
|
|
hints: {
|
|
thinking: "Modo de raciocínio",
|
|
model: "Alterar modelo",
|
|
mode: "Alterar modo de permissão",
|
|
},
|
|
},
|
|
agentStream: {
|
|
empty: "Comece a conversar com este agente...",
|
|
scrollToBottom: "Rolar para o fim",
|
|
historyLoadFailed: "Não foi possível carregar o histórico do agente",
|
|
permission: {
|
|
plan: "Plano",
|
|
required: "Permissão necessária",
|
|
deny: "Negar",
|
|
accept: "Aceitar",
|
|
implement: "Implementar",
|
|
question: "Como você quer prosseguir?",
|
|
proposedPlan: "Plano proposto",
|
|
},
|
|
},
|
|
agentPanel: {
|
|
states: {
|
|
notFound: "Agente não encontrado",
|
|
failedToLoad: "Falha ao carregar agente",
|
|
reconnecting: "Reconectando",
|
|
timelineSyncFailed: "Não foi possível atualizar o histórico do agente. Tentando novamente…",
|
|
archivingTitle: "Arquivando agente...",
|
|
archivingSubtitle: "Aguarde enquanto arquivamos este agente.",
|
|
},
|
|
unavailable: {
|
|
selectedHost: "Host selecionado",
|
|
unknownHost:
|
|
"Não é possível abrir este agente porque {{serverLabel}} não está configurado neste dispositivo.",
|
|
addHost:
|
|
"Adicione o host nas Configurações ou abra um agente em um servidor configurado para continuar.",
|
|
preparingSession: "Preparando sessão de {{serverLabel}}...",
|
|
connecting: "Conectando a {{serverLabel}}...",
|
|
showSoon: "Mostraremos este agente em instantes.",
|
|
showWhenOnline: "Mostraremos este agente quando o host estiver online.",
|
|
reconnectingTo: "Reconectando a {{serverLabel}}...",
|
|
showAgainWhenReachable:
|
|
"Mostraremos este agente novamente assim que o host estiver acessível.",
|
|
},
|
|
archived: {
|
|
callout: "Este agente está arquivado",
|
|
unarchive: "Desarquivar",
|
|
},
|
|
},
|
|
sessions: {
|
|
title: "Histórico de agentes",
|
|
empty: "Nenhuma sessão ainda",
|
|
noMatches: "Nenhuma sessão corresponde",
|
|
tooManyMatches: "Muitos resultados — refine a busca",
|
|
hostLoadFailed: "{{host}}: Não foi possível carregar o histórico",
|
|
searchPlaceholder: "Buscar no histórico",
|
|
actions: {
|
|
loadMore: "Carregar mais",
|
|
clearSearch: "Limpar busca",
|
|
},
|
|
},
|
|
agentList: {
|
|
fallbackTitle: "Nova sessão",
|
|
dateSections: {
|
|
recent: "Recentes",
|
|
today: "Hoje",
|
|
yesterday: "Ontem",
|
|
thisWeek: "Esta semana",
|
|
thisMonth: "Este mês",
|
|
older: "Mais antigas",
|
|
},
|
|
status: {
|
|
initializing: "Iniciando",
|
|
idle: "Ocioso",
|
|
running: "Em execução",
|
|
error: "Erro",
|
|
closed: "Fechada",
|
|
},
|
|
badges: {
|
|
archived: "Arquivado",
|
|
pending: "{{count}} pendente(s)",
|
|
attention: "Atenção",
|
|
},
|
|
archiveSheet: {
|
|
hostOffline: "Host offline",
|
|
runningAgent: "Este agente ainda está em execução. Arquivá-lo interromperá o agente.",
|
|
archive: "Arquivar",
|
|
},
|
|
},
|
|
message: {
|
|
diagram: {
|
|
diagram: "Diagrama",
|
|
zoomIn: "Aproximar",
|
|
zoomOut: "Afastar",
|
|
resetZoom: "Redefinir visualização",
|
|
viewSource: "Ver fonte",
|
|
viewDiagram: "Ver diagrama",
|
|
},
|
|
actions: {
|
|
copyCode: "Copiar código",
|
|
copyTurn: "Copiar turno",
|
|
copyMessage: "Copiar mensagem",
|
|
forkMenu: "Bifurcar mensagem",
|
|
forkInNewTab: "Bifurcar em uma nova aba",
|
|
forkInNewWorkspace: "Bifurcar em um novo workspace",
|
|
forkUnavailable: "Atualize o host para usar isto.",
|
|
forkMissingWorkspace: "Este agente não está em um workspace.",
|
|
forkFailed: "Falha ao bifurcar o chat",
|
|
openFile: "Abrir arquivo",
|
|
copied: "Copiado",
|
|
},
|
|
attachments: {
|
|
dismissImage: "Dispensar imagem",
|
|
closeImage: "Fechar imagem",
|
|
imageLoadFailed: "Não foi possível carregar a imagem",
|
|
imageUnavailable: "Imagem indisponível",
|
|
imagePreviewUnavailable: "Prévia da imagem indisponível.",
|
|
imagePreviewLoadFailed: "Não foi possível carregar a prévia da imagem.",
|
|
review: "Revisão",
|
|
commentsOne: "1 comentário",
|
|
commentsMany: "{{count}} comentários",
|
|
textAttachment: "Anexo de texto",
|
|
text: "Texto",
|
|
file: "Arquivo",
|
|
},
|
|
speak: {
|
|
header: "Falou",
|
|
},
|
|
activity: {
|
|
details: "Detalhes",
|
|
},
|
|
dictation: {
|
|
start: "Iniciar ditado por voz",
|
|
cancel: "Cancelar ditado",
|
|
retry: "Tentar ditado novamente",
|
|
insert: "Inserir transcrição",
|
|
insertAndSend: "Inserir transcrição e enviar",
|
|
failed: "Falha no ditado: {{error}}",
|
|
failedRetry: "Falha no ditado. Toque para tentar novamente.",
|
|
},
|
|
question: {
|
|
submit: "Enviar",
|
|
next: "Próximo",
|
|
answerPlaceholder: "Digite sua resposta...",
|
|
otherPlaceholder: "Outro...",
|
|
},
|
|
todo: {
|
|
title: "Tarefas",
|
|
empty: "Nenhuma tarefa ainda.",
|
|
tasksProgress: "{{completed}}/{{total}} tarefas",
|
|
activity: {
|
|
created: "{{count}} tarefas criadas",
|
|
added: "Adicionada",
|
|
started: "Iniciada",
|
|
completed: "Concluída",
|
|
reopened: "Reaberta",
|
|
},
|
|
},
|
|
compaction: {
|
|
loading: "Compactando...",
|
|
auto: "Contexto compactado automaticamente",
|
|
manual: "Contexto compactado manualmente",
|
|
withTokens: "Contexto compactado ({{tokens}}K tokens)",
|
|
completed: "Contexto compactado",
|
|
},
|
|
},
|
|
importSession: {
|
|
title: "Importar sessão",
|
|
filters: {
|
|
all: "Tudo",
|
|
},
|
|
status: {
|
|
connectHost: "Conecte-se a um host para importar sessões",
|
|
updateHost: "Atualize o host para importar sessões.",
|
|
noProviders: "Nenhum provedor importável está ativado.",
|
|
loading: "Carregando sessões recentes...",
|
|
failedAll: "Não foi possível carregar sessões recentes.",
|
|
failedProviders: "Não foi possível carregar sessões de {{providers}}.",
|
|
failedImport: "Não foi possível importar a sessão selecionada.",
|
|
},
|
|
actions: {
|
|
refresh: "Atualizar sessões",
|
|
},
|
|
preview: {
|
|
untitledSession: "Sessão sem título",
|
|
noPrompt: "Nenhuma prévia de prompt",
|
|
},
|
|
empty: {
|
|
noRecent: "Nenhuma sessão recente para importar.",
|
|
alreadyImported: "Todas as sessões recentes já foram importadas.",
|
|
noProviderSessions: "Nenhuma sessão de {{provider}} encontrada.",
|
|
},
|
|
row: {
|
|
importing: "Importando...",
|
|
},
|
|
},
|
|
workspace: {
|
|
route: {
|
|
loading: "Carregando workspace",
|
|
connecting: "Conectando",
|
|
hostOffline: "{{hostName}} está offline",
|
|
cannotReachHost: "Não é possível acessar {{hostName}}",
|
|
hostStatus: "Status do host: {{status}}",
|
|
needsHostUpgrade: "Atualize o host para restaurar este workspace",
|
|
manageHost: "Gerenciar host",
|
|
recovery: {
|
|
archivedTitle: "Workspace arquivado",
|
|
restoreDescription:
|
|
"{{workspaceName}} foi arquivado e sua worktree foi removida. Restaure a branch {{branch}} para abri-lo novamente.",
|
|
unarchiveDescription:
|
|
"{{workspaceName}} está arquivado. Desarquive-o para abri-lo novamente.",
|
|
restoreAction: "Restaurar",
|
|
unarchiveAction: "Desarquivar",
|
|
restoringTitle: "Restaurando workspace",
|
|
restoringAction: "Restaurando...",
|
|
unavailableTitle: "Workspace indisponível",
|
|
checkFailedTitle: "Não foi possível verificar o workspace",
|
|
},
|
|
},
|
|
hoverCard: {
|
|
scriptsAccessibility: "Scripts do workspace",
|
|
copyPath: "Copiar caminho",
|
|
copyBranchName: "Copiar nome da branch",
|
|
copied: "Copiado",
|
|
},
|
|
fileActions: {
|
|
openFile: "Abrir arquivo",
|
|
copyPath: "Copiar caminho",
|
|
copyRelativePath: "Copiar caminho relativo",
|
|
revealIn: "Mostrar no {{target}}",
|
|
download: "Baixar",
|
|
addToChat: "Adicionar ao chat",
|
|
moreActions: "Mais ações",
|
|
newFile: "Novo arquivo",
|
|
newFolder: "Nova pasta",
|
|
collapseFolder: "Recolher pasta",
|
|
rename: "Renomear",
|
|
duplicate: "Duplicar",
|
|
revert: "Descartar alterações",
|
|
delete: "Excluir",
|
|
confirmDelete: {
|
|
fileTitle: "Excluir arquivo?",
|
|
folderTitle: "Excluir pasta?",
|
|
message: '"{{name}}" será excluído permanentemente.',
|
|
confirm: "Excluir",
|
|
cancel: "Cancelar",
|
|
},
|
|
confirmRevert: {
|
|
title: "Descartar alterações?",
|
|
message: 'As alterações em "{{name}}" serão descartadas permanentemente.',
|
|
confirm: "Descartar",
|
|
cancel: "Cancelar",
|
|
failed: "Falha ao descartar alterações",
|
|
},
|
|
},
|
|
fileExplorer: {
|
|
sort: {
|
|
name: "Nome",
|
|
modified: "Modificado",
|
|
size: "Tamanho",
|
|
},
|
|
context: {
|
|
size: "Tamanho",
|
|
modified: "Modificado",
|
|
},
|
|
actions: {
|
|
back: "Voltar",
|
|
retry: "Tentar novamente",
|
|
refresh: "Atualizar arquivos",
|
|
refreshing: "Atualizando arquivos",
|
|
hideHiddenFiles: "Ocultar arquivos ocultos",
|
|
showHiddenFiles: "Mostrar arquivos ocultos",
|
|
},
|
|
empty: {
|
|
noFiles: "Nenhum arquivo",
|
|
noVisibleFiles: "Nenhum arquivo visível",
|
|
},
|
|
states: {
|
|
unavailable: "Workspace indisponível",
|
|
loading: "Carregando arquivos...",
|
|
},
|
|
errors: {
|
|
failedToListDirectory: "Falha ao listar diretório",
|
|
createFailed: "Falha ao criar entrada",
|
|
renameFailed: "Falha ao renomear entrada",
|
|
duplicateFailed: "Falha ao duplicar entrada",
|
|
revealFailed: "Falha ao mostrar entrada",
|
|
deleteFailed: "Falha ao excluir entrada",
|
|
},
|
|
draft: {
|
|
filePlaceholder: "Nome do arquivo",
|
|
folderPlaceholder: "Nome da pasta",
|
|
},
|
|
},
|
|
setup: {
|
|
descriptor: {
|
|
label: "Configuração",
|
|
completed: "Configuração concluída",
|
|
failed: "Falha na configuração",
|
|
workspace: "Configuração do workspace",
|
|
},
|
|
status: {
|
|
running: "Em execução",
|
|
completed: "Concluído",
|
|
failed: "Falhou",
|
|
waiting: "Aguardando saída da configuração",
|
|
},
|
|
waiting: "Configurando workspace...",
|
|
empty: {
|
|
noCommands: "Nenhum comando de configuração foi executado para este workspace.",
|
|
},
|
|
accessibility: {
|
|
noCommands: "Nenhum comando de configuração foi executado para este workspace",
|
|
log: "Log de configuração do workspace",
|
|
},
|
|
log: {
|
|
noOutput: "Nenhuma saída",
|
|
},
|
|
},
|
|
browser: {
|
|
unavailable: {
|
|
title: "O navegador é exclusivo do desktop",
|
|
subtitle: "Abra este workspace no Electron para usar o navegador integrado.",
|
|
},
|
|
session: "Sessão do navegador {{browserId}}",
|
|
controls: {
|
|
back: "Voltar",
|
|
forward: "Avançar",
|
|
stopLoading: "Parar carregamento",
|
|
refresh: "Atualizar",
|
|
browserUrl: "URL do navegador",
|
|
enterUrl: "Inserir URL",
|
|
openDevTools: "Abrir ferramentas de desenvolvedor do navegador",
|
|
cancelSelector: "Cancelar seletor de elemento",
|
|
annotateElement: "Anotar elemento",
|
|
screenshotElement: "Capturar elemento",
|
|
screenshotCopied: "Captura copiada para a área de transferência",
|
|
elementCopied: "Elemento copiado para a área de transferência",
|
|
screenshotFailed: "Não foi possível copiar a captura",
|
|
selectorLoading: "Aguarde o carregamento da página terminar",
|
|
selectorFailed: "Não foi possível iniciar o seletor de elemento",
|
|
},
|
|
annotate: {
|
|
title: "Anotar elemento",
|
|
placeholder: "Mensagem ao agente sobre este elemento…",
|
|
submit: "Anexar",
|
|
cancel: "Cancelar",
|
|
},
|
|
devices: {
|
|
label: "Tamanho do dispositivo",
|
|
responsive: "Responsivo",
|
|
},
|
|
errors: {
|
|
failedToLoad: "Falha ao carregar página",
|
|
invalidUrl: "URL de navegador inválida",
|
|
unsupportedProtocol: "URL de navegador sem suporte bloqueada: {{protocol}}",
|
|
},
|
|
},
|
|
terminal: {
|
|
hostDisconnected: "Host não está conectado",
|
|
updateHost: "Atualize o host para usar o renderizador de terminal nativo.",
|
|
unableToSubscribe: "Não foi possível assinar o terminal",
|
|
},
|
|
tabs: {
|
|
loading: "Carregando...",
|
|
modified: "Alterações não salvas",
|
|
loadingAgentTitle: "Carregando título do agente",
|
|
emptyPane: "Nenhuma aba neste painel.",
|
|
fallback: {
|
|
newAgent: "Novo agente",
|
|
setup: "Configuração",
|
|
workspaceSetup: "Configuração do workspace",
|
|
terminal: "Terminal",
|
|
browser: "Navegador",
|
|
agent: "Agente",
|
|
workspace: "Workspace",
|
|
},
|
|
switcher: {
|
|
trigger: "Alternar abas ({{count}} abertas)",
|
|
title: "Alternar aba",
|
|
searchPlaceholder: "Buscar abas",
|
|
},
|
|
menu: {
|
|
openFor: "Abrir menu de {{label}}",
|
|
copyResumeCommand: "Copiar comando de retomada",
|
|
copyAgentId: "Copiar ID do agente",
|
|
copyTerminalId: "Copiar ID do terminal",
|
|
copyFilePath: "Copiar caminho do arquivo",
|
|
rename: "Renomear",
|
|
closeAbove: "Fechar abas acima",
|
|
closeBelow: "Fechar abas abaixo",
|
|
closeLeft: "Fechar à esquerda",
|
|
closeRight: "Fechar à direita",
|
|
closeOthers: "Fechar outras abas",
|
|
reloadAgent: "Recarregar agente",
|
|
reloadAgentTooltip: "Recarregue o agente para atualizar skills, MCPs ou status de login.",
|
|
close: "Fechar",
|
|
renameTerminal: "Renomear terminal",
|
|
renameAgent: "Renomear agente",
|
|
},
|
|
actions: {
|
|
newTab: "Nova aba",
|
|
newAgent: "Novo agente",
|
|
newTerminal: "Novo terminal",
|
|
preparingTerminal: "Preparando aba de terminal",
|
|
preparingTerminalTooltip: "Preparando terminal...",
|
|
newBrowser: "Novo navegador",
|
|
maximizePane: "Maximizar painel",
|
|
restorePane: "Restaurar painel",
|
|
exitFocusMode: "Sair do modo de foco",
|
|
splitRight: "Dividir painel à direita",
|
|
splitDown: "Dividir painel abaixo",
|
|
changes: "Alterações",
|
|
files: "Arquivos",
|
|
pullRequest: "Pull request",
|
|
terminalProfilesMenu: "Perfis de terminal",
|
|
editTerminalProfiles: "Editar perfis…",
|
|
},
|
|
explorer: {
|
|
open: "Abrir explorador",
|
|
close: "Fechar explorador",
|
|
toggle: "Alternar explorador",
|
|
changes: "Alterações",
|
|
files: "Arquivos",
|
|
},
|
|
toasts: {
|
|
copyFailed: "Falha ao copiar",
|
|
agentIdCopiedLabel: "ID do agente",
|
|
terminalIdCopiedLabel: "ID do terminal",
|
|
resumeCommandCopiedLabel: "comando de retomada",
|
|
filePathCopiedLabel: "Caminho do arquivo",
|
|
resumeIdUnavailable: "ID de retomada indisponível",
|
|
resumeCommandUnavailable: "Comando de retomada indisponível",
|
|
reloadingAgent: "Recarregando agente...",
|
|
reloadedAgent: "Agente recarregado",
|
|
failedToReloadAgent: "Falha ao recarregar agente",
|
|
failedToCloseAgent: "Falha ao fechar agente",
|
|
},
|
|
confirmations: {
|
|
unsavedTitle: "Alterações não salvas",
|
|
unsavedMessage: "Esta aba tem alterações não salvas. Fechá-la descartará o rascunho.",
|
|
closeWithoutSaving: "Fechar sem salvar",
|
|
closePaneTitle: "Fechar painel?",
|
|
bulkUnsaved:
|
|
"{{count}} aba(s) têm alterações não salvas. Fechar descartará esses rascunhos.",
|
|
close: "Fechar",
|
|
cancel: "Cancelar",
|
|
archive: "Arquivar",
|
|
closeTerminalTitle: "Fechar terminal?",
|
|
closeTerminalMessage:
|
|
"Qualquer processo em execução neste terminal será interrompido imediatamente.",
|
|
archiveRunningAgentTitle: "Arquivar agente em execução?",
|
|
archiveRunningAgentMessage:
|
|
"Este agente ainda está em execução. Arquivá-lo interromperá o agente e fechará a aba.",
|
|
closeTabsLeftTitle: "Fechar abas à esquerda?",
|
|
closeTabsRightTitle: "Fechar abas à direita?",
|
|
closeOtherTabsTitle: "Fechar outras abas?",
|
|
bulk: {
|
|
all: "Isso vai arquivar {{agents}} agente(s), fechar {{terminals}} terminal(ais) e fechar {{tabs}} aba(s). Qualquer processo em execução em um terminal fechado será interrompido imediatamente.",
|
|
agentsAndTerminals:
|
|
"Isso vai arquivar {{agents}} agente(s) e fechar {{terminals}} terminal(ais). Qualquer processo em execução em um terminal fechado será interrompido imediatamente.",
|
|
terminalsAndTabs:
|
|
"Isso vai fechar {{terminals}} terminal(ais) e fechar {{tabs}} aba(s). Qualquer processo em execução em um terminal fechado será interrompido imediatamente.",
|
|
agentsAndTabs: "Isso vai arquivar {{agents}} agente(s) e fechar {{tabs}} aba(s).",
|
|
terminals:
|
|
"Isso vai fechar {{terminals}} terminal(ais). Qualquer processo em execução em um terminal fechado será interrompido imediatamente.",
|
|
tabs: "Isso vai fechar {{tabs}} aba(s).",
|
|
agents: "Isso vai arquivar {{agents}} agente(s).",
|
|
},
|
|
},
|
|
},
|
|
header: {
|
|
actions: {
|
|
workspaceActions: "Ações do workspace",
|
|
newAgent: "Novo agente",
|
|
newTerminal: "Novo terminal",
|
|
newBrowser: "Nova aba de navegador",
|
|
importSession: "Importar sessão",
|
|
copyPath: "Copiar caminho do workspace",
|
|
copyBranchName: "Copiar nome da branch",
|
|
showSetup: "Mostrar configuração",
|
|
},
|
|
toasts: {
|
|
workspacePathUnavailable: "O caminho do workspace ainda não está disponível",
|
|
branchNameUnavailable: "Nome da branch indisponível",
|
|
terminalQueued: "Preparando workspace, abrindo terminal quando estiver pronto...",
|
|
workspacePathCopiedLabel: "Caminho do workspace",
|
|
branchNameCopiedLabel: "Nome da branch",
|
|
},
|
|
},
|
|
scripts: {
|
|
title: "Scripts",
|
|
actions: {
|
|
chooseUrl: "Escolher URL",
|
|
copyUrl: "Copiar URL",
|
|
openService: "Ver serviço",
|
|
restart: "Reiniciar",
|
|
run: "Executar",
|
|
stop: "Parar",
|
|
view: "Ver terminal",
|
|
},
|
|
accessibility: {
|
|
trigger: "Scripts do workspace",
|
|
openService: "Ver serviço {{scriptName}}",
|
|
viewTerminal: "Ver terminal de {{scriptName}}",
|
|
runScript: "Executar script {{scriptName}}",
|
|
stopScript: "Parar {{scriptName}}",
|
|
restartScript: "Reiniciar {{scriptName}}",
|
|
copyUrl: "Copiar URL de {{scriptName}}",
|
|
chooseUrl: "Escolher URL para {{scriptName}}",
|
|
script: "script {{scriptName}}",
|
|
},
|
|
routes: {
|
|
public: "Proxy reverso",
|
|
paseo: "Memorable",
|
|
direct: "Direta",
|
|
},
|
|
states: {
|
|
exitCode: "saída {{code}}",
|
|
startFailed: "Falha ao iniciar {{scriptName}}",
|
|
stopFailed: "Falha ao parar {{scriptName}}",
|
|
},
|
|
},
|
|
git: {
|
|
actions: {
|
|
moreOptions: "Mais opções",
|
|
moreActions: "Mais ações",
|
|
commit: {
|
|
label: "Commit",
|
|
pending: "Fazendo commit...",
|
|
success: "Commit concluído",
|
|
},
|
|
pull: {
|
|
label: "Pull",
|
|
pending: "Fazendo pull...",
|
|
success: "Pull concluído",
|
|
},
|
|
push: {
|
|
label: "Push",
|
|
pending: "Fazendo push...",
|
|
success: "Push concluído",
|
|
},
|
|
pullAndPush: {
|
|
label: "Pull e push",
|
|
pending: "Fazendo pull e push...",
|
|
success: "Pull e push concluídos",
|
|
},
|
|
viewPr: "Ver PR",
|
|
createPr: {
|
|
label: "Criar PR",
|
|
pending: "Criando PR...",
|
|
success: "PR criada",
|
|
label_mr: "Criar MR",
|
|
pending_mr: "Criando MR...",
|
|
success_mr: "MR criada",
|
|
},
|
|
mergeBranch: {
|
|
label: "Fazer merge localmente",
|
|
pending: "Fazendo merge...",
|
|
success: "Mergeada",
|
|
},
|
|
mergeFromBase: {
|
|
label: "Atualizar a partir de {{baseRef}}",
|
|
pending: "Atualizando...",
|
|
success: "Atualizado",
|
|
},
|
|
archive: {
|
|
label: "Arquivar workspace",
|
|
pending: "Arquivando...",
|
|
success: "Arquivado",
|
|
},
|
|
mergePr: {
|
|
squash: "Merge",
|
|
merge: "Merge",
|
|
rebase: "Merge",
|
|
pending: "Fazendo merge da PR...",
|
|
success: "PR mergeada",
|
|
squash_mr: "Merge",
|
|
merge_mr: "Merge",
|
|
rebase_mr: "Merge",
|
|
pending_mr: "Fazendo merge da MR...",
|
|
success_mr: "MR mergeada",
|
|
},
|
|
viewPr_mr: "Ver MR",
|
|
autoMerge: {
|
|
enableSquash: "Merge automático",
|
|
enableMerge: "Merge automático",
|
|
enableRebase: "Merge automático",
|
|
enabled: "Merge automático ativado",
|
|
enabling: "Ativando merge automático...",
|
|
disabling: "Desativando merge automático...",
|
|
disabled: "Merge automático desativado",
|
|
},
|
|
unavailable: {
|
|
viewPrNoForge:
|
|
"Ver {{noun}} não está disponível agora porque o {{brand}} não está conectado",
|
|
pullNoRemote:
|
|
"Pull não está disponível aqui porque esta branch ainda não está conectada a um remoto",
|
|
pullDirty:
|
|
"Pull não está disponível enquanto há alterações locais. Faça commit ou stash primeiro",
|
|
pullUpToDate: "Pull não está disponível porque esta branch já está atualizada",
|
|
pushNoRemote:
|
|
"Push não está disponível aqui porque esta branch ainda não está conectada a um remoto",
|
|
pushBehind:
|
|
"Push ainda não está disponível porque há alterações mais recentes para trazer primeiro",
|
|
pushNothing: "Push não está disponível porque não há nada novo para enviar",
|
|
pullAndPushNoRemote:
|
|
"Pull e push não estão disponíveis aqui porque esta branch ainda não está conectada a um remoto",
|
|
pullAndPushDirty:
|
|
"Pull e push não estão disponíveis enquanto há alterações locais. Faça commit ou stash primeiro",
|
|
pullAndPushNoIncoming:
|
|
"Pull e push não estão disponíveis porque não há alterações de entrada para puxar primeiro",
|
|
pullAndPushInSync:
|
|
"Pull e push não estão disponíveis porque esta branch já está sincronizada",
|
|
pullAndPushNothingToPush:
|
|
"Pull e push não estão disponíveis porque não há nada novo para enviar depois do pull",
|
|
createPrNoForge:
|
|
"Criar {{noun}} não está disponível agora porque o {{brand}} não está conectado",
|
|
createPrNoCommits:
|
|
"Criar PR não está disponível porque esta branch ainda não tem commits novos",
|
|
mergeNoBase: "Merge não está disponível porque não foi possível determinar a branch base",
|
|
mergeDirty:
|
|
"Merge não está disponível enquanto há alterações locais. Faça commit ou stash primeiro",
|
|
mergeNothing:
|
|
"Merge não está disponível porque esta branch ainda não tem nada novo para merge",
|
|
updateNoBase:
|
|
"Atualizar não está disponível porque não foi possível determinar a branch base",
|
|
updateDirty:
|
|
"Atualizar não está disponível enquanto há alterações locais. Faça commit ou stash primeiro",
|
|
updateCurrent:
|
|
"Atualizar não está disponível porque esta branch já está atualizada com {{baseRef}}",
|
|
mergePrNoGithub:
|
|
"Merge da PR não está disponível agora porque o GitHub não está conectado",
|
|
archiveNotWorktree:
|
|
"Arquivar não está disponível aqui porque este workspace não foi criado como um worktree do Paseo",
|
|
mergePrNoForge:
|
|
"Merge da {{noun}} não está disponível agora porque o {{brand}} não está conectado",
|
|
mergePrMissing: "Merge da PR não está disponível porque ainda não há uma pull request",
|
|
mergePrDraft: "Merge da PR não está disponível porque a pull request ainda é um rascunho",
|
|
mergePrMerged: "Merge da PR não está disponível porque a pull request já foi mergeada",
|
|
mergePrClosed: "Merge da PR não está disponível porque a pull request está fechada",
|
|
mergePrConflicts: "Merge da PR não está disponível porque a pull request tem conflitos",
|
|
mergePrQueue:
|
|
"Merge da PR não está disponível aqui porque este repositório usa uma merge queue",
|
|
mergePrNotReady:
|
|
"Merge da {{noun}} não está disponível até o {{brand}} informar que a {{noun}} está pronta para merge",
|
|
autoMergeCannotDisable:
|
|
"O merge automático está ativado, mas esta conta não pode desativá-lo",
|
|
},
|
|
toasts: {
|
|
failedCommit: "Falha ao fazer commit",
|
|
failedPull: "Falha ao fazer pull",
|
|
failedPush: "Falha ao fazer push",
|
|
failedPullAndPush: "Falha ao fazer pull e push",
|
|
failedCreatePr: "Falha ao criar PR",
|
|
failedMergePr: "Falha ao fazer merge da PR",
|
|
failedEnableAutoMerge: "Falha ao ativar merge automático",
|
|
failedDisableAutoMerge: "Falha ao desativar merge automático",
|
|
baseRefUnavailable: "Ref base indisponível",
|
|
failedMerge: "Falha ao fazer merge",
|
|
failedMergeFromBase: "Falha ao fazer merge da base",
|
|
},
|
|
archiveWarning: {
|
|
title: 'Arquivar "{{workspaceName}}"?',
|
|
confirm: "Arquivar",
|
|
cancel: "Cancelar",
|
|
uncommittedChanges: "Alterações sem commit",
|
|
uncommittedChangesWithDiff: "Alterações sem commit ({{diffStat}})",
|
|
addedLine: "{{count}} linha adicionada",
|
|
addedLines: "{{count}} linhas adicionadas",
|
|
deletedLine: "{{count}} linha removida",
|
|
deletedLines: "{{count}} linhas removidas",
|
|
unpushedCommit: "{{count}} commit não enviado",
|
|
unpushedCommits: "{{count}} commits não enviados",
|
|
},
|
|
},
|
|
diff: {
|
|
openChangesTab: "Abrir a aba Alterações",
|
|
closeChangesTab: "Fechar a aba Alterações",
|
|
binaryFile: "Arquivo binário",
|
|
tooLarge: "Diff grande demais para exibir",
|
|
previewTooLargeTitle: "Este diff é grande demais para visualizar",
|
|
previewTooLargeDescription: "Reduza a comparação para visualizá-la aqui",
|
|
unified: "Diff unificado",
|
|
split: "Diff lado a lado",
|
|
switchToUnified: "Alternar para diff unificado",
|
|
switchToSplit: "Alternar para diff lado a lado",
|
|
showTreeView: "Mostrar árvore de pastas",
|
|
hideTreeView: "Ocultar árvore de pastas",
|
|
options: "Opções do diff",
|
|
hideWhitespace: "Ocultar espaços em branco",
|
|
showWhitespace: "Mostrar espaços em branco",
|
|
scrollLongLines: "Rolar linhas longas",
|
|
wrapLongLines: "Quebrar linhas longas",
|
|
collapseAllFolders: "Recolher todas as pastas",
|
|
expandAllFolders: "Expandir todas as pastas",
|
|
collapseAllFiles: "Recolher todos os arquivos",
|
|
expandAllFiles: "Expandir todos os arquivos",
|
|
refreshing: "Atualizando",
|
|
refresh: "Atualizar",
|
|
refreshState: "Atualizar estado do git e do {{brand}}",
|
|
failedRefresh: "Falha ao atualizar estado do git.",
|
|
emptyHiddenWhitespace: "Nenhuma alteração visível após ocultar espaços em branco",
|
|
emptyUncommitted: "Nenhuma alteração sem commit",
|
|
emptyAgainstBase: "Nenhuma alteração vs {{baseRef}}",
|
|
checkingRepository: "Verificando repositório...",
|
|
notRepository: "Não é um repositório git",
|
|
diffMode: "Modo de diff",
|
|
uncommitted: "Sem commit",
|
|
committed: "Com commit",
|
|
branchUnknown: "Desconhecido",
|
|
base: "base",
|
|
newFile: "Novo",
|
|
deletedFile: "Excluído",
|
|
modifiedFile: "Modificado",
|
|
commits: {
|
|
title: "Commits",
|
|
countLabel: "{{count}} commits do espaço de trabalho",
|
|
noneAhead: "Ainda não há commits à frente de {{baseRef}}",
|
|
fileDiffEmpty: "Nenhuma alteração para exibir",
|
|
fileDiffError: "Falha ao carregar diff do arquivo",
|
|
loading: "Carregando commits…",
|
|
loadError: "Falha ao carregar commits",
|
|
empty: "Ainda não há commits",
|
|
},
|
|
},
|
|
openInEditor: {
|
|
open: "Abrir",
|
|
chooseEditor: "Escolher editor",
|
|
openIn: "Abrir workspace em {{target}}",
|
|
openFileIn: "Abrir {{fileName}} em {{target}}",
|
|
failedOpen: "Falha ao abrir workspace",
|
|
},
|
|
pr: {
|
|
actions: {
|
|
viewPullRequest: "Ver",
|
|
openOn: "Abrir no {{brand}}",
|
|
},
|
|
checksSummary: {
|
|
passedLabel: "passou",
|
|
failedLabel: "falhou",
|
|
runningLabel: "em andamento",
|
|
passedAccessible: "Verificações aprovadas",
|
|
failedAccessible: "Verificações com falha",
|
|
runningAccessible: "Verificações em andamento",
|
|
},
|
|
sections: {
|
|
checks: "Verificações",
|
|
pipeline: "Pipeline",
|
|
reviews: "Revisões",
|
|
},
|
|
empty: {
|
|
noJobs: "Sem jobs",
|
|
loadingPipeline: "Carregando pipeline...",
|
|
pipelineJobsLoadFailed: "Não foi possível carregar os jobs do pipeline",
|
|
allowedToFail: "permitido falhar",
|
|
},
|
|
approvals: "{{given}} de {{required}} aprovações",
|
|
accessibility: {
|
|
pullRequest: "Pull request #{{number}}",
|
|
pullRequest_mr: "Merge request !{{number}}",
|
|
},
|
|
states: {
|
|
draft: "Rascunho",
|
|
merged: "Mergeada",
|
|
closed: "Fechada",
|
|
open: "Aberta",
|
|
},
|
|
activity: {
|
|
commented: "Comentou",
|
|
approved: "Aprovado",
|
|
requestedChanges: "Solicitou alterações",
|
|
reviewed: "Revisado",
|
|
},
|
|
time: {
|
|
justNow: "agora mesmo",
|
|
},
|
|
thread: {
|
|
discussion: "Tópico de discussão",
|
|
},
|
|
errors: {
|
|
statusLoadFailed: "Não foi possível carregar o status da pull request",
|
|
activityLoadFailed: "Não foi possível carregar a atividade da pull request",
|
|
},
|
|
},
|
|
forgeSetup: {
|
|
installCli: "Instale a CLI {{cli}} para usar os recursos do {{brand}}.",
|
|
signIn: "Execute {{command}} para usar os recursos do {{brand}}.",
|
|
generic: "Configure o {{brand}} neste host para usar seus recursos.",
|
|
},
|
|
},
|
|
},
|
|
sidebar: {
|
|
display: {
|
|
trigger: "Preferências de exibição",
|
|
heading: "Exibição",
|
|
grouping: {
|
|
label: "Agrupamento",
|
|
project: "Projeto",
|
|
status: "Status",
|
|
},
|
|
titleSource: {
|
|
label: "Título",
|
|
title: "Título",
|
|
branch: "Nome da branch",
|
|
},
|
|
show: {
|
|
label: "Mostrar",
|
|
branch: "Branch",
|
|
project: "Projeto",
|
|
host: "Host",
|
|
changeRequest: "Pull request",
|
|
checks: "Verificações",
|
|
services: "Serviços",
|
|
diff: "Estatísticas de diff",
|
|
timestamp: "Última atividade",
|
|
},
|
|
checks: {
|
|
iconAndText: "Ícone e texto",
|
|
icon: "Somente ícone",
|
|
none: "Oculto",
|
|
},
|
|
hostFilter: {
|
|
label: "Host",
|
|
all: "Todos os hosts",
|
|
},
|
|
},
|
|
pinned: {
|
|
title: "Fixados",
|
|
},
|
|
host: {
|
|
noHost: "Nenhum host",
|
|
switchTitle: "Trocar host",
|
|
searchPlaceholder: "Buscar hosts...",
|
|
},
|
|
actions: {
|
|
addProject: "Adicionar projeto",
|
|
newWorkspace: "Novo workspace",
|
|
hosts: "Hosts",
|
|
home: "Início",
|
|
settings: "Configurações",
|
|
closeSidebar: "Fechar barra lateral",
|
|
},
|
|
help: {
|
|
trigger: "Ajuda e suporte",
|
|
sectionHelp: "Ajuda",
|
|
diagnostics: "Executar diagnóstico",
|
|
shortcuts: "Atalhos de teclado",
|
|
reportIssue: "Relatar um problema",
|
|
discord: "Discord",
|
|
github: "Criar issue no GitHub",
|
|
whatsNew: "Novidades",
|
|
appName: "Paseo",
|
|
},
|
|
sections: {
|
|
sessions: "Histórico",
|
|
schedules: "Agendamentos",
|
|
},
|
|
worktreeSetup: {
|
|
title: "Configurar scripts de worktree",
|
|
description:
|
|
"Adicione comandos de configuração para que novos worktrees instalem dependências e se preparem automaticamente.",
|
|
openProjectSettings: "Abrir configurações do projeto",
|
|
},
|
|
project: {
|
|
actions: {
|
|
menu: "Ações do projeto",
|
|
openSettings: "Abrir configurações do projeto",
|
|
openNewWindow: "Abrir em nova janela",
|
|
openNewWindowFailed: "Não foi possível abrir uma nova janela",
|
|
openFolder: "Open in file manager",
|
|
openFolderFailed: "Couldn't open folder",
|
|
remove: "Remover projeto",
|
|
removing: "Removendo...",
|
|
},
|
|
confirmations: {
|
|
removeTitle: "Remover projeto?",
|
|
removeMessage:
|
|
'Remover "{{projectName}}" da barra lateral?\n\nOs arquivos no disco não serão alterados.',
|
|
removeConfirm: "Remover",
|
|
cancel: "Cancelar",
|
|
},
|
|
toasts: {
|
|
hostDisconnected: "Host não está conectado",
|
|
removeFailed: "Falha ao remover alguns workspaces",
|
|
updateHostToRemove: "Atualize o host para remover projetos.",
|
|
},
|
|
empty: {
|
|
title: "Nenhum projeto ainda",
|
|
description: "Adicione um projeto para começar",
|
|
},
|
|
},
|
|
workspace: {
|
|
status: {
|
|
serviceRunning: "Serviço {{name}} em execução",
|
|
serviceUnhealthy: "Serviço {{name}} com falha",
|
|
creating: "Criando...",
|
|
},
|
|
actions: {
|
|
menu: "Ações do workspace",
|
|
newWorkspace: "Novo workspace",
|
|
showMore: "Mostrar mais",
|
|
showLess: "Mostrar menos",
|
|
createWorkspaceFor: "Criar um novo workspace para {{projectName}}",
|
|
copyPath: "Copiar caminho",
|
|
copyBranchName: "Copiar nome da branch",
|
|
rename: "Renomear workspace",
|
|
pin: "Fixar no topo",
|
|
unpin: "Desafixar",
|
|
archive: "Arquivar",
|
|
archiveWorkspace: "Arquivar workspace",
|
|
hideFromSidebar: "Ocultar da barra lateral",
|
|
archiving: "Arquivando...",
|
|
hiding: "Ocultando...",
|
|
},
|
|
confirmations: {
|
|
hideTitle: "Ocultar workspace?",
|
|
hideMessage:
|
|
'Ocultar "{{workspaceName}}" da barra lateral?\n\nOs arquivos no disco não serão alterados.',
|
|
hideConfirm: "Ocultar",
|
|
cancel: "Cancelar",
|
|
},
|
|
rename: {
|
|
title: "Renomear workspace",
|
|
submit: "Renomear",
|
|
invalidBranchName: "Nome de branch inválido",
|
|
},
|
|
toasts: {
|
|
workspacePathUnavailable: "Caminho do workspace indisponível",
|
|
pathCopied: "Caminho copiado",
|
|
branchNameCopied: "Nome da branch copiado",
|
|
hostDisconnected: "Host não está conectado",
|
|
hideFailed: "Falha ao ocultar workspace",
|
|
archiveFailed: "Falha ao arquivar workspace",
|
|
},
|
|
},
|
|
},
|
|
newWorkspace: {
|
|
title: "Novo workspace",
|
|
create: "Criar",
|
|
isolation: {
|
|
local: "Local",
|
|
worktree: "Novo worktree",
|
|
label: "Isolamento",
|
|
},
|
|
fields: {
|
|
project: "Projeto",
|
|
base: "Base",
|
|
baseNotApplicable: "Não aplicável",
|
|
},
|
|
titlePlaceholder: "Título (opcional)",
|
|
errors: {
|
|
hostDisconnected: "Host não está conectado",
|
|
createWorktreeFailed: "Falha ao criar worktree",
|
|
composerStateRequired: "O estado do composer é obrigatório",
|
|
selectModel: "Selecione um modelo",
|
|
},
|
|
tooltips: {
|
|
project: "Choose the project",
|
|
host: "Choose the host",
|
|
isolation: "Choose the isolation level",
|
|
startingRef: "Escolha de onde começar",
|
|
launch: "Choose what to launch",
|
|
},
|
|
refPicker: {
|
|
startingRef: "Ref inicial",
|
|
intoBase: "em {{baseRef}}",
|
|
searching: "Buscando...",
|
|
noMatchingRefs: "Nenhuma ref correspondente.",
|
|
searchPlaceholder: "Buscar branches e PRs",
|
|
title: "Começar de",
|
|
},
|
|
launch: {
|
|
title: "What to launch",
|
|
chat: "Chat",
|
|
terminal: "Terminal",
|
|
manageProfiles: "Manage profiles",
|
|
submit: "Launch",
|
|
promptPlaceholder: "Prompt {{name}}",
|
|
commandPlaceholder: "Run a command, or leave empty for a blank terminal",
|
|
},
|
|
},
|
|
desktop: {
|
|
quitting: {
|
|
title: "Saindo do Paseo...",
|
|
detail: "Parando o daemon local.",
|
|
},
|
|
daemon: {
|
|
title: "Daemon",
|
|
status: {
|
|
title: "Status",
|
|
builtInOnly: "Apenas o daemon desktop integrado é exibido aqui",
|
|
running: "em execução",
|
|
notRunning: "não está em execução",
|
|
pid: "PID {{pid}}",
|
|
},
|
|
management: {
|
|
title: "Gerenciar daemon integrado",
|
|
hint: "Permitir que o Paseo inicie e pare o daemon integrado",
|
|
pauseTitle: "Pausar daemon integrado",
|
|
pauseMessage:
|
|
"Isso vai parar o daemon integrado imediatamente. Agentes e terminais em execução conectados ao daemon integrado serão interrompidos.",
|
|
pauseAndStop: "Pausar e parar",
|
|
registrationFailed:
|
|
"O daemon integrado foi iniciado, mas o Paseo não conseguiu salvar a conexão localhost. Desative e reative o gerenciamento do daemon ou adicione localhost manualmente.",
|
|
pausedStopFailed:
|
|
"O gerenciamento do daemon integrado foi pausado, mas o Paseo não conseguiu parar o daemon.",
|
|
updateFailed: "Não foi possível atualizar o gerenciamento do daemon integrado.",
|
|
},
|
|
keepRunning: {
|
|
title: "Manter daemon em execução ao sair",
|
|
hint: "O daemon continua em execução quando você sai do Paseo",
|
|
},
|
|
logs: {
|
|
title: "Arquivo de log",
|
|
modalTitle: "Logs do daemon",
|
|
unavailable: "Caminho do log indisponível",
|
|
empty: "(arquivo de log vazio)",
|
|
copied: "Caminho do log copiado.",
|
|
copyFailed: "Não foi possível copiar o caminho do log.",
|
|
open: "Abrir logs",
|
|
copyPath: "Copiar caminho",
|
|
},
|
|
fullStatus: {
|
|
title: "Status completo",
|
|
modalTitle: "Status do daemon",
|
|
hint: "Executa `paseo daemon status` e mostra a saída",
|
|
view: "Ver status",
|
|
copied: "Status copiado para a área de transferência.",
|
|
fetchFailed: "Falha ao buscar status do daemon: {{message}}",
|
|
},
|
|
advancedSettings: "Configurações avançadas",
|
|
openAdvancedSettings: "Abrir configurações avançadas do daemon",
|
|
versionMismatch:
|
|
"As versões do app e do daemon não coincidem. Atualize ambos para a mesma versão para a melhor experiência.",
|
|
loadFailed: "Não foi possível carregar o status do daemon desktop.",
|
|
},
|
|
updates: {
|
|
status: {
|
|
checking: "Verificando atualizações do app...",
|
|
installing: "Instalando atualização do app...",
|
|
upToDate: "O app está atualizado.",
|
|
upToDateWithLastChecked: "Atualizado. Última verificação às {{time}}.",
|
|
pending: "Avisaremos quando a atualização estiver pronta.",
|
|
pendingWithLastChecked:
|
|
"Avisaremos quando a atualização estiver pronta. Última verificação às {{time}}.",
|
|
pendingWithVersion: "Atualização encontrada: {{version}}. Baixando...",
|
|
pendingWithVersionAndLastChecked:
|
|
"Atualização encontrada: {{version}}. Baixando... Última verificação às {{time}}.",
|
|
availableWithVersion: "Atualização pronta: {{version}}",
|
|
availableWithVersionAndLastChecked:
|
|
"Atualização pronta: {{version}}. Última verificação às {{time}}.",
|
|
available: "Há uma atualização do app pronta para instalar.",
|
|
availableWithLastChecked:
|
|
"Há uma atualização do app pronta para instalar. Última verificação às {{time}}.",
|
|
installed: "Atualização do app instalada. Reinicialização obrigatória.",
|
|
failed: "Falha ao atualizar o app.",
|
|
idle: "O status de atualização ainda não foi verificado.",
|
|
},
|
|
installError: "Não foi possível instalar a atualização do app desktop.",
|
|
callout: {
|
|
installingTitle: "Instalando atualização",
|
|
failedTitle: "Falha na atualização",
|
|
availableTitle: "Atualização disponível",
|
|
genericError: "Algo deu errado.",
|
|
whatsNew: "Novidades",
|
|
installingAction: "Instalando...",
|
|
installAndRestart: "Instalar e reiniciar",
|
|
installingDescription: "Instalando e reiniciando...",
|
|
versionReady: "{{version}} está pronta para instalar.",
|
|
newVersionReady: "Uma nova versão está pronta para instalar.",
|
|
restartWarning:
|
|
"Atualizar o app vai interromper agentes em execução e fechar sessões de terminal.",
|
|
},
|
|
},
|
|
settings: {
|
|
loadFailed: "Não foi possível carregar as configurações do desktop.",
|
|
saveFailed: "Não foi possível salvar as configurações do desktop.",
|
|
},
|
|
rosetta: {
|
|
title: "Baixar a build para Apple Silicon",
|
|
runningIntel: "Você está executando a build Intel do Paseo pelo Rosetta no Apple Silicon.",
|
|
highCpu: "Isso causa alto uso de CPU. Baixe a build para Apple Silicon para corrigir.",
|
|
download: "Baixar",
|
|
},
|
|
permissions: {
|
|
notifications: {
|
|
allowed: "As notificações são permitidas pelo sistema operacional.",
|
|
denied: "As notificações estão negadas nas configurações do sistema.",
|
|
notGranted: "As notificações ainda não foram concedidas.",
|
|
webOnly: "O status de notificações desktop só está disponível no runtime web.",
|
|
supported: "Notificações desktop são compatíveis.",
|
|
unsupported: "Notificações desktop não são compatíveis nesta plataforma.",
|
|
apiUnavailable: "A Web Notification API não está disponível neste ambiente.",
|
|
requestsWebOnly: "Solicitações de notificação desktop só estão disponíveis no runtime web.",
|
|
requestUnavailable: "Web Notification API requestPermission() está indisponível.",
|
|
requestFailed: "Falha ao solicitar permissão de notificação: {{message}}",
|
|
unexpectedState: "Estado inesperado de permissão de notificação: {{state}}",
|
|
},
|
|
microphone: {
|
|
webOnly: "O status do microfone desktop só está disponível no runtime web.",
|
|
navigatorUnavailable: "Navigator não está disponível neste ambiente.",
|
|
granted: "O acesso ao microfone foi concedido.",
|
|
denied: "O acesso ao microfone está negado nas configurações do sistema.",
|
|
notGranted: "A permissão do microfone ainda não foi concedida.",
|
|
unexpectedState: "Estado inesperado de permissão do microfone: {{state}}",
|
|
statusApiUnavailable:
|
|
"A API de status do microfone não está disponível neste runtime. Use Solicitar para verificar o acesso.",
|
|
queryFailed: "Falha ao consultar o status do microfone: {{message}}",
|
|
captureUnavailable: "A captura do microfone não está disponível neste ambiente.",
|
|
permissionApiUnavailable:
|
|
"A API de status de permissão não está disponível. Use Solicitar para verificar o acesso.",
|
|
requestsWebOnly: "Solicitações de microfone desktop só estão disponíveis no runtime web.",
|
|
captureApiUnavailable: "A API de captura do microfone não está disponível neste ambiente.",
|
|
requestDenied: "A permissão do microfone foi negada pelo usuário ou pelo sistema.",
|
|
noDevice: "Nenhum dispositivo de microfone foi encontrado.",
|
|
requestFailed: "Falha ao solicitar permissão do microfone: {{message}}",
|
|
},
|
|
empty: {
|
|
notifications: "O status das notificações ainda não foi verificado.",
|
|
microphone: "O status do microfone ainda não foi verificado.",
|
|
},
|
|
testNotification: {
|
|
title: "Teste de notificação do Paseo",
|
|
body: "Se você consegue ver isto, as notificações desktop funcionam.",
|
|
notDelivered:
|
|
"A notificação não foi entregue. Verifique Ajustes do Sistema > Notificações.",
|
|
failed: "Falha ao enviar notificação.",
|
|
},
|
|
},
|
|
integrations: {
|
|
cli: {
|
|
statusFailed: "Não foi possível verificar o status de instalação da CLI.",
|
|
installFailed: "Não foi possível instalar a CLI do Paseo.",
|
|
},
|
|
skills: {
|
|
statusFailed: "Não foi possível verificar o status das skills de orquestração.",
|
|
installFailed: "Não foi possível instalar as skills de orquestração.",
|
|
updateFailed: "Não foi possível atualizar as skills de orquestração.",
|
|
uninstallFailed: "Não foi possível desinstalar as skills de orquestração.",
|
|
saveSelectionFailed: "Não foi possível salvar a seleção de skills de orquestração.",
|
|
},
|
|
},
|
|
},
|
|
rootError: {
|
|
title: "O Paseo encontrou um problema.",
|
|
body: "Tente novamente para recarregar o app. Se isso continuar acontecendo, inclua os detalhes abaixo ao relatar o problema.",
|
|
details: "Detalhes",
|
|
},
|
|
startup: {
|
|
errorTitle: "Algo deu errado",
|
|
errorDescription:
|
|
"O servidor local falhou ao iniciar. Se isso continuar acontecendo, reporte o problema no GitHub e inclua os logs abaixo.",
|
|
logs: {
|
|
loading: "Carregando logs do daemon...",
|
|
unavailable: "Nenhum log do daemon disponível.",
|
|
loadFailed: "Não foi possível carregar logs do daemon: {{message}}",
|
|
},
|
|
},
|
|
openProject: {
|
|
tiles: {
|
|
addProject: {
|
|
title: "Adicionar um projeto",
|
|
description: "Abra uma pasta na sua máquina",
|
|
},
|
|
importSession: {
|
|
title: "Importar sessão",
|
|
description: "Importe sessões externas recentes da CLI",
|
|
},
|
|
setupProviders: {
|
|
title: "Configurar provedores",
|
|
description: "Configure Claude Code, Codex e outros",
|
|
},
|
|
pairDevice: {
|
|
title: "Parear dispositivo",
|
|
description: "Conecte seu celular a este daemon",
|
|
},
|
|
},
|
|
},
|
|
projectPicker: {
|
|
placeholder: "Digite para pesquisar...",
|
|
browse: "Procurar…",
|
|
opening: "Abrindo projeto...",
|
|
searching: "Buscando...",
|
|
empty: "Comece digitando um caminho",
|
|
errors: {
|
|
directory_not_found: "Diretório não encontrado.",
|
|
open_failed: "Não foi possível abrir o projeto.",
|
|
},
|
|
openPath: "Abrir caminho",
|
|
},
|
|
branchSwitcher: {
|
|
triggerTooltip: "Trocar branch do workspace",
|
|
currentBranch: "Branch atual: {{branchName}}. Pressione para trocar de branch.",
|
|
placeholder: "Trocar branch...",
|
|
searchPlaceholder: "Filtrar branches...",
|
|
empty: "Nenhuma branch encontrada.",
|
|
title: "Trocar branch",
|
|
uncommittedTitle: "Alterações sem commit",
|
|
uncommittedMessage: "Você tem alterações sem commit. Fazer stash antes de trocar de branch?",
|
|
stashAndSwitch: "Fazer stash e trocar",
|
|
failedToStash: "Falha ao fazer stash das alterações",
|
|
failedToSwitch: "Falha ao trocar de branch",
|
|
restoreStashTitle: "Restaurar alterações em stash?",
|
|
restoreStashMessage:
|
|
"Esta branch tem alterações em stash de uma sessão anterior. Deseja restaurá-las?",
|
|
restore: "Restaurar",
|
|
later: "Depois",
|
|
stashRestored: "Alterações em stash restauradas",
|
|
},
|
|
agentAutocomplete: {
|
|
searchingWorkspace: "Buscando workspace...",
|
|
loadingCommands: "Carregando comandos...",
|
|
noFiles: "Nenhum arquivo ou diretório encontrado",
|
|
noCommands: "Nenhum comando encontrado",
|
|
failedToLoad: "Falha ao carregar",
|
|
},
|
|
loadOlderHistory: {
|
|
failed: "Não foi possível carregar o histórico mais antigo",
|
|
},
|
|
imageAttachmentPicker: {
|
|
permissionTitle: "Permissão obrigatória",
|
|
permissionMessage: "Permita acesso à sua biblioteca de fotos para anexar imagens.",
|
|
errorTitle: "Erro",
|
|
failedToSelect: "Falha ao selecionar imagem",
|
|
dialogTitle: "Anexar imagens",
|
|
dialogFilterName: "Imagens",
|
|
},
|
|
workspaceSetup: {
|
|
title: "Criar workspace",
|
|
errors: {
|
|
failedCreateWorktree: "Falha ao criar worktree",
|
|
failedOpenProject: "Falha ao abrir projeto",
|
|
selectModel: "Selecione um modelo",
|
|
hostDisconnected: "Host não está conectado",
|
|
pendingRequired: "Nenhuma configuração de workspace está pendente",
|
|
composerStateRequired: "O estado do composer da configuração do workspace é obrigatório",
|
|
},
|
|
},
|
|
onboarding: {
|
|
title: "Bem-vindo ao Paseo",
|
|
subtitle: "Conecte seu computador para começar",
|
|
actions: {
|
|
settings: "Configurações",
|
|
},
|
|
},
|
|
modelSelector: {
|
|
title: "Selecionar provedor",
|
|
selectModel: "Selecionar modelo",
|
|
selectedModel: "Selecionar modelo ({{model}})",
|
|
loading: "Carregando...",
|
|
loadingShort: "Carregando",
|
|
loadingSelector: "Carregando seletor de modelos...",
|
|
error: "Erro",
|
|
defaultModel: "Padrão",
|
|
profiles: "Perfis",
|
|
providers: "Provedores",
|
|
model: "Modelo",
|
|
editProfiles: "Editar",
|
|
editProfilesLabel: "Editar perfis de agente",
|
|
createProfile: "Criar perfil",
|
|
modelCount: "{{count}} modelo",
|
|
modelCountPlural: "{{count}} modelos",
|
|
retry: "Tentar novamente",
|
|
retrying: "Tentando novamente...",
|
|
noMatches: "Nenhum modelo corresponde à sua busca",
|
|
noMatchesForQuery: "Nenhum modelo corresponde a «{{query}}»",
|
|
searchAllPlaceholder: "Buscar em todos os modelos...",
|
|
searchPlaceholder: "Buscar modelos...",
|
|
openProviderSettings: "Abrir configurações de {{provider}}",
|
|
},
|
|
providerCatalog: {
|
|
title: "Adicionar provedor",
|
|
search: "Buscar provedores",
|
|
noProviders: "Nenhum provedor encontrado",
|
|
actions: {
|
|
add: "Adicionar",
|
|
adding: "Adicionando",
|
|
installed: "Instalado",
|
|
cancel: "Cancelar",
|
|
installInstructions: "Instruções de instalação",
|
|
installInstructionsFor: "Instruções de instalação de {{provider}}",
|
|
},
|
|
errors: {
|
|
unableToInstall: "Não foi possível instalar provedor",
|
|
},
|
|
},
|
|
providerSelection: {
|
|
defaultModel: "Padrão",
|
|
selectModel: "Selecionar modelo",
|
|
loading: "Carregando...",
|
|
error: "Erro",
|
|
unavailable: "Indisponível",
|
|
unknownError: "Erro desconhecido",
|
|
readiness: {
|
|
initialPromptRequired: "O prompt inicial é obrigatório",
|
|
noProviders: "Nenhum provedor disponível no host selecionado",
|
|
modelDefaultsLoading: "Os modelos padrão ainda estão carregando",
|
|
noModelAvailable: "Nenhum modelo disponível para o provedor selecionado",
|
|
workspaceDirectoryNotFound: "Diretório do workspace não encontrado",
|
|
hostDisconnected: "Host não está conectado",
|
|
},
|
|
},
|
|
pairing: {
|
|
connectionMethods: {
|
|
title: "Adicionar conexão",
|
|
direct: {
|
|
title: "Conexão direta",
|
|
description: "Rede local ou VPN.",
|
|
},
|
|
scanQr: {
|
|
title: "Escanear QR code",
|
|
description: "Conexão relay criptografada.",
|
|
},
|
|
pasteLink: {
|
|
title: "Colar link de pareamento",
|
|
description: "Conexão relay criptografada.",
|
|
},
|
|
},
|
|
direct: {
|
|
title: "Conexão direta",
|
|
helper: "Informe o endereço de um servidor Paseo.",
|
|
fields: {
|
|
host: "Host",
|
|
port: "Porta",
|
|
password: "Senha",
|
|
optional: "Opcional",
|
|
useSsl: "Usar SSL",
|
|
connectionUri: "URI da conexão",
|
|
},
|
|
advanced: {
|
|
label: "Avançado",
|
|
show: "Mostrar avançado",
|
|
hide: "Ocultar avançado",
|
|
},
|
|
passwordVisibility: {
|
|
show: "Mostrar senha",
|
|
hide: "Ocultar senha",
|
|
},
|
|
actions: {
|
|
cancel: "Cancelar",
|
|
connect: "Conectar",
|
|
connecting: "Conectando...",
|
|
},
|
|
errors: {
|
|
hostRequired: "Host é obrigatório",
|
|
invalidPort: "A porta deve estar entre 1 e 65535",
|
|
invalidConnection: "Conexão inválida",
|
|
failedTitle: "Falha na conexão",
|
|
failedToConnect: "Não foi possível conectar a {{endpoint}}.",
|
|
noAdditionalDetails: "{{detail}} (nenhum detalhe adicional fornecido)",
|
|
timedOut: "A conexão expirou. Verifique o host/porta e sua rede.",
|
|
refused: "Conexão recusada. O servidor está em execução neste endereço?",
|
|
hostNotFound: "Host não encontrado. Verifique o hostname e tente novamente.",
|
|
hostUnreachable: "Host inacessível. Verifique sua rede e firewall.",
|
|
tlsError:
|
|
"Erro de TLS. Conexões diretas usam SSL apenas quando há um terminador TLS na frente do daemon.",
|
|
unableToConnect:
|
|
"Não foi possível conectar. Verifique o host/porta e se o daemon está acessível.",
|
|
details: "Detalhes: {{detail}}",
|
|
},
|
|
},
|
|
link: {
|
|
title: "Colar link de pareamento",
|
|
helper: "Cole o link de pareamento do seu servidor.",
|
|
label: "Link de pareamento",
|
|
errors: {
|
|
required: "Cole um link de pareamento (.../#offer=...)",
|
|
missingOffer: "O link deve incluir #offer=...",
|
|
emptyOffer: "O payload da oferta está vazio",
|
|
invalid: "Link de pareamento inválido",
|
|
unableToPair: "Não foi possível parear host",
|
|
},
|
|
alert: {
|
|
failedTitle: "Falha no pareamento",
|
|
},
|
|
actions: {
|
|
cancel: "Cancelar",
|
|
pair: "Parear",
|
|
pairing: "Pareando...",
|
|
},
|
|
},
|
|
scan: {
|
|
title: "Escanear QR",
|
|
webUnavailableTitle: "Indisponível na web",
|
|
webUnavailableBody:
|
|
'Escanear QR não é compatível com a build web. Use "Colar link" em vez disso.',
|
|
backToSettings: "Voltar para Configurações",
|
|
cameraPermissionTitle: "Permissão da câmera",
|
|
cameraPermissionBody:
|
|
"Permita acesso à câmera para escanear o QR code de pareamento do daemon.",
|
|
grantPermission: "Conceder permissão",
|
|
pairing: "Pareando...",
|
|
unableToPair: "Não foi possível parear host",
|
|
errorTitle: "Erro",
|
|
},
|
|
device: {
|
|
loadingOffer: "Carregando oferta de pareamento...",
|
|
failedToLoadOffer: "Falha ao carregar oferta de pareamento.",
|
|
relayDisabled: "Relay não está ativado. Ative o relay para parear um dispositivo.",
|
|
enableTitle: "Ativar o relay?",
|
|
enableDescription:
|
|
"O relay permite conectar este dispositivo de qualquer lugar. O tráfego de pareamento é criptografado de ponta a ponta.",
|
|
relayDocs: "Como o relay funciona",
|
|
relayDocsAccessibility: "Leia como o relay do Paseo funciona",
|
|
enableRelay: "Ativar relay",
|
|
enablingRelay: "Ativando...",
|
|
notNow: "Agora não",
|
|
directConnectionHint:
|
|
"Sem relay, conecte diretamente por TCP, Tailscale ou outra VPN. Nenhum código QR é criado.",
|
|
updateRequired: "Atualize o host para ativar o relay pelo Paseo Desktop.",
|
|
unavailable: "Oferta de pareamento indisponível.",
|
|
hint: "Escaneie este QR code com o Paseo no seu celular ou copie o link abaixo.",
|
|
qrUnavailable: "QR code indisponível.",
|
|
qrAccessibility: "Código QR de pareamento",
|
|
retry: "Tentar novamente",
|
|
copy: "Copiar",
|
|
copied: "Copiado",
|
|
},
|
|
},
|
|
realtimeVoice: {
|
|
actions: {
|
|
mute: "Silenciar voz em tempo real",
|
|
unmute: "Ativar voz em tempo real",
|
|
stop: "Parar voz em tempo real e interromper a resposta",
|
|
},
|
|
},
|
|
rewind: {
|
|
tooltip: "Voltar para esta mensagem",
|
|
warning: "Esta ação não pode ser desfeita",
|
|
actions: {
|
|
conversation: "Reverter conversa",
|
|
files: "Reverter arquivos",
|
|
both: "Reverter conversa e arquivos",
|
|
},
|
|
errors: {
|
|
failed: "Falha ao reverter agente",
|
|
},
|
|
},
|
|
diffViewer: {
|
|
empty: "Nenhuma alteração para exibir",
|
|
},
|
|
serviceUrl: {
|
|
title: "Abrir URL do serviço",
|
|
message: "Abrir {{url}}?",
|
|
inPaseo: "No Paseo",
|
|
externalBrowser: "Navegador externo",
|
|
dontAskAgain: "Não perguntar novamente",
|
|
},
|
|
downloads: {
|
|
requestTokenFailed: "Falha ao solicitar token de download.",
|
|
hostUnavailable: "Host de download indisponível.",
|
|
cancelled: "Download cancelado.",
|
|
failed: "Falha ao baixar arquivo.",
|
|
shareFile: "Compartilhar arquivo",
|
|
shareFileNamed: "Compartilhar {{fileName}}",
|
|
},
|
|
menu: {
|
|
backdrop: "Fundo do menu",
|
|
},
|
|
subagents: {
|
|
title: "Subagentes",
|
|
pillLabelOne: "1 subagente",
|
|
pillLabelMany: "{{count}} subagentes",
|
|
detachAction: "Desanexar {{label}}",
|
|
detachTooltip: "Desanexar subagente",
|
|
archiveAction: "Arquivar {{label}}",
|
|
archiveTooltip: "Arquivar subagente",
|
|
archiveFinishedAction: "Arquivar subagentes concluídos",
|
|
archiveFinishedRetry: "Tentar novamente ({{failed}}/{{total}})",
|
|
},
|
|
panels: {
|
|
draft: {
|
|
newAgent: "Novo Agente",
|
|
creatingAgent: "Criando agente",
|
|
},
|
|
file: {
|
|
directoryMissing: "Diretório do workspace não encontrado.",
|
|
loading: "Carregando arquivo...",
|
|
noPreview: "Nenhuma prévia disponível",
|
|
binaryPreviewUnavailable: "Prévia binária indisponível",
|
|
failedToLoad: "Falha ao carregar arquivo",
|
|
failedToLoadPreview: "Falha ao carregar prévia do arquivo",
|
|
editor: {
|
|
fileSize: "Tamanho {{size}}",
|
|
lines: "{{count}} linhas",
|
|
editorStatus: "Status do editor: {{status}}",
|
|
unsavedChanges: "Alterações não salvas",
|
|
saving: "Salvando...",
|
|
saveFailed: "Falha ao salvar",
|
|
changedOnDisk: "Alterado no disco",
|
|
vimMode: "Modo Vim {{mode}}",
|
|
cursor: "Linha {{line}}, coluna {{column}}",
|
|
preview: "Prévia",
|
|
source: "Fonte",
|
|
deletedTitle: "Arquivo excluído do disco",
|
|
checkFailedTitle: "Não foi possível verificar o arquivo no disco",
|
|
preservedDescription: "A cópia aberta foi preservada.",
|
|
conflictDescription: "O conteúdo local foi preservado. Escolha qual versão manter.",
|
|
overwrite: "Sobrescrever",
|
|
reload: "Recarregar",
|
|
reloadTitle: "Recarregar do disco?",
|
|
reloadMessage: "Suas alterações locais serão perdidas.",
|
|
},
|
|
},
|
|
files: {
|
|
label: "Arquivos",
|
|
subtitle: "Arquivos do espaço de trabalho",
|
|
tooltip: "Explorar arquivos do espaço de trabalho",
|
|
},
|
|
pullRequest: {
|
|
label: "Pull request",
|
|
subtitle: "Detalhes do pull request",
|
|
emptyTitle: "Ainda não há pull request",
|
|
emptyDescription: "Crie um pull request para este checkout para ver os detalhes aqui.",
|
|
},
|
|
diff: {
|
|
changesLabel: "Alterações",
|
|
changesSubtitle: "Diff da árvore de trabalho",
|
|
commitSubtitle: "Diff do commit",
|
|
uncommittedSubtitle: "Alterações não commitadas",
|
|
baseSubtitle: "Comparado com {{baseRef}}",
|
|
directoryMissing: "Diretório do workspace não encontrado.",
|
|
empty: "Nenhuma alteração",
|
|
loadError: "Falha ao carregar diff",
|
|
capabilityMissing: "Atualize o host para ver diffs de commits.",
|
|
},
|
|
},
|
|
toolCallDetails: {
|
|
error: "Erro",
|
|
empty: "Nenhum detalhe adicional disponível",
|
|
subAgentActivity: "Atividade do subagente",
|
|
input: "Entrada",
|
|
output: "Saída",
|
|
},
|
|
toolCallGroup: {
|
|
editedFiles: {
|
|
one: "editou {{count}} arquivo",
|
|
other: "editou {{count}} arquivos",
|
|
},
|
|
commands: {
|
|
one: "executou {{count}} comando",
|
|
other: "executou {{count}} comandos",
|
|
},
|
|
readFiles: {
|
|
one: "leu {{count}} arquivo",
|
|
other: "leu {{count}} arquivos",
|
|
},
|
|
searches: {
|
|
one: "pesquisou {{count}} vez",
|
|
other: "pesquisou {{count}} vezes",
|
|
},
|
|
otherTools: {
|
|
one: "usou {{count}} outra ferramenta",
|
|
other: "usou {{count}} outras ferramentas",
|
|
},
|
|
paseoCalls: {
|
|
one: "chamou o Paseo {{count}} vez",
|
|
other: "chamou o Paseo {{count}} vezes",
|
|
},
|
|
and: "e",
|
|
},
|
|
renameModal: {
|
|
rename: "Renomear",
|
|
saving: "Salvando...",
|
|
},
|
|
sidebarCallout: {
|
|
dismiss: "Dispensar",
|
|
},
|
|
contextWindow: {
|
|
title: "Janela de contexto",
|
|
used: "{{percentage}}% usado",
|
|
tokens: "{{used}} / {{max}} tokens",
|
|
sessionCost: "Custo da sessão {{cost}}",
|
|
accessibility: "Janela de contexto {{percentage}}% usada",
|
|
},
|
|
review: {
|
|
comment: {
|
|
add: "Adicionar comentário de revisão",
|
|
edit: "Editar comentário de revisão",
|
|
delete: "Excluir comentário de revisão",
|
|
label: "Comentário de revisão",
|
|
placeholder: "Deixe um comentário",
|
|
cancel: "Cancelar",
|
|
cancelAccessibility: "Cancelar comentário de revisão",
|
|
save: "Comentar",
|
|
saveAccessibility: "Salvar comentário de revisão",
|
|
},
|
|
},
|
|
settings: {
|
|
title: "Configurações",
|
|
loading: "Carregando configurações...",
|
|
groups: {
|
|
app: "App",
|
|
host: "Host",
|
|
},
|
|
hostPicker: {
|
|
switchHost: "Trocar host",
|
|
local: "Local",
|
|
},
|
|
backToWorkspace: "Voltar",
|
|
addHost: "Adicionar host",
|
|
enableBuiltInDaemon: "Ativar o daemon integrado",
|
|
projects: "Projetos",
|
|
projectList: {
|
|
hostLoadFailed: "Não foi possível carregar projetos do host {{hostName}}: {{message}}",
|
|
editProject: "Editar {{projectName}}",
|
|
},
|
|
groupInfo: "Sobre {{title}}",
|
|
sections: {
|
|
general: "Geral",
|
|
appearance: "Aparência",
|
|
editor: "Editor",
|
|
shortcuts: "Atalhos",
|
|
integrations: "Integrações",
|
|
notifications: "Notificações",
|
|
permissions: "Permissões",
|
|
diagnostics: "Diagnósticos",
|
|
about: "Sobre",
|
|
},
|
|
editor: {
|
|
title: "Editor",
|
|
vimKeybindings: "Atalhos do Vim",
|
|
vimHint: "Aplica-se a arquivos-fonte na web e no desktop.",
|
|
},
|
|
notifications: {
|
|
title: "Notificações",
|
|
permission: "Permissão de notificações",
|
|
refreshAccessibility: "Atualizar permissão de notificações",
|
|
playSound: "Reproduzir som",
|
|
playSoundHint: "Reproduz um som quando chega uma notificação da área de trabalho",
|
|
test: "Testar notificação",
|
|
testHint: "Envia uma notificação usando estas configurações",
|
|
permissionRequired: "Permita o acesso às notificações antes de testar",
|
|
send: "Enviar",
|
|
sending: "Enviando...",
|
|
sentTitle: "Notificação de teste enviada",
|
|
sentDescription: "O Paseo entregou a notificação ao sistema operacional.",
|
|
sendFailedTitle: "Não foi possível enviar a notificação de teste",
|
|
},
|
|
hostSections: {
|
|
projects: "Projetos",
|
|
connections: "Conexões",
|
|
agents: "Agentes",
|
|
metadata: "Metadados",
|
|
workspaces: "Workspaces",
|
|
providers: "Provedores",
|
|
usage: "Uso",
|
|
terminals: "Terminais",
|
|
plugins: "Plugins",
|
|
host: "Visão geral",
|
|
},
|
|
plugins: pluginSettings["pt-BR"],
|
|
metadataGeneration: {
|
|
title: "Geração de metadados",
|
|
description:
|
|
"Escolha o modelo usado pelo Paseo para títulos de espaços de trabalho, nomes de branches, mensagens de commit e rascunhos de pull request",
|
|
selection: "Seleção de modelo",
|
|
automatic: "Automática",
|
|
preferred: "Manual",
|
|
automaticHint: "O Paseo escolhe um modelo rápido disponível",
|
|
preferredHint: "Escolha o modelo que o Paseo usa",
|
|
model: "Modelo",
|
|
fallbackHint: "Se ele não estiver disponível, o Paseo usa outro modelo disponível",
|
|
docs: "Documentação",
|
|
saveError: "Não foi possível atualizar a geração de metadados",
|
|
},
|
|
general: {
|
|
title: "Geral",
|
|
browserData: {
|
|
title: "Dados do navegador",
|
|
siteData: "Cookies e dados de sites",
|
|
description: "As abas do navegador compartilham logins e dados de sites no Paseo.",
|
|
clear: "Limpar dados do navegador",
|
|
clearing: "Limpando...",
|
|
confirmTitle: "Limpar dados do navegador?",
|
|
confirmMessage:
|
|
"Você será desconectado dos sites e as abas abertas do navegador serão recarregadas.",
|
|
success: "Dados do navegador limpos.",
|
|
error: "Não foi possível limpar os dados do navegador.",
|
|
},
|
|
defaultSend: {
|
|
label: "Envio padrão",
|
|
descriptions: {
|
|
interrupt:
|
|
"Quando o agente está em execução, Enter interrompe. Command/Ctrl+Enter enfileira.",
|
|
steer:
|
|
"Quando o agente está em execução, Enter orienta o turno ativo. Command/Ctrl+Enter enfileira.",
|
|
queue: "Quando o agente está em execução, Enter enfileira. Command/Ctrl+Enter envia.",
|
|
},
|
|
options: {
|
|
interrupt: "Interromper",
|
|
steer: "Orientar",
|
|
queue: "Fila",
|
|
},
|
|
},
|
|
serviceUrls: {
|
|
label: "URLs de serviço",
|
|
description: "Onde abrir URLs de scripts em execução",
|
|
options: {
|
|
ask: "Perguntar",
|
|
inApp: "No Paseo",
|
|
external: "Navegador externo",
|
|
},
|
|
},
|
|
terminalScrollback: {
|
|
label: "Scrollback do terminal",
|
|
description: "Linhas mantidas no buffer do terminal integrado",
|
|
accessibilityLabel: "Linhas do scrollback do terminal",
|
|
},
|
|
autoExpandReasoning: {
|
|
label: "Sempre expandir raciocínio",
|
|
description:
|
|
"Mostrar os blocos de pensamento e raciocínio do agente totalmente expandidos por padrão",
|
|
},
|
|
toolCallDetail: {
|
|
label: "Exibição de chamadas de ferramentas",
|
|
description: "Como as chamadas de ferramentas aparecem na linha do tempo",
|
|
accessibilityLabel: "Selecionar exibição de chamadas de ferramentas ({{value}})",
|
|
options: {
|
|
overview: "Resumo",
|
|
detailed: "Detalhes completos",
|
|
},
|
|
},
|
|
language: {
|
|
label: "Idioma",
|
|
description: "Idioma do app",
|
|
options: {
|
|
system: "Sistema",
|
|
ar: "Árabe",
|
|
en: "Inglês",
|
|
es: "Espanhol",
|
|
fr: "Francês",
|
|
ja: "Japonês",
|
|
ko: "Coreano",
|
|
ptBR: "Português brasileiro",
|
|
ru: "Russo",
|
|
zhCN: "Chinês simplificado",
|
|
},
|
|
},
|
|
},
|
|
diagnostics: {
|
|
title: "Diagnósticos",
|
|
legacyTerminalRenderer: {
|
|
label: "Usar renderizador de terminal anterior",
|
|
description: "Usa o terminal WebView anterior após reabrir um terminal",
|
|
accessibilityLabel: "Usar renderizador de terminal anterior",
|
|
},
|
|
testAudio: "Testar áudio",
|
|
playTest: "Reproduzir teste",
|
|
playing: "Reproduzindo...",
|
|
playbackFailed: "Falha na reprodução: {{message}}",
|
|
app: {
|
|
title: "App diagnostic",
|
|
rowTitle: "App diagnostic",
|
|
rowHint: "Collect connection, daemon, provider, desktop, and log details",
|
|
run: "Run",
|
|
running: "Running diagnostic...",
|
|
copyLabel: "diagnostic",
|
|
copyAccessibility: "Copy diagnostic",
|
|
copyFailed: "Failed to copy diagnostic",
|
|
refreshAccessibility: "Refresh diagnostic",
|
|
refreshingAccessibility: "Refreshing diagnostic",
|
|
progress: {
|
|
client: "Client",
|
|
desktop: "Desktop",
|
|
},
|
|
},
|
|
},
|
|
about: {
|
|
title: "Sobre",
|
|
appVersion: "Versão do app",
|
|
thisDevice: "Este dispositivo",
|
|
connectedHosts: "Hosts conectados",
|
|
offline: "Offline",
|
|
versionDiffers: "A versão é diferente da deste dispositivo",
|
|
releaseChannel: {
|
|
label: "Canal de lançamento",
|
|
description: "Troque para Beta para receber atualizações antes e ajudar a moldá-las",
|
|
stable: "Stable",
|
|
beta: "Beta",
|
|
},
|
|
updates: {
|
|
label: "Atualizações do app",
|
|
readyToInstall: "Pronta para instalar: {{version}}",
|
|
installTitle: "Instalar atualização desktop",
|
|
installMessage: "Isso atualiza o Paseo neste computador",
|
|
installConfirm: "Instalar atualização",
|
|
update: "Atualizar",
|
|
updateTo: "Atualizar para {{version}}",
|
|
installing: "Instalando...",
|
|
check: "Verificar",
|
|
checking: "Verificando...",
|
|
alertTitle: "Erro",
|
|
alertMessage: "Não foi possível abrir o diálogo de confirmação da atualização.",
|
|
},
|
|
},
|
|
appearance: {
|
|
theme: {
|
|
title: "Tema",
|
|
accessibilityLabel: "Tema: {{value}}",
|
|
options: {
|
|
light: "Claro",
|
|
dark: "Escuro",
|
|
zinc: "Zinc",
|
|
midnight: "Midnight",
|
|
claude: "Claude",
|
|
ghostty: "Ghostty",
|
|
pureBlack: "Preto puro",
|
|
auto: "Sistema",
|
|
},
|
|
},
|
|
detailLevel: {
|
|
title: "Nível de detalhe",
|
|
},
|
|
chatOutline: {
|
|
title: "Estrutura do chat",
|
|
description: "Mostrar uma estrutura para navegar entre prompts",
|
|
},
|
|
fonts: {
|
|
title: "Fontes",
|
|
systemDefault: "Sistema padrão",
|
|
interfaceFont: "Fonte da interface",
|
|
interfaceFontHint: "Usada em todo o app. Deixe vazio para usar o padrão do sistema",
|
|
interfaceFontAccessibility: "Família da fonte da interface",
|
|
interfaceSize: "Tamanho da interface",
|
|
interfaceSizeAccessibility: "Tamanho da fonte da interface",
|
|
codeFont: "Fonte de código",
|
|
codeFontHint:
|
|
"Usada em código, diffs e saída do terminal. Deixe vazio para usar o padrão do sistema",
|
|
codeFontAccessibility: "Família da fonte de código",
|
|
codeSize: "Tamanho do código",
|
|
codeSizeAccessibility: "Tamanho da fonte de código",
|
|
},
|
|
syntax: {
|
|
title: "Sintaxe",
|
|
highlightTheme: "Tema de destaque",
|
|
highlightThemeHint: "Cores para código, independentes do tema do app",
|
|
highlightThemeAccessibility: "Tema de destaque: {{value}}",
|
|
previewAccessibility: "Prévia ao vivo do tema de sintaxe e da fonte de código",
|
|
},
|
|
},
|
|
shortcuts: {
|
|
dialogTitle: "Atalhos",
|
|
searchPlaceholder: "Pesquisar atalhos",
|
|
unavailableOnMobile: "Atalhos de teclado estão disponíveis apenas no desktop",
|
|
capturePrompt: "Pressione o atalho...",
|
|
unassigned: "Não definido",
|
|
actions: {
|
|
menu: "Ações para {{name}}",
|
|
done: "Concluído",
|
|
cancel: "Cancelar",
|
|
bind: "Atribuir",
|
|
rebind: "Reatribuir",
|
|
clear: "Limpar",
|
|
reset: "Redefinir para o padrão",
|
|
resetAll: "Redefinir tudo",
|
|
},
|
|
sections: {
|
|
general: "Geral",
|
|
workspaces: "Projetos e workspaces",
|
|
tabsPanes: "Abas e painéis",
|
|
layout: "Layout",
|
|
agentInput: "Entrada do agente",
|
|
},
|
|
help: {
|
|
openProject: "Abrir projeto",
|
|
newWorkspace: "Novo workspace",
|
|
newWorktree: "Novo worktree",
|
|
archiveWorkspace: "Arquivar workspace",
|
|
newTab: "Nova aba",
|
|
closeCurrentTab: "Fechar aba atual",
|
|
jumpToWorkspace: "Ir para workspace",
|
|
jumpToTab: "Ir para aba",
|
|
previousWorkspace: "Workspace anterior",
|
|
nextWorkspace: "Próximo workspace",
|
|
previousTab: "Aba anterior",
|
|
nextTab: "Próxima aba",
|
|
splitPaneRight: "Dividir painel à direita",
|
|
splitPaneDown: "Dividir painel abaixo",
|
|
focusPaneLeft: "Focar painel à esquerda",
|
|
focusPaneRight: "Focar painel à direita",
|
|
focusPaneUp: "Focar painel acima",
|
|
focusPaneDown: "Focar painel abaixo",
|
|
moveTabLeft: "Mover aba para a esquerda",
|
|
moveTabRight: "Mover aba para a direita",
|
|
moveTabUp: "Mover aba para cima",
|
|
moveTabDown: "Mover aba para baixo",
|
|
closePane: "Fechar painel",
|
|
newTerminal: "Novo terminal",
|
|
searchFiles: "Pesquisar arquivos",
|
|
toggleCommandCenter: "Alternar central de comandos",
|
|
showKeyboardShortcuts: "Mostrar atalhos de teclado",
|
|
toggleLeftSidebar: "Alternar barra lateral esquerda",
|
|
toggleRightSidebar: "Alternar barra lateral direita",
|
|
toggleBothSidebars: "Alternar ambas as barras laterais",
|
|
toggleSettings: "Alternar Configurações",
|
|
toggleFocusMode: "Alternar modo de foco",
|
|
toggleExplorerPaneMaximization: "Alternar maximização do painel Explorador",
|
|
cycleTheme: "Alternar tema",
|
|
focusMessageInput: "Focar entrada de mensagem",
|
|
cycleAgentMode: "Alternar modo do agente",
|
|
toggleVoiceMode: "Alternar modo de voz",
|
|
startStopDictation: "Iniciar/parar ditado",
|
|
interruptAgent: "Interromper agente",
|
|
sendMessage: "Enviar mensagem",
|
|
queueMessage: "Enfileirar mensagem",
|
|
muteUnmuteVoiceMode: "Silenciar/ativar modo de voz",
|
|
switchProject: "Trocar projeto",
|
|
},
|
|
helpNotes: {
|
|
showKeyboardShortcuts:
|
|
"Disponível quando o foco não está em um campo de texto ou terminal.",
|
|
},
|
|
},
|
|
integrations: {
|
|
title: "Integrações",
|
|
docs: {
|
|
cli: "Docs da CLI",
|
|
skills: "Docs das skills",
|
|
openCli: "Abrir documentação da CLI",
|
|
openSkills: "Abrir documentação das skills",
|
|
},
|
|
commandLine: {
|
|
title: "Linha de comando",
|
|
description: "Controle agentes e execute scripts pelo terminal",
|
|
},
|
|
skills: {
|
|
title: "Skills de orquestração",
|
|
description: "Ensine seus agentes a orquestrar pela CLI",
|
|
updateAvailable: "Atualização disponível",
|
|
updateTitle: "Atualizar Paseo skills?",
|
|
updateFallback: "Sincronize as skills incluídas com sua máquina.",
|
|
uninstallTitle: "Desinstalar Paseo skills?",
|
|
uninstallMessage:
|
|
"Remove todas as skills de orquestração do Paseo de ~/.agents, ~/.claude e ~/.codex.",
|
|
choose: "Escolher skills",
|
|
chooseAll: "Todas as skills",
|
|
chooseAllHint:
|
|
"Mantenha instaladas todas as skills incluídas, inclusive as adicionadas depois.",
|
|
chooseList: "Skills incluídas",
|
|
chooseEmpty: "Esta versão não inclui skills.",
|
|
removeTitle: "Remover as skills desmarcadas?",
|
|
removeMessage:
|
|
"{{skills}} serão excluídas de ~/.agents, ~/.claude e ~/.codex. Tudo o que você adicionou dentro dessas pastas de skills também é excluído.",
|
|
saveFailed: "Não foi possível salvar sua seleção de skills.",
|
|
},
|
|
actions: {
|
|
install: "Instalar",
|
|
installing: "Instalando...",
|
|
installed: "Instalado",
|
|
update: "Atualizar",
|
|
working: "Trabalhando...",
|
|
remove: "Remover",
|
|
uninstall: "Desinstalar",
|
|
save: "Salvar",
|
|
saving: "Salvando...",
|
|
},
|
|
operations: {
|
|
add: "Adicionar skill",
|
|
update: "Atualizar skill",
|
|
delete: "Excluir skill",
|
|
},
|
|
},
|
|
permissions: {
|
|
title: "Permissões",
|
|
microphone: "Microfone",
|
|
refresh: "Atualizar",
|
|
refreshing: "Atualizando...",
|
|
refreshAccessibility: "Atualizar permissões do desktop",
|
|
actions: {
|
|
granted: "Concedida",
|
|
request: "Solicitar",
|
|
requesting: "Solicitando...",
|
|
},
|
|
},
|
|
host: {
|
|
appearance: {
|
|
title: "Aparência",
|
|
name: {
|
|
label: "Nome",
|
|
},
|
|
color: {
|
|
label: "Cor",
|
|
accessibilityLabel: "Cor, {{value}}",
|
|
options: {
|
|
none: "Padrão",
|
|
violet: "Violeta",
|
|
sky: "Céu",
|
|
emerald: "Esmeralda",
|
|
orange: "Laranja",
|
|
pink: "Rosa",
|
|
indigo: "Índigo",
|
|
teal: "Verde-azulado",
|
|
red: "Vermelho",
|
|
amber: "Âmbar",
|
|
blue: "Azul",
|
|
},
|
|
},
|
|
badge: {
|
|
label: "Selo da barra lateral",
|
|
accessibilityLabel: "Selo da barra lateral, {{value}}",
|
|
options: {
|
|
name: "Nome",
|
|
icon: "Somente ícone",
|
|
hidden: "Oculto",
|
|
},
|
|
},
|
|
preview: {
|
|
workspaceName: "my-workspace",
|
|
},
|
|
},
|
|
notFound: "Host não encontrado",
|
|
badges: {
|
|
relay: "Relay",
|
|
local: "Local",
|
|
},
|
|
connections: {
|
|
title: "Conexões",
|
|
removeTitle: "Remover conexão",
|
|
removeMessage: "Remover {{name}}? Isso não pode ser desfeito.",
|
|
removeAction: "Remover",
|
|
removeErrorTitle: "Erro",
|
|
removeErrorMessage: "Não foi possível remover a conexão",
|
|
timeout: "Timeout",
|
|
},
|
|
pairDevices: {
|
|
title: "Parear dispositivos",
|
|
rowTitle: "Parear um dispositivo",
|
|
rowHint: "Escaneie um QR code ou copie um link para conectar seu celular a este host",
|
|
},
|
|
orchestration: {
|
|
title: "Orquestração",
|
|
unavailable: "Conecte-se a este host para gerenciar a orquestração",
|
|
enableTools: {
|
|
title: "Ativar ferramentas do Paseo",
|
|
hint: "Agentes poderão gerenciar worktrees, agentes e agendamentos",
|
|
accessibilityLabel: "Injetar ferramentas do Paseo",
|
|
},
|
|
systemPrompt: {
|
|
title: "Prompt do sistema",
|
|
hint: "Adiciona um prompt do sistema a todos os agentes",
|
|
sheetTitle: "Acrescentar prompt do sistema",
|
|
accessibilityLabel: "Acrescentar prompt do sistema",
|
|
placeholder: "Mantenha as respostas sempre concisas.",
|
|
edit: "Editar",
|
|
reset: "Redefinir",
|
|
save: "Salvar",
|
|
saving: "Salvando...",
|
|
},
|
|
},
|
|
agents: {
|
|
unavailable: "Conecte-se a este host para gerenciar agentes",
|
|
},
|
|
workspaces: {
|
|
unavailable: "Conecte-se a este host para gerenciar workspaces",
|
|
},
|
|
terminalProfiles: {
|
|
unavailable: "Conecte-se a este host para gerenciar perfis de terminal",
|
|
sectionTitle: "Perfis de terminal",
|
|
editProfile: "Editar perfil",
|
|
addProfileTitle: "Adicionar perfil de terminal",
|
|
editProfileTitle: "Editar perfil de terminal",
|
|
namePlaceholder: "Claude Code",
|
|
commandPlaceholder: "claude",
|
|
argsPlaceholder: "--dangerously-skip-permissions",
|
|
nameLabel: "Nome",
|
|
commandLabel: "Comando",
|
|
argsLabel: "Argumentos",
|
|
nameRequired: "O nome é obrigatório",
|
|
commandRequired: "O comando é obrigatório",
|
|
argsHint: "Argumentos separados por espaço passados para o comando",
|
|
saving: "Salvando...",
|
|
remove: "Remover",
|
|
removeConfirmTitle: "Remover perfil?",
|
|
removeConfirmMessage: 'Remover "{{name}}"?',
|
|
moveUp: "Mover para cima",
|
|
moveDown: "Mover para baixo",
|
|
save: "Salvar",
|
|
emptyState:
|
|
"Nenhum perfil ainda. Adicione um para abrir terminais com um comando específico.",
|
|
},
|
|
agentProfiles: {
|
|
sectionTitle: "Perfis de agente",
|
|
unavailable: "Conecte-se a este host para gerenciar perfis de agente",
|
|
unsupported: "Este host executa um daemon que ainda não é compatível com perfis de agente",
|
|
emptyState:
|
|
"Nenhum perfil ainda. Adicione um para iniciar agentes a partir de um provedor e modelo salvos.",
|
|
addProfileTitle: "Adicionar perfil de agente",
|
|
newProfile: "Novo perfil",
|
|
editProfile: "Editar perfil",
|
|
editProfileTitle: "Editar perfil de agente",
|
|
nameLabel: "Nome",
|
|
namePlaceholder: "Trabalho de UI",
|
|
iconLabel: "Ícone",
|
|
noIcon: "Nenhum",
|
|
providerLabel: "Provedor",
|
|
providerPlaceholder: "Selecione um provedor",
|
|
noProviders: "Nenhum provedor está disponível neste host",
|
|
modelLabel: "Modelo",
|
|
noModels: "Este provedor não tem modelos para escolher",
|
|
modeLabel: "Modo",
|
|
noModes: "Este provedor não tem modos para escolher",
|
|
thinkingLabel: "Raciocínio",
|
|
noThinkingOptions: "Este modelo não tem níveis de raciocínio",
|
|
featuresLabel: "Recursos",
|
|
featureCount: "{{count}} recursos",
|
|
featureCountOne: "{{count}} recurso",
|
|
notesLabel: "Notas para os agentes",
|
|
notesPlaceholder: "Use para trabalho de UI — componentes, layout e tokens de design.",
|
|
notesHint:
|
|
'Retornado pela ferramenta MCP "list_profiles". Escreva como uma instrução para outro agente.',
|
|
save: "Salvar",
|
|
saving: "Salvando...",
|
|
remove: "Remover",
|
|
removeConfirmTitle: "Remover perfil?",
|
|
removeConfirmMessage: 'Remover "{{name}}"?',
|
|
moveUp: "Mover para cima",
|
|
moveDown: "Mover para baixo",
|
|
},
|
|
daemon: {
|
|
rename: {
|
|
editLabel: "Editar rótulo",
|
|
title: "Renomear host",
|
|
placeholder: "Meu Host",
|
|
submit: "Renomear",
|
|
},
|
|
restart: {
|
|
title: "Reiniciar daemon",
|
|
hint: "Reinicia o processo do daemon. O app reconectará automaticamente",
|
|
confirm: "Reiniciar",
|
|
confirmTitle: "Reiniciar {{name}}",
|
|
confirmMessage:
|
|
"Isso vai reiniciar o daemon. Agentes em execução nele continuarão rodando; o app reconectará automaticamente.",
|
|
restarting: "Reiniciando...",
|
|
unableToReconnectTitle: "Não foi possível reconectar",
|
|
unableToReconnectMessage:
|
|
"{{name}} não voltou a ficar online. Verifique se ele reiniciou.",
|
|
unavailableTitle: "Host indisponível",
|
|
unavailableMessage:
|
|
"Este host não está conectado. Aguarde até ele ficar online antes de reiniciar.",
|
|
offlineTitle: "Host offline",
|
|
offlineMessage:
|
|
"Este host está offline. O Paseo reconecta automaticamente. Aguarde ele voltar a ficar online antes de reiniciar.",
|
|
requestFailedTitle: "Erro",
|
|
requestFailedMessage:
|
|
"Falha ao enviar a solicitação de reinício. O Paseo reconecta automaticamente. Tente novamente quando o host aparecer como online.",
|
|
dialogFailedMessage: "Não foi possível abrir o diálogo de confirmação de reinício.",
|
|
},
|
|
update: {
|
|
desktopManagedHint:
|
|
"Este daemon é gerenciado pelo Paseo Desktop. Atualize o Paseo Desktop no host.",
|
|
title: "Atualizar daemon",
|
|
hint: "Atualiza o daemon para a versão mais recente e o reinicia",
|
|
confirm: "Atualizar",
|
|
confirmTitle: "Atualizar {{name}}",
|
|
confirmMessage:
|
|
"Isso vai atualizar o daemon para a versão mais recente e reiniciá-lo. Agentes em execução serão interrompidos brevemente.",
|
|
updating: "Atualizando...",
|
|
phaseStarting: "Preparando atualização...",
|
|
phaseDownloading: "Baixando pacotes...",
|
|
phaseInstalling: "Instalando...",
|
|
phaseComplete: "Atualização concluída, reiniciando...",
|
|
unableToReconnectTitle: "Não foi possível reconectar",
|
|
unableToReconnectMessage:
|
|
"{{name}} não voltou a ficar online após a atualização. Verifique se o daemon reiniciou.",
|
|
unavailableTitle: "Host indisponível",
|
|
unavailableMessage:
|
|
"Este host não está conectado. Aguarde até ele ficar online antes de atualizar.",
|
|
offlineTitle: "Host offline",
|
|
offlineMessage:
|
|
"Este host está offline. Aguarde até ele voltar a ficar online antes de atualizar.",
|
|
requestFailedTitle: "Falha na atualização",
|
|
requestFailedMessage: "Falha ao atualizar o daemon: {{error}}",
|
|
dialogFailedMessage: "Não foi possível abrir o diálogo de confirmação da atualização.",
|
|
},
|
|
dangerZone: "Zona de perigo",
|
|
remove: {
|
|
title: "Remover host",
|
|
localTitle: "Remover conexão localhost",
|
|
hint: "Remove este host e suas conexões salvas deste dispositivo",
|
|
localHint: "Remove localhost deste dispositivo e interrompe o daemon integrado",
|
|
localConfirmTitle: "Remover conexão localhost e parar daemon?",
|
|
confirmMessage: "Remover {{name}}? Isso excluirá suas conexões salvas.",
|
|
localConfirmMessage:
|
|
"Isso vai remover a conexão localhost, desativar o gerenciamento do daemon integrado e parar o daemon gerenciado. Hosts remotos permanecem conectados.",
|
|
errorTitle: "Erro",
|
|
errorMessage: "Não foi possível remover host",
|
|
localErrorMessage: "Não foi possível remover a conexão localhost",
|
|
},
|
|
},
|
|
},
|
|
providers: {
|
|
title: "Provedores",
|
|
addProvider: "Adicionar provedor",
|
|
providerDetails: "Detalhes do provedor {{name}}",
|
|
enableProvider: "Ativar {{name}}",
|
|
unavailable: "Conecte-se a este host para ver provedores",
|
|
loading: "Carregando...",
|
|
addErrorTitle: "Não foi possível adicionar provedor",
|
|
updateErrorTitle: "Não foi possível atualizar provedor",
|
|
actions: {
|
|
menu: "{{name}} actions",
|
|
remove: "Remove provider",
|
|
removing: "Removing...",
|
|
},
|
|
remove: {
|
|
confirmTitle: "Remove {{name}}?",
|
|
confirmMessage: "This deletes the provider entry from config.json. It cannot be undone.",
|
|
confirm: "Remove",
|
|
errorTitle: "Unable to remove provider",
|
|
},
|
|
statuses: {
|
|
disabled: "Desativado",
|
|
loading: "Carregando",
|
|
error: "Erro",
|
|
available: "Disponível",
|
|
notInstalled: "Não instalado",
|
|
},
|
|
models: {
|
|
one: "1 modelo",
|
|
many: "{{count}} modelos",
|
|
addModel: "Adicionar modelo",
|
|
addCustomTitle: "Adicionar modelo personalizado",
|
|
modelId: "ID do modelo",
|
|
modelIdPlaceholder: "e.g. openai/gpt-5",
|
|
add: "Adicionar",
|
|
adding: "Adicionando...",
|
|
failedToSave: "Falha ao salvar modelo",
|
|
removeModel: "Remover {{id}}",
|
|
searchPlaceholder: "Buscar modelos",
|
|
loading: "Carregando modelos...",
|
|
retry: "Tentar novamente",
|
|
retrying: "Tentando novamente...",
|
|
noSearchMatches: "Nenhum modelo corresponde à sua busca",
|
|
noneDetected: "Nenhum modelo detectado",
|
|
discovered: "Descobertos",
|
|
custom: "Modelos personalizados",
|
|
updated: "Atualizado {{time}}",
|
|
},
|
|
diagnostic: {
|
|
title: "Diagnóstico",
|
|
button: "Diagnóstico",
|
|
refresh: "Atualizar",
|
|
refreshing: "Atualizando...",
|
|
copyLabel: "diagnóstico",
|
|
copyAccessibility: "Copiar diagnóstico",
|
|
copyFailed: "Falha ao copiar diagnóstico",
|
|
refreshAccessibility: "Atualizar diagnóstico",
|
|
refreshingAccessibility: "Atualizando diagnóstico",
|
|
running: "Executando diagnóstico...",
|
|
none: "Nenhum diagnóstico disponível",
|
|
failedToFetch: "Falha ao buscar diagnóstico",
|
|
unknownError: "Erro desconhecido",
|
|
},
|
|
},
|
|
project: {
|
|
noEditableTarget: "Este projeto não pode ser editado neste host.",
|
|
backToProjects: "Voltar para projetos",
|
|
edit: {
|
|
title: "Editar projeto",
|
|
name: "Nome",
|
|
nameLabel: "Nome do projeto",
|
|
icon: "Ícone",
|
|
chooseImage: "Escolher imagem",
|
|
useAutomatic: "Usar automático",
|
|
imageUrl: "URL de imagem ou site",
|
|
save: "Salvar alterações",
|
|
savedToast: "Projeto atualizado",
|
|
},
|
|
readFailures: {
|
|
invalidTitle: "Não foi possível analisar paseo.json",
|
|
invalidDescription: "Corrija o arquivo no disco e recarregue.",
|
|
missingTitle: "Este host não tem este projeto",
|
|
missingSingleHost: "O host selecionado não tem registro deste projeto.",
|
|
transportTitle: "Não foi possível carregar paseo.json",
|
|
transportFallback: "O host não respondeu.",
|
|
failedTitle: "Não foi possível carregar paseo.json",
|
|
failedDescription: "Recarregue para tentar novamente.",
|
|
},
|
|
worktree: {
|
|
title: "Hooks de ciclo de vida do worktree",
|
|
info: "Comandos executados quando um worktree é criado ou desmontado para este projeto",
|
|
docs: "Docs",
|
|
docsTooltip:
|
|
"Veja a documentação para mais detalhes e as variáveis de ambiente disponíveis para estes comandos",
|
|
setup: "Configuração",
|
|
setupAccessibility: "Comandos de configuração do worktree",
|
|
uncommittedTitle: "Faça commit das alterações no paseo.json",
|
|
uncommittedDescription:
|
|
"Novos worktrees usam o script de configuração do branch base selecionado.",
|
|
teardown: "Desmontagem",
|
|
teardownAccessibility: "Comandos de desmontagem do worktree",
|
|
},
|
|
scripts: {
|
|
title: "Scripts",
|
|
info: "Serviços contínuos e comandos avulsos que você pode iniciar de qualquer agente neste projeto",
|
|
empty: "Nenhum script ainda.",
|
|
untitled: "Script sem título",
|
|
port: "porta {{port}}",
|
|
menuAccessibility: "Abrir menu do script",
|
|
removeTitle: "Remover script?",
|
|
removeMessage: "Remover {{name}}?",
|
|
removeFallbackName: "este script",
|
|
name: "Nome",
|
|
command: "Comando",
|
|
nameAccessibility: "Nome do script",
|
|
commandAccessibility: "Comando do script",
|
|
nameRequired: "O nome é obrigatório",
|
|
commandRequired: "O comando é obrigatório",
|
|
newScript: "Novo script",
|
|
editScript: "Editar {{name}}",
|
|
runAsService: "Executar como serviço",
|
|
serviceHint: "O Paseo supervisiona o processo e atribui uma porta via $PASEO_PORT",
|
|
actions: {
|
|
add: "Adicionar script",
|
|
edit: "Editar",
|
|
remove: "Remover",
|
|
},
|
|
},
|
|
metadata: {
|
|
title: "Geração de metadados",
|
|
info: "Instruções específicas do projeto injetadas nos prompts de IA que o Paseo usa para gerar metadados. Use-as para aplicar convenções da sua equipe, como nomes de branch, estilo de commit ou formato de PR",
|
|
branchName: "Nomes de branch",
|
|
branchNamePlaceholder: "Prefixe branches com feat/ ou fix/, mb/ para branches pessoais",
|
|
commitMessage: "Mensagens de commit",
|
|
commitMessagePlaceholder: "Use Conventional Commits com escopo",
|
|
pullRequest: "Pull requests",
|
|
pullRequestPlaceholder: "Comece com um resumo de um parágrafo e inclua uma seção Test plan",
|
|
},
|
|
writeFailures: {
|
|
staleTitle: "Configuração alterada no disco",
|
|
staleDescription: "Recarregue para buscar o paseo.json mais recente antes de salvar.",
|
|
failedTitle: "Não foi possível salvar paseo.json",
|
|
failedDescription: "Tente novamente ou recarregue a versão mais recente do disco.",
|
|
},
|
|
actions: {
|
|
reload: "Recarregar",
|
|
tryAgain: "Tentar novamente",
|
|
save: "Salvar",
|
|
saved: "Projeto salvo",
|
|
saving: "Salvando...",
|
|
cancel: "Cancelar",
|
|
},
|
|
},
|
|
},
|
|
};
|