2.8 KiB
2.8 KiB
Implementation Plan: Saved Tool Presets
Phase 1: Data Model & Storage
- Task: Define the
ToolPresetdata model and storage logic.- Create
src/tool_presets.pyto handle loading/saving totool_presets.toml. - Implement
ToolPresetManagerto manage CRUD operations for presets and categorization.
- Create
- Task: Write unit tests for
ToolPresetManager.- Test loading tool presets from TOML.
- Test saving tool presets to TOML.
- Test dynamic category parsing.
- Test tool approval flag persistence.
- Task: Conductor - User Manual Verification 'Phase 1: Data Model & Storage' (Protocol in workflow.md)
Phase 2: UI Integration (AI Settings)
- Task: Relocate tool settings to the AI Settings panel.
- Modify
gui_2.pyto remove the current tool listing from the main panel and move it to the AI Settings panel (global/project).
- Modify
- Task: Implement dynamic tool categorization UI.
- Modify
gui_2.pyto render tools in sections based on categories defined intool_presets.toml. - Implement toggleable "auto"/"ask" flags for each tool.
- Modify
- Task: Implement Tool Preset dropdown for MMA agent roles.
- Add the "Tool Preset" dropdown to the MMA agent role configuration modal in
gui_2.py.
- Add the "Tool Preset" dropdown to the MMA agent role configuration modal in
- Task: Write integration tests for AI Settings UI using
live_gui.- Verify tools are categorized correctly in the UI.
- Verify toggling a tool's approval persists correctly.
- Verify the "Tool Preset" dropdown shows all available presets.
- Task: Conductor - User Manual Verification 'Phase 2: UI Integration (AI Settings)' (Protocol in workflow.md)
Phase 3: AI Client & Execution Integration
- Task: Integrate tool presets into the AI Client.
- Modify
src/ai_client.pyto load and apply the selected tool preset for a given agent role. - Implement logic to restrict available tools and enforce "auto"/"ask" behavior based on the preset.
- Modify
- Task: Update MMA delegation to pass the selected tool preset.
- Modify
scripts/mma_exec.pyandsrc/multi_agent_conductor.pyto pass thetool_presetto sub-agents.
- Modify
- Task: Write integration tests for AI execution with tool presets.
- Verify agents only have access to tools in their assigned preset.
- Verify "auto" tools execute without prompting, and "ask" tools require confirmation.
- Task: Conductor - User Manual Verification 'Phase 3: AI Client & Execution Integration' (Protocol in workflow.md)
Phase 4: Final Integration & Polish
- Task: Implement Preset Manager Modal.
- Create a modal for creating, editing, and deleting tool presets.
- Task: Final UI polish (spacing, icons, tooltips).
- Task: Run full suite of relevant tests.
- Task: Conductor - User Manual Verification 'Phase 4: Final Integration & Polish' (Protocol in workflow.md)