Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 4 additions & 7 deletions frontend/src/lang/modules/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1393,18 +1393,15 @@ const message = {
cursorBar: 'Bar',
scrollback: 'Scrollback',
scrollSensitivity: 'Scroll Sensitivity',
aiStatus: 'AI Terminal',
aiSettings: 'AI Terminal Settings',
aiAssistant: 'AI Assistant',
aiAccountHelper:
'Use the selected model account to generate and fill commands. For local models like Ollama and vLLM, use a custom model account.',
aiAccountRequired: 'Please select an available AI account first.',
aiPrefix: 'Trigger Prefix',
aiPrefixHelper: 'Enter this prefix and press Enter to trigger AI command generation.',
aiPrefixHelper:
'Enter the specified prefix and press Enter to trigger AI command generation, for example: {0} help me check disk usage.',
aiRiskCommands: 'Risk Command Interception',
aiRiskCommandsHelper:
'Generated commands matching any of these fragments will be blocked and filled back as comments. Leave empty to disable interception. Supports add, edit, and delete.',
aiAddRiskCommand: 'Add Risk Command',
aiRemoveRiskCommand: 'Delete',
'Configure risky commands to intercept, one per line. When matched, generation will be blocked and filled back as comments.',
aiSummary: 'When a line starts with the {0} prefix and you press Enter, AI command generation is triggered.',
aiPrefixAsciiVisible:
'Only ASCII visible characters are supported. Spaces, CJK characters, and full-width symbols are not allowed.',
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/es-es.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1432,17 +1432,15 @@ const message = {
cursorBar: 'Barra',
scrollback: 'Scrollback',
scrollSensitivity: 'Sensibilidad de scroll',
aiStatus: 'Terminal de IA',
aiSettings: 'Configuración del terminal de IA',
aiAssistant: 'Asistente de IA',
aiAccountHelper:
'Use la cuenta de modelo seleccionada para generar y rellenar comandos. Para modelos locales como Ollama y vLLM, use una cuenta de modelo personalizada.',
aiPrefix: 'Prefijo de activación',
aiPrefixHelper: 'Introduzca este prefijo y pulse Enter para activar la generación de comandos por IA.',
aiPrefixHelper:
'Introduzca el prefijo indicado y pulse Enter para activar la generación de comandos por IA; por ejemplo: {0} ayúdame a consultar la información del disco.',
aiRiskCommands: 'Intercepción de comandos de riesgo',
aiRiskCommandsHelper:
'Los comandos generados que coincidan con cualquiera de estos fragmentos se bloquearán y se devolverán como comentarios. Déjelo vacío para desactivar la intercepción. Admite añadir, editar y eliminar.',
aiAddRiskCommand: 'Añadir comando de riesgo',
aiRemoveRiskCommand: 'Eliminar',
'Configure los comandos de riesgo que se deben interceptar, uno por línea. Si coinciden, se bloqueará la generación y se devolverán como comentarios.',
aiSummary:
'Cuando una línea comienza con el prefijo {0} y pulsa Enter, se activa la generación de comandos por IA.',
aiPrefixAsciiVisible:
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1403,17 +1403,15 @@ const message = {
cursorBar: 'バー',
scrollback: 'スクロールバック',
scrollSensitivity: 'スクロール感度',
aiStatus: 'AI ターミナル',
aiSettings: 'AI ターミナル設定',
aiAssistant: 'AI アシスタント',
aiAccountHelper:
'選択したモデルアカウントでコマンドを生成して補完します。Ollama や vLLM などのローカルモデルはカスタムモデルアカウントを使用してください。',
aiPrefix: 'トリガープレフィックス',
aiPrefixHelper: 'このプレフィックスを入力して Enter を押すと、AI コマンド生成がトリガーされます。',
aiPrefixHelper:
'指定したプレフィックスを入力して Enter を押すと、AI コマンド生成がトリガーされます。例: {0} ディスク情報を確認して。',
aiRiskCommands: '危険コマンドの遮断',
aiRiskCommandsHelper:
'これらの断片のいずれかに一致する生成コマンドはブロックされ、コメントとして埋め戻されます。空欄にすると遮断を無効化できます。追加、編集、削除に対応しています。',
aiAddRiskCommand: '危険コマンドを追加',
aiRemoveRiskCommand: '削除',
'ブロック対象の危険コマンドを設定します(1 行に 1 件)。一致した場合、生成を停止しコメントとして埋め戻します。',
aiSummary: '行が {0} プレフィックスで始まり Enter を押すと、AI コマンド生成がトリガーされます。',
aiPrefixAsciiVisible: 'ASCII の表示可能文字のみ対応しています。スペース、CJK 文字、全角記号は使用できません。',
saveHelper: '現在のターミナル設定を保存してもよろしいですか?',
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/ko.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1377,17 +1377,15 @@ const message = {
cursorBar: '막대',
scrollback: '스크롤백',
scrollSensitivity: '스크롤 감도',
aiStatus: 'AI 터미널',
aiSettings: 'AI 터미널 설정',
aiAssistant: 'AI 도우미',
aiAccountHelper:
'선택한 모델 계정으로 명령을 생성하고 채웁니다. Ollama, vLLM 같은 로컬 모델은 사용자 지정 모델 계정을 사용하세요.',
aiPrefix: '트리거 접두사',
aiPrefixHelper: '이 접두사를 입력하고 Enter를 누르면 AI 명령 생성이 트리거됩니다.',
aiPrefixHelper:
'지정한 접두사를 입력하고 Enter를 누르면 AI 명령 생성이 시작됩니다. 예: {0} 디스크 정보를 조회해줘.',
aiRiskCommands: '위험 명령 차단',
aiRiskCommandsHelper:
'이 조각들 중 하나와 일치하는 생성 명령은 차단되고 주석으로 다시 채워집니다. 비워 두면 차단이 비활성화됩니다. 추가, 수정, 삭제를 지원합니다.',
aiAddRiskCommand: '위험 명령 추가',
aiRemoveRiskCommand: '삭제',
'차단할 위험 명령을 설정하세요(한 줄에 하나씩). 일치하면 생성이 차단되고 주석으로 다시 채워집니다.',
aiSummary: '{0} 접두사로 시작하는 줄에서 Enter를 누르면 AI 명령 생성이 트리거됩니다.',
aiPrefixAsciiVisible: 'ASCII 표시 가능 문자만 지원합니다. 공백, CJK 문자 및 전각 기호는 사용할 수 없습니다.',
saveHelper: '현재 터미널 설정을 저장하시겠습니까?',
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/ms.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1417,17 +1417,15 @@ const message = {
cursorBar: 'Bar',
scrollback: 'Skrol balik',
scrollSensitivity: 'Kepekaan skrol',
aiStatus: 'Terminal AI',
aiSettings: 'Tetapan terminal AI',
aiAssistant: 'Pembantu AI',
aiAccountHelper:
'Gunakan akaun model yang dipilih untuk menjana dan mengisi arahan. Untuk model tempatan seperti Ollama dan vLLM, gunakan akaun model tersuai.',
aiPrefix: 'Awalan pencetus',
aiPrefixHelper: 'Masukkan awalan ini dan tekan Enter untuk mencetuskan penjanaan arahan AI.',
aiPrefixHelper:
'Masukkan awalan yang ditetapkan dan tekan Enter untuk mencetuskan penjanaan arahan AI, contohnya: {0} bantu saya semak maklumat cakera.',
aiRiskCommands: 'Pencegatan arahan berisiko',
aiRiskCommandsHelper:
'Arahan yang dijana dan sepadan dengan mana-mana fragmen ini akan disekat dan diisi semula sebagai komen. Biarkan kosong untuk mematikan pencegatan. Menyokong tambah, ubah suai dan padam.',
aiAddRiskCommand: 'Tambah arahan berisiko',
aiRemoveRiskCommand: 'Padam',
'Konfigurasikan arahan berisiko yang perlu dipintas, satu bagi setiap baris. Apabila sepadan, penjanaan akan disekat dan diisi semula sebagai komen.',
aiSummary:
'Apabila baris bermula dengan awalan {0} dan anda menekan Enter, penjanaan arahan AI akan dicetuskan.',
aiPrefixAsciiVisible:
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/pt-br.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1425,17 +1425,15 @@ const message = {
cursorBar: 'Barra',
scrollback: 'Scrollback',
scrollSensitivity: 'Sensibilidade de rolagem',
aiStatus: 'Terminal de IA',
aiSettings: 'Configurações do terminal de IA',
aiAssistant: 'Assistente de IA',
aiAccountHelper:
'Use a conta de modelo selecionada para gerar e preencher comandos. Para modelos locais como Ollama e vLLM, use uma conta de modelo personalizada.',
aiPrefix: 'Prefixo de disparo',
aiPrefixHelper: 'Digite este prefixo e pressione Enter para acionar a geração de comandos por IA.',
aiPrefixHelper:
'Digite o prefixo especificado e pressione Enter para acionar a geração de comandos por IA, por exemplo: {0} me ajude a consultar as informações do disco.',
aiRiskCommands: 'Intercepção de comandos de risco',
aiRiskCommandsHelper:
'Os comandos gerados que corresponderem a qualquer um destes fragmentos serão bloqueados e preenchidos de volta como comentários. Deixe em branco para desativar a intercepção. Suporta adicionar, editar e excluir.',
aiAddRiskCommand: 'Adicionar comando de risco',
aiRemoveRiskCommand: 'Excluir',
'Configure os comandos de risco que devem ser interceptados, um por linha. Quando houver correspondência, a geração será bloqueada e preenchida de volta como comentário.',
aiSummary:
'Quando uma linha começa com o prefixo {0} e você pressiona Enter, a geração de comandos por IA é acionada.',
aiPrefixAsciiVisible:
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/ru.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1410,17 +1410,15 @@ const message = {
cursorBar: 'Полоса',
scrollback: 'Буфер прокрутки',
scrollSensitivity: 'Чувствительность прокрутки',
aiStatus: 'AI-терминал',
aiSettings: 'Настройки AI-терминала',
aiAssistant: 'AI-помощник',
aiAccountHelper:
'Используйте выбранный модельный аккаунт для генерации и подстановки команд. Для локальных моделей, таких как Ollama и vLLM, используйте пользовательский модельный аккаунт.',
aiPrefix: 'Префикс запуска',
aiPrefixHelper: 'Введите этот префикс и нажмите Enter, чтобы запустить генерацию команд ИИ.',
aiPrefixHelper:
'Введите указанный префикс и нажмите Enter, чтобы запустить генерацию команд ИИ, например: {0} помоги мне показать информацию о диске.',
aiRiskCommands: 'Перехват опасных команд',
aiRiskCommandsHelper:
'Сгенерированные команды, совпадающие с любым из этих фрагментов, будут заблокированы и подставлены обратно в виде комментариев. Оставьте пустым, чтобы отключить перехват. Поддерживаются добавление, редактирование и удаление.',
aiAddRiskCommand: 'Добавить опасную команду',
aiRemoveRiskCommand: 'Удалить',
'Настройте опасные команды для перехвата, по одной в каждой строке. При совпадении генерация будет заблокирована, а команда подставлена обратно в виде комментария.',
aiSummary: 'Когда строка начинается с префикса {0} и вы нажимаете Enter, запускается генерация команд ИИ.',
aiPrefixAsciiVisible:
'Поддерживаются только видимые символы ASCII. Пробелы, символы CJK и полноширинные знаки не допускаются.',
Expand Down
10 changes: 4 additions & 6 deletions frontend/src/lang/modules/tr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1414,17 +1414,15 @@ const message = {
cursorBar: 'Çubuk',
scrollback: 'Geri Kaydırma',
scrollSensitivity: 'Kaydırma Hassasiyeti',
aiStatus: 'AI Terminali',
aiSettings: 'AI terminal ayarları',
aiAssistant: 'AI Asistani',
aiAccountHelper:
'Komut üretmek ve doldurmak için seçili model hesabını kullanın. Ollama ve vLLM gibi yerel modeller için özel model hesabı kullanın.',
aiPrefix: 'Tetikleme öneki',
aiPrefixHelper: 'Bu öneki girip Enter tuşuna bastığınızda AI komut üretimi tetiklenir.',
aiPrefixHelper:
'Belirtilen öneki girip Enter tuşuna bastığınızda AI komut üretimi tetiklenir; örneğin: {0} disk bilgisini sorgulamama yardım et.',
aiRiskCommands: 'Riskli komut engelleme',
aiRiskCommandsHelper:
'Bu parçalardan herhangi biriyle eşleşen üretilmiş komutlar engellenir ve yorum olarak geri doldurulur. Engellemeyi kapatmak için boş bırakın. Ekleme, düzenleme ve silme desteklenir.',
aiAddRiskCommand: 'Riskli komut ekle',
aiRemoveRiskCommand: 'Sil',
'Engellenecek riskli komutlari yapılandırın, her satıra bir tane gelecek şekilde. Eşleşme olduğunda üretim durdurulur ve yorum olarak geri doldurulur.',
aiSummary: 'Bir satır {0} önekiyle başladığında ve Enter tuşuna bastığınızda AI komut üretimi tetiklenir.',
aiPrefixAsciiVisible:
'Yalnızca görünür ASCII karakterleri desteklenir. Boşluklara, CJK karakterlerine ve tam genişlikli sembollere izin verilmez.',
Expand Down
9 changes: 3 additions & 6 deletions frontend/src/lang/modules/zh-Hant.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1316,15 +1316,12 @@ const message = {
cursorBar: '條形',
scrollback: '滾動行數',
scrollSensitivity: '滾動速度',
aiStatus: 'AI 終端',
aiSettings: 'AI 終端設定',
aiAssistant: 'AI 助手',
aiAccountHelper: '使用所選模型帳號生成並回填命令。Ollama、vLLM 本地模型請使用自訂模型帳號。',
aiPrefix: '觸發前綴',
aiPrefixHelper: '輸入該前綴並按下 Enter 後,將觸發 AI 指令生成。',
aiPrefixHelper: '輸入指定前綴並按下 Enter 後,將觸發 AI 指令生成,例如:{0} 幫我查詢磁碟資訊。',
aiRiskCommands: '風險命令攔截',
aiRiskCommandsHelper: '命中以下片段的生成命令會被攔截,並以註解形式回填;留空表示不攔截,支援增刪改',
aiAddRiskCommand: '新增風險命令',
aiRemoveRiskCommand: '刪除',
aiRiskCommandsHelper: '配置需攔截的風險命令(每行一條),命中後將阻止生成並以註解回填。',
aiSummary: '以 {0} 前綴開頭並按下 Enter 時,會觸發 AI 命令生成',
aiPrefixAsciiVisible: '僅支援 ASCII 可見字元,不支援空格、中文或全形符號',
saveHelper: '是否確認儲存目前終端設定?',
Expand Down
9 changes: 3 additions & 6 deletions frontend/src/lang/modules/zh.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1325,15 +1325,12 @@ const message = {
cursorBar: '条形',
scrollback: '滚动行数',
scrollSensitivity: '滚动速度',
aiStatus: 'AI 终端',
aiSettings: 'AI 终端设置',
aiAssistant: 'AI 助手',
aiAccountHelper: '使用所选模型账号生成并回填命令。Ollama、vLLM 本地模型请用自定义模型账号。',
aiPrefix: '触发前缀',
aiPrefixHelper: '输入该前缀并按回车后,将触发 AI 命令生成。',
aiPrefixHelper: '输入指定前缀并按回车后,将触发 AI 命令生成,例如:{0} 帮我查询磁盘信息。',
aiRiskCommands: '风险命令拦截',
aiRiskCommandsHelper: '命中以下片段的生成命令会被拦截,并以注释形式回填;留空表示不拦截,支持增删改',
aiAddRiskCommand: '新增风险命令',
aiRemoveRiskCommand: '删除',
aiRiskCommandsHelper: '配置需拦截的风险命令(每行一条),命中后将阻止生成并以注释回填。',
aiSummary: '以 {0} 前缀开头并回车时,会触发 AI 命令生成',
aiPrefixAsciiVisible: '仅支持 ASCII 可见字符,不支持空格、中文或全角符号',
saveHelper: '是否确认保存当前终端配置?',
Expand Down
9 changes: 8 additions & 1 deletion frontend/src/views/terminal/setting/ai/helper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,10 @@ export const parseRiskCommands = (value: string): string[] => {
}
return parsed.map((item) => String(item).trim()).filter((item) => item.length > 0);
} catch {
return [];
return value
.split(/\r?\n/)
.map((item) => String(item).trim())
.filter((item) => item.length > 0);
}
};

Expand All @@ -29,3 +32,7 @@ export const normalizeRiskCommands = (riskCommands: string[]): string[] => {
}
return result;
};

export const formatRiskCommandsText = (riskCommands: string[]): string => {
return normalizeRiskCommands(riskCommands).join('\n');
};
Loading
Loading