chore(conductor): Add new track 'UI/UX Improvements - Presets and AI Settings'

This commit is contained in:
2026-03-11 19:06:26 -04:00
parent 9b6d16b4e0
commit 03d81f61be
8 changed files with 197 additions and 96 deletions

View File

@@ -61,6 +61,10 @@ This file tracks all major tracks for the project. Each track has its own detail
6. [ ] **Track: Custom Shader and Window Frame Support** 6. [ ] **Track: Custom Shader and Window Frame Support**
*Link: [./tracks/custom_shaders_20260309/](./tracks/custom_shaders_20260309/)* *Link: [./tracks/custom_shaders_20260309/](./tracks/custom_shaders_20260309/)*
7. [ ] **Track: UI/UX Improvements - Presets and AI Settings**
*Link: [./tracks/presets_ai_settings_ux_20260311/](./tracks/presets_ai_settings_ux_20260311/)*
*Goal: Improve the layout, scaling, and control ergonomics of the Preset windows (Personas, Prompts, Tools) and AI Settings panel. Includes dual-control sliders and categorized tool management.*
--- ---
### Additional Language Support ### Additional Language Support

View File

@@ -0,0 +1,5 @@
# Track presets_ai_settings_ux_20260311 Context
- [Specification](./spec.md)
- [Implementation Plan](./plan.md)
- [Metadata](./metadata.json)

View File

@@ -0,0 +1,8 @@
{
"track_id": "presets_ai_settings_ux_20260311",
"type": "feature",
"status": "new",
"created_at": "2026-03-11T14:45:00Z",
"updated_at": "2026-03-11T14:45:00Z",
"description": "Read through ./docs, and ./src/gui_2.py, ./src/app_controller.py. I want todo various ux improvements to the preset windows (personas, prompts, and tools) and ai settings."
}

View File

@@ -0,0 +1,33 @@
# Implementation Plan: UI/UX Improvements - Presets and AI Settings
This plan focuses on enhancing the layout, scaling, and control ergonomics of the Preset windows and AI Settings panel.
## Phase 1: Research and Layout Audit
- [ ] Task: Audit `src/gui_2.py` and `src/app_controller.py` for current window resizing and scaling logic.
- [ ] Task: Identify specific UI sections in `Personas`, `Prompts`, `Tools`, and `AI Settings` windows that require padding and width adjustments.
- [ ] Task: Conductor - User Manual Verification 'Phase 1: Research and Layout Audit' (Protocol in workflow.md)
## Phase 2: Preset Windows Layout & Scaling
- [ ] Task: Write tests to verify window layout stability and element visibility during simulated resizes.
- [ ] Task: Implement improved resize/scale policies for `Personas`, `Prompts`, and `Tools` windows.
- [ ] Task: Apply standardized padding and adjust input box widths across these windows.
- [ ] Task: Implement dual-control (Slider + Input Box) for any applicable parameters in these windows.
- [ ] Task: Conductor - User Manual Verification 'Phase 2: Preset Windows Layout & Scaling' (Protocol in workflow.md)
## Phase 3: AI Settings Overhaul
- [ ] Task: Write tests for AI Settings panel interactions and visual state consistency.
- [ ] Task: Refactor AI Settings panel to use visual sliders/knobs for Temperature, Top-P, and Max Tokens.
- [ ] Task: Integrate corresponding numeric input boxes for all AI setting sliders.
- [ ] Task: Improve visual clarity of preferred model entries when collapsed.
- [ ] Task: Conductor - User Manual Verification 'Phase 3: AI Settings Overhaul' (Protocol in workflow.md)
## Phase 4: Tool Management (MCP) Refinement
- [ ] Task: Write tests for tool list rendering and category filtering.
- [ ] Task: Update the tools section to display tool names before radio buttons with consistent spacing.
- [ ] Task: Implement a category-based grouping/filtering system for tools (File I/O, Web, System, etc.).
- [ ] Task: Conductor - User Manual Verification 'Phase 4: Tool Management (MCP) Refinement' (Protocol in workflow.md)
## Phase 5: Final Integration and Verification
- [ ] Task: Perform a comprehensive UI audit across all modified windows to ensure visual consistency.
- [ ] Task: Run all automated tests and verify no regressions in GUI performance or functionality.
- [ ] Task: Conductor - User Manual Verification 'Phase 5: Final Integration and Verification' (Protocol in workflow.md)

View File

@@ -0,0 +1,35 @@
# Specification: UI/UX Improvements - Presets and AI Settings
## 1. Overview
This track aims to improve the usability and visual layout of the Preset windows (Personas, Prompts, Tools) and the AI Settings panel. Key improvements include better layout scaling, consistent input controls, and categorized tool management.
## 2. Functional Requirements
### 2.1 Preset Windows (Personas, Prompts, Tools)
- **Layout Scaling:** Implement improved resize and scaling policies for sub-panels and sections within each window to ensure they adapt well to different window sizes.
- **Section Padding:** Increase and standardize padding between UI elements for better visual separation.
- **Input Field Width:** Adjust the width of input boxes to provide adequate space for content while maintaining a balanced layout.
- **Dual-Control Sliders:** All sliders for model parameters (Temperature, Top-P, etc.) must have a corresponding numeric input box for direct value entry.
### 2.2 AI Settings Panel
- **Visual Controls:** Implement visual sliders and knobs for key model parameters.
- **Collapsed View Clarity:** Improve the visual representation when a preferred model entry is collapsed, ensuring key information is still visible or the transition is intuitive.
### 2.3 Tool Management (MCP)
- **Layout Refinement:** In the tools section, display the tool name first, followed by radio buttons with a small, consistent gap.
- **Categorization:** Introduce category-based filtering or grouping (e.g., File I/O, Web, System) for easier management of large toolsets.
## 3. Non-Functional Requirements
- **Consistency:** UI patterns and spacing must be consistent across all modified windows.
- **Performance:** Ensure layout recalculations and rendering remain fluid during resizing.
## 4. Acceptance Criteria
- [ ] Preset windows (Personas, Prompts, Tools) have improved scaling and spacing.
- [ ] All sliders in the modified panels have corresponding numeric input boxes.
- [ ] Tool names are displayed before radio buttons with consistent spacing.
- [ ] AI Settings panel features improved visual controls and collapsed states.
- [ ] Layout remains stable and usable across various window dimensions.
## 5. Out of Scope
- Major functional changes to the AI logic or tool execution.
- Overhaul of the theme/color palette (unless required for clarity).

View File

@@ -50,16 +50,16 @@ separate_tier4 = false
"Operations Hub" = true "Operations Hub" = true
Message = false Message = false
Response = false Response = false
"Tool Calls" = false "Tool Calls" = true
Theme = true Theme = true
"Log Management" = true "Log Management" = true
Diagnostics = false Diagnostics = true
[theme] [theme]
palette = "Nord Dark" palette = "Nord Dark"
font_path = "C:/projects/manual_slop/assets/fonts/Inter-Regular.ttf" font_path = "C:/projects/manual_slop/assets/fonts/Inter-Regular.ttf"
font_size = 14.0 font_size = 14.0
scale = 1.0099999904632568 scale = 1.2999999523162842
transparency = 1.0 transparency = 1.0
child_transparency = 1.0 child_transparency = 1.0

View File

@@ -54,9 +54,10 @@ Size=1111,224
Collapsed=0 Collapsed=0
[Window][Tool Calls] [Window][Tool Calls]
Pos=694,1182 Pos=790,1483
Size=913,631 Size=876,654
Collapsed=0 Collapsed=0
DockId=0x00000006,0
[Window][Comms History] [Window][Comms History]
ViewportPos=43,95 ViewportPos=43,95
@@ -73,8 +74,8 @@ Collapsed=0
DockId=0xAFC85805,2 DockId=0xAFC85805,2
[Window][Theme] [Window][Theme]
Pos=0,1670 Pos=0,1370
Size=840,467 Size=788,767
Collapsed=0 Collapsed=0
DockId=0x00000002,2 DockId=0x00000002,2
@@ -87,11 +88,11 @@ Collapsed=0
Pos=2641,22 Pos=2641,22
Size=1199,2115 Size=1199,2115
Collapsed=0 Collapsed=0
DockId=0x0000000C,2 DockId=0x00000010,2
[Window][Context Hub] [Window][Context Hub]
Pos=0,1670 Pos=0,1370
Size=840,467 Size=788,767
Collapsed=0 Collapsed=0
DockId=0x00000002,1 DockId=0x00000002,1
@@ -102,26 +103,26 @@ Collapsed=0
DockId=0x0000000D,0 DockId=0x0000000D,0
[Window][Discussion Hub] [Window][Discussion Hub]
Pos=1668,22 Pos=1668,26
Size=971,2115 Size=971,2111
Collapsed=0 Collapsed=0
DockId=0x00000013,0 DockId=0x00000013,0
[Window][Operations Hub] [Window][Operations Hub]
Pos=842,22 Pos=790,26
Size=824,2115 Size=876,1455
Collapsed=0 Collapsed=0
DockId=0x00000012,0 DockId=0x00000005,0
[Window][Files & Media] [Window][Files & Media]
Pos=0,1670 Pos=0,1370
Size=840,467 Size=788,767
Collapsed=0 Collapsed=0
DockId=0x00000002,0 DockId=0x00000002,0
[Window][AI Settings] [Window][AI Settings]
Pos=0,22 Pos=0,26
Size=840,1646 Size=788,1342
Collapsed=0 Collapsed=0
DockId=0x00000001,0 DockId=0x00000001,0
@@ -131,16 +132,16 @@ Size=416,325
Collapsed=0 Collapsed=0
[Window][MMA Dashboard] [Window][MMA Dashboard]
Pos=2641,22 Pos=2641,26
Size=1199,2115 Size=1199,1689
Collapsed=0 Collapsed=0
DockId=0x0000000C,0 DockId=0x00000010,0
[Window][Log Management] [Window][Log Management]
Pos=2641,22 Pos=2641,26
Size=1199,2115 Size=1199,1689
Collapsed=0 Collapsed=0
DockId=0x0000000C,1 DockId=0x00000010,1
[Window][Track Proposal] [Window][Track Proposal]
Pos=709,326 Pos=709,326
@@ -151,25 +152,25 @@ Collapsed=0
Pos=2905,1238 Pos=2905,1238
Size=935,899 Size=935,899
Collapsed=0 Collapsed=0
DockId=0x0000000F,0 DockId=0x00000004,0
[Window][Tier 2: Tech Lead] [Window][Tier 2: Tech Lead]
Pos=2905,1238 Pos=2905,1238
Size=935,899 Size=935,899
Collapsed=0 Collapsed=0
DockId=0x0000000F,0 DockId=0x00000004,0
[Window][Tier 4: QA] [Window][Tier 4: QA]
Pos=2905,1238 Pos=2905,1238
Size=935,899 Size=935,899
Collapsed=0 Collapsed=0
DockId=0x0000000F,0 DockId=0x00000004,0
[Window][Tier 3: Workers] [Window][Tier 3: Workers]
Pos=2641,1235 Pos=2641,1717
Size=1199,902 Size=916,420
Collapsed=0 Collapsed=0
DockId=0x0000000F,0 DockId=0x0000000C,0
[Window][Approve PowerShell Command] [Window][Approve PowerShell Command]
Pos=649,435 Pos=649,435
@@ -322,28 +323,29 @@ Size=420,966
Collapsed=0 Collapsed=0
[Window][Preset Manager] [Window][Preset Manager]
Pos=1693,826 Pos=2239,1184
Size=933,839 Size=904,777
Collapsed=0 Collapsed=0
[Window][Task DAG] [Window][Task DAG]
Pos=1661,1181 Pos=1398,884
Size=1079,662 Size=967,499
Collapsed=0 Collapsed=0
[Window][Usage Analytics] [Window][Usage Analytics]
Pos=1661,426 Pos=3559,1717
Size=275,375 Size=281,420
Collapsed=0 Collapsed=0
DockId=0x0000000F,0
[Window][Tool Preset Manager] [Window][Tool Preset Manager]
Pos=1014,522 Pos=970,1111
Size=1155,1011 Size=1103,921
Collapsed=0 Collapsed=0
[Window][Persona Editor] [Window][Persona Editor]
Pos=995,597 Pos=889,365
Size=1868,1434 Size=1183,713
Collapsed=0 Collapsed=0
[Table][0xFB6E3870,4] [Table][0xFB6E3870,4]
@@ -393,18 +395,18 @@ Column 4 Weight=1.0000
Column 5 Width=50 Column 5 Width=50
[Table][0x3751446B,4] [Table][0x3751446B,4]
RefScale=17 RefScale=14
Column 0 Width=51 Column 0 Width=42
Column 1 Width=77 Column 1 Width=63
Column 2 Weight=1.0000 Column 2 Weight=1.0000
Column 3 Width=128 Column 3 Width=105
[Table][0x2C515046,4] [Table][0x2C515046,4]
RefScale=14 RefScale=18
Column 0 Width=43 Column 0 Width=55
Column 1 Weight=1.0000 Column 1 Weight=1.0000
Column 2 Width=106 Column 2 Width=136
Column 3 Width=42 Column 3 Width=54
[Table][0xD99F45C5,4] [Table][0xD99F45C5,4]
Column 0 Sort=0v Column 0 Sort=0v
@@ -434,19 +436,23 @@ Column 2 Weight=1.0000
DockNode ID=0x00000008 Pos=3125,170 Size=593,1157 Split=Y DockNode ID=0x00000008 Pos=3125,170 Size=593,1157 Split=Y
DockNode ID=0x00000009 Parent=0x00000008 SizeRef=1029,147 Selected=0x0469CA7A DockNode ID=0x00000009 Parent=0x00000008 SizeRef=1029,147 Selected=0x0469CA7A
DockNode ID=0x0000000A Parent=0x00000008 SizeRef=1029,145 Selected=0xDF822E02 DockNode ID=0x0000000A Parent=0x00000008 SizeRef=1029,145 Selected=0xDF822E02
DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,22 Size=3840,2115 Split=X DockSpace ID=0xAFC85805 Window=0x079D3A04 Pos=0,26 Size=3840,2111 Split=X
DockNode ID=0x00000003 Parent=0xAFC85805 SizeRef=2639,1183 Split=X DockNode ID=0x00000003 Parent=0xAFC85805 SizeRef=2639,1183 Split=X
DockNode ID=0x0000000B Parent=0x00000003 SizeRef=404,1186 Split=X Selected=0xF4139CA2 DockNode ID=0x0000000B Parent=0x00000003 SizeRef=404,1186 Split=X Selected=0xF4139CA2
DockNode ID=0x00000007 Parent=0x0000000B SizeRef=840,858 Split=Y Selected=0x8CA2375C DockNode ID=0x00000007 Parent=0x0000000B SizeRef=788,858 Split=Y Selected=0x8CA2375C
DockNode ID=0x00000001 Parent=0x00000007 SizeRef=824,1646 CentralNode=1 Selected=0x7BD57D6A DockNode ID=0x00000001 Parent=0x00000007 SizeRef=824,1342 CentralNode=1 Selected=0x7BD57D6A
DockNode ID=0x00000002 Parent=0x00000007 SizeRef=824,467 Selected=0x1DCB2623 DockNode ID=0x00000002 Parent=0x00000007 SizeRef=824,767 Selected=0x1DCB2623
DockNode ID=0x0000000E Parent=0x0000000B SizeRef=1797,858 Split=X Selected=0x418C7449 DockNode ID=0x0000000E Parent=0x0000000B SizeRef=1849,858 Split=X Selected=0x418C7449
DockNode ID=0x00000012 Parent=0x0000000E SizeRef=824,402 Selected=0x418C7449 DockNode ID=0x00000012 Parent=0x0000000E SizeRef=876,402 Split=Y Selected=0x418C7449
DockNode ID=0x00000005 Parent=0x00000012 SizeRef=876,1455 Selected=0x418C7449
DockNode ID=0x00000006 Parent=0x00000012 SizeRef=876,654 Selected=0x1D56B311
DockNode ID=0x00000013 Parent=0x0000000E SizeRef=971,402 Selected=0x6F2B5B04 DockNode ID=0x00000013 Parent=0x0000000E SizeRef=971,402 Selected=0x6F2B5B04
DockNode ID=0x0000000D Parent=0x00000003 SizeRef=435,1186 Selected=0x363E93D6 DockNode ID=0x0000000D Parent=0x00000003 SizeRef=435,1186 Selected=0x363E93D6
DockNode ID=0x00000004 Parent=0xAFC85805 SizeRef=1199,1183 Split=Y Selected=0x3AEC3498 DockNode ID=0x00000004 Parent=0xAFC85805 SizeRef=1199,1183 Split=Y Selected=0x3AEC3498
DockNode ID=0x0000000C Parent=0x00000004 SizeRef=1074,1208 Selected=0x3AEC3498 DockNode ID=0x00000010 Parent=0x00000004 SizeRef=1199,1689 Selected=0x3AEC3498
DockNode ID=0x0000000F Parent=0x00000004 SizeRef=1074,899 Selected=0x655BC6E9 DockNode ID=0x00000011 Parent=0x00000004 SizeRef=1199,420 Split=X Selected=0xDEB547B6
DockNode ID=0x0000000C Parent=0x00000011 SizeRef=916,380 Selected=0x655BC6E9
DockNode ID=0x0000000F Parent=0x00000011 SizeRef=281,380 Selected=0xDEB547B6
;;;<<<Layout_655921752_Default>>>;;; ;;;<<<Layout_655921752_Default>>>;;;
;;;<<<HelloImGui_Misc>>>;;; ;;;<<<HelloImGui_Misc>>>;;;

View File

@@ -1,37 +1,47 @@
[presets.Default] [presets.Default.categories]
categories.General = [ General = [
{ name = "run_powershell", approval = "ask" }, { name = "run_powershell", approval = "ask", weight = 3, parameter_bias = {} },
{ name = "read_file", approval = "auto" }, { name = "read_file", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "list_directory", approval = "auto" }, { name = "list_directory", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "search_files", approval = "auto" }, { name = "search_files", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "get_file_summary", approval = "auto" } { name = "get_file_summary", approval = "auto", weight = 3, parameter_bias = {} },
] ]
categories.Web = [ Python = [
{ name = "web_search", approval = "ask" }, { name = "py_get_skeleton", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "fetch_url", approval = "ask" } { name = "py_get_code_outline", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_definition", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_signature", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_class_summary", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_var_declaration", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_docstring", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_find_usages", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_imports", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_check_syntax", approval = "auto", weight = 3, parameter_bias = {} },
{ name = "py_get_hierarchy", approval = "auto", weight = 3, parameter_bias = {} },
] ]
categories.Python = [ Surgical = []
{ name = "py_get_skeleton", approval = "auto" }, Web = [
{ name = "py_get_code_outline", approval = "auto" }, { name = "web_search", approval = "ask", weight = 3, parameter_bias = {} },
{ name = "py_get_definition", approval = "auto" }, { name = "fetch_url", approval = "ask", weight = 3, parameter_bias = {} },
{ name = "py_get_signature", approval = "auto" },
{ name = "py_get_class_summary", approval = "auto" },
{ name = "py_get_var_declaration", approval = "auto" },
{ name = "py_get_docstring", approval = "auto" },
{ name = "py_find_usages", approval = "auto" },
{ name = "py_get_imports", approval = "auto" },
{ name = "py_check_syntax", approval = "auto" },
{ name = "py_get_hierarchy", approval = "auto" }
] ]
Analysis = []
Runtime = []
[bias_profiles.Balanced] [bias_profiles.Balanced.tool_weights]
tool_weights = {}
category_multipliers = {}
[bias_profiles.Execution-Focused] [bias_profiles.Balanced.category_multipliers]
tool_weights = { run_powershell = 5 }
category_multipliers = { Runtime = 1.5, Surgical = 1.2 }
[bias_profiles.Discovery-Heavy] [bias_profiles.Execution-Focused.tool_weights]
tool_weights = { web_search = 4, search_files = 4 } run_powershell = 5
category_multipliers = { Web = 1.5, Analysis = 1.3 }
[bias_profiles.Execution-Focused.category_multipliers]
Runtime = 1.5
Surgical = 1.2
[bias_profiles.Discovery-Heavy.tool_weights]
web_search = 4
search_files = 4
[bias_profiles.Discovery-Heavy.category_multipliers]
Web = 1.5
Analysis = 1.3