chore(conductor): Add new track 'Agent Tool Preference & Bias Tuning'
This commit is contained in:
41
conductor/tracks/tool_bias_tuning_20260308/plan.md
Normal file
41
conductor/tracks/tool_bias_tuning_20260308/plan.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# Implementation Plan: Agent Tool Preference & Bias Tuning
|
||||
|
||||
## Phase 1: Data Model & Storage Extension
|
||||
- [ ] Task: Extend the `ToolPreset` and `Tool` models.
|
||||
- [ ] Update `src/tool_presets.py` (created in the dependency track) to include `weight` (int, 1-5) for tools.
|
||||
- [ ] Add `parameter_bias` (dict mapping parameter names to priority strings) to the `Tool` model.
|
||||
- [ ] Update `ToolPresetManager` to handle saving and loading these new fields from `tool_presets.toml`.
|
||||
- [ ] Task: Implement Global Bias Profiles.
|
||||
- [ ] Define `BiasProfile` dataclass in `src/models.py`.
|
||||
- [ ] Implement logic to store and retrieve these profiles from `config.toml`.
|
||||
- [ ] Task: Write unit tests for the extended data model and storage logic.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 1: Data Model Extension' (Protocol in workflow.md)
|
||||
|
||||
## Phase 2: Orchestration & Nudging Logic
|
||||
- [ ] Task: Implement the `ToolBiasEngine` in `src/ai_client.py` (or a new module).
|
||||
- [ ] Implement `apply_semantic_nudges(tool_definitions, preset)`: This function should modify tool descriptions with priority tags.
|
||||
- [ ] Implement `generate_tooling_strategy(preset, global_bias)`: This function should return a Markdown string for the system prompt.
|
||||
- [ ] Task: Integrate the bias engine into the AI client `send()` loop.
|
||||
- [ ] Ensure that for every agent turn, the tool definitions and system instructions are dynamically biased based on the active agent's role and selected preset.
|
||||
- [ ] Task: Write integration tests for the bias generation logic.
|
||||
- [ ] Verify that high-weight tools correctly receive "[HIGH PRIORITY]" tags.
|
||||
- [ ] Verify that the strategy section is correctly appended to the system instructions.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 2: Orchestration Logic' (Protocol in workflow.md)
|
||||
|
||||
## Phase 3: GUI Integration
|
||||
- [ ] Task: Update the Tool Preset Manager UI.
|
||||
- [ ] Add `imgui.slider_int` for each tool to adjust its weight.
|
||||
- [ ] Add a sub-menu or modal for editing parameter-level bias.
|
||||
- [ ] Task: Enhance tool list visualization.
|
||||
- [ ] Implement color-coded priority badges in the Operations panel and tool settings.
|
||||
- [ ] Task: Implement the "Bias Override" in the agent focus modal.
|
||||
- [ ] Add a dropdown to select a global bias profile or a specific preset override before spawning a worker.
|
||||
- [ ] Task: Write visual regression tests using `live_gui` to verify the new UI components.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 3: GUI Integration' (Protocol in workflow.md)
|
||||
|
||||
## Phase 4: Verification & Final Polish
|
||||
- [ ] Task: Create a Bias Efficacy Simulation.
|
||||
- [ ] Implement a specialized simulation test where two tools could solve a problem, and verify the agent chooses the one with higher weight.
|
||||
- [ ] Task: Final UI polish (spacing, icons, tooltips explaining the bias system).
|
||||
- [ ] Task: Run full suite of relevant tests.
|
||||
- [ ] Task: Conductor - User Manual Verification 'Phase 4: Verification & Polish' (Protocol in workflow.md)
|
||||
Reference in New Issue
Block a user