changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "additionalProperties": false,
+ "properties": {
+ "responsePagination": {
+ "additionalProperties": false,
+ "description": "Pagination metadata for top-level bulk response pagination across results[]",
+ "properties": {
+ "charLength": {
+ "description": "Character length of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "charOffset": {
+ "description": "Character offset of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "currentPage": {
+ "description": "Current page number (1-indexed)",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "hasMore": {
+ "description": "Whether more pages are available after the current page",
+ "type": "boolean"
+ },
+ "totalChars": {
+ "description": "Total number of characters in the full output",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalPages": {
+ "description": "Total number of pages available",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "currentPage",
+ "totalPages",
+ "hasMore",
+ "charOffset",
+ "charLength",
+ "totalChars"
+ ],
+ "type": "object"
+ },
+ "results": {
+ "description": "Array of results, one per input query, discriminated by status",
+ "items": {
+ "anyOf": [
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": false,
+ "description": "The tool-specific result data",
+ "properties": {
+ "cached": {
+ "description": "Whether a cached fetch was reused",
+ "type": "boolean"
+ },
+ "content": {
+ "description": "File content as text for single-file requests",
+ "type": "string"
+ },
+ "endLine": {
+ "description": "Ending line number of the returned content",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "fileCount": {
+ "description": "Number of files fetched in directory mode",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "files": {
+ "description": "Files fetched in directory mode",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "path": {
+ "description": "Relative path within the fetched directory",
+ "type": "string"
+ },
+ "size": {
+ "description": "File size in bytes",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "type": {
+ "const": "file",
+ "description": "Directory fetch only returns files",
+ "type": "string"
+ }
+ },
+ "required": [
+ "path",
+ "size",
+ "type"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "hints": {
+ "description": "Contextual hints and suggestions for next steps or better queries",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "isPartial": {
+ "description": "Whether the returned file content is partial",
+ "type": "boolean"
+ },
+ "lastModified": {
+ "description": "Last modified timestamp for the file",
+ "type": "string"
+ },
+ "lastModifiedBy": {
+ "description": "Author of the last file modification",
+ "type": "string"
+ },
+ "localPath": {
+ "description": "Local filesystem path for directory fetch mode",
+ "type": "string"
+ },
+ "pagination": {
+ "additionalProperties": false,
+ "description": "Pagination metadata for partial file content",
+ "properties": {
+ "byteLength": {
+ "description": "Byte length of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "byteOffset": {
+ "description": "Byte offset of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "charLength": {
+ "description": "Character length of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "charOffset": {
+ "description": "Character offset of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "currentPage": {
+ "description": "Current page number (1-indexed)",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "hasMore": {
+ "description": "Whether more pages are available after the current page",
+ "type": "boolean"
+ },
+ "totalBytes": {
+ "description": "Total number of bytes in the full output",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalChars": {
+ "description": "Total number of characters in the full output",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalPages": {
+ "description": "Total number of pages available",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "currentPage",
+ "totalPages",
+ "hasMore"
+ ],
+ "type": "object"
+ },
+ "resolvedBranch": {
+ "description": "Resolved branch used to fetch the content when it adds new information beyond the input query",
+ "type": "string"
+ },
+ "startLine": {
+ "description": "Starting line number of the returned content",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "totalSize": {
+ "description": "Total fetched size in bytes",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "hasResults",
+ "description": "Indicates the query returned results successfully",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": {},
+ "description": "Empty result metadata (may contain hints or paging details)",
+ "properties": {},
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "empty",
+ "description": "Indicates the query returned no matching results",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": false,
+ "description": "Error details including message, type, and recovery hints",
+ "properties": {
+ "cwd": {
+ "description": "Working directory relevant to the error",
+ "type": "string"
+ },
+ "error": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "error": {
+ "description": "GitHub API error message",
+ "type": "string"
+ },
+ "hints": {
+ "description": "Provider-specific hints",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "rateLimitRemaining": {
+ "description": "Remaining API requests in the current rate limit window",
+ "type": "number"
+ },
+ "rateLimitReset": {
+ "description": "Rate limit reset time in milliseconds since epoch",
+ "type": "number"
+ },
+ "retryAfter": {
+ "description": "Retry-after delay in seconds",
+ "type": "number"
+ },
+ "scopesSuggestion": {
+ "description": "Suggested scopes needed to resolve the error",
+ "type": "string"
+ },
+ "status": {
+ "description": "HTTP status code",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "type": {
+ "description": "GitHub API error category",
+ "enum": [
+ "http",
+ "graphql",
+ "network",
+ "unknown"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "error",
+ "type"
+ ],
+ "type": "object"
+ }
+ ],
+ "description": "Error message or API error object"
+ },
+ "errorCode": {
+ "description": "Tool error code",
+ "type": "string"
+ },
+ "errorType": {
+ "description": "Tool-specific error type (e.g. symbol_not_found, size_limit)",
+ "type": "string"
+ },
+ "hints": {
+ "description": "Recovery hints",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "resolvedPath": {
+ "description": "Resolved filesystem path involved in the error",
+ "type": "string"
+ },
+ "searchRadius": {
+ "description": "LSP search radius when symbol not found",
+ "type": "number"
+ }
+ },
+ "required": [
+ "error"
+ ],
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "error",
+ "description": "Indicates the query encountered an error",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ }
+ ]
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "results"
+ ],
+ "type": "object"
+}