diff --git a/src/constants.ts b/src/constants.ts index 7049c506..5cda409b 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -977,7 +977,6 @@ export const DEFAULT_SETTINGS: CopilotSettings = { defaultSaveFolder: DEFAULT_CHAT_HISTORY_FOLDER, defaultConversationTag: "copilot-conversation", autosaveChat: true, - generateAIChatTitleOnSave: true, autoAddActiveContentToContext: true, defaultOpenArea: DEFAULT_OPEN_AREA.VIEW, defaultSendShortcut: SEND_SHORTCUT.ENTER, diff --git a/src/core/ChatPersistenceManager.test.ts b/src/core/ChatPersistenceManager.test.ts index 5095ddaf..447902c2 100644 --- a/src/core/ChatPersistenceManager.test.ts +++ b/src/core/ChatPersistenceManager.test.ts @@ -27,7 +27,6 @@ jest.mock("@/settings/model", () => ({ defaultSaveFolder: "test-folder", defaultConversationTag: "copilot-conversation", defaultConversationNoteName: "{$topic}@{$date}_{$time}", - generateAIChatTitleOnSave: true, }), })); jest.mock("@/aiParams", () => ({ diff --git a/src/core/ChatPersistenceManager.ts b/src/core/ChatPersistenceManager.ts index 49a569c6..dd741bf5 100644 --- a/src/core/ChatPersistenceManager.ts +++ b/src/core/ChatPersistenceManager.ts @@ -818,9 +818,9 @@ ${chatContent}`; messages: ChatMessage[], existingTopic?: string ): void { - const settings = getSettings(); - - if (!settings.generateAIChatTitleOnSave || !file || existingTopic) { + // AI title generation on save is always on for saved (legacy) chat notes; + // skip only when there's no file or the note already carries a topic. + if (!file || existingTopic) { return; } diff --git a/src/main.ts b/src/main.ts index e2e0628a..c7780baf 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1227,7 +1227,7 @@ export default class CopilotPlugin extends Plugin { async openChatSourceFile(fileId: string): Promise { if (isNativeChatId(fileId)) { new Notice( - "This chat has no saved note. Turn on Autosave Chat to save chats as notes in your vault." + "This chat has no saved note. Turn on Autosave Chat as Markdown to save chats as notes in your vault." ); return; } diff --git a/src/settings/model.ts b/src/settings/model.ts index c34ac550..5a8ebdb6 100644 --- a/src/settings/model.ts +++ b/src/settings/model.ts @@ -88,11 +88,6 @@ export interface CopilotSettings { defaultSaveFolder: string; defaultConversationTag: string; autosaveChat: boolean; - /** - * When enabled, generate a short AI title for chat notes on save. - * When disabled (default), use the first 10 words of the first user message. - */ - generateAIChatTitleOnSave: boolean; autoAddActiveContentToContext: boolean; customPromptsFolder: string; indexVaultToVectorStore: string; @@ -665,11 +660,6 @@ export function sanitizeSettings(settings: CopilotSettings): CopilotSettings { } } - // Ensure generateAIChatTitleOnSave has a default value - if (typeof sanitizedSettings.generateAIChatTitleOnSave !== "boolean") { - sanitizedSettings.generateAIChatTitleOnSave = DEFAULT_SETTINGS.generateAIChatTitleOnSave; - } - // Ensure enableMiyo has a default value if (typeof sanitizedSettings.enableMiyo !== "boolean") { sanitizedSettings.enableMiyo = DEFAULT_SETTINGS.enableMiyo; diff --git a/src/settings/v2/components/BasicSettings.tsx b/src/settings/v2/components/BasicSettings.tsx index dfbf7067..65a7ee4a 100644 --- a/src/settings/v2/components/BasicSettings.tsx +++ b/src/settings/v2/components/BasicSettings.tsx @@ -260,20 +260,12 @@ export const BasicSettings: React.FC = () => {
updateSetting("autosaveChat", checked)} /> - updateSetting("generateAIChatTitleOnSave", checked)} - /> -