Skip to content

Commit bc10d7f

Browse files
fixed chat history
1 parent cdff0a5 commit bc10d7f

3 files changed

Lines changed: 61 additions & 4 deletions

File tree

FlowVision/Form1.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,7 @@ private void allowUserInput(bool enable)
355355
private async void SendButton_Click(object sender, EventArgs e)
356356
{
357357
allowUserInput(false);
358+
var toolConfig = ToolConfig.LoadConfig("toolsconfig");
358359

359360
// Check if the user input is empty
360361
string userInput = userInputTextBox.Text;
@@ -367,16 +368,16 @@ private async void SendButton_Click(object sender, EventArgs e)
367368

368369
// Add user message to UI
369370
AddMessage("You", userInput, false);
370-
371371
try
372372
{
373373
string aiResponse = await GetAIResponseAsync(userInput);
374374
AddMessage("AI", aiResponse, true);
375375

376376
// Check if we should retain chat history
377-
var toolConfig = ToolConfig.LoadConfig("toolsconfig");
377+
378378
if (!toolConfig.RetainChatHistory)
379379
{
380+
380381
// Keep only the latest exchange in chat history
381382
if (chatHistory.Count > 2)
382383
{

FlowVision/ToolConfigForm.cs

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,14 +212,17 @@ private void PopulateAPIConfigurations()
212212
if (!configNames.Contains("actioner")) configNames.Add("actioner");
213213
if (!configNames.Contains("planner")) configNames.Add("planner");
214214
if (!configNames.Contains("executor")) configNames.Add("executor");
215+
if (!configNames.Contains("coordinator")) configNames.Add("coordinator");
215216

216217
comboPlannerConfig.Items.Clear();
217218
comboExecutorConfig.Items.Clear();
219+
comboCoordinatorConfig.Items.Clear();
218220

219221
foreach (var name in configNames)
220222
{
221223
comboPlannerConfig.Items.Add(name);
222224
comboExecutorConfig.Items.Add(name);
225+
comboCoordinatorConfig.Items.Add(name);
223226
}
224227

225228
if (comboPlannerConfig.Items.Count > 0)
@@ -233,6 +236,12 @@ private void PopulateAPIConfigurations()
233236
comboExecutorConfig.SelectedItem = comboExecutorConfig.Items.Contains("executor") ?
234237
"executor" : comboExecutorConfig.Items[0];
235238
}
239+
240+
if (comboCoordinatorConfig.Items.Count > 0)
241+
{
242+
comboCoordinatorConfig.SelectedItem = comboCoordinatorConfig.Items.Contains("coordinator") ?
243+
"coordinator" : comboCoordinatorConfig.Items[0];
244+
}
236245
}
237246
catch (Exception ex)
238247
{
@@ -314,8 +323,10 @@ private void LoadToolConfig()
314323

315324
txtPlannerSystemPrompt.Text = _toolConfig.PlannerSystemPrompt;
316325
txtExecutorSystemPrompt.Text = _toolConfig.ExecutorSystemPrompt;
326+
txtCoordinatorSystemPrompt.Text = _toolConfig.CoordinatorSystemPrompt;
317327
chkUseCustomPlannerConfig.Checked = _toolConfig.UseCustomPlannerConfig;
318328
chkUseCustomExecutorConfig.Checked = _toolConfig.UseCustomExecutorConfig;
329+
chkUseCustomCoordinatorConfig.Checked = _toolConfig.UseCustomCoordinatorConfig;
319330

320331
// Check if the item exists in the combo box before setting it
321332
if (comboPlannerConfig.Items.Contains(_toolConfig.PlannerConfigName))
@@ -336,6 +347,15 @@ private void LoadToolConfig()
336347
comboExecutorConfig.SelectedIndex = 0;
337348
}
338349

350+
if (comboCoordinatorConfig.Items.Contains(_toolConfig.CoordinatorConfigName))
351+
{
352+
comboCoordinatorConfig.SelectedItem = _toolConfig.CoordinatorConfigName;
353+
}
354+
else if (comboCoordinatorConfig.Items.Count > 0)
355+
{
356+
comboCoordinatorConfig.SelectedIndex = 0;
357+
}
358+
339359
// Set the theme in the combo box
340360
if (cbTheme.Items.Contains(_toolConfig.ThemeName))
341361
{
@@ -349,6 +369,7 @@ private void LoadToolConfig()
349369
UpdateMultiAgentUIState();
350370
UpdatePlannerConfigUIState();
351371
UpdateExecutorConfigUIState();
372+
UpdateCoordinatorConfigUIState();
352373
UpdateStatusIndicators();
353374

354375
if (_isNewConfiguration && !configExists)
@@ -419,6 +440,13 @@ private void UpdateMultiAgentUIState()
419440
comboPlannerConfig.Enabled = chkMultiAgentMode.Checked && chkUseCustomPlannerConfig.Checked;
420441
btnConfigurePlanner.Enabled = chkMultiAgentMode.Checked && chkUseCustomPlannerConfig.Checked;
421442

443+
// Enable coordinator-specific controls when multi-agent mode is checked
444+
txtCoordinatorSystemPrompt.Enabled = chkMultiAgentMode.Checked;
445+
lblCoordinatorPrompt.Enabled = chkMultiAgentMode.Checked;
446+
chkUseCustomCoordinatorConfig.Enabled = chkMultiAgentMode.Checked;
447+
comboCoordinatorConfig.Enabled = chkMultiAgentMode.Checked && chkUseCustomCoordinatorConfig.Checked;
448+
btnConfigureCoordinator.Enabled = chkMultiAgentMode.Checked && chkUseCustomCoordinatorConfig.Checked;
449+
422450
// Executor controls remain enabled regardless of multi-agent mode
423451

424452
UpdateStatusIndicator(chkMultiAgentMode, indicatorMultiAgent);
@@ -438,6 +466,13 @@ private void UpdateExecutorConfigUIState()
438466
btnConfigureExecutor.Enabled = chkUseCustomExecutorConfig.Checked;
439467
}
440468

469+
private void UpdateCoordinatorConfigUIState()
470+
{
471+
// Enable or disable the coordinator config dropdown based on checkbox
472+
comboCoordinatorConfig.Enabled = chkUseCustomCoordinatorConfig.Checked;
473+
btnConfigureCoordinator.Enabled = chkUseCustomCoordinatorConfig.Checked;
474+
}
475+
441476
private void saveButton_Click(object sender, EventArgs e)
442477
{
443478
// Save existing tool config options
@@ -467,13 +502,15 @@ private void saveButton_Click(object sender, EventArgs e)
467502
_toolConfig.EnableVoiceCommands = chkEnableVoiceCommands.Checked;
468503
_toolConfig.VoiceCommandPhrase = txtVoiceCommandPhrase.Text;
469504

470-
// Save planner and executor settings
505+
// Save planner, executor, and coordinator settings
471506
_toolConfig.PlannerSystemPrompt = txtPlannerSystemPrompt.Text;
472507
_toolConfig.ExecutorSystemPrompt = txtExecutorSystemPrompt.Text;
508+
_toolConfig.CoordinatorSystemPrompt = txtCoordinatorSystemPrompt.Text;
473509

474510
// Save custom model configuration options
475511
_toolConfig.UseCustomPlannerConfig = chkUseCustomPlannerConfig.Checked;
476512
_toolConfig.UseCustomExecutorConfig = chkUseCustomExecutorConfig.Checked;
513+
_toolConfig.UseCustomCoordinatorConfig = chkUseCustomCoordinatorConfig.Checked;
477514

478515
if (comboPlannerConfig.SelectedItem != null)
479516
{
@@ -485,6 +522,11 @@ private void saveButton_Click(object sender, EventArgs e)
485522
_toolConfig.ExecutorConfigName = comboExecutorConfig.SelectedItem.ToString();
486523
}
487524

525+
if (comboCoordinatorConfig.SelectedItem != null)
526+
{
527+
_toolConfig.CoordinatorConfigName = comboCoordinatorConfig.SelectedItem.ToString();
528+
}
529+
488530
// Save theme configuration
489531
if (cbTheme.SelectedItem != null)
490532
{
@@ -559,6 +601,11 @@ private void chkUseCustomExecutorConfig_CheckedChanged(object sender, EventArgs
559601
UpdateExecutorConfigUIState();
560602
}
561603

604+
private void chkUseCustomCoordinatorConfig_CheckedChanged(object sender, EventArgs e)
605+
{
606+
UpdateCoordinatorConfigUIState();
607+
}
608+
562609
// Event handlers for config buttons
563610
private void btnConfigurePlanner_Click(object sender, EventArgs e)
564611
{
@@ -578,6 +625,15 @@ private void btnConfigureExecutor_Click(object sender, EventArgs e)
578625
}
579626
}
580627

628+
private void btnConfigureCoordinator_Click(object sender, EventArgs e)
629+
{
630+
if (comboCoordinatorConfig.SelectedItem != null)
631+
{
632+
string configName = comboCoordinatorConfig.SelectedItem.ToString();
633+
OpenAPIConfigForm(configName);
634+
}
635+
}
636+
581637
// Helper method to open API config form
582638
private void OpenAPIConfigForm(string configName)
583639
{

FlowVision/lib/Classes/ai/MultiAgentActioner.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public async Task<string> ExecuteAction(string actionPrompt)
8484
try
8585
{
8686
// Configure coordinator first
87-
coordinatorHistory.Clear();
87+
//coordinatorHistory.Clear();
8888
coordinatorHistory.AddSystemMessage(toolConfig.CoordinatorSystemPrompt);
8989
coordinatorHistory.AddUserMessage(actionPrompt);
9090

0 commit comments

Comments
 (0)