[ { "name": "read_file", "description": "Read the full UTF-8 content of a file within the allowed project paths. Use get_file_summary first to decide whether you need the full content.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Absolute or relative path to the file to read." } }, "required": [ "path" ] } }, { "name": "list_directory", "description": "List files and subdirectories within an allowed directory. Shows name, type (file/dir), and size. Use this to explore the project structure.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Absolute path to the directory to list." } }, "required": [ "path" ] } }, { "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.", "parametersJsonSchema": { "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" ] } }, { "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.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Absolute or relative path to the file to summarise." } }, "required": [ "path" ] } }, { "name": "get_python_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.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Path to the .py file." } }, "required": [ "path" ] } }, { "name": "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.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Path to the code file (currently supports .py)." } }, "required": [ "path" ] } }, { "name": "get_definition", "description": "Get the full source code of a specific class, function, or method definition. This is more efficient than reading the whole file if you know what you're looking for.", "parametersJsonSchema": { "type": "object", "properties": { "path": { "type": "string", "description": "Path to the .py file." }, "name": { "type": "string", "description": "The name of the class or function to retrieve. Use 'ClassName.method_name' for methods." } }, "required": [ "path", "name" ] } }, { "name": "get_git_diff", "description": "Returns the git diff for a file or directory. Use this to review changes efficiently without reading entire files.", "parametersJsonSchema": { "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" ] } }, { "name": "web_search", "description": "Search the web using DuckDuckGo. Returns the top 5 search results with titles, URLs, and snippets. Chain this with fetch_url to read specific pages.", "parametersJsonSchema": { "type": "object", "properties": { "query": { "type": "string", "description": "The search query." } }, "required": [ "query" ] } }, { "name": "fetch_url", "description": "Fetch the full text content of a URL (stripped of HTML tags). Use this after web_search to read relevant information from the web.", "parametersJsonSchema": { "type": "object", "properties": { "url": { "type": "string", "description": "The full URL to fetch." } }, "required": [ "url" ] } }, { "name": "get_ui_performance", "description": "Get a snapshot of the current UI performance metrics, including FPS, Frame Time (ms), CPU usage (%), and Input Lag (ms). Use this to diagnose UI slowness or verify that your changes haven't degraded the user experience.", "parametersJsonSchema": { "type": "object", "properties": {} } }, { "name": "run_powershell", "description": "Run a PowerShell script within the project base_dir. Use this to create, edit, rename, or delete files and directories. The working directory is set to base_dir automatically. stdout and stderr are returned to you as the result.", "parametersJsonSchema": { "type": "object", "properties": { "script": { "type": "string", "description": "The PowerShell script to execute." } }, "required": [ "script" ] } } ]