diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index bea18d50b..7a007e4e9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -27,7 +27,7 @@ jobs: - name: Check out Git repository uses: actions/checkout@v4 with: - ref: main + fetch-depth: 0 - name: Get release tag id: get-tag @@ -149,4 +149,4 @@ jobs: token: ${{ secrets.REPO_DISPATCH_TOKEN }} repository: CherryHQ/cherry-studio-docs event-type: update-download-version - client-payload: '{"version": "${{ steps.get-tag.outputs.tag }}"}' \ No newline at end of file + client-payload: '{"version": "${{ steps.get-tag.outputs.tag }}"}' diff --git a/src/renderer/src/i18n/locales/en-us.json b/src/renderer/src/i18n/locales/en-us.json index ea56b6364..d97fe4bd6 100644 --- a/src/renderer/src/i18n/locales/en-us.json +++ b/src/renderer/src/i18n/locales/en-us.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Enter prompt", "add.prompt.variables.tip": { "title": "Available variables", - "content": "{{date}}:\tDate\n{{time}}:\tTime\n{{datetime}}:\tDate and time\n{{system}}:\tOperating system\n{{arch}}:\tCPU architecture\n{{language}}:\tLanguage\n{{model_name}}:\tModel name" + "content": "{{date}}:\tDate\n{{time}}:\tTime\n{{datetime}}:\tDate and time\n{{system}}:\tOperating system\n{{arch}}:\tCPU architecture\n{{language}}:\tLanguage\n{{model_name}}:\tModel name\n{{username}}:\tUsername" }, "add.title": "Create Agent", "import": { @@ -1993,6 +1993,7 @@ }, "actions": { "title": "Actions", + "custom": "Custom Action", "reset": { "button": "Reset", "tooltip": "Reset to default actions. Custom actions will not be deleted.", diff --git a/src/renderer/src/i18n/locales/ja-jp.json b/src/renderer/src/i18n/locales/ja-jp.json index cb3ab32af..f66e90118 100644 --- a/src/renderer/src/i18n/locales/ja-jp.json +++ b/src/renderer/src/i18n/locales/ja-jp.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "プロンプトを入力", "add.prompt.variables.tip": { "title": "利用可能な変数", - "content": "{{date}}:\t日付\n{{time}}:\t時間\n{{datetime}}:\t日付と時間\n{{system}}:\tオペレーティングシステム\n{{arch}}:\tCPUアーキテクチャ\n{{language}}:\t言語\n{{model_name}}:\tモデル名" + "content": "{{date}}:\t日付\n{{time}}:\t時間\n{{datetime}}:\t日付と時間\n{{system}}:\tオペレーティングシステム\n{{arch}}:\tCPUアーキテクチャ\n{{language}}:\t言語\n{{model_name}}:\tモデル名\n{{username}}:\tユーザー名" }, "add.title": "エージェントを作成", "import": { @@ -1993,6 +1993,7 @@ }, "actions": { "title": "機能設定", + "custom": "カスタム機能", "reset": { "button": "リセット", "tooltip": "デフォルト機能にリセット(カスタム機能は保持)", diff --git a/src/renderer/src/i18n/locales/ru-ru.json b/src/renderer/src/i18n/locales/ru-ru.json index 2e3b306d9..7418e0114 100644 --- a/src/renderer/src/i18n/locales/ru-ru.json +++ b/src/renderer/src/i18n/locales/ru-ru.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Введите промпт", "add.prompt.variables.tip": { "title": "Доступные переменные", - "content": "{{date}}:\tДата\n{{time}}:\tВремя\n{{datetime}}:\tДата и время\n{{system}}:\tОперационная система\n{{arch}}:\tАрхитектура процессора\n{{language}}:\tЯзык\n{{model_name}}:\tНазвание модели" + "content": "{{date}}:\tДата\n{{time}}:\tВремя\n{{datetime}}:\tДата и время\n{{system}}:\tОперационная система\n{{arch}}:\tАрхитектура процессора\n{{language}}:\tЯзык\n{{model_name}}:\tНазвание модели\n{{username}}:\tИмя пользователя" }, "add.title": "Создать агента", "delete.popup.content": "Вы уверены, что хотите удалить этого агента?", @@ -1993,6 +1993,7 @@ }, "actions": { "title": "Действия", + "custom": "Пользовательское действие", "reset": { "button": "Сбросить", "tooltip": "Сбросить стандартные действия. Пользовательские останутся.", diff --git a/src/renderer/src/i18n/locales/zh-cn.json b/src/renderer/src/i18n/locales/zh-cn.json index e587889c4..089d63d7f 100644 --- a/src/renderer/src/i18n/locales/zh-cn.json +++ b/src/renderer/src/i18n/locales/zh-cn.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "输入提示词", "add.prompt.variables.tip": { "title": "可用的变量", - "content": "{{date}}:\t日期\n{{time}}:\t时间\n{{datetime}}:\t日期和时间\n{{system}}:\t操作系统\n{{arch}}:\tCPU架构\n{{language}}:\t语言\n{{model_name}}:\t模型名称" + "content": "{{date}}:\t日期\n{{time}}:\t时间\n{{datetime}}:\t日期和时间\n{{system}}:\t操作系统\n{{arch}}:\tCPU架构\n{{language}}:\t语言\n{{model_name}}:\t模型名称\n{{username}}:\t用户名" }, "add.title": "创建智能体", "import": { @@ -1958,7 +1958,7 @@ "selected": "划词", "selected_note": "划词后立即显示工具栏", "ctrlkey": "Ctrl 键", - "ctrlkey_note": "划词后,再 按住 Ctrl键,才显示工具栏", + "ctrlkey_note": "划词后,再 长按 Ctrl键,才显示工具栏", "shortcut": "快捷键", "shortcut_note": "划词后,使用快捷键显示工具栏。请在快捷键设置页面中设置取词快捷键并启用。", "shortcut_link": "前往快捷键设置" @@ -1993,6 +1993,7 @@ }, "actions": { "title": "功能", + "custom": "自定义功能", "reset": { "button": "重置", "tooltip": "重置为默认功能,自定义功能不会被删除", diff --git a/src/renderer/src/i18n/locales/zh-tw.json b/src/renderer/src/i18n/locales/zh-tw.json index 6a690865d..6534d28f8 100644 --- a/src/renderer/src/i18n/locales/zh-tw.json +++ b/src/renderer/src/i18n/locales/zh-tw.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "輸入提示詞", "add.prompt.variables.tip": { "title": "可用的變數", - "content": "{{date}}:\t日期\n{{time}}:\t時間\n{{datetime}}:\t日期和時間\n{{system}}:\t作業系統\n{{arch}}:\tCPU架構\n{{language}}:\t語言\n{{model_name}}:\t模型名稱" + "content": "{{date}}:\t日期\n{{time}}:\t時間\n{{datetime}}:\t日期和時間\n{{system}}:\t作業系統\n{{arch}}:\tCPU架構\n{{language}}:\t語言\n{{model_name}}:\t模型名稱\n{{username}}:\t使用者名稱" }, "add.title": "建立智慧代理人", "import": { @@ -1993,6 +1993,7 @@ }, "actions": { "title": "功能", + "custom": "自訂功能", "reset": { "button": "重設", "tooltip": "重設為預設功能,自訂功能不會被刪除", diff --git a/src/renderer/src/i18n/translate/el-gr.json b/src/renderer/src/i18n/translate/el-gr.json index 7d60a58e3..28c2ccb27 100644 --- a/src/renderer/src/i18n/translate/el-gr.json +++ b/src/renderer/src/i18n/translate/el-gr.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Εισαγάγετε φράση προκαλέσεως", "add.prompt.variables.tip": { "title": "Διαθέσιμες μεταβλητές", - "content": "{{date}}:\tΗμερομηνία\n{{time}}:\tΏρα\n{{datetime}}:\tΗμερομηνία και ώρα\n{{system}}:\tΛειτουργικό σύστημα\n{{arch}}:\tΑρχιτεκτονική CPU\n{{language}}:\tΓλώσσα\n{{model_name}}:\tΌνομα μοντέλου" + "content": "{{date}}:\tΗμερομηνία\n{{time}}:\tΏρα\n{{datetime}}:\tΗμερομηνία και ώρα\n{{system}}:\tΛειτουργικό σύστημα\n{{arch}}:\tΑρχιτεκτονική CPU\n{{language}}:\tΓλώσσα\n{{model_name}}:\tΌνομα μοντέλου\n{{username}}:\tΌνομα χρήστη" }, "add.title": "Δημιουργία νέου ειδικού", "delete.popup.content": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτόν τον ειδικό;", diff --git a/src/renderer/src/i18n/translate/es-es.json b/src/renderer/src/i18n/translate/es-es.json index b3083a93b..b55bc39ed 100644 --- a/src/renderer/src/i18n/translate/es-es.json +++ b/src/renderer/src/i18n/translate/es-es.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Ingrese la palabra clave", "add.prompt.variables.tip": { "title": "Variables disponibles", - "content": "{{date}}:\tFecha\n{{time}}:\tHora\n{{datetime}}:\tFecha y hora\n{{system}}:\tSistema operativo\n{{arch}}:\tArquitectura de CPU\n{{language}}:\tIdioma\n{{model_name}}:\tNombre del modelo" + "content": "{{date}}:\tFecha\n{{time}}:\tHora\n{{datetime}}:\tFecha y hora\n{{system}}:\tSistema operativo\n{{arch}}:\tArquitectura de CPU\n{{language}}:\tIdioma\n{{model_name}}:\tNombre del modelo\n{{username}}:\tNombre de usuario" }, "add.title": "Crear agente inteligente", "delete.popup.content": "¿Está seguro de que desea eliminar este agente inteligente?", diff --git a/src/renderer/src/i18n/translate/fr-fr.json b/src/renderer/src/i18n/translate/fr-fr.json index 0718050d0..04be56210 100644 --- a/src/renderer/src/i18n/translate/fr-fr.json +++ b/src/renderer/src/i18n/translate/fr-fr.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Entrer le mot-clé", "add.prompt.variables.tip": { "title": "Variables disponibles", - "content": "{{date}}:\tDate\n{{time}}:\tHeure\n{{datetime}}:\tDate et heure\n{{system}}:\tSystème d'exploitation\n{{arch}}:\tArchitecture du processeur\n{{language}}:\tLangue\n{{model_name}}:\tNom du modèle" + "content": "{{date}}:\tDate\n{{time}}:\tHeure\n{{datetime}}:\tDate et heure\n{{system}}:\tSystème d'exploitation\n{{arch}}:\tArchitecture du processeur\n{{language}}:\tLangue\n{{model_name}}:\tNom du modèle\n{{username}}:\tNom d'utilisateur" }, "add.title": "Créer un agent intelligent", "delete.popup.content": "Êtes-vous sûr de vouloir supprimer cet agent intelligent ?", diff --git a/src/renderer/src/i18n/translate/pt-pt.json b/src/renderer/src/i18n/translate/pt-pt.json index 146e8d305..f32a3dc93 100644 --- a/src/renderer/src/i18n/translate/pt-pt.json +++ b/src/renderer/src/i18n/translate/pt-pt.json @@ -10,7 +10,7 @@ "add.prompt.placeholder": "Digite o Prompt", "add.prompt.variables.tip": { "title": "Variáveis disponíveis", - "content": "{{date}}:\tData\n{{time}}:\tHora\n{{datetime}}:\tData e hora\n{{system}}:\tSistema operativo\n{{arch}}:\tArquitetura da CPU\n{{language}}:\tIdioma\n{{model_name}}:\tNome do modelo" + "content": "{{date}}:\tData\n{{time}}:\tHora\n{{datetime}}:\tData e hora\n{{system}}:\tSistema operativo\n{{arch}}:\tArquitetura da CPU\n{{language}}:\tIdioma\n{{model_name}}:\tNome do modelo\n{{username}}:\tNome de utilizador" }, "add.title": "Criar Agente Inteligente", "delete.popup.content": "Tem certeza de que deseja excluir este agente inteligente?", diff --git a/src/renderer/src/pages/settings/SelectionAssistantSettings/components/SettingsActionsListHeader.tsx b/src/renderer/src/pages/settings/SelectionAssistantSettings/components/SettingsActionsListHeader.tsx index 69017b36d..01d721baf 100644 --- a/src/renderer/src/pages/settings/SelectionAssistantSettings/components/SettingsActionsListHeader.tsx +++ b/src/renderer/src/pages/settings/SelectionAssistantSettings/components/SettingsActionsListHeader.tsx @@ -32,7 +32,14 @@ const SettingsActionsListHeader = memo(({ customItemsCount, maxCustomItems, onRe ? t('selection.settings.actions.add_tooltip.disabled', { max: maxCustomItems }) : t('selection.settings.actions.add_tooltip.enabled') }> - ) diff --git a/src/renderer/src/utils/prompt.ts b/src/renderer/src/utils/prompt.ts index 072635e43..05b10748d 100644 --- a/src/renderer/src/utils/prompt.ts +++ b/src/renderer/src/utils/prompt.ts @@ -204,6 +204,16 @@ export const buildSystemPrompt = async (userSystemPrompt: string, tools?: MCPToo userSystemPrompt = userSystemPrompt.replace(/{{model_name}}/g, 'Unknown Model') } } + + if (userSystemPrompt.includes('{{username}}')) { + try { + const username = store.getState().settings.userName || 'Unknown Username' + userSystemPrompt = userSystemPrompt.replace(/{{username}}/g, username) + } catch (error) { + console.error('Failed to get username:', error) + userSystemPrompt = userSystemPrompt.replace(/{{username}}/g, 'Unknown Username') + } + } } if (tools && tools.length > 0) {