diff --git a/src/chat-view.ts b/src/chat-view.ts index 25a5d90..d08f9cf 100755 --- a/src/chat-view.ts +++ b/src/chat-view.ts @@ -287,14 +287,16 @@ export class ChatView extends ItemView { context = context.substring(0, MAX_CONTEXT_LENGTH) + '\n\n... (truncated)'; } + const systemContent = context + ? `You are a helpful assistant.\n\nRelevant vault context:\n${context}` + : 'You are a helpful assistant.'; const systemMessage: OllamaMessage = { role: 'system', - content: 'You are a helpful assistant.', + content: systemContent, }; - const userContent = context ? `${context}\n\n${userMessage}` : userMessage; const userMessageWithContext: OllamaMessage = { role: 'user', - content: userContent, + content: userMessage, }; const messages: OllamaMessage[] = [ @@ -439,13 +441,11 @@ export class ChatView extends ItemView { } } - // Update last message immutably — only if no tool calls were processed + // Update assistant message immutably — only if no tool calls were processed if (toolCalls.length === 0) { - const lastMessageIndex = this.messages.length - 1; - if (lastMessageIndex >= 0) { - const lastMessage = { ...this.messages[lastMessageIndex], isStreaming: false }; - this.messages = [...this.messages.slice(0, lastMessageIndex), lastMessage]; - } + this.updateMessageById(assistantMessageId, { + isStreaming: false, + }); } // Limit conversation history to prevent memory issues diff --git a/src/vault-indexer.ts b/src/vault-indexer.ts index ab33c43..5fcd211 100644 --- a/src/vault-indexer.ts +++ b/src/vault-indexer.ts @@ -102,10 +102,6 @@ class VaultIndexer { (result): result is NonNullable => result !== null ); results.push(...validResults); - - if (results.length >= 50) { - break; - } } return results;