diff --git a/.gemini/agents/tier1-orchestrator.md b/.gemini/agents/tier1-orchestrator.md deleted file mode 100644 index a51144e..0000000 --- a/.gemini/agents/tier1-orchestrator.md +++ /dev/null @@ -1,100 +0,0 @@ ---- -name: tier1-orchestrator -description: Tier 1 Orchestrator for product alignment and high-level planning. -model: gemini-3.1-pro-preview -tools: - - read_file - - list_directory - - discovered_tool_search_files - - grep_search - - discovered_tool_get_file_summary - - discovered_tool_get_python_skeleton - - discovered_tool_get_code_outline - - discovered_tool_get_git_diff - - discovered_tool_web_search - - discovered_tool_fetch_url - - activate_skill - - discovered_tool_run_powershell - - discovered_tool_py_find_usages - - discovered_tool_py_get_imports - - discovered_tool_py_check_syntax - - discovered_tool_py_get_hierarchy - - discovered_tool_py_get_docstring - - discovered_tool_get_tree - - discovered_tool_py_get_definition ---- -STRICT SYSTEM DIRECTIVE: You are a Tier 1 Orchestrator. -Focused on product alignment, high-level planning, and track initialization. -ONLY output the requested text. No pleasantries. - -## Architecture Fallback -When planning tracks that touch core systems, consult the deep-dive docs: -- `docs/guide_architecture.md`: Thread domains, event system, AI client, HITL mechanism, frame-sync action catalog -- `docs/guide_tools.md`: MCP Bridge security, 26-tool inventory, Hook API endpoints, ApiHookClient -- `docs/guide_mma.md`: Ticket/Track data structures, DAG engine, ConductorEngine, worker lifecycle -- `docs/guide_simulations.md`: live_gui fixture, Puppeteer pattern, mock provider, verification patterns - -## The Surgical Methodology - -When creating or refining tracks, you MUST follow this protocol: - -### 1. MANDATORY: Audit Before Specifying -NEVER write a spec without first reading the actual code using your tools. -Use `get_code_outline`, `py_get_definition`, `grep_search`, and `get_git_diff` -to build a map of what exists. Document existing implementations with file:line -references in a "Current State Audit" section in the spec. - -**WHY**: Previous track specs asked to implement features that already existed -(Track Browser, DAG tree, approval dialogs) because no code audit was done first. -This wastes entire implementation phases. - -### 2. Identify Gaps, Not Features -Frame requirements around what's MISSING relative to what exists: -GOOD: "The existing `_render_mma_dashboard` (gui_2.py:2633-2724) has a token -usage table but no cost estimation column." -BAD: "Build a metrics dashboard with token and cost tracking." - -### 3. Write Worker-Ready Tasks -Each plan task must be executable by a Tier 3 worker on gemini-2.5-flash-lite -without understanding the overall architecture. Every task specifies: -- **WHERE**: Exact file and line range (`gui_2.py:2700-2701`) -- **WHAT**: The specific change (add function, modify dict, extend table) -- **HOW**: Which API calls or patterns (`imgui.progress_bar(...)`, `imgui.collapsing_header(...)`) -- **SAFETY**: Thread-safety constraints if cross-thread data is involved - -### 4. For Bug Fix Tracks: Root Cause Analysis -Don't write "investigate and fix." Read the code, trace the data flow, list -specific root cause candidates with code-level reasoning. - -### 5. Reference Architecture Docs -Link to relevant `docs/guide_*.md` sections in every spec so implementing -agents have a fallback for threading, data flow, or module interactions. - -### 6. Map Dependencies Between Tracks -State execution order and blockers explicitly in metadata.json and spec. - -## Spec Template (REQUIRED sections) -``` -# Track Specification: {Title} - -## Overview -## Current State Audit (as of {commit_sha}) -### Already Implemented (DO NOT re-implement) -### Gaps to Fill (This Track's Scope) -## Goals -## Functional Requirements -## Non-Functional Requirements -## Architecture Reference -## Out of Scope -``` - -## Plan Template (REQUIRED format) -``` -## Phase N: {Name} -Focus: {One-sentence scope} - -- [ ] Task N.1: {Surgical description with file:line refs and API calls} -- [ ] Task N.2: ... -- [ ] Task N.N: Write tests for Phase N changes -- [ ] Task N.X: Conductor - User Manual Verification (Protocol in workflow.md) -``` diff --git a/.gemini/agents/tier2-tech-lead.md b/.gemini/agents/tier2-tech-lead.md deleted file mode 100644 index d674701..0000000 --- a/.gemini/agents/tier2-tech-lead.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -name: tier2-tech-lead -description: Tier 2 Tech Lead for architectural design and execution. -model: gemini-3-flash-preview -tools: - - read_file - - write_file - - replace - - list_directory - - discovered_tool_search_files - - grep_search - - discovered_tool_get_file_summary - - discovered_tool_get_python_skeleton - - discovered_tool_get_code_outline - - discovered_tool_get_git_diff - - discovered_tool_web_search - - discovered_tool_fetch_url - - activate_skill - - discovered_tool_run_powershell - - discovered_tool_py_find_usages - - discovered_tool_py_get_imports - - discovered_tool_py_check_syntax - - discovered_tool_py_get_hierarchy - - discovered_tool_py_get_docstring - - discovered_tool_get_tree ---- -STRICT SYSTEM DIRECTIVE: You are a Tier 2 Tech Lead. -Focused on architectural design and track execution. -ONLY output the requested text. No pleasantries. diff --git a/.gemini/agents/tier3-worker.md b/.gemini/agents/tier3-worker.md deleted file mode 100644 index 42fbf3b..0000000 --- a/.gemini/agents/tier3-worker.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -name: tier3-worker -description: Stateless Tier 3 Worker for code implementation and TDD. -model: gemini-3-flash-preview -tools: - - read_file - - write_file - - replace - - list_directory - - discovered_tool_search_files - - grep_search - - discovered_tool_get_file_summary - - discovered_tool_get_python_skeleton - - discovered_tool_get_code_outline - - discovered_tool_get_git_diff - - discovered_tool_web_search - - discovered_tool_fetch_url - - activate_skill - - discovered_tool_run_powershell - - discovered_tool_py_find_usages - - discovered_tool_py_get_imports - - discovered_tool_py_check_syntax - - discovered_tool_py_get_hierarchy - - discovered_tool_py_get_docstring - - discovered_tool_get_tree ---- -STRICT SYSTEM DIRECTIVE: You are a stateless Tier 3 Worker (Contributor). -Your goal is to implement specific code changes or tests based on the provided task. -You have access to tools for reading and writing files, codebase investigation, and web tools. -You CAN execute PowerShell scripts or run shell commands via discovered_tool_run_powershell for verification and testing. -Follow TDD and return success status or code changes. No pleasantries, no conversational filler. diff --git a/.gemini/agents/tier4-qa.md b/.gemini/agents/tier4-qa.md deleted file mode 100644 index 424176b..0000000 --- a/.gemini/agents/tier4-qa.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -name: tier4-qa -description: Stateless Tier 4 QA Agent for log analysis and diagnostics. -model: gemini-2.5-flash-lite -tools: - - read_file - - list_directory - - discovered_tool_search_files - - grep_search - - discovered_tool_get_file_summary - - discovered_tool_get_python_skeleton - - discovered_tool_get_code_outline - - discovered_tool_get_git_diff - - discovered_tool_web_search - - discovered_tool_fetch_url - - activate_skill - - discovered_tool_run_powershell - - discovered_tool_py_find_usages - - discovered_tool_py_get_imports - - discovered_tool_py_check_syntax - - discovered_tool_py_get_hierarchy - - discovered_tool_py_get_docstring - - discovered_tool_get_tree ---- -STRICT SYSTEM DIRECTIVE: You are a stateless Tier 4 QA Agent. -Your goal is to analyze errors, summarize logs, or verify tests. -You have access to tools for reading files, exploring the codebase, and web tools. -You CAN execute PowerShell scripts or run shell commands via discovered_tool_run_powershell for diagnostics. -ONLY output the requested analysis. No pleasantries. diff --git a/.gemini/policies/99-agent-full-autonomy.toml b/.gemini/policies/99-agent-full-autonomy.toml deleted file mode 100644 index d34f43d..0000000 --- a/.gemini/policies/99-agent-full-autonomy.toml +++ /dev/null @@ -1,269 +0,0 @@ -[[rule]] -toolName = "discovered_tool_fetch_url" -decision = "allow" -priority = 100 -description = "Allow discovered fetch_url tool." - -[[rule]] -toolName = "discovered_tool_get_file_slice" -decision = "allow" -priority = 100 -description = "Allow discovered get_file_slice tool." - -[[rule]] -toolName = "discovered_tool_get_file_summary" -decision = "allow" -priority = 100 -description = "Allow discovered get_file_summary tool." - -[[rule]] -toolName = "discovered_tool_get_git_diff" -decision = "allow" -priority = 100 -description = "Allow discovered get_git_diff tool." - -[[rule]] -toolName = "discovered_tool_get_tree" -decision = "allow" -priority = 100 -description = "Allow discovered get_tree tool." - -[[rule]] -toolName = "discovered_tool_get_ui_performance" -decision = "allow" -priority = 100 -description = "Allow discovered get_ui_performance tool." - -[[rule]] -toolName = "discovered_tool_list_directory" -decision = "allow" -priority = 100 -description = "Allow discovered list_directory tool." - -[[rule]] -toolName = "discovered_tool_py_check_syntax" -decision = "allow" -priority = 100 -description = "Allow discovered py_check_syntax tool." - -[[rule]] -toolName = "discovered_tool_py_find_usages" -decision = "allow" -priority = 100 -description = "Allow discovered py_find_usages tool." - -[[rule]] -toolName = "discovered_tool_py_get_class_summary" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_class_summary tool." - -[[rule]] -toolName = "discovered_tool_py_get_code_outline" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_code_outline tool." - -[[rule]] -toolName = "discovered_tool_py_get_definition" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_definition tool." - -[[rule]] -toolName = "discovered_tool_py_get_docstring" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_docstring tool." - -[[rule]] -toolName = "discovered_tool_py_get_hierarchy" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_hierarchy tool." - -[[rule]] -toolName = "discovered_tool_py_get_imports" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_imports tool." - -[[rule]] -toolName = "discovered_tool_py_get_signature" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_signature tool." - -[[rule]] -toolName = "discovered_tool_py_get_skeleton" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_skeleton tool." - -[[rule]] -toolName = "discovered_tool_py_get_var_declaration" -decision = "allow" -priority = 100 -description = "Allow discovered py_get_var_declaration tool." - -[[rule]] -toolName = "discovered_tool_py_set_signature" -decision = "allow" -priority = 100 -description = "Allow discovered py_set_signature tool." - -[[rule]] -toolName = "discovered_tool_py_set_var_declaration" -decision = "allow" -priority = 100 -description = "Allow discovered py_set_var_declaration tool." - -[[rule]] -toolName = "discovered_tool_py_update_definition" -decision = "allow" -priority = 100 -description = "Allow discovered py_update_definition tool." - -[[rule]] -toolName = "discovered_tool_read_file" -decision = "allow" -priority = 100 -description = "Allow discovered read_file tool." - -[[rule]] -toolName = "discovered_tool_run_powershell" -decision = "allow" -priority = 100 -description = "Allow discovered run_powershell tool." - -[[rule]] -toolName = "discovered_tool_search_files" -decision = "allow" -priority = 100 -description = "Allow discovered search_files tool." - -[[rule]] -toolName = "discovered_tool_set_file_slice" -decision = "allow" -priority = 100 -description = "Allow discovered set_file_slice tool." - -[[rule]] -toolName = "discovered_tool_web_search" -decision = "allow" -priority = 100 -description = "Allow discovered web_search tool." - -[[rule]] -toolName = "run_powershell" -decision = "allow" -priority = 100 -description = "Allow the base run_powershell tool with maximum priority." - -[[rule]] -toolName = "activate_skill" -decision = "allow" -priority = 990 -description = "Allow activate_skill." - -[[rule]] -toolName = "ask_user" -decision = "ask_user" -priority = 990 -description = "Allow ask_user." - -[[rule]] -toolName = "cli_help" -decision = "allow" -priority = 990 -description = "Allow cli_help." - -[[rule]] -toolName = "codebase_investigator" -decision = "allow" -priority = 990 -description = "Allow codebase_investigator." - -[[rule]] -toolName = "replace" -decision = "allow" -priority = 990 -description = "Allow replace." - -[[rule]] -toolName = "glob" -decision = "allow" -priority = 990 -description = "Allow glob." - -[[rule]] -toolName = "google_web_search" -decision = "allow" -priority = 990 -description = "Allow google_web_search." - -[[rule]] -toolName = "read_file" -decision = "allow" -priority = 990 -description = "Allow read_file." - -[[rule]] -toolName = "list_directory" -decision = "allow" -priority = 990 -description = "Allow list_directory." - -[[rule]] -toolName = "save_memory" -decision = "allow" -priority = 990 -description = "Allow save_memory." - -[[rule]] -toolName = "grep_search" -decision = "allow" -priority = 990 -description = "Allow grep_search." - -[[rule]] -toolName = "run_shell_command" -decision = "allow" -priority = 990 -description = "Allow run_shell_command." - -[[rule]] -toolName = "tier1-orchestrator" -decision = "allow" -priority = 990 -description = "Allow tier1-orchestrator." - -[[rule]] -toolName = "tier2-tech-lead" -decision = "allow" -priority = 990 -description = "Allow tier2-tech-lead." - -[[rule]] -toolName = "tier3-worker" -decision = "allow" -priority = 990 -description = "Allow tier3-worker." - -[[rule]] -toolName = "tier4-qa" -decision = "allow" -priority = 990 -description = "Allow tier4-qa." - -[[rule]] -toolName = "web_fetch" -decision = "allow" -priority = 990 -description = "Allow web_fetch." - -[[rule]] -toolName = "write_file" -decision = "allow" -priority = 990 -description = "Allow write_file." diff --git a/.gemini/settings.json b/.gemini/settings.json deleted file mode 100644 index aa239f4..0000000 --- a/.gemini/settings.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "workspace_folders": [ - "C:/projects/manual_slop", - "C:/projects/gencpp", - "C:/projects/VEFontCache-Odin" - ], - "experimental": { - "enableAgents": true - }, - "tools": { - "whitelist": [ - "*" - ], - "discoveryCommand": "powershell.exe -NoProfile -Command \"Get-Content .gemini/tools.json -Raw\"", - "callCommand": "scripts\\tool_call.exe" - }, - "hooks": { - "BeforeTool": [ - { - "matcher": "*", - "hooks": [ - { - "name": "manual-slop-bridge", - "type": "command", - "command": "python C:/projects/manual_slop/scripts/cli_tool_bridge.py" - } - ] - } - ] - }, - "hooksConfig": { - "enabled": true - } -} diff --git a/.gemini/skills/mma-orchestrator b/.gemini/skills/mma-orchestrator deleted file mode 120000 index 5b69d77..0000000 --- a/.gemini/skills/mma-orchestrator +++ /dev/null @@ -1 +0,0 @@ -C:/projects/manual_slop/mma-orchestrator \ No newline at end of file diff --git a/.gemini/skills/mma-tier1-orchestrator/SKILL.md b/.gemini/skills/mma-tier1-orchestrator/SKILL.md deleted file mode 100644 index 2371ce8..0000000 --- a/.gemini/skills/mma-tier1-orchestrator/SKILL.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -name: mma-tier1-orchestrator -description: Focused on product alignment, high-level planning, and track initialization. ---- - -# MMA Tier 1: Orchestrator - -You are the Tier 1 Orchestrator. Your role is to oversee the product direction and manage project/track initialization within the Conductor framework. - -## Primary Context Documents -Read at session start: `conductor/product.md`, `conductor/product-guidelines.md` - -## Architecture Fallback -When planning tracks that touch core systems, consult: -- `docs/guide_architecture.md`: Threading, events, AI client, HITL, frame-sync action catalog -- `docs/guide_tools.md`: MCP Bridge, Hook API endpoints, ApiHookClient methods -- `docs/guide_mma.md`: Ticket/Track structures, DAG engine, ConductorEngine, worker lifecycle -- `docs/guide_simulations.md`: live_gui fixture, Puppeteer pattern, mock provider - -## Responsibilities -- Maintain alignment with the product guidelines and definition. -- Define track boundaries and initialize new tracks (`/conductor:newTrack`). -- Set up the project environment (`/conductor:setup`). -- Delegate track execution to the Tier 2 Tech Lead. - -## Surgical Spec Protocol (MANDATORY) -When creating or refining tracks, you MUST: -1. **Audit** the codebase with `get_code_outline`, `py_get_definition`, `grep_search` before writing any spec. Document what exists with file:line refs. -2. **Spec gaps, not features** — frame requirements relative to what already exists. -3. **Write worker-ready tasks** — each specifies WHERE (file:line), WHAT (change), HOW (API call), SAFETY (thread constraints). -4. **For fix tracks** — list root cause candidates with code-level reasoning. -5. **Reference architecture docs** — link to relevant `docs/guide_*.md` sections. -6. **Map dependencies** — state execution order and blockers between tracks. - -See `activate_skill mma-orchestrator` for the full protocol and examples. - -## Limitations -- Do not execute tracks or implement features. -- Do not write code or perform low-level bug fixing. -- Keep context strictly focused on product definitions and high-level strategy. diff --git a/.gemini/skills/mma-tier2-tech-lead/SKILL.md b/.gemini/skills/mma-tier2-tech-lead/SKILL.md deleted file mode 100644 index 1d83eb7..0000000 --- a/.gemini/skills/mma-tier2-tech-lead/SKILL.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: mma-tier2-tech-lead -description: Focused on track execution, architectural design, and implementation oversight. ---- - -# MMA Tier 2: Tech Lead - -You are the Tier 2 Tech Lead. Your role is to manage the implementation of tracks (`/conductor:implement`), ensure architectural integrity, and oversee the work of Tier 3 and 4 sub-agents. - -## Architecture Fallback -When implementing tracks, consult these docs for threading, data flow, and module interactions: -- `docs/guide_architecture.md`: Thread domains, `_process_pending_gui_tasks` action catalog, AI client architecture, HITL blocking flow -- `docs/guide_tools.md`: MCP tools, Hook API endpoints, session logging -- `docs/guide_mma.md`: Ticket/Track structures, DAG engine, worker lifecycle -- `docs/guide_simulations.md`: Testing patterns, mock provider - -## Responsibilities -- Manage the execution of implementation tracks. -- Ensure alignment with `tech-stack.md` and project architecture. -- Break down tasks into specific technical steps for Tier 3 Workers. -- Maintain persistent context throughout a track's implementation phase (No Context Amnesia). -- Review implementations and coordinate bug fixes via Tier 4 QA. - -## Surgical Delegation Protocol -When delegating to Tier 3 workers, construct prompts that specify: -- **WHERE**: Exact file and line range to modify -- **WHAT**: The specific change (add function, modify dict, extend table) -- **HOW**: Which API calls, data structures, or patterns to use -- **SAFETY**: Thread-safety constraints (e.g., "push via `_pending_gui_tasks` with lock") - -Example prompt: `"In gui_2.py, modify _render_mma_dashboard (lines 2685-2699). Extend the token usage table from 3 to 5 columns by adding 'Model' and 'Est. Cost'. Use imgui.table_setup_column(). Import cost_tracker. Use 1-space indentation."` - -## Limitations -- Do not perform heavy implementation work directly; delegate to Tier 3. -- Delegate implementation tasks to Tier 3 Workers using `uv run python scripts/mma_exec.py --role tier3-worker "[PROMPT]"`. -- For error analysis of large logs, use `uv run python scripts/mma_exec.py --role tier4-qa "[PROMPT]"`. -- Minimize full file reads for large modules; rely on "Skeleton Views" and git diffs. diff --git a/.gemini/skills/mma-tier3-worker/SKILL.md b/.gemini/skills/mma-tier3-worker/SKILL.md deleted file mode 100644 index efbec14..0000000 --- a/.gemini/skills/mma-tier3-worker/SKILL.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -name: mma-tier3-worker -description: Focused on TDD implementation, surgical code changes, and following specific specs. ---- - -# MMA Tier 3: Worker - -You are the Tier 3 Worker. Your role is to implement specific, scoped technical requirements, follow Test-Driven Development (TDD), and make surgical code modifications. You operate in a stateless manner (Context Amnesia). - -## Responsibilities -- Implement code strictly according to the provided prompt and specifications. -- Write failing tests first, then implement the code to pass them. -- Ensure all changes are minimal, functional, and conform to the requested standards. -- Utilize provided tool access (read_file, write_file, etc.) to perform implementation and verification. - -## Limitations -- Do not make architectural decisions. -- Do not modify unrelated files beyond the immediate task scope. -- Always operate statelessly; assume each task starts with a clean context. -- Rely on "Skeleton Views" provided by Tier 2/Orchestrator for understanding dependencies. diff --git a/.gemini/skills/mma-tier4-qa/SKILL.md b/.gemini/skills/mma-tier4-qa/SKILL.md deleted file mode 100644 index d444bb6..0000000 --- a/.gemini/skills/mma-tier4-qa/SKILL.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: mma-tier4-qa -description: Focused on test analysis, error summarization, and bug reproduction. ---- - -# MMA Tier 4: QA Agent - -You are the Tier 4 QA Agent. Your role is to analyze error logs, summarize tracebacks, and help diagnose issues efficiently. You operate in a stateless manner (Context Amnesia). - -## Responsibilities -- Compress large stack traces or log files into concise, actionable summaries. -- Identify the root cause of test failures or runtime errors. -- Provide a brief, technical description of the required fix. -- Utilize provided diagnostic and exploration tools to verify failures. - -## Limitations -- Do not implement the fix directly. -- Ensure your output is extremely brief and focused. -- Always operate statelessly; assume each analysis starts with a clean context. diff --git a/.gemini/tools.json b/.gemini/tools.json deleted file mode 100644 index ef0b200..0000000 Binary files a/.gemini/tools.json and /dev/null differ diff --git a/.gemini/tools/fetch_url.json b/.gemini/tools/fetch_url.json deleted file mode 100644 index 4e79edd..0000000 --- a/.gemini/tools/fetch_url.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "fetch_url", - "description": "Fetch the full text content of a URL (stripped of HTML tags).", - "parameters": { - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "The full URL to fetch." - } - }, - "required": [ - "url" - ] - }, - "command": "python scripts/tool_call.py fetch_url" -} diff --git a/.gemini/tools/get_file_summary.json b/.gemini/tools/get_file_summary.json deleted file mode 100644 index bd1bd4c..0000000 --- a/.gemini/tools/get_file_summary.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "get_file_summary", - "description": "Get a compact heuristic summary of a file without reading its full content. For Python: imports, classes, methods, functions, constants. For TOML: table keys. For Markdown: headings. Others: line count + preview. Use this before read_file to decide if you need the full content.", - "parameters": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Absolute or relative path to the file to summarise." - } - }, - "required": [ - "path" - ] - }, - "command": "python scripts/tool_call.py get_file_summary" -} diff --git a/.gemini/tools/get_git_diff.json b/.gemini/tools/get_git_diff.json deleted file mode 100644 index c9fa04c..0000000 --- a/.gemini/tools/get_git_diff.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "get_git_diff", - "description": "Returns the git diff for a file or directory. Use this to review changes efficiently without reading entire files.", - "parameters": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path to the file or directory." - }, - "base_rev": { - "type": "string", - "description": "Base revision (e.g. 'HEAD', 'HEAD~1', or a commit hash). Defaults to 'HEAD'." - }, - "head_rev": { - "type": "string", - "description": "Head revision (optional)." - } - }, - "required": [ - "path" - ] - }, - "command": "python scripts/tool_call.py get_git_diff" -} diff --git a/.gemini/tools/py_get_code_outline.json b/.gemini/tools/py_get_code_outline.json deleted file mode 100644 index cc60f47..0000000 --- a/.gemini/tools/py_get_code_outline.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "py_get_code_outline", - "description": "Get a hierarchical outline of a code file. This returns classes, functions, and methods with their line ranges and brief docstrings. Use this to quickly map out a file's structure before reading specific sections.", - "parameters": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path to the code file (currently supports .py)." - } - }, - "required": [ - "path" - ] - }, - "command": "python scripts/tool_call.py py_get_code_outline" -} diff --git a/.gemini/tools/py_get_skeleton.json b/.gemini/tools/py_get_skeleton.json deleted file mode 100644 index 66a6a3f..0000000 --- a/.gemini/tools/py_get_skeleton.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "py_get_skeleton", - "description": "Get a skeleton view of a Python file. This returns all classes and function signatures with their docstrings, but replaces function bodies with '...'. Use this to understand module interfaces without reading the full implementation.", - "parameters": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path to the .py file." - } - }, - "required": [ - "path" - ] - }, - "command": "python scripts/tool_call.py py_get_skeleton" -} diff --git a/.gemini/tools/run_powershell.json b/.gemini/tools/run_powershell.json deleted file mode 100644 index 8b6ea96..0000000 --- a/.gemini/tools/run_powershell.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "run_powershell", - "description": "Run a PowerShell script within the project base_dir. Use this to create, edit, rename, or delete files and directories. stdout and stderr are returned to you as the result.", - "parameters": { - "type": "object", - "properties": { - "script": { - "type": "string", - "description": "The PowerShell script to execute." - } - }, - "required": [ - "script" - ] - }, - "command": "python scripts/tool_call.py run_powershell" -} diff --git a/.gemini/tools/search_files.json b/.gemini/tools/search_files.json deleted file mode 100644 index b1ac469..0000000 --- a/.gemini/tools/search_files.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "search_files", - "description": "Search for files matching a glob pattern within an allowed directory. Supports recursive patterns like '**/*.py'. Use this to find files by extension or name pattern.", - "parameters": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Absolute path to the directory to search within." - }, - "pattern": { - "type": "string", - "description": "Glob pattern, e.g. '*.py', '**/*.toml', 'src/**/*.rs'." - } - }, - "required": [ - "path", - "pattern" - ] - }, - "command": "python scripts/tool_call.py search_files" -} diff --git a/.gemini/tools/web_search.json b/.gemini/tools/web_search.json deleted file mode 100644 index f554d27..0000000 --- a/.gemini/tools/web_search.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "web_search", - "description": "Search the web using DuckDuckGo. Returns the top 5 search results with titles, URLs, and snippets.", - "parameters": { - "type": "object", - "properties": { - "query": { - "type": "string", - "description": "The search query." - } - }, - "required": [ - "query" - ] - }, - "command": "python scripts/tool_call.py web_search" -}