Files
manual_slop/conductor/tracks/gemini_cli_headless_20260224/plan.md

2.3 KiB

Implementation Plan: Gemini CLI Headless Integration

Phase 1: IPC Infrastructure Extension

  • Task: Extend api_hooks.py to support synchronous "Ask" requests. This involves adding a way for a client to POST a request and wait for a user response from the GUI.
  • Task: Update api_hook_client.py with a request_confirmation(tool_name, args) method that blocks until the GUI responds.
  • Task: Create a standalone test script tests/test_sync_hooks.py to verify that the CLI-to-GUI communication works as expected.
  • Task: Conductor - User Manual Verification 'Phase 1: IPC Infrastructure Extension' (Protocol in workflow.md)

Phase 2: Gemini CLI Adapter & Tool Bridge

  • Task: Implement scripts/cli_tool_bridge.py. This script will be called by the Gemini CLI BeforeTool hook and use ApiHookClient to talk to the GUI.
  • Task: Implement the GeminiCliAdapter in ai_client.py (or a new gemini_cli_adapter.py). It must handle the subprocess lifecycle and parse the stream-json output.
  • Task: Integrate GeminiCliAdapter into the main ai_client.send() logic.
  • Task: Write unit tests for the JSON parsing and subprocess management in GeminiCliAdapter.
  • Task: Conductor - User Manual Verification 'Phase 2: Gemini CLI Adapter & Tool Bridge' (Protocol in workflow.md)

Phase 3: GUI Integration & Provider Support

  • Task: Update gui_2.py (and gui_legacy.py) to add "Gemini CLI" to the provider dropdown.
  • Task: Implement UI elements for "Gemini CLI Session Management" (Login button, session ID display).
  • Task: Update the manual_slop.toml logic to persist Gemini CLI specific settings (e.g., path to CLI, approval mode).
  • Task: Conductor - User Manual Verification 'Phase 3: GUI Integration & Provider Support' (Protocol in workflow.md)

Phase 4: Integration Testing & UX Polish

  • Task: Create a comprehensive integration test tests/test_gemini_cli_integration.py that uses the live_gui fixture to simulate a full session.
  • Task: Verify tool confirmation flow: CLI Tool -> Bridge -> GUI Modal -> User Approval -> CLI Execution.
  • Task: Polish the display of CLI telemetry (tokens/latency) in the GUI diagnostics panel.
  • Task: Conductor - User Manual Verification 'Phase 4: Integration Testing & UX Polish' (Protocol in workflow.md)