mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2025-12-17 14:05:12 +00:00
Added comprehensive prompt and tool usage documentation for multiple AI coding agents in both English and Chinese under the docs directory. Includes system prompts, tool usage guidelines, agent-specific instructions, and supporting assets for various agents such as Amp, Claude, GPT-5, and others.
742 lines
21 KiB
Markdown
742 lines
21 KiB
Markdown
## gpt-5-tools.json
|
||
|
||
```json
|
||
{
|
||
"tools": [
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "view",
|
||
"description": "View a file or directory. For files, optionally search within the file using a regex pattern or limit to a line range. Exclude the 'electron' folder by default unless explicitly requested.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"type": {
|
||
"type": "string",
|
||
"enum": [
|
||
"file",
|
||
"directory"
|
||
],
|
||
"description": "Whether to view a single file or a directory listing (up to 2 levels)."
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"description": "Path relative to the repository root."
|
||
},
|
||
"view_range": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "integer"
|
||
},
|
||
"minItems": 2,
|
||
"maxItems": 2,
|
||
"description": "Optional [start_line, end_line] 1-based inclusive range for files."
|
||
},
|
||
"search_query_regex": {
|
||
"type": "string",
|
||
"description": "Optional regex to search within file content (single-line regex)."
|
||
},
|
||
"case_sensitive": {
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Whether the regex search is case-sensitive."
|
||
},
|
||
"context_lines_before": {
|
||
"type": "integer",
|
||
"default": 5,
|
||
"description": "Lines of context to include before each regex match."
|
||
},
|
||
"context_lines_after": {
|
||
"type": "integer",
|
||
"default": 5,
|
||
"description": "Lines of context to include after each regex match."
|
||
}
|
||
},
|
||
"required": [
|
||
"type",
|
||
"path"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "grep-search",
|
||
"description": "Search across multiple files/directories or the whole codebase. Use for finding text/symbols across many files. Excludes 'electron/**' by default unless explicitly overridden.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"query": {
|
||
"type": "string",
|
||
"description": "Text or regex to search for."
|
||
},
|
||
"paths": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Optional list of directories or files to limit the search scope."
|
||
},
|
||
"include_globs": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "Optional glob patterns to include (e.g., 'src/**/*.ts')."
|
||
},
|
||
"exclude_globs": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"default": [
|
||
"electron/**"
|
||
],
|
||
"description": "Optional glob patterns to exclude. Defaults to excluding the 'electron' folder."
|
||
},
|
||
"case_sensitive": {
|
||
"type": "boolean",
|
||
"default": false,
|
||
"description": "Case sensitivity for the search."
|
||
},
|
||
"context_lines_before": {
|
||
"type": "integer",
|
||
"default": 5,
|
||
"description": "Lines of context before each match."
|
||
},
|
||
"context_lines_after": {
|
||
"type": "integer",
|
||
"default": 5,
|
||
"description": "Lines of context after each match."
|
||
},
|
||
"max_results": {
|
||
"type": "integer",
|
||
"default": 5000,
|
||
"description": "Limit the number of matches returned."
|
||
}
|
||
},
|
||
"required": [
|
||
"query"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "codebase-retrieval",
|
||
"description": "High-level retrieval across the current codebase to locate relevant files, classes, functions, or patterns when you don't know where to look.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"information_request": {
|
||
"type": "string",
|
||
"description": "Natural-language description of what you need to find."
|
||
}
|
||
},
|
||
"required": [
|
||
"information_request"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "git-commit-retrieval",
|
||
"description": "Use the repository’s commit history to find how similar changes were made in the past or why changes happened.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"information_request": {
|
||
"type": "string",
|
||
"description": "Question about past changes (e.g., how/why a feature was implemented)."
|
||
}
|
||
},
|
||
"required": [
|
||
"information_request"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "str-replace-editor",
|
||
"description": "Edit existing files safely. Use 'str_replace' for in-place replacements with explicit line ranges, or 'insert' to insert new content at a specific line.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"command": {
|
||
"type": "string",
|
||
"enum": [
|
||
"str_replace",
|
||
"insert"
|
||
],
|
||
"description": "Edit mode: 'str_replace' or 'insert'."
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"description": "Path of the file to edit, relative to repo root."
|
||
},
|
||
"instruction_reminder": {
|
||
"type": "string",
|
||
"description": "Must be exactly: 'ALWAYS BREAK DOWN EDITS INTO SMALLER CHUNKS OF AT MOST 150 LINES EACH.'"
|
||
},
|
||
"insert_line_1": {
|
||
"type": "integer",
|
||
"description": "For 'insert': 1-based line number after which to insert. Use 0 to insert at the very beginning."
|
||
},
|
||
"new_str_1": {
|
||
"type": "string",
|
||
"description": "For 'str_replace' and 'insert': the new content."
|
||
},
|
||
"old_str_1": {
|
||
"type": "string",
|
||
"description": "For 'str_replace': the exact original text to replace (must match exactly, including whitespace)."
|
||
},
|
||
"old_str_start_line_number_1": {
|
||
"type": "integer",
|
||
"description": "For 'str_replace': 1-based start line of old_str_1."
|
||
},
|
||
"old_str_end_line_number_1": {
|
||
"type": "integer",
|
||
"description": "For 'str_replace': 1-based end line of old_str_1 (inclusive)."
|
||
}
|
||
},
|
||
"required": [
|
||
"command",
|
||
"path",
|
||
"instruction_reminder"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "save-file",
|
||
"description": "Create a new file. Does not modify existing files.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"instructions_reminder": {
|
||
"type": "string",
|
||
"description": "Must be exactly: 'LIMIT THE FILE CONTENT TO AT MOST 300 LINES. IF MORE CONTENT NEEDS TO BE ADDED USE THE str-replace-editor TOOL TO EDIT THE FILE AFTER IT HAS BEEN CREATED.'"
|
||
},
|
||
"path": {
|
||
"type": "string",
|
||
"description": "Path for the new file, relative to repo root."
|
||
},
|
||
"file_content": {
|
||
"type": "string",
|
||
"description": "Content to write into the new file."
|
||
},
|
||
"add_last_line_newline": {
|
||
"type": "boolean",
|
||
"default": true,
|
||
"description": "Whether to ensure a trailing newline."
|
||
}
|
||
},
|
||
"required": [
|
||
"instructions_reminder",
|
||
"path",
|
||
"file_content"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "remove-files",
|
||
"description": "Delete files from the workspace in a reversible way.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"file_paths": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "List of file paths to remove, relative to repo root."
|
||
}
|
||
},
|
||
"required": [
|
||
"file_paths"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "launch-process",
|
||
"description": "Run a shell command. Use wait=true for short commands. OS is win32; shell is 'bash'.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"command": {
|
||
"type": "string",
|
||
"description": "The shell command to execute."
|
||
},
|
||
"wait": {
|
||
"type": "boolean",
|
||
"description": "Whether to wait for the process to complete."
|
||
},
|
||
"max_wait_seconds": {
|
||
"type": "integer",
|
||
"description": "Timeout in seconds when wait=true."
|
||
},
|
||
"cwd": {
|
||
"type": "string",
|
||
"description": "Absolute working directory for the command."
|
||
}
|
||
},
|
||
"required": [
|
||
"command",
|
||
"wait",
|
||
"max_wait_seconds",
|
||
"cwd"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "read-process",
|
||
"description": "Read output from a previously launched process.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"terminal_id": {
|
||
"type": "integer",
|
||
"description": "Target terminal ID."
|
||
},
|
||
"wait": {
|
||
"type": "boolean",
|
||
"description": "Whether to wait for completion."
|
||
},
|
||
"max_wait_seconds": {
|
||
"type": "integer",
|
||
"description": "Timeout when wait=true."
|
||
}
|
||
},
|
||
"required": [
|
||
"terminal_id",
|
||
"wait",
|
||
"max_wait_seconds"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "write-process",
|
||
"description": "Write input to a running process’s stdin.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"terminal_id": {
|
||
"type": "integer",
|
||
"description": "Target terminal ID."
|
||
},
|
||
"input_text": {
|
||
"type": "string",
|
||
"description": "Text to write to stdin."
|
||
}
|
||
},
|
||
"required": [
|
||
"terminal_id",
|
||
"input_text"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "kill-process",
|
||
"description": "Kill a running process by terminal ID.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"terminal_id": {
|
||
"type": "integer",
|
||
"description": "Target terminal ID."
|
||
}
|
||
},
|
||
"required": [
|
||
"terminal_id"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "list-processes",
|
||
"description": "List all known terminals created with the launch-process tool.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {},
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "diagnostics",
|
||
"description": "Return IDE issues (errors, warnings, etc.) for specified files.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"paths": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
},
|
||
"description": "List of file paths to get issues for."
|
||
}
|
||
},
|
||
"required": [
|
||
"paths"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "read-terminal",
|
||
"description": "Read the visible output from the active or most-recently used VSCode terminal.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"only_selected": {
|
||
"type": "boolean",
|
||
"description": "Whether to read only the selected text."
|
||
}
|
||
},
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "open-browser",
|
||
"description": "Open a URL in the default browser.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"description": "URL to open."
|
||
}
|
||
},
|
||
"required": [
|
||
"url"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "web-search",
|
||
"description": "Search the web using Google Custom Search API.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"query": {
|
||
"type": "string",
|
||
"description": "Search query."
|
||
},
|
||
"num_results": {
|
||
"type": "integer",
|
||
"minimum": 1,
|
||
"maximum": 10,
|
||
"default": 5,
|
||
"description": "Number of results to return (1–10)."
|
||
}
|
||
},
|
||
"required": [
|
||
"query"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "web-fetch",
|
||
"description": "Fetch a webpage and return its content in Markdown format.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"description": "URL to fetch."
|
||
}
|
||
},
|
||
"required": [
|
||
"url"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "view-range-untruncated",
|
||
"description": "View a specific line range from previously truncated content by reference ID.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"reference_id": {
|
||
"type": "string",
|
||
"description": "Reference ID from truncation footer."
|
||
},
|
||
"start_line": {
|
||
"type": "integer",
|
||
"description": "1-based inclusive start line."
|
||
},
|
||
"end_line": {
|
||
"type": "integer",
|
||
"description": "1-based inclusive end line."
|
||
}
|
||
},
|
||
"required": [
|
||
"reference_id",
|
||
"start_line",
|
||
"end_line"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "search-untruncated",
|
||
"description": "Search within previously untruncated content by reference ID.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"reference_id": {
|
||
"type": "string",
|
||
"description": "Reference ID from truncation footer."
|
||
},
|
||
"search_term": {
|
||
"type": "string",
|
||
"description": "Text to search for."
|
||
},
|
||
"context_lines": {
|
||
"type": "integer",
|
||
"default": 2,
|
||
"description": "Context lines around matches."
|
||
}
|
||
},
|
||
"required": [
|
||
"reference_id",
|
||
"search_term"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "view_tasklist",
|
||
"description": "View the current task list for the conversation.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {},
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "add_tasks",
|
||
"description": "Add one or more new tasks (and optional subtasks) to the task list.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tasks": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"properties": {
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"parent_task_id": {
|
||
"type": "string"
|
||
},
|
||
"after_task_id": {
|
||
"type": "string"
|
||
},
|
||
"state": {
|
||
"type": "string",
|
||
"enum": [
|
||
"NOT_STARTED",
|
||
"IN_PROGRESS",
|
||
"CANCELLED",
|
||
"COMPLETE"
|
||
]
|
||
}
|
||
},
|
||
"required": [
|
||
"name",
|
||
"description"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
"required": [
|
||
"tasks"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "update_tasks",
|
||
"description": "Update one or more tasks' properties (state, name, description). Prefer batch updates.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"tasks": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"properties": {
|
||
"task_id": {
|
||
"type": "string"
|
||
},
|
||
"state": {
|
||
"type": "string",
|
||
"enum": [
|
||
"NOT_STARTED",
|
||
"IN_PROGRESS",
|
||
"CANCELLED",
|
||
"COMPLETE"
|
||
]
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"required": [
|
||
"task_id"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
"required": [
|
||
"tasks"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "reorganize_tasklist",
|
||
"description": "Major restructuring of the task list using a full markdown representation.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"markdown": {
|
||
"type": "string",
|
||
"description": "Full task list in markdown with exactly one root task."
|
||
}
|
||
},
|
||
"required": [
|
||
"markdown"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "remember",
|
||
"description": "Store long-term memory that can be useful in future interactions.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"memory": {
|
||
"type": "string",
|
||
"description": "One concise sentence to remember."
|
||
}
|
||
},
|
||
"required": [
|
||
"memory"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"type": "function",
|
||
"function": {
|
||
"name": "render-mermaid",
|
||
"description": "Render a Mermaid diagram from the provided definition.",
|
||
"parameters": {
|
||
"type": "object",
|
||
"properties": {
|
||
"diagram_definition": {
|
||
"type": "string",
|
||
"description": "Mermaid definition code."
|
||
},
|
||
"title": {
|
||
"type": "string",
|
||
"description": "Optional title for the diagram."
|
||
}
|
||
},
|
||
"required": [
|
||
"diagram_definition"
|
||
],
|
||
"additionalProperties": false
|
||
}
|
||
}
|
||
}
|
||
]
|
||
}
|
||
``` |