# Implementation Plan: Expose/Cull Hidden Invisible Prompting

## Phase 1: Audit and Identification [checkpoint: 30107fd]
- [x] Task: Audit `src/ai_client.py` to identify all hardcoded `_SYSTEM_PROMPT` strings and tool execution instructions.
- [x] Task: Audit `src/aggregate.py` to identify all injected context markers (e.g., `[SYSTEM: FILES UPDATED]`).
- [x] Task: Document identified hidden prompts and determine their necessity vs. redundancy.
- [x] Task: Conductor - User Manual Verification 'Phase 1: Audit and Identification' (Protocol in workflow.md)

## Phase 2: Expose Necessary Prompts in GUI [checkpoint: 3b59028]
- [x] Task: Modify `src/gui_2.py` to add new editable text areas in the "AI Settings" or "Project Settings" panel.
    - [x] Create fields for global system tool instructions.
    - [x] Create fields for project-specific context markers.
- [x] Task: Update `src/app_controller.py` state initialization to load these new fields from `config.toml` and `manual_slop.toml`.
- [x] Task: Ensure changes are correctly saved and flushed to the project files via `_flush_to_project()` and `_flush_to_config()`.
- [x] Task: Conductor - User Manual Verification 'Phase 2: Expose Necessary Prompts in GUI' (Protocol in workflow.md)

## Phase 3: Cull and Integrate Configured Prompts
- [x] Task: Update `src/ai_client.py`'s `_get_combined_system_prompt()` to utilize the user-configured tool instructions from the AppController state instead of hardcoded strings.
- [x] Task: Update `src/aggregate.py` or `src/ai_client.py` to use the user-configured context markers (like `[FILES UPDATED]`) instead of hardcoded ones.
- [x] Task: Remove the legacy hardcoded strings from the codebase.
- [x] Task: Run tests to ensure tool execution and context refresh still function correctly.
- [x] Task: Conductor - User Manual Verification 'Phase 3: Cull and Integrate Configured Prompts' (Protocol in workflow.md)