diff --git a/internal/toolsnaps/toolsnaps.go b/internal/toolsnaps/toolsnaps.go index 89d02e1ee..4b25904ed 100644 --- a/internal/toolsnaps/toolsnaps.go +++ b/internal/toolsnaps/toolsnaps.go @@ -67,15 +67,35 @@ func Test(toolName string, tool any) error { } func writeSnap(snapPath string, contents []byte) error { + // Sort the JSON keys recursively to ensure consistent output. + // We do this by unmarshaling and remarshaling, which ensures Go's JSON encoder + // sorts all map keys alphabetically at every level. + sortedJSON, err := sortJSONKeys(contents) + if err != nil { + return fmt.Errorf("failed to sort JSON keys: %w", err) + } + // Ensure the directory exists if err := os.MkdirAll(filepath.Dir(snapPath), 0700); err != nil { return fmt.Errorf("failed to create snapshot directory: %w", err) } // Write the snapshot file - if err := os.WriteFile(snapPath, contents, 0600); err != nil { + if err := os.WriteFile(snapPath, sortedJSON, 0600); err != nil { return fmt.Errorf("failed to write snapshot file: %w", err) } return nil } + +// sortJSONKeys recursively sorts all object keys in a JSON byte array by +// unmarshaling to map[string]any and remarshaling. Go's JSON encoder +// automatically sorts map keys alphabetically. +func sortJSONKeys(jsonData []byte) ([]byte, error) { + var data any + if err := json.Unmarshal(jsonData, &data); err != nil { + return nil, err + } + + return json.MarshalIndent(data, "", " ") +} diff --git a/internal/toolsnaps/toolsnaps_test.go b/internal/toolsnaps/toolsnaps_test.go index be9cadf7f..8a3d801ab 100644 --- a/internal/toolsnaps/toolsnaps_test.go +++ b/internal/toolsnaps/toolsnaps_test.go @@ -131,3 +131,124 @@ func TestMalformedSnapshotJSON(t *testing.T) { require.Error(t, err) assert.Contains(t, err.Error(), "failed to parse snapshot JSON for dummy", "expected error about malformed snapshot JSON") } + +func TestSortJSONKeys(t *testing.T) { + tests := []struct { + name string + input string + expected string + }{ + { + name: "simple object", + input: `{"z": 1, "a": 2, "m": 3}`, + expected: "{\n \"a\": 2,\n \"m\": 3,\n \"z\": 1\n}", + }, + { + name: "nested object", + input: `{"z": {"y": 1, "x": 2}, "a": 3}`, + expected: "{\n \"a\": 3,\n \"z\": {\n \"x\": 2,\n \"y\": 1\n }\n}", + }, + { + name: "array with objects", + input: `{"items": [{"z": 1, "a": 2}, {"y": 3, "b": 4}]}`, + expected: "{\n \"items\": [\n {\n \"a\": 2,\n \"z\": 1\n },\n {\n \"b\": 4,\n \"y\": 3\n }\n ]\n}", + }, + { + name: "deeply nested", + input: `{"z": {"y": {"x": 1, "a": 2}, "b": 3}, "m": 4}`, + expected: "{\n \"m\": 4,\n \"z\": {\n \"b\": 3,\n \"y\": {\n \"a\": 2,\n \"x\": 1\n }\n }\n}", + }, + { + name: "properties field like in toolsnaps", + input: `{"name": "test", "properties": {"repo": {"type": "string"}, "owner": {"type": "string"}, "page": {"type": "number"}}}`, + expected: "{\n \"name\": \"test\",\n \"properties\": {\n \"owner\": {\n \"type\": \"string\"\n },\n \"page\": {\n \"type\": \"number\"\n },\n \"repo\": {\n \"type\": \"string\"\n }\n }\n}", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + result, err := sortJSONKeys([]byte(tt.input)) + require.NoError(t, err) + assert.Equal(t, tt.expected, string(result)) + }) + } +} + +func TestSortJSONKeysIdempotent(t *testing.T) { + // Given a JSON string that's already sorted + input := `{"a": 1, "b": {"x": 2, "y": 3}, "c": [{"m": 4, "n": 5}]}` + + // When we sort it once + sorted1, err := sortJSONKeys([]byte(input)) + require.NoError(t, err) + + // And sort it again + sorted2, err := sortJSONKeys(sorted1) + require.NoError(t, err) + + // Then the results should be identical + assert.Equal(t, string(sorted1), string(sorted2)) +} + +func TestToolSnapKeysSorted(t *testing.T) { + withIsolatedWorkingDir(t) + + // Given a tool with fields that could be in any order + type complexTool struct { + Name string `json:"name"` + Description string `json:"description"` + Properties map[string]interface{} `json:"properties"` + Annotations map[string]interface{} `json:"annotations"` + } + + tool := complexTool{ + Name: "test_tool", + Description: "A test tool", + Properties: map[string]interface{}{ + "zzz": "last", + "aaa": "first", + "mmm": "middle", + "owner": map[string]interface{}{"type": "string", "description": "Owner"}, + "repo": map[string]interface{}{"type": "string", "description": "Repo"}, + }, + Annotations: map[string]interface{}{ + "readOnly": true, + "title": "Test", + }, + } + + // When we write the snapshot + t.Setenv("UPDATE_TOOLSNAPS", "true") + err := Test("complex", tool) + require.NoError(t, err) + + // Then the snapshot file should have sorted keys + snapJSON, err := os.ReadFile("__toolsnaps__/complex.snap") + require.NoError(t, err) + + // Verify that the JSON is properly sorted by checking key order + var parsed map[string]interface{} + err = json.Unmarshal(snapJSON, &parsed) + require.NoError(t, err) + + // Check that properties are sorted + propsJSON, _ := json.MarshalIndent(parsed["properties"], "", " ") + propsStr := string(propsJSON) + // The properties should have "aaa" before "mmm" before "zzz" + aaaIndex := -1 + mmmIndex := -1 + zzzIndex := -1 + for i, line := range propsStr { + if line == 'a' && i+2 < len(propsStr) && propsStr[i:i+3] == "aaa" { + aaaIndex = i + } + if line == 'm' && i+2 < len(propsStr) && propsStr[i:i+3] == "mmm" { + mmmIndex = i + } + if line == 'z' && i+2 < len(propsStr) && propsStr[i:i+3] == "zzz" { + zzzIndex = i + } + } + assert.Greater(t, mmmIndex, aaaIndex, "mmm should come after aaa") + assert.Greater(t, zzzIndex, mmmIndex, "zzz should come after mmm") +} diff --git a/pkg/github/__toolsnaps__/actions_get.snap b/pkg/github/__toolsnaps__/actions_get.snap index b5f3b85bd..ba128875e 100644 --- a/pkg/github/__toolsnaps__/actions_get.snap +++ b/pkg/github/__toolsnaps__/actions_get.snap @@ -5,16 +5,8 @@ }, "description": "Get details about specific GitHub Actions resources.\nUse this tool to get details about individual workflows, workflow runs, jobs, and artifacts by their unique IDs.\n", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo", - "resource_id" - ], "properties": { "method": { - "type": "string", "description": "The method to execute", "enum": [ "get_workflow", @@ -23,21 +15,29 @@ "download_workflow_run_artifact", "get_workflow_run_usage", "get_workflow_run_logs_url" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "resource_id": { - "type": "string", - "description": "The unique identifier of the resource. This will vary based on the \"method\" provided, so ensure you provide the correct ID:\n- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'get_workflow' method.\n- Provide a workflow run ID for 'get_workflow_run', 'get_workflow_run_usage', and 'get_workflow_run_logs_url' methods.\n- Provide an artifact ID for 'download_workflow_run_artifact' method.\n- Provide a job ID for 'get_workflow_job' method.\n" + "description": "The unique identifier of the resource. This will vary based on the \"method\" provided, so ensure you provide the correct ID:\n- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'get_workflow' method.\n- Provide a workflow run ID for 'get_workflow_run', 'get_workflow_run_usage', and 'get_workflow_run_logs_url' methods.\n- Provide an artifact ID for 'download_workflow_run_artifact' method.\n- Provide a job ID for 'get_workflow_job' method.\n", + "type": "string" } - } + }, + "required": [ + "method", + "owner", + "repo", + "resource_id" + ], + "type": "object" }, "name": "actions_get" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/actions_list.snap b/pkg/github/__toolsnaps__/actions_list.snap index 4bd029388..a7e9ec56b 100644 --- a/pkg/github/__toolsnaps__/actions_list.snap +++ b/pkg/github/__toolsnaps__/actions_list.snap @@ -5,68 +5,66 @@ }, "description": "Tools for listing GitHub Actions resources.\nUse this tool to list workflows in a repository, or list workflow runs, jobs, and artifacts for a specific workflow or workflow run.\n", "inputSchema": { - "type": "object", "properties": { "method": { - "type": "string", "description": "The action to perform", "enum": [ "list_workflows", "list_workflow_runs", "list_workflow_jobs", "list_workflow_run_artifacts" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (default: 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "per_page": { - "type": "number", "description": "Results per page for pagination (default: 30, max: 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "resource_id": { - "type": "string", - "description": "The unique identifier of the resource. This will vary based on the \"method\" provided, so ensure you provide the correct ID:\n- Do not provide any resource ID for 'list_workflows' method.\n- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'list_workflow_runs' method, or omit to list all workflow runs in the repository.\n- Provide a workflow run ID for 'list_workflow_jobs' and 'list_workflow_run_artifacts' methods.\n" + "description": "The unique identifier of the resource. This will vary based on the \"method\" provided, so ensure you provide the correct ID:\n- Do not provide any resource ID for 'list_workflows' method.\n- Provide a workflow ID or workflow file name (e.g. ci.yaml) for 'list_workflow_runs' method, or omit to list all workflow runs in the repository.\n- Provide a workflow run ID for 'list_workflow_jobs' and 'list_workflow_run_artifacts' methods.\n", + "type": "string" }, "workflow_jobs_filter": { - "type": "object", + "description": "Filters for workflow jobs. **ONLY** used when method is 'list_workflow_jobs'", "properties": { "filter": { - "type": "string", "description": "Filters jobs by their completed_at timestamp", "enum": [ "latest", "all" - ] + ], + "type": "string" } }, - "description": "Filters for workflow jobs. **ONLY** used when method is 'list_workflow_jobs'" + "type": "object" }, "workflow_runs_filter": { - "type": "object", + "description": "Filters for workflow runs. **ONLY** used when method is 'list_workflow_runs'", "properties": { "actor": { - "type": "string", - "description": "Filter to a specific GitHub user's workflow runs." + "description": "Filter to a specific GitHub user's workflow runs.", + "type": "string" }, "branch": { - "type": "string", - "description": "Filter workflow runs to a specific Git branch. Use the name of the branch." + "description": "Filter workflow runs to a specific Git branch. Use the name of the branch.", + "type": "string" }, "event": { - "type": "string", "description": "Filter workflow runs to a specific event type", "enum": [ "branch_protection_rule", @@ -101,10 +99,10 @@ "workflow_call", "workflow_dispatch", "workflow_run" - ] + ], + "type": "string" }, "status": { - "type": "string", "description": "Filter workflow runs to only runs with a specific status", "enum": [ "queued", @@ -112,17 +110,19 @@ "completed", "requested", "waiting" - ] + ], + "type": "string" } }, - "description": "Filters for workflow runs. **ONLY** used when method is 'list_workflow_runs'" + "type": "object" } }, "required": [ "method", "owner", "repo" - ] + ], + "type": "object" }, "name": "actions_list" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/actions_run_trigger.snap b/pkg/github/__toolsnaps__/actions_run_trigger.snap index 4e16f8958..c51501c17 100644 --- a/pkg/github/__toolsnaps__/actions_run_trigger.snap +++ b/pkg/github/__toolsnaps__/actions_run_trigger.snap @@ -5,19 +5,12 @@ }, "description": "Trigger GitHub Actions workflow operations, including running, re-running, cancelling workflow runs, and deleting workflow run logs.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo" - ], "properties": { "inputs": { - "type": "object", - "description": "Inputs the workflow accepts. Only used for 'run_workflow' method." + "description": "Inputs the workflow accepts. Only used for 'run_workflow' method.", + "type": "object" }, "method": { - "type": "string", "description": "The method to execute", "enum": [ "run_workflow", @@ -25,29 +18,36 @@ "rerun_failed_jobs", "cancel_workflow_run", "delete_workflow_run_logs" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "ref": { - "type": "string", - "description": "The git reference for the workflow. The reference can be a branch or tag name. Required for 'run_workflow' method." + "description": "The git reference for the workflow. The reference can be a branch or tag name. Required for 'run_workflow' method.", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The ID of the workflow run. Required for all methods except 'run_workflow'." + "description": "The ID of the workflow run. Required for all methods except 'run_workflow'.", + "type": "number" }, "workflow_id": { - "type": "string", - "description": "The workflow ID (numeric) or workflow file name (e.g., main.yml, ci.yaml). Required for 'run_workflow' method." + "description": "The workflow ID (numeric) or workflow file name (e.g., main.yml, ci.yaml). Required for 'run_workflow' method.", + "type": "string" } - } + }, + "required": [ + "method", + "owner", + "repo" + ], + "type": "object" }, "name": "actions_run_trigger" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/add_issue_comment.snap b/pkg/github/__toolsnaps__/add_issue_comment.snap index fb2a9e7b3..d273a582d 100644 --- a/pkg/github/__toolsnaps__/add_issue_comment.snap +++ b/pkg/github/__toolsnaps__/add_issue_comment.snap @@ -4,31 +4,31 @@ }, "description": "Add a comment to a specific issue in a GitHub repository. Use this tool to add comments to pull requests as well (in this case pass pull request number as issue_number), but only if user is not asking specifically to add review comments.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "issue_number", - "body" - ], "properties": { "body": { - "type": "string", - "description": "Comment content" + "description": "Comment content", + "type": "string" }, "issue_number": { - "type": "number", - "description": "Issue number to comment on" + "description": "Issue number to comment on", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "issue_number", + "body" + ], + "type": "object" }, "name": "add_issue_comment" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/add_project_item.snap b/pkg/github/__toolsnaps__/add_project_item.snap index 08f495370..e6a5cc3c4 100644 --- a/pkg/github/__toolsnaps__/add_project_item.snap +++ b/pkg/github/__toolsnaps__/add_project_item.snap @@ -4,44 +4,44 @@ }, "description": "Add a specific Project item for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number", - "item_type", - "item_id" - ], "properties": { "item_id": { - "type": "number", - "description": "The numeric ID of the issue or pull request to add to the project." + "description": "The numeric ID of the issue or pull request to add to the project.", + "type": "number" }, "item_type": { - "type": "string", "description": "The item's type, either issue or pull_request.", "enum": [ "issue", "pull_request" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number", + "item_type", + "item_id" + ], + "type": "object" }, "name": "add_project_item" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/cancel_workflow_run.snap b/pkg/github/__toolsnaps__/cancel_workflow_run.snap index 83eb31a7f..40bcae740 100644 --- a/pkg/github/__toolsnaps__/cancel_workflow_run.snap +++ b/pkg/github/__toolsnaps__/cancel_workflow_run.snap @@ -4,26 +4,26 @@ }, "description": "Cancel a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "cancel_workflow_run" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/create_branch.snap b/pkg/github/__toolsnaps__/create_branch.snap index 675a2de9c..a561247ef 100644 --- a/pkg/github/__toolsnaps__/create_branch.snap +++ b/pkg/github/__toolsnaps__/create_branch.snap @@ -4,30 +4,30 @@ }, "description": "Create a new branch in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "branch" - ], "properties": { "branch": { - "type": "string", - "description": "Name for new branch" + "description": "Name for new branch", + "type": "string" }, "from_branch": { - "type": "string", - "description": "Source branch (defaults to repo default)" + "description": "Source branch (defaults to repo default)", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "branch" + ], + "type": "object" }, "name": "create_branch" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/create_gist.snap b/pkg/github/__toolsnaps__/create_gist.snap index 465206ab4..0ef05aa4a 100644 --- a/pkg/github/__toolsnaps__/create_gist.snap +++ b/pkg/github/__toolsnaps__/create_gist.snap @@ -4,30 +4,30 @@ }, "description": "Create a new gist", "inputSchema": { - "type": "object", - "required": [ - "filename", - "content" - ], "properties": { "content": { - "type": "string", - "description": "Content for simple single-file gist creation" + "description": "Content for simple single-file gist creation", + "type": "string" }, "description": { - "type": "string", - "description": "Description of the gist" + "description": "Description of the gist", + "type": "string" }, "filename": { - "type": "string", - "description": "Filename for simple single-file gist creation" + "description": "Filename for simple single-file gist creation", + "type": "string" }, "public": { - "type": "boolean", + "default": false, "description": "Whether the gist is public", - "default": false + "type": "boolean" } - } + }, + "required": [ + "filename", + "content" + ], + "type": "object" }, "name": "create_gist" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/create_or_update_file.snap b/pkg/github/__toolsnaps__/create_or_update_file.snap index 2d9ae1144..9d28c8085 100644 --- a/pkg/github/__toolsnaps__/create_or_update_file.snap +++ b/pkg/github/__toolsnaps__/create_or_update_file.snap @@ -4,45 +4,45 @@ }, "description": "Create or update a single file in a GitHub repository. \nIf updating, you should provide the SHA of the file you want to update. Use this tool to create or update a file in a GitHub repository remotely; do not use it for local file operations.\n\nIn order to obtain the SHA of original file version before updating, use the following git command:\ngit ls-tree HEAD \u003cpath to file\u003e\n\nIf the SHA is not provided, the tool will attempt to acquire it by fetching the current file contents from the repository, which may lead to rewriting latest committed changes if the file has changed since last retrieval.\n", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "path", - "content", - "message", - "branch" - ], "properties": { "branch": { - "type": "string", - "description": "Branch to create/update the file in" + "description": "Branch to create/update the file in", + "type": "string" }, "content": { - "type": "string", - "description": "Content of the file" + "description": "Content of the file", + "type": "string" }, "message": { - "type": "string", - "description": "Commit message" + "description": "Commit message", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner (username or organization)" + "description": "Repository owner (username or organization)", + "type": "string" }, "path": { - "type": "string", - "description": "Path where to create/update the file" + "description": "Path where to create/update the file", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sha": { - "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being replaced.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "path", + "content", + "message", + "branch" + ], + "type": "object" }, "name": "create_or_update_file" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/create_pull_request.snap b/pkg/github/__toolsnaps__/create_pull_request.snap index 80f0b9863..cc22897fa 100644 --- a/pkg/github/__toolsnaps__/create_pull_request.snap +++ b/pkg/github/__toolsnaps__/create_pull_request.snap @@ -4,48 +4,48 @@ }, "description": "Create a new pull request in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "title", - "head", - "base" - ], "properties": { "base": { - "type": "string", - "description": "Branch to merge into" + "description": "Branch to merge into", + "type": "string" }, "body": { - "type": "string", - "description": "PR description" + "description": "PR description", + "type": "string" }, "draft": { - "type": "boolean", - "description": "Create as draft PR" + "description": "Create as draft PR", + "type": "boolean" }, "head": { - "type": "string", - "description": "Branch containing changes" + "description": "Branch containing changes", + "type": "string" }, "maintainer_can_modify": { - "type": "boolean", - "description": "Allow maintainer edits" + "description": "Allow maintainer edits", + "type": "boolean" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "title": { - "type": "string", - "description": "PR title" + "description": "PR title", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "title", + "head", + "base" + ], + "type": "object" }, "name": "create_pull_request" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/create_repository.snap b/pkg/github/__toolsnaps__/create_repository.snap index 290767c66..2cc4227b2 100644 --- a/pkg/github/__toolsnaps__/create_repository.snap +++ b/pkg/github/__toolsnaps__/create_repository.snap @@ -4,32 +4,32 @@ }, "description": "Create a new GitHub repository in your account or specified organization", "inputSchema": { - "type": "object", - "required": [ - "name" - ], "properties": { "autoInit": { - "type": "boolean", - "description": "Initialize with README" + "description": "Initialize with README", + "type": "boolean" }, "description": { - "type": "string", - "description": "Repository description" + "description": "Repository description", + "type": "string" }, "name": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "organization": { - "type": "string", - "description": "Organization to create the repository in (omit to create in your personal account)" + "description": "Organization to create the repository in (omit to create in your personal account)", + "type": "string" }, "private": { - "type": "boolean", - "description": "Whether repo should be private" + "description": "Whether repo should be private", + "type": "boolean" } - } + }, + "required": [ + "name" + ], + "type": "object" }, "name": "create_repository" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/delete_file.snap b/pkg/github/__toolsnaps__/delete_file.snap index b985154e8..ff110ff78 100644 --- a/pkg/github/__toolsnaps__/delete_file.snap +++ b/pkg/github/__toolsnaps__/delete_file.snap @@ -5,36 +5,36 @@ }, "description": "Delete a file from a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "path", - "message", - "branch" - ], "properties": { "branch": { - "type": "string", - "description": "Branch to delete the file from" + "description": "Branch to delete the file from", + "type": "string" }, "message": { - "type": "string", - "description": "Commit message" + "description": "Commit message", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner (username or organization)" + "description": "Repository owner (username or organization)", + "type": "string" }, "path": { - "type": "string", - "description": "Path to the file to delete" + "description": "Path to the file to delete", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "path", + "message", + "branch" + ], + "type": "object" }, "name": "delete_file" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/delete_project_item.snap b/pkg/github/__toolsnaps__/delete_project_item.snap index 430c83cc8..819fb8474 100644 --- a/pkg/github/__toolsnaps__/delete_project_item.snap +++ b/pkg/github/__toolsnaps__/delete_project_item.snap @@ -5,35 +5,35 @@ }, "description": "Delete a specific Project item for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number", - "item_id" - ], "properties": { "item_id": { - "type": "number", - "description": "The internal project item ID to delete from the project (not the issue or pull request ID)." + "description": "The internal project item ID to delete from the project (not the issue or pull request ID).", + "type": "number" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number", + "item_id" + ], + "type": "object" }, "name": "delete_project_item" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/delete_workflow_run_logs.snap b/pkg/github/__toolsnaps__/delete_workflow_run_logs.snap index fc9a5cd46..2e2de7331 100644 --- a/pkg/github/__toolsnaps__/delete_workflow_run_logs.snap +++ b/pkg/github/__toolsnaps__/delete_workflow_run_logs.snap @@ -5,26 +5,26 @@ }, "description": "Delete logs for a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "delete_workflow_run_logs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/dismiss_notification.snap b/pkg/github/__toolsnaps__/dismiss_notification.snap index b0125ba53..6c65d9ce0 100644 --- a/pkg/github/__toolsnaps__/dismiss_notification.snap +++ b/pkg/github/__toolsnaps__/dismiss_notification.snap @@ -4,25 +4,25 @@ }, "description": "Dismiss a notification by marking it as read or done", "inputSchema": { - "type": "object", - "required": [ - "threadID", - "state" - ], "properties": { "state": { - "type": "string", "description": "The new state of the notification (read/done)", "enum": [ "read", "done" - ] + ], + "type": "string" }, "threadID": { - "type": "string", - "description": "The ID of the notification thread" + "description": "The ID of the notification thread", + "type": "string" } - } + }, + "required": [ + "threadID", + "state" + ], + "type": "object" }, "name": "dismiss_notification" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/download_workflow_run_artifact.snap b/pkg/github/__toolsnaps__/download_workflow_run_artifact.snap index c4d89872c..e831b21d5 100644 --- a/pkg/github/__toolsnaps__/download_workflow_run_artifact.snap +++ b/pkg/github/__toolsnaps__/download_workflow_run_artifact.snap @@ -5,26 +5,26 @@ }, "description": "Get download URL for a workflow run artifact", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "artifact_id" - ], "properties": { "artifact_id": { - "type": "number", - "description": "The unique identifier of the artifact" + "description": "The unique identifier of the artifact", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "artifact_id" + ], + "type": "object" }, "name": "download_workflow_run_artifact" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/fork_repository.snap b/pkg/github/__toolsnaps__/fork_repository.snap index 18525a4f7..d635734a9 100644 --- a/pkg/github/__toolsnaps__/fork_repository.snap +++ b/pkg/github/__toolsnaps__/fork_repository.snap @@ -3,38 +3,38 @@ "title": "Fork repository" }, "description": "Fork a GitHub repository to your account or specified organization", - "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], - "properties": { - "organization": { - "type": "string", - "description": "Organization to fork to" - }, - "owner": { - "type": "string", - "description": "Repository owner" - }, - "repo": { - "type": "string", - "description": "Repository name" - } - } - }, - "name": "fork_repository", "icons": [ { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACuElEQVRIibWTTUhUYRiFn/fOdYyoydQxk4LEGzN3RudaLYL+qRaBQYsIItoHCW37ISNbRwUFLWoRZBEt+4EIooKoTdZQ6TWaNIgouzJkuGhG731b6JTojDNBntX3ne+c97zfH8wzZCbREm9bZ4hsQvkeDvl3+/r6xuYqEIvFFgdSvRuDqCrPMu6bVyUDrITTjdI1jR8KBbrj/fs3Q8WLp5p9Qx4BzVOUInIm058+XdAY0ztH6RLhSpAza1RlI2jENzhfqntfjAugEdTYMFEtS0GvonrKslNrZwWIhDYDMh6Wo4ODvaMfB9LPFaMHZGvJ8xHdAlzPDLx+8Smd/pE39SggAptnB2gwDBD6ReJvhSCpMFyq/uSa/NFX5UMJgGCaxywMwiH/bi4wh0SCOy1x5waiCUF2gnSW3AByEfSSZTsPVXFF9CDC4ALx7xU0ocLA87x8tG7ZHRUShsheVMKInMy46culArIj317WRpd7KB2GsAl4bKoccN2330t5ALBsJ7ASTvecoun6hNNt2U5QbM0oRip8E6Wt0gCUFPC12FKoGFnX0BgBDtVGG3/W1qzqz2a/5IrpLGt9pLahvhPhCKrnsiPDT2dqZv1kgGQyGc4FZg+wr8I93F6y0DzY29s7XlHAnw7j7dswgg2oRCYZPTBluzk51VEwXmQG0k8qbGRuWHbqiWWn/qlY0Uv+n5j3gKKvaCaSyeSimrqms4hsB4kurW9c0bSs/pnneflyXrOcACCn5jWEPSr0AAgczvlVTVT+ykojFlvTZNmOWvHU8QJnJVInLNtR2163vJy/7B0EpjYAqBhugVMVF8A3goZy/rJHFGa8P4fpCXosHm9PqwbiwzHAqyLvlvPP+dEKWG23dyh6C1g0RY0Jsv+Dm77/XwIAWlpbVzJh7gLAnHjw8d27z5V65xW/AVGM6Ekx9nZCAAAAAElFTkSuQmCC", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACuElEQVRIibWTTUhUYRiFn/fOdYyoydQxk4LEGzN3RudaLYL+qRaBQYsIItoHCW37ISNbRwUFLWoRZBEt+4EIooKoTdZQ6TWaNIgouzJkuGhG731b6JTojDNBntX3ne+c97zfH8wzZCbREm9bZ4hsQvkeDvl3+/r6xuYqEIvFFgdSvRuDqCrPMu6bVyUDrITTjdI1jR8KBbrj/fs3Q8WLp5p9Qx4BzVOUInIm058+XdAY0ztH6RLhSpAza1RlI2jENzhfqntfjAugEdTYMFEtS0GvonrKslNrZwWIhDYDMh6Wo4ODvaMfB9LPFaMHZGvJ8xHdAlzPDLx+8Smd/pE39SggAptnB2gwDBD6ReJvhSCpMFyq/uSa/NFX5UMJgGCaxywMwiH/bi4wh0SCOy1x5waiCUF2gnSW3AByEfSSZTsPVXFF9CDC4ALx7xU0ocLA87x8tG7ZHRUShsheVMKInMy46culArIj317WRpd7KB2GsAl4bKoccN2330t5ALBsJ7ASTvecoun6hNNt2U5QbM0oRip8E6Wt0gCUFPC12FKoGFnX0BgBDtVGG3/W1qzqz2a/5IrpLGt9pLahvhPhCKrnsiPDT2dqZv1kgGQyGc4FZg+wr8I93F6y0DzY29s7XlHAnw7j7dswgg2oRCYZPTBluzk51VEwXmQG0k8qbGRuWHbqiWWn/qlY0Uv+n5j3gKKvaCaSyeSimrqms4hsB4kurW9c0bSs/pnneflyXrOcACCn5jWEPSr0AAgczvlVTVT+ykojFlvTZNmOWvHU8QJnJVInLNtR2163vJy/7B0EpjYAqBhugVMVF8A3goZy/rJHFGa8P4fpCXosHm9PqwbiwzHAqyLvlvPP+dEKWG23dyh6C1g0RY0Jsv+Dm77/XwIAWlpbVzJh7gLAnHjw8d27z5V65xW/AVGM6Ekx9nZCAAAAAElFTkSuQmCC", "theme": "light" }, { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABoUlEQVRIibWUPS+EQRSFz0hsxaIgIZHYllDYiiiUEn6Bn0Dho6Nhf4GPjkYn8ZEgGqFRSNBoVTQKdhEROsk+mrt2svvu7Gutk7yZzJlz77nzztyR/hmulADSkkYk5SQdO+c+QwmAZkkTktolXTjnbkLiDJCniHsgFdCnTFNAHliuJE6bYANoAYaBF+AwYHBkmiGgFdi0HINR4lmrotXjVoG3gMEbsOLN2yzHTIFr8PRZG3s9rs/jo5At0fd6fFk1TfY/X4A14MyqmQrsYNo0pxbzCtwBTZUCUsAh8GHCKaDspnl6ZyZ3FnMA9AR2/BOYBzJVhUV9BshHrTVEkZKeJPXHNZA0IOkxttrrhzkgGdAlgXnTLv3GIAHsEh87QGNUrooHaEajkoYlFXYxaeO2je+SLp1z57Grr2J4DvwqWaVDrhv+3SAWrMvXgWcgZ10b3a01GuwDX8CWfV/AXr2Sd9lVXPC4ReM6q8XHOYMOG2897rZkrXZY0+WAK6DHHsRr4xJ/NjCTcXstC/gAxuPEBju5xKRb0phNT5xzD7UUW3d8A4p92DZKdSwEAAAAAElFTkSuQmCC", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABoUlEQVRIibWUPS+EQRSFz0hsxaIgIZHYllDYiiiUEn6Bn0Dho6Nhf4GPjkYn8ZEgGqFRSNBoVTQKdhEROsk+mrt2svvu7Gutk7yZzJlz77nzztyR/hmulADSkkYk5SQdO+c+QwmAZkkTktolXTjnbkLiDJCniHsgFdCnTFNAHliuJE6bYANoAYaBF+AwYHBkmiGgFdi0HINR4lmrotXjVoG3gMEbsOLN2yzHTIFr8PRZG3s9rs/jo5At0fd6fFk1TfY/X4A14MyqmQrsYNo0pxbzCtwBTZUCUsAh8GHCKaDspnl6ZyZ3FnMA9AR2/BOYBzJVhUV9BshHrTVEkZKeJPXHNZA0IOkxttrrhzkgGdAlgXnTLv3GIAHsEh87QGNUrooHaEajkoYlFXYxaeO2je+SLp1z57Grr2J4DvwqWaVDrhv+3SAWrMvXgWcgZ10b3a01GuwDX8CWfV/AXr2Sd9lVXPC4ReM6q8XHOYMOG2897rZkrXZY0+WAK6DHHsRr4xJ/NjCTcXstC/gAxuPEBju5xKRb0phNT5xzD7UUW3d8A4p92DZKdSwEAAAAAElFTkSuQmCC", "theme": "dark" } - ] + ], + "inputSchema": { + "properties": { + "organization": { + "description": "Organization to fork to", + "type": "string" + }, + "owner": { + "description": "Repository owner", + "type": "string" + }, + "repo": { + "description": "Repository name", + "type": "string" + } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" + }, + "name": "fork_repository" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_code_scanning_alert.snap b/pkg/github/__toolsnaps__/get_code_scanning_alert.snap index 9e46b960a..2a65aefa6 100644 --- a/pkg/github/__toolsnaps__/get_code_scanning_alert.snap +++ b/pkg/github/__toolsnaps__/get_code_scanning_alert.snap @@ -5,26 +5,26 @@ }, "description": "Get details of a specific code scanning alert in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "alertNumber" - ], "properties": { "alertNumber": { - "type": "number", - "description": "The number of the alert." + "description": "The number of the alert.", + "type": "number" }, "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "alertNumber" + ], + "type": "object" }, "name": "get_code_scanning_alert" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_commit.snap b/pkg/github/__toolsnaps__/get_commit.snap index c6b96d5ed..9e2346b59 100644 --- a/pkg/github/__toolsnaps__/get_commit.snap +++ b/pkg/github/__toolsnaps__/get_commit.snap @@ -5,42 +5,42 @@ }, "description": "Get details for a commit from a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "sha" - ], "properties": { "include_diff": { - "type": "boolean", + "default": true, "description": "Whether to include file diffs and stats in the response. Default is true.", - "default": true + "type": "boolean" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sha": { - "type": "string", - "description": "Commit SHA, branch name, or tag name" + "description": "Commit SHA, branch name, or tag name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "sha" + ], + "type": "object" }, "name": "get_commit" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_dependabot_alert.snap b/pkg/github/__toolsnaps__/get_dependabot_alert.snap index a517809e2..78ff827d2 100644 --- a/pkg/github/__toolsnaps__/get_dependabot_alert.snap +++ b/pkg/github/__toolsnaps__/get_dependabot_alert.snap @@ -5,26 +5,26 @@ }, "description": "Get details of a specific dependabot alert in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "alertNumber" - ], "properties": { "alertNumber": { - "type": "number", - "description": "The number of the alert." + "description": "The number of the alert.", + "type": "number" }, "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "alertNumber" + ], + "type": "object" }, "name": "get_dependabot_alert" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_discussion.snap b/pkg/github/__toolsnaps__/get_discussion.snap index feef0f057..b931afe79 100644 --- a/pkg/github/__toolsnaps__/get_discussion.snap +++ b/pkg/github/__toolsnaps__/get_discussion.snap @@ -5,26 +5,26 @@ }, "description": "Get a specific discussion by ID", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "discussionNumber" - ], "properties": { "discussionNumber": { - "type": "number", - "description": "Discussion Number" + "description": "Discussion Number", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "discussionNumber" + ], + "type": "object" }, "name": "get_discussion" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_discussion_comments.snap b/pkg/github/__toolsnaps__/get_discussion_comments.snap index 3af5edc8c..f9e609565 100644 --- a/pkg/github/__toolsnaps__/get_discussion_comments.snap +++ b/pkg/github/__toolsnaps__/get_discussion_comments.snap @@ -5,36 +5,36 @@ }, "description": "Get comments from a discussion", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "discussionNumber" - ], "properties": { "after": { - "type": "string", - "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs." + "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs.", + "type": "string" }, "discussionNumber": { - "type": "number", - "description": "Discussion Number" + "description": "Discussion Number", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "discussionNumber" + ], + "type": "object" }, "name": "get_discussion_comments" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_file_contents.snap b/pkg/github/__toolsnaps__/get_file_contents.snap index 638452fe7..94b7aeeda 100644 --- a/pkg/github/__toolsnaps__/get_file_contents.snap +++ b/pkg/github/__toolsnaps__/get_file_contents.snap @@ -5,34 +5,34 @@ }, "description": "Get the contents of a file or directory from a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner (username or organization)" + "description": "Repository owner (username or organization)", + "type": "string" }, "path": { - "type": "string", + "default": "/", "description": "Path to file/directory", - "default": "/" + "type": "string" }, "ref": { - "type": "string", - "description": "Accepts optional git refs such as `refs/tags/{tag}`, `refs/heads/{branch}` or `refs/pull/{pr_number}/head`" + "description": "Accepts optional git refs such as `refs/tags/{tag}`, `refs/heads/{branch}` or `refs/pull/{pr_number}/head`", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sha": { - "type": "string", - "description": "Accepts optional commit SHA. If specified, it will be used instead of ref" + "description": "Accepts optional commit SHA. If specified, it will be used instead of ref", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "get_file_contents" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_gist.snap b/pkg/github/__toolsnaps__/get_gist.snap index 4d2661822..ef316937f 100644 --- a/pkg/github/__toolsnaps__/get_gist.snap +++ b/pkg/github/__toolsnaps__/get_gist.snap @@ -5,16 +5,16 @@ }, "description": "Get gist content of a particular gist, by gist ID", "inputSchema": { - "type": "object", - "required": [ - "gist_id" - ], "properties": { "gist_id": { - "type": "string", - "description": "The ID of the gist" + "description": "The ID of the gist", + "type": "string" } - } + }, + "required": [ + "gist_id" + ], + "type": "object" }, "name": "get_gist" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_global_security_advisory.snap b/pkg/github/__toolsnaps__/get_global_security_advisory.snap index 18c30425a..97b81d17d 100644 --- a/pkg/github/__toolsnaps__/get_global_security_advisory.snap +++ b/pkg/github/__toolsnaps__/get_global_security_advisory.snap @@ -5,16 +5,16 @@ }, "description": "Get a global security advisory", "inputSchema": { - "type": "object", - "required": [ - "ghsaId" - ], "properties": { "ghsaId": { - "type": "string", - "description": "GitHub Security Advisory ID (format: GHSA-xxxx-xxxx-xxxx)." + "description": "GitHub Security Advisory ID (format: GHSA-xxxx-xxxx-xxxx).", + "type": "string" } - } + }, + "required": [ + "ghsaId" + ], + "type": "object" }, "name": "get_global_security_advisory" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_job_logs.snap b/pkg/github/__toolsnaps__/get_job_logs.snap index 8b2319527..575182c0b 100644 --- a/pkg/github/__toolsnaps__/get_job_logs.snap +++ b/pkg/github/__toolsnaps__/get_job_logs.snap @@ -5,42 +5,42 @@ }, "description": "Download logs for a specific workflow job or efficiently get all failed job logs for a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "failed_only": { - "type": "boolean", - "description": "When true, gets logs for all failed jobs in run_id" + "description": "When true, gets logs for all failed jobs in run_id", + "type": "boolean" }, "job_id": { - "type": "number", - "description": "The unique identifier of the workflow job (required for single job logs)" + "description": "The unique identifier of the workflow job (required for single job logs)", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "return_content": { - "type": "boolean", - "description": "Returns actual log content instead of URLs" + "description": "Returns actual log content instead of URLs", + "type": "boolean" }, "run_id": { - "type": "number", - "description": "Workflow run ID (required when using failed_only)" + "description": "Workflow run ID (required when using failed_only)", + "type": "number" }, "tail_lines": { - "type": "number", + "default": 500, "description": "Number of lines to return from the end of the log", - "default": 500 + "type": "number" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "get_job_logs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_latest_release.snap b/pkg/github/__toolsnaps__/get_latest_release.snap index 23b551a0f..760d8f812 100644 --- a/pkg/github/__toolsnaps__/get_latest_release.snap +++ b/pkg/github/__toolsnaps__/get_latest_release.snap @@ -5,21 +5,21 @@ }, "description": "Get the latest release in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "get_latest_release" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_me.snap b/pkg/github/__toolsnaps__/get_me.snap index e6d02929f..4d7d2573b 100644 --- a/pkg/github/__toolsnaps__/get_me.snap +++ b/pkg/github/__toolsnaps__/get_me.snap @@ -5,8 +5,8 @@ }, "description": "Get details of the authenticated GitHub user. Use this when a request is about the user's own profile for GitHub. Or when information is missing to build other tool calls.", "inputSchema": { - "type": "object", - "properties": {} + "properties": {}, + "type": "object" }, "name": "get_me" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_notification_details.snap b/pkg/github/__toolsnaps__/get_notification_details.snap index de197f2b1..48842229f 100644 --- a/pkg/github/__toolsnaps__/get_notification_details.snap +++ b/pkg/github/__toolsnaps__/get_notification_details.snap @@ -5,16 +5,16 @@ }, "description": "Get detailed information for a specific GitHub notification, always call this tool when the user asks for details about a specific notification, if you don't know the ID list notifications first.", "inputSchema": { - "type": "object", - "required": [ - "notificationID" - ], "properties": { "notificationID": { - "type": "string", - "description": "The ID of the notification" + "description": "The ID of the notification", + "type": "string" } - } + }, + "required": [ + "notificationID" + ], + "type": "object" }, "name": "get_notification_details" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_project.snap b/pkg/github/__toolsnaps__/get_project.snap index 8194b7358..6ff320fe8 100644 --- a/pkg/github/__toolsnaps__/get_project.snap +++ b/pkg/github/__toolsnaps__/get_project.snap @@ -5,30 +5,30 @@ }, "description": "Get Project for a user or org", "inputSchema": { - "type": "object", - "required": [ - "project_number", - "owner_type", - "owner" - ], "properties": { "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number" + "description": "The project's number", + "type": "number" } - } + }, + "required": [ + "project_number", + "owner_type", + "owner" + ], + "type": "object" }, "name": "get_project" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_project_field.snap b/pkg/github/__toolsnaps__/get_project_field.snap index 0df557a03..9d884a20f 100644 --- a/pkg/github/__toolsnaps__/get_project_field.snap +++ b/pkg/github/__toolsnaps__/get_project_field.snap @@ -5,35 +5,35 @@ }, "description": "Get Project field for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number", - "field_id" - ], "properties": { "field_id": { - "type": "number", - "description": "The field's id." + "description": "The field's id.", + "type": "number" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number", + "field_id" + ], + "type": "object" }, "name": "get_project_field" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_project_item.snap b/pkg/github/__toolsnaps__/get_project_item.snap index d77c49c1e..202bcc53e 100644 --- a/pkg/github/__toolsnaps__/get_project_item.snap +++ b/pkg/github/__toolsnaps__/get_project_item.snap @@ -5,42 +5,42 @@ }, "description": "Get a specific Project item for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number", - "item_id" - ], "properties": { "fields": { - "type": "array", "description": "Specific list of field IDs to include in the response (e.g. [\"102589\", \"985201\", \"169875\"]). If not provided, only the title field is included.", "items": { "type": "string" - } + }, + "type": "array" }, "item_id": { - "type": "number", - "description": "The item's ID." + "description": "The item's ID.", + "type": "number" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number", + "item_id" + ], + "type": "object" }, "name": "get_project_item" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_release_by_tag.snap b/pkg/github/__toolsnaps__/get_release_by_tag.snap index 77f19488c..6e6d30e98 100644 --- a/pkg/github/__toolsnaps__/get_release_by_tag.snap +++ b/pkg/github/__toolsnaps__/get_release_by_tag.snap @@ -5,26 +5,26 @@ }, "description": "Get a specific release by its tag name in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "tag" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "tag": { - "type": "string", - "description": "Tag name (e.g., 'v1.0.0')" + "description": "Tag name (e.g., 'v1.0.0')", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "tag" + ], + "type": "object" }, "name": "get_release_by_tag" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_repository_tree.snap b/pkg/github/__toolsnaps__/get_repository_tree.snap index 882462883..c810d1e20 100644 --- a/pkg/github/__toolsnaps__/get_repository_tree.snap +++ b/pkg/github/__toolsnaps__/get_repository_tree.snap @@ -5,34 +5,34 @@ }, "description": "Get the tree structure (files and directories) of a GitHub repository at a specific ref or SHA", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner (username or organization)" + "description": "Repository owner (username or organization)", + "type": "string" }, "path_filter": { - "type": "string", - "description": "Optional path prefix to filter the tree results (e.g., 'src/' to only show files in the src directory)" + "description": "Optional path prefix to filter the tree results (e.g., 'src/' to only show files in the src directory)", + "type": "string" }, "recursive": { - "type": "boolean", + "default": false, "description": "Setting this parameter to true returns the objects or subtrees referenced by the tree. Default is false", - "default": false + "type": "boolean" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "tree_sha": { - "type": "string", - "description": "The SHA1 value or ref (branch or tag) name of the tree. Defaults to the repository's default branch" + "description": "The SHA1 value or ref (branch or tag) name of the tree. Defaults to the repository's default branch", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "get_repository_tree" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_secret_scanning_alert.snap b/pkg/github/__toolsnaps__/get_secret_scanning_alert.snap index 4d55011da..2789cfbab 100644 --- a/pkg/github/__toolsnaps__/get_secret_scanning_alert.snap +++ b/pkg/github/__toolsnaps__/get_secret_scanning_alert.snap @@ -5,26 +5,26 @@ }, "description": "Get details of a specific secret scanning alert in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "alertNumber" - ], "properties": { "alertNumber": { - "type": "number", - "description": "The number of the alert." + "description": "The number of the alert.", + "type": "number" }, "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "alertNumber" + ], + "type": "object" }, "name": "get_secret_scanning_alert" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_tag.snap b/pkg/github/__toolsnaps__/get_tag.snap index e33f5c2e4..126e8a999 100644 --- a/pkg/github/__toolsnaps__/get_tag.snap +++ b/pkg/github/__toolsnaps__/get_tag.snap @@ -5,26 +5,26 @@ }, "description": "Get details about a specific git tag in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "tag" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "tag": { - "type": "string", - "description": "Tag name" + "description": "Tag name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "tag" + ], + "type": "object" }, "name": "get_tag" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_team_members.snap b/pkg/github/__toolsnaps__/get_team_members.snap index 5b7f090fe..4cde7237c 100644 --- a/pkg/github/__toolsnaps__/get_team_members.snap +++ b/pkg/github/__toolsnaps__/get_team_members.snap @@ -5,21 +5,21 @@ }, "description": "Get member usernames of a specific team in an organization. Limited to organizations accessible with current credentials", "inputSchema": { - "type": "object", - "required": [ - "org", - "team_slug" - ], "properties": { "org": { - "type": "string", - "description": "Organization login (owner) that contains the team." + "description": "Organization login (owner) that contains the team.", + "type": "string" }, "team_slug": { - "type": "string", - "description": "Team slug" + "description": "Team slug", + "type": "string" } - } + }, + "required": [ + "org", + "team_slug" + ], + "type": "object" }, "name": "get_team_members" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_teams.snap b/pkg/github/__toolsnaps__/get_teams.snap index 595dd262d..946364bad 100644 --- a/pkg/github/__toolsnaps__/get_teams.snap +++ b/pkg/github/__toolsnaps__/get_teams.snap @@ -5,13 +5,13 @@ }, "description": "Get details of the teams the user is a member of. Limited to organizations accessible with current credentials", "inputSchema": { - "type": "object", "properties": { "user": { - "type": "string", - "description": "Username to get teams for. If not provided, uses the authenticated user." + "description": "Username to get teams for. If not provided, uses the authenticated user.", + "type": "string" } - } + }, + "type": "object" }, "name": "get_teams" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_workflow_run.snap b/pkg/github/__toolsnaps__/get_workflow_run.snap index 37921ffad..e58ea0ba2 100644 --- a/pkg/github/__toolsnaps__/get_workflow_run.snap +++ b/pkg/github/__toolsnaps__/get_workflow_run.snap @@ -5,26 +5,26 @@ }, "description": "Get details of a specific workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "get_workflow_run" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_workflow_run_logs.snap b/pkg/github/__toolsnaps__/get_workflow_run_logs.snap index 77fb619b7..8e76fbfc3 100644 --- a/pkg/github/__toolsnaps__/get_workflow_run_logs.snap +++ b/pkg/github/__toolsnaps__/get_workflow_run_logs.snap @@ -5,26 +5,26 @@ }, "description": "Download logs for a specific workflow run (EXPENSIVE: downloads ALL logs as ZIP. Consider using get_job_logs with failed_only=true for debugging failed jobs)", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "get_workflow_run_logs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/get_workflow_run_usage.snap b/pkg/github/__toolsnaps__/get_workflow_run_usage.snap index c9fe49f96..40069b836 100644 --- a/pkg/github/__toolsnaps__/get_workflow_run_usage.snap +++ b/pkg/github/__toolsnaps__/get_workflow_run_usage.snap @@ -5,26 +5,26 @@ }, "description": "Get usage metrics for a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "get_workflow_run_usage" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/issue_read.snap b/pkg/github/__toolsnaps__/issue_read.snap index c6a9e7306..21aa361f5 100644 --- a/pkg/github/__toolsnaps__/issue_read.snap +++ b/pkg/github/__toolsnaps__/issue_read.snap @@ -5,48 +5,48 @@ }, "description": "Get information about a specific issue in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo", - "issue_number" - ], "properties": { "issue_number": { - "type": "number", - "description": "The number of the issue" + "description": "The number of the issue", + "type": "number" }, "method": { - "type": "string", "description": "The read operation to perform on a single issue.\nOptions are:\n1. get - Get details of a specific issue.\n2. get_comments - Get issue comments.\n3. get_sub_issues - Get sub-issues of the issue.\n4. get_labels - Get labels assigned to the issue.\n", "enum": [ "get", "get_comments", "get_sub_issues", "get_labels" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "The owner of the repository" + "description": "The owner of the repository", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "The name of the repository" + "description": "The name of the repository", + "type": "string" } - } + }, + "required": [ + "method", + "owner", + "repo", + "issue_number" + ], + "type": "object" }, "name": "issue_read" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/issue_write.snap b/pkg/github/__toolsnaps__/issue_write.snap index 8c6634a02..4512eb614 100644 --- a/pkg/github/__toolsnaps__/issue_write.snap +++ b/pkg/github/__toolsnaps__/issue_write.snap @@ -4,85 +4,85 @@ }, "description": "Create a new or update an existing issue in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo" - ], "properties": { "assignees": { - "type": "array", "description": "Usernames to assign to this issue", "items": { "type": "string" - } + }, + "type": "array" }, "body": { - "type": "string", - "description": "Issue body content" + "description": "Issue body content", + "type": "string" }, "duplicate_of": { - "type": "number", - "description": "Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'." + "description": "Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'.", + "type": "number" }, "issue_number": { - "type": "number", - "description": "Issue number to update" + "description": "Issue number to update", + "type": "number" }, "labels": { - "type": "array", "description": "Labels to apply to this issue", "items": { "type": "string" - } + }, + "type": "array" }, "method": { - "type": "string", "description": "Write operation to perform on a single issue.\nOptions are:\n- 'create' - creates a new issue.\n- 'update' - updates an existing issue.\n", "enum": [ "create", "update" - ] + ], + "type": "string" }, "milestone": { - "type": "number", - "description": "Milestone number" + "description": "Milestone number", + "type": "number" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "state": { - "type": "string", "description": "New state", "enum": [ "open", "closed" - ] + ], + "type": "string" }, "state_reason": { - "type": "string", "description": "Reason for the state change. Ignored unless state is changed.", "enum": [ "completed", "not_planned", "duplicate" - ] + ], + "type": "string" }, "title": { - "type": "string", - "description": "Issue title" + "description": "Issue title", + "type": "string" }, "type": { - "type": "string", - "description": "Type of this issue. Only use if the repository has issue types configured. Use list_issue_types tool to get valid type values for the organization. If the repository doesn't support issue types, omit this parameter." + "description": "Type of this issue. Only use if the repository has issue types configured. Use list_issue_types tool to get valid type values for the organization. If the repository doesn't support issue types, omit this parameter.", + "type": "string" } - } + }, + "required": [ + "method", + "owner", + "repo" + ], + "type": "object" }, "name": "issue_write" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_branches.snap b/pkg/github/__toolsnaps__/list_branches.snap index b589c9b7e..883a6fffc 100644 --- a/pkg/github/__toolsnaps__/list_branches.snap +++ b/pkg/github/__toolsnaps__/list_branches.snap @@ -5,32 +5,32 @@ }, "description": "List branches in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_branches" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_code_scanning_alerts.snap b/pkg/github/__toolsnaps__/list_code_scanning_alerts.snap index 6f2a4e342..5b7d79ef4 100644 --- a/pkg/github/__toolsnaps__/list_code_scanning_alerts.snap +++ b/pkg/github/__toolsnaps__/list_code_scanning_alerts.snap @@ -5,26 +5,20 @@ }, "description": "List code scanning alerts in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "ref": { - "type": "string", - "description": "The Git reference for the results you want to list." + "description": "The Git reference for the results you want to list.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" }, "severity": { - "type": "string", "description": "Filter code scanning alerts by severity", "enum": [ "critical", @@ -34,24 +28,30 @@ "warning", "note", "error" - ] + ], + "type": "string" }, "state": { - "type": "string", - "description": "Filter code scanning alerts by state. Defaults to open", "default": "open", + "description": "Filter code scanning alerts by state. Defaults to open", "enum": [ "open", "closed", "dismissed", "fixed" - ] + ], + "type": "string" }, "tool_name": { - "type": "string", - "description": "The name of the tool used for code scanning." + "description": "The name of the tool used for code scanning.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_code_scanning_alerts" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_commits.snap b/pkg/github/__toolsnaps__/list_commits.snap index bd67602ed..38b63736f 100644 --- a/pkg/github/__toolsnaps__/list_commits.snap +++ b/pkg/github/__toolsnaps__/list_commits.snap @@ -5,40 +5,40 @@ }, "description": "Get list of commits of a branch in a GitHub repository. Returns at least 30 results per page by default, but can return more if specified using the perPage parameter (up to 100).", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "author": { - "type": "string", - "description": "Author username or email address to filter commits by" + "description": "Author username or email address to filter commits by", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sha": { - "type": "string", - "description": "Commit SHA, branch or tag name to list commits of. If not provided, uses the default branch of the repository. If a commit SHA is provided, will list commits up to that SHA." + "description": "Commit SHA, branch or tag name to list commits of. If not provided, uses the default branch of the repository. If a commit SHA is provided, will list commits up to that SHA.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_commits" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_dependabot_alerts.snap b/pkg/github/__toolsnaps__/list_dependabot_alerts.snap index d96d3972c..83f725987 100644 --- a/pkg/github/__toolsnaps__/list_dependabot_alerts.snap +++ b/pkg/github/__toolsnaps__/list_dependabot_alerts.snap @@ -5,42 +5,42 @@ }, "description": "List dependabot alerts in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" }, "severity": { - "type": "string", "description": "Filter dependabot alerts by severity", "enum": [ "low", "medium", "high", "critical" - ] + ], + "type": "string" }, "state": { - "type": "string", - "description": "Filter dependabot alerts by state. Defaults to open", "default": "open", + "description": "Filter dependabot alerts by state. Defaults to open", "enum": [ "open", "fixed", "dismissed", "auto_dismissed" - ] + ], + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_dependabot_alerts" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_discussion_categories.snap b/pkg/github/__toolsnaps__/list_discussion_categories.snap index 888ebbdca..c46b75f84 100644 --- a/pkg/github/__toolsnaps__/list_discussion_categories.snap +++ b/pkg/github/__toolsnaps__/list_discussion_categories.snap @@ -5,20 +5,20 @@ }, "description": "List discussion categories with their id and name, for a repository or organisation.", "inputSchema": { - "type": "object", - "required": [ - "owner" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name. If not provided, discussion categories will be queried at the organisation level." + "description": "Repository name. If not provided, discussion categories will be queried at the organisation level.", + "type": "string" } - } + }, + "required": [ + "owner" + ], + "type": "object" }, "name": "list_discussion_categories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_discussions.snap b/pkg/github/__toolsnaps__/list_discussions.snap index 95a8bebf5..42be76933 100644 --- a/pkg/github/__toolsnaps__/list_discussions.snap +++ b/pkg/github/__toolsnaps__/list_discussions.snap @@ -5,50 +5,50 @@ }, "description": "List discussions for a repository or organisation.", "inputSchema": { - "type": "object", - "required": [ - "owner" - ], "properties": { "after": { - "type": "string", - "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs." + "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs.", + "type": "string" }, "category": { - "type": "string", - "description": "Optional filter by discussion category ID. If provided, only discussions with this category are listed." + "description": "Optional filter by discussion category ID. If provided, only discussions with this category are listed.", + "type": "string" }, "direction": { - "type": "string", "description": "Order direction.", "enum": [ "ASC", "DESC" - ] + ], + "type": "string" }, "orderBy": { - "type": "string", "description": "Order discussions by field. If provided, the 'direction' also needs to be provided.", "enum": [ "CREATED_AT", "UPDATED_AT" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name. If not provided, discussions will be queried at the organisation level." + "description": "Repository name. If not provided, discussions will be queried at the organisation level.", + "type": "string" } - } + }, + "required": [ + "owner" + ], + "type": "object" }, "name": "list_discussions" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_gists.snap b/pkg/github/__toolsnaps__/list_gists.snap index 834b45205..397417303 100644 --- a/pkg/github/__toolsnaps__/list_gists.snap +++ b/pkg/github/__toolsnaps__/list_gists.snap @@ -5,28 +5,28 @@ }, "description": "List gists for a user", "inputSchema": { - "type": "object", "properties": { "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "since": { - "type": "string", - "description": "Only gists updated after this time (ISO 8601 timestamp)" + "description": "Only gists updated after this time (ISO 8601 timestamp)", + "type": "string" }, "username": { - "type": "string", - "description": "GitHub username (omit for authenticated user's gists)" + "description": "GitHub username (omit for authenticated user's gists)", + "type": "string" } - } + }, + "type": "object" }, "name": "list_gists" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_global_security_advisories.snap b/pkg/github/__toolsnaps__/list_global_security_advisories.snap index fd9fa78c5..f714f4782 100644 --- a/pkg/github/__toolsnaps__/list_global_security_advisories.snap +++ b/pkg/github/__toolsnaps__/list_global_security_advisories.snap @@ -5,25 +5,23 @@ }, "description": "List global security advisories from GitHub.", "inputSchema": { - "type": "object", "properties": { "affects": { - "type": "string", - "description": "Filter advisories by affected package or version (e.g. \"package1,package2@1.0.0\")." + "description": "Filter advisories by affected package or version (e.g. \"package1,package2@1.0.0\").", + "type": "string" }, "cveId": { - "type": "string", - "description": "Filter by CVE ID." + "description": "Filter by CVE ID.", + "type": "string" }, "cwes": { - "type": "array", "description": "Filter by Common Weakness Enumeration IDs (e.g. [\"79\", \"284\", \"22\"]).", "items": { "type": "string" - } + }, + "type": "array" }, "ecosystem": { - "type": "string", "description": "Filter by package ecosystem.", "enum": [ "actions", @@ -38,26 +36,26 @@ "pub", "rubygems", "rust" - ] + ], + "type": "string" }, "ghsaId": { - "type": "string", - "description": "Filter by GitHub Security Advisory ID (format: GHSA-xxxx-xxxx-xxxx)." + "description": "Filter by GitHub Security Advisory ID (format: GHSA-xxxx-xxxx-xxxx).", + "type": "string" }, "isWithdrawn": { - "type": "boolean", - "description": "Whether to only return withdrawn advisories." + "description": "Whether to only return withdrawn advisories.", + "type": "boolean" }, "modified": { - "type": "string", - "description": "Filter by publish or update date or date range (ISO 8601 date or range)." + "description": "Filter by publish or update date or date range (ISO 8601 date or range).", + "type": "string" }, "published": { - "type": "string", - "description": "Filter by publish date or date range (ISO 8601 date or range)." + "description": "Filter by publish date or date range (ISO 8601 date or range).", + "type": "string" }, "severity": { - "type": "string", "description": "Filter by severity.", "enum": [ "unknown", @@ -65,23 +63,25 @@ "medium", "high", "critical" - ] + ], + "type": "string" }, "type": { - "type": "string", - "description": "Advisory type.", "default": "reviewed", + "description": "Advisory type.", "enum": [ "reviewed", "malware", "unreviewed" - ] + ], + "type": "string" }, "updated": { - "type": "string", - "description": "Filter by update date or date range (ISO 8601 date or range)." + "description": "Filter by update date or date range (ISO 8601 date or range).", + "type": "string" } - } + }, + "type": "object" }, "name": "list_global_security_advisories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_issue_types.snap b/pkg/github/__toolsnaps__/list_issue_types.snap index b17dcc54f..f1f1377a8 100644 --- a/pkg/github/__toolsnaps__/list_issue_types.snap +++ b/pkg/github/__toolsnaps__/list_issue_types.snap @@ -5,16 +5,16 @@ }, "description": "List supported issue types for repository owner (organization).", "inputSchema": { - "type": "object", - "required": [ - "owner" - ], "properties": { "owner": { - "type": "string", - "description": "The organization owner of the repository" + "description": "The organization owner of the repository", + "type": "string" } - } + }, + "required": [ + "owner" + ], + "type": "object" }, "name": "list_issue_types" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_issues.snap b/pkg/github/__toolsnaps__/list_issues.snap index 9d6b55586..a4be59bb0 100644 --- a/pkg/github/__toolsnaps__/list_issues.snap +++ b/pkg/github/__toolsnaps__/list_issues.snap @@ -5,67 +5,67 @@ }, "description": "List issues in a GitHub repository. For pagination, use the 'endCursor' from the previous response's 'pageInfo' in the 'after' parameter.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "after": { - "type": "string", - "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs." + "description": "Cursor for pagination. Use the endCursor from the previous page's PageInfo for GraphQL APIs.", + "type": "string" }, "direction": { - "type": "string", "description": "Order direction. If provided, the 'orderBy' also needs to be provided.", "enum": [ "ASC", "DESC" - ] + ], + "type": "string" }, "labels": { - "type": "array", "description": "Filter by labels", "items": { "type": "string" - } + }, + "type": "array" }, "orderBy": { - "type": "string", "description": "Order issues by field. If provided, the 'direction' also needs to be provided.", "enum": [ "CREATED_AT", "UPDATED_AT", "COMMENTS" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "since": { - "type": "string", - "description": "Filter by date (ISO 8601 timestamp)" + "description": "Filter by date (ISO 8601 timestamp)", + "type": "string" }, "state": { - "type": "string", "description": "Filter by state, by default both open and closed issues are returned when not provided", "enum": [ "OPEN", "CLOSED" - ] + ], + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_issues" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_notifications.snap b/pkg/github/__toolsnaps__/list_notifications.snap index ae43e0f25..bf25c4fe0 100644 --- a/pkg/github/__toolsnaps__/list_notifications.snap +++ b/pkg/github/__toolsnaps__/list_notifications.snap @@ -5,45 +5,45 @@ }, "description": "Lists all GitHub notifications for the authenticated user, including unread notifications, mentions, review requests, assignments, and updates on issues or pull requests. Use this tool whenever the user asks what to work on next, requests a summary of their GitHub activity, wants to see pending reviews, or needs to check for new updates or tasks. This tool is the primary way to discover actionable items, reminders, and outstanding work on GitHub. Always call this tool when asked what to work on next, what is pending, or what needs attention in GitHub.", "inputSchema": { - "type": "object", "properties": { "before": { - "type": "string", - "description": "Only show notifications updated before the given time (ISO 8601 format)" + "description": "Only show notifications updated before the given time (ISO 8601 format)", + "type": "string" }, "filter": { - "type": "string", "description": "Filter notifications to, use default unless specified. Read notifications are ones that have already been acknowledged by the user. Participating notifications are those that the user is directly involved in, such as issues or pull requests they have commented on or created.", "enum": [ "default", "include_read_notifications", "only_participating" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Optional repository owner. If provided with repo, only notifications for this repository are listed." + "description": "Optional repository owner. If provided with repo, only notifications for this repository are listed.", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Optional repository name. If provided with owner, only notifications for this repository are listed." + "description": "Optional repository name. If provided with owner, only notifications for this repository are listed.", + "type": "string" }, "since": { - "type": "string", - "description": "Only show notifications updated after the given time (ISO 8601 format)" + "description": "Only show notifications updated after the given time (ISO 8601 format)", + "type": "string" } - } + }, + "type": "object" }, "name": "list_notifications" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_org_repository_security_advisories.snap b/pkg/github/__toolsnaps__/list_org_repository_security_advisories.snap index 5f8823659..563da98c3 100644 --- a/pkg/github/__toolsnaps__/list_org_repository_security_advisories.snap +++ b/pkg/github/__toolsnaps__/list_org_repository_security_advisories.snap @@ -5,43 +5,43 @@ }, "description": "List repository security advisories for a GitHub organization.", "inputSchema": { - "type": "object", - "required": [ - "org" - ], "properties": { "direction": { - "type": "string", "description": "Sort direction.", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "org": { - "type": "string", - "description": "The organization login." + "description": "The organization login.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort field.", "enum": [ "created", "updated", "published" - ] + ], + "type": "string" }, "state": { - "type": "string", "description": "Filter by advisory state.", "enum": [ "triage", "draft", "published", "closed" - ] + ], + "type": "string" } - } + }, + "required": [ + "org" + ], + "type": "object" }, "name": "list_org_repository_security_advisories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_project_fields.snap b/pkg/github/__toolsnaps__/list_project_fields.snap index 6bef18507..5456388b2 100644 --- a/pkg/github/__toolsnaps__/list_project_fields.snap +++ b/pkg/github/__toolsnaps__/list_project_fields.snap @@ -5,42 +5,42 @@ }, "description": "List Project fields for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number" - ], "properties": { "after": { - "type": "string", - "description": "Forward pagination cursor from previous pageInfo.nextCursor." + "description": "Forward pagination cursor from previous pageInfo.nextCursor.", + "type": "string" }, "before": { - "type": "string", - "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare)." + "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare).", + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "per_page": { - "type": "number", - "description": "Results per page (max 50)" + "description": "Results per page (max 50)", + "type": "number" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number" + ], + "type": "object" }, "name": "list_project_fields" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_project_items.snap b/pkg/github/__toolsnaps__/list_project_items.snap index bceb5d9eb..5089f4306 100644 --- a/pkg/github/__toolsnaps__/list_project_items.snap +++ b/pkg/github/__toolsnaps__/list_project_items.snap @@ -5,53 +5,53 @@ }, "description": "Search project items with advanced filtering", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number" - ], "properties": { "after": { - "type": "string", - "description": "Forward pagination cursor from previous pageInfo.nextCursor." + "description": "Forward pagination cursor from previous pageInfo.nextCursor.", + "type": "string" }, "before": { - "type": "string", - "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare)." + "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare).", + "type": "string" }, "fields": { - "type": "array", "description": "Field IDs to include (e.g. [\"102589\", \"985201\"]). CRITICAL: Always provide to get field values. Without this, only titles returned.", "items": { "type": "string" - } + }, + "type": "array" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "per_page": { - "type": "number", - "description": "Results per page (max 50)" + "description": "Results per page (max 50)", + "type": "number" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" }, "query": { - "type": "string", - "description": "Query string for advanced filtering of project items using GitHub's project filtering syntax." + "description": "Query string for advanced filtering of project items using GitHub's project filtering syntax.", + "type": "string" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number" + ], + "type": "object" }, "name": "list_project_items" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_projects.snap b/pkg/github/__toolsnaps__/list_projects.snap index f48e26217..be5a6713e 100644 --- a/pkg/github/__toolsnaps__/list_projects.snap +++ b/pkg/github/__toolsnaps__/list_projects.snap @@ -5,41 +5,41 @@ }, "description": "List Projects for a user or organization", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner" - ], "properties": { "after": { - "type": "string", - "description": "Forward pagination cursor from previous pageInfo.nextCursor." + "description": "Forward pagination cursor from previous pageInfo.nextCursor.", + "type": "string" }, "before": { - "type": "string", - "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare)." + "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare).", + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "per_page": { - "type": "number", - "description": "Results per page (max 50)" + "description": "Results per page (max 50)", + "type": "number" }, "query": { - "type": "string", - "description": "Filter projects by title text and open/closed state; permitted qualifiers: is:open, is:closed; examples: \"roadmap is:open\", \"is:open feature planning\"." + "description": "Filter projects by title text and open/closed state; permitted qualifiers: is:open, is:closed; examples: \"roadmap is:open\", \"is:open feature planning\".", + "type": "string" } - } + }, + "required": [ + "owner_type", + "owner" + ], + "type": "object" }, "name": "list_projects" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_pull_requests.snap b/pkg/github/__toolsnaps__/list_pull_requests.snap index ae90c3fe0..25f1268c6 100644 --- a/pkg/github/__toolsnaps__/list_pull_requests.snap +++ b/pkg/github/__toolsnaps__/list_pull_requests.snap @@ -5,67 +5,67 @@ }, "description": "List pull requests in a GitHub repository. If the user specifies an author, then DO NOT use this tool and use the search_pull_requests tool instead.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "base": { - "type": "string", - "description": "Filter by base branch" + "description": "Filter by base branch", + "type": "string" }, "direction": { - "type": "string", "description": "Sort direction", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "head": { - "type": "string", - "description": "Filter by head user/org and branch" + "description": "Filter by head user/org and branch", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sort": { - "type": "string", "description": "Sort by", "enum": [ "created", "updated", "popularity", "long-running" - ] + ], + "type": "string" }, "state": { - "type": "string", "description": "Filter by state", "enum": [ "open", "closed", "all" - ] + ], + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_pull_requests" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_releases.snap b/pkg/github/__toolsnaps__/list_releases.snap index 98d4ce66f..57502c3c8 100644 --- a/pkg/github/__toolsnaps__/list_releases.snap +++ b/pkg/github/__toolsnaps__/list_releases.snap @@ -5,32 +5,32 @@ }, "description": "List releases in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_releases" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_repository_security_advisories.snap b/pkg/github/__toolsnaps__/list_repository_security_advisories.snap index 465fd881e..c86508f92 100644 --- a/pkg/github/__toolsnaps__/list_repository_security_advisories.snap +++ b/pkg/github/__toolsnaps__/list_repository_security_advisories.snap @@ -5,48 +5,48 @@ }, "description": "List repository security advisories for a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "direction": { - "type": "string", "description": "Sort direction.", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort field.", "enum": [ "created", "updated", "published" - ] + ], + "type": "string" }, "state": { - "type": "string", "description": "Filter by advisory state.", "enum": [ "triage", "draft", "published", "closed" - ] + ], + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_repository_security_advisories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_secret_scanning_alerts.snap b/pkg/github/__toolsnaps__/list_secret_scanning_alerts.snap index e7896c55f..f2f7cb125 100644 --- a/pkg/github/__toolsnaps__/list_secret_scanning_alerts.snap +++ b/pkg/github/__toolsnaps__/list_secret_scanning_alerts.snap @@ -5,22 +5,16 @@ }, "description": "List secret scanning alerts in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "The owner of the repository." + "description": "The owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" }, "resolution": { - "type": "string", "description": "Filter by resolution", "enum": [ "false_positive", @@ -29,21 +23,27 @@ "pattern_edited", "pattern_deleted", "used_in_tests" - ] + ], + "type": "string" }, "secret_type": { - "type": "string", - "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter." + "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter.", + "type": "string" }, "state": { - "type": "string", "description": "Filter by state", "enum": [ "open", "resolved" - ] + ], + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_secret_scanning_alerts" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_starred_repositories.snap b/pkg/github/__toolsnaps__/list_starred_repositories.snap index a383b39d1..e631719fd 100644 --- a/pkg/github/__toolsnaps__/list_starred_repositories.snap +++ b/pkg/github/__toolsnaps__/list_starred_repositories.snap @@ -5,40 +5,40 @@ }, "description": "List starred repositories", "inputSchema": { - "type": "object", "properties": { "direction": { - "type": "string", "description": "The direction to sort the results by.", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "sort": { - "type": "string", "description": "How to sort the results. Can be either 'created' (when the repository was starred) or 'updated' (when the repository was last pushed to).", "enum": [ "created", "updated" - ] + ], + "type": "string" }, "username": { - "type": "string", - "description": "Username to list starred repositories for. Defaults to the authenticated user." + "description": "Username to list starred repositories for. Defaults to the authenticated user.", + "type": "string" } - } + }, + "type": "object" }, "name": "list_starred_repositories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_tags.snap b/pkg/github/__toolsnaps__/list_tags.snap index 5b667d19c..1e66d2c1f 100644 --- a/pkg/github/__toolsnaps__/list_tags.snap +++ b/pkg/github/__toolsnaps__/list_tags.snap @@ -5,32 +5,32 @@ }, "description": "List git tags in a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_tags" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_workflow_jobs.snap b/pkg/github/__toolsnaps__/list_workflow_jobs.snap index 59ff75afc..d8fed1965 100644 --- a/pkg/github/__toolsnaps__/list_workflow_jobs.snap +++ b/pkg/github/__toolsnaps__/list_workflow_jobs.snap @@ -5,45 +5,45 @@ }, "description": "List jobs for a specific workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "filter": { - "type": "string", "description": "Filters jobs by their completed_at timestamp", "enum": [ "latest", "all" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "list_workflow_jobs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_workflow_run_artifacts.snap b/pkg/github/__toolsnaps__/list_workflow_run_artifacts.snap index 6d6332d74..664722901 100644 --- a/pkg/github/__toolsnaps__/list_workflow_run_artifacts.snap +++ b/pkg/github/__toolsnaps__/list_workflow_run_artifacts.snap @@ -5,37 +5,37 @@ }, "description": "List artifacts for a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "list_workflow_run_artifacts" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_workflow_runs.snap b/pkg/github/__toolsnaps__/list_workflow_runs.snap index e5353f490..a9a9916c3 100644 --- a/pkg/github/__toolsnaps__/list_workflow_runs.snap +++ b/pkg/github/__toolsnaps__/list_workflow_runs.snap @@ -5,23 +5,16 @@ }, "description": "List workflow runs for a specific workflow", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "workflow_id" - ], "properties": { "actor": { - "type": "string", - "description": "Returns someone's workflow runs. Use the login for the user who created the workflow run." + "description": "Returns someone's workflow runs. Use the login for the user who created the workflow run.", + "type": "string" }, "branch": { - "type": "string", - "description": "Returns workflow runs associated with a branch. Use the name of the branch." + "description": "Returns workflow runs associated with a branch. Use the name of the branch.", + "type": "string" }, "event": { - "type": "string", "description": "Returns workflow runs for a specific event type", "enum": [ "branch_protection_rule", @@ -56,29 +49,29 @@ "workflow_call", "workflow_dispatch", "workflow_run" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "status": { - "type": "string", "description": "Returns workflow runs with the check run status", "enum": [ "queued", @@ -86,13 +79,20 @@ "completed", "requested", "waiting" - ] + ], + "type": "string" }, "workflow_id": { - "type": "string", - "description": "The workflow ID or workflow file name" + "description": "The workflow ID or workflow file name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "workflow_id" + ], + "type": "object" }, "name": "list_workflow_runs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/list_workflows.snap b/pkg/github/__toolsnaps__/list_workflows.snap index f3f52f042..b0e51e03a 100644 --- a/pkg/github/__toolsnaps__/list_workflows.snap +++ b/pkg/github/__toolsnaps__/list_workflows.snap @@ -5,32 +5,32 @@ }, "description": "List workflows in a repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "list_workflows" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/manage_notification_subscription.snap b/pkg/github/__toolsnaps__/manage_notification_subscription.snap index 4f0d466a0..e04acd11e 100644 --- a/pkg/github/__toolsnaps__/manage_notification_subscription.snap +++ b/pkg/github/__toolsnaps__/manage_notification_subscription.snap @@ -4,26 +4,26 @@ }, "description": "Manage a notification subscription: ignore, watch, or delete a notification thread subscription.", "inputSchema": { - "type": "object", - "required": [ - "notificationID", - "action" - ], "properties": { "action": { - "type": "string", "description": "Action to perform: ignore, watch, or delete the notification subscription.", "enum": [ "ignore", "watch", "delete" - ] + ], + "type": "string" }, "notificationID": { - "type": "string", - "description": "The ID of the notification thread." + "description": "The ID of the notification thread.", + "type": "string" } - } + }, + "required": [ + "notificationID", + "action" + ], + "type": "object" }, "name": "manage_notification_subscription" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/manage_repository_notification_subscription.snap b/pkg/github/__toolsnaps__/manage_repository_notification_subscription.snap index 82ee40a89..0a4567b71 100644 --- a/pkg/github/__toolsnaps__/manage_repository_notification_subscription.snap +++ b/pkg/github/__toolsnaps__/manage_repository_notification_subscription.snap @@ -4,31 +4,31 @@ }, "description": "Manage a repository notification subscription: ignore, watch, or delete repository notifications subscription for the provided repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "action" - ], "properties": { "action": { - "type": "string", "description": "Action to perform: ignore, watch, or delete the repository notification subscription.", "enum": [ "ignore", "watch", "delete" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "The account owner of the repository." + "description": "The account owner of the repository.", + "type": "string" }, "repo": { - "type": "string", - "description": "The name of the repository." + "description": "The name of the repository.", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "action" + ], + "type": "object" }, "name": "manage_repository_notification_subscription" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/mark_all_notifications_read.snap b/pkg/github/__toolsnaps__/mark_all_notifications_read.snap index 2d45ed78d..1f5a32284 100644 --- a/pkg/github/__toolsnaps__/mark_all_notifications_read.snap +++ b/pkg/github/__toolsnaps__/mark_all_notifications_read.snap @@ -4,21 +4,21 @@ }, "description": "Mark all notifications as read", "inputSchema": { - "type": "object", "properties": { "lastReadAt": { - "type": "string", - "description": "Describes the last point that notifications were checked (optional). Default: Now" + "description": "Describes the last point that notifications were checked (optional). Default: Now", + "type": "string" }, "owner": { - "type": "string", - "description": "Optional repository owner. If provided with repo, only notifications for this repository are marked as read." + "description": "Optional repository owner. If provided with repo, only notifications for this repository are marked as read.", + "type": "string" }, "repo": { - "type": "string", - "description": "Optional repository name. If provided with owner, only notifications for this repository are marked as read." + "description": "Optional repository name. If provided with owner, only notifications for this repository are marked as read.", + "type": "string" } - } + }, + "type": "object" }, "name": "mark_all_notifications_read" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/merge_pull_request.snap b/pkg/github/__toolsnaps__/merge_pull_request.snap index 179805b3a..d0cdb2b1a 100644 --- a/pkg/github/__toolsnaps__/merge_pull_request.snap +++ b/pkg/github/__toolsnaps__/merge_pull_request.snap @@ -3,56 +3,56 @@ "title": "Merge pull request" }, "description": "Merge a pull request in a GitHub repository.", + "icons": [ + { + "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACeElEQVRIibWVTUhUYRSGn/e74+iiQih1F9Vcmj9sptylUVBYkO4jcNeuJBdFKxe1CYQokGrRKjCEdtmqwEVmtqomQWeiUdc2EBUtUufe0yLHn1KLGXtX5zvn4zz3vd8f/Gfp90Qs0drmpA6MT1EveDo1NfV92wB+KnMdo39Nfs4L7eSHD5Nz1QJcJYglWtsw+iUehAuRRjO1g+0KHLerbb4OIHnHAC1FdW129s3XmUJuwnBDoOPbA7BwHsD7QWq1HKYN5msBRCpB1AueLoSROSkciSUyj5ClhE6BLtYC8CpBqVRabNrdMmIiJdQjuUbQ1WI+d78WwIbykxnzU9np7ejlNq2YxQ4ebNtTKyCyWcEgYl55EDj/a7ihFEtkLkr0As2YxjwL+9aem00dCEYNzvnJzLDvH27aaM5y80HEnKGHKGwPnEbT6fSOvzpAmrDQnkncpC7siiUzz2QqIPu25iOuGBorTufO/AJmH0v2ajHwuoHhrQHATOH9rQPJ7IjDLgs6kZ0F6it1AzArVcZLdUE+WnYgmv/uYFmz+dxH4NJGNT+RfYLCE7F4tn0pGkxHy94AmBm8/GfAVvIs7AukUTkbj5YdYIbZ9WJh8m1lzrrbNB4/tD+QuyPsdCibF26gmM/dY/NdRDqd3rEYeN04mswYL+ZXm68DxOPxnWXXMClsp+GGhCWBTtClYj53t1qXK78oVH2XYB/mHZ0pvHsN4Cczzw3rBaoGrJ6D5ZUvN1i+kjI0LWiptjmscbC88hZZCAf2trZeq1v0UsJ6wF7UAlhxUMxPvkW6AboQLbvPcjaO+BIx11cL4I9H308eOiLRQUhpOx79/66fNKzrOCYNDm0AAAAASUVORK5CYII=", + "theme": "light" + }, + { + "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABjElEQVRIibWVPS/DURTGnysSC0HiZdWVrZ28JDaLT8BHaBsMdjqZJDXiAzC2LF5mX6GtATGiIsGARH+Gnj9X8a/kf3uWe3Py3Oc559xz75E6bK7VAWQkzUi6lXTonHsOpgYUgAZfdgmkQpFnjHwb6AemgDpQCiWwYlEPeL4i8JCEt8vb39g67vkmPH8yA3qt5nVgCzi1jLJBBEwkBZSAdxPKAj86LYQQQCU4cYvAKzDUSYF3YC+uRIAD8sA58ACU//VuTODE1n1g+A9c3jBH1tJ1a5TeCPNrdACSCpKeJG1IepN0LKkm6dGDrkqqOOdm7dyUpDNJi865PUnqjsvEObcJHEhaljQnaV5STwvszttXbR2J441KtB4LauLKVpZpYBDYte8mHUogZTWPrAGstTtQBl6AayDX7qHZD7AALMVGDvQBV5ZyETi2qHLtMvmXWRQAk57vBKgl4fV/0+jmq56vImk0icCnAWm7pB3riGngnlADx0TW+T4yL4CxJJy/Df20mkP/TqGHfifsA7INs3X5i3+yAAAAAElFTkSuQmCC", + "theme": "dark" + } + ], "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "pullNumber" - ], "properties": { "commit_message": { - "type": "string", - "description": "Extra detail for merge commit" + "description": "Extra detail for merge commit", + "type": "string" }, "commit_title": { - "type": "string", - "description": "Title for merge commit" + "description": "Title for merge commit", + "type": "string" }, "merge_method": { - "type": "string", "description": "Merge method", "enum": [ "merge", "squash", "rebase" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "pullNumber": { - "type": "number", - "description": "Pull request number" + "description": "Pull request number", + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } - }, - "name": "merge_pull_request", - "icons": [ - { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACeElEQVRIibWVTUhUYRSGn/e74+iiQih1F9Vcmj9sptylUVBYkO4jcNeuJBdFKxe1CYQokGrRKjCEdtmqwEVmtqomQWeiUdc2EBUtUufe0yLHn1KLGXtX5zvn4zz3vd8f/Gfp90Qs0drmpA6MT1EveDo1NfV92wB+KnMdo39Nfs4L7eSHD5Nz1QJcJYglWtsw+iUehAuRRjO1g+0KHLerbb4OIHnHAC1FdW129s3XmUJuwnBDoOPbA7BwHsD7QWq1HKYN5msBRCpB1AueLoSROSkciSUyj5ClhE6BLtYC8CpBqVRabNrdMmIiJdQjuUbQ1WI+d78WwIbykxnzU9np7ejlNq2YxQ4ebNtTKyCyWcEgYl55EDj/a7ihFEtkLkr0As2YxjwL+9aem00dCEYNzvnJzLDvH27aaM5y80HEnKGHKGwPnEbT6fSOvzpAmrDQnkncpC7siiUzz2QqIPu25iOuGBorTufO/AJmH0v2ajHwuoHhrQHATOH9rQPJ7IjDLgs6kZ0F6it1AzArVcZLdUE+WnYgmv/uYFmz+dxH4NJGNT+RfYLCE7F4tn0pGkxHy94AmBm8/GfAVvIs7AukUTkbj5YdYIbZ9WJh8m1lzrrbNB4/tD+QuyPsdCibF26gmM/dY/NdRDqd3rEYeN04mswYL+ZXm68DxOPxnWXXMClsp+GGhCWBTtClYj53t1qXK78oVH2XYB/mHZ0pvHsN4Cczzw3rBaoGrJ6D5ZUvN1i+kjI0LWiptjmscbC88hZZCAf2trZeq1v0UsJ6wF7UAlhxUMxPvkW6AboQLbvPcjaO+BIx11cL4I9H308eOiLRQUhpOx79/66fNKzrOCYNDm0AAAAASUVORK5CYII=", - "mimeType": "image/png", - "theme": "light" }, - { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABjElEQVRIibWVPS/DURTGnysSC0HiZdWVrZ28JDaLT8BHaBsMdjqZJDXiAzC2LF5mX6GtATGiIsGARH+Gnj9X8a/kf3uWe3Py3Oc559xz75E6bK7VAWQkzUi6lXTonHsOpgYUgAZfdgmkQpFnjHwb6AemgDpQCiWwYlEPeL4i8JCEt8vb39g67vkmPH8yA3qt5nVgCzi1jLJBBEwkBZSAdxPKAj86LYQQQCU4cYvAKzDUSYF3YC+uRIAD8sA58ACU//VuTODE1n1g+A9c3jBH1tJ1a5TeCPNrdACSCpKeJG1IepN0LKkm6dGDrkqqOOdm7dyUpDNJi865PUnqjsvEObcJHEhaljQnaV5STwvszttXbR2J441KtB4LauLKVpZpYBDYte8mHUogZTWPrAGstTtQBl6AayDX7qHZD7AALMVGDvQBV5ZyETi2qHLtMvmXWRQAk57vBKgl4fV/0+jmq56vImk0icCnAWm7pB3riGngnlADx0TW+T4yL4CxJJy/Df20mkP/TqGHfifsA7INs3X5i3+yAAAAAElFTkSuQmCC", - "mimeType": "image/png", - "theme": "dark" - } - ] + "required": [ + "owner", + "repo", + "pullNumber" + ], + "type": "object" + }, + "name": "merge_pull_request" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/projects_get.snap b/pkg/github/__toolsnaps__/projects_get.snap index 9758de0f2..9ccb1e75f 100644 --- a/pkg/github/__toolsnaps__/projects_get.snap +++ b/pkg/github/__toolsnaps__/projects_get.snap @@ -5,55 +5,55 @@ }, "description": "Get details about specific GitHub Projects resources.\nUse this tool to get details about individual projects, project fields, and project items by their unique IDs.\n", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner_type", - "owner", - "project_number" - ], "properties": { "field_id": { - "type": "number", - "description": "The field's ID. Required for 'get_project_field' method." + "description": "The field's ID. Required for 'get_project_field' method.", + "type": "number" }, "fields": { - "type": "array", "description": "Specific list of field IDs to include in the response when getting a project item (e.g. [\"102589\", \"985201\", \"169875\"]). If not provided, only the title field is included. Only used for 'get_project_item' method.", "items": { "type": "string" - } + }, + "type": "array" }, "item_id": { - "type": "number", - "description": "The item's ID. Required for 'get_project_item' method." + "description": "The item's ID. Required for 'get_project_item' method.", + "type": "number" }, "method": { - "type": "string", "description": "The method to execute", "enum": [ "get_project", "get_project_field", "get_project_item" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" } - } + }, + "required": [ + "method", + "owner_type", + "owner", + "project_number" + ], + "type": "object" }, "name": "projects_get" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/projects_list.snap b/pkg/github/__toolsnaps__/projects_list.snap index 7cc2e2df7..84e964a1d 100644 --- a/pkg/github/__toolsnaps__/projects_list.snap +++ b/pkg/github/__toolsnaps__/projects_list.snap @@ -5,62 +5,62 @@ }, "description": "Tools for listing GitHub Projects resources.\nUse this tool to list projects for a user or organization, or list project fields and items for a specific project.\n", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner_type", - "owner" - ], "properties": { "after": { - "type": "string", - "description": "Forward pagination cursor from previous pageInfo.nextCursor." + "description": "Forward pagination cursor from previous pageInfo.nextCursor.", + "type": "string" }, "before": { - "type": "string", - "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare)." + "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare).", + "type": "string" }, "fields": { - "type": "array", "description": "Field IDs to include when listing project items (e.g. [\"102589\", \"985201\"]). CRITICAL: Always provide to get field values. Without this, only titles returned. Only used for 'list_project_items' method.", "items": { "type": "string" - } + }, + "type": "array" }, "method": { - "type": "string", "description": "The action to perform", "enum": [ "list_projects", "list_project_fields", "list_project_items" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "per_page": { - "type": "number", - "description": "Results per page (max 50)" + "description": "Results per page (max 50)", + "type": "number" }, "project_number": { - "type": "number", - "description": "The project's number. Required for 'list_project_fields' and 'list_project_items' methods." + "description": "The project's number. Required for 'list_project_fields' and 'list_project_items' methods.", + "type": "number" }, "query": { - "type": "string", - "description": "Filter/query string. For list_projects: filter by title text and state (e.g. \"roadmap is:open\"). For list_project_items: advanced filtering using GitHub's project filtering syntax." + "description": "Filter/query string. For list_projects: filter by title text and state (e.g. \"roadmap is:open\"). For list_project_items: advanced filtering using GitHub's project filtering syntax.", + "type": "string" } - } + }, + "required": [ + "method", + "owner_type", + "owner" + ], + "type": "object" }, "name": "projects_list" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/projects_write.snap b/pkg/github/__toolsnaps__/projects_write.snap index 2224590c5..759f79579 100644 --- a/pkg/github/__toolsnaps__/projects_write.snap +++ b/pkg/github/__toolsnaps__/projects_write.snap @@ -5,56 +5,56 @@ }, "description": "Add, update, or delete project items in a GitHub Project.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner_type", - "owner", - "project_number" - ], "properties": { "item_id": { - "type": "number", - "description": "The project item ID. Required for 'update_project_item' and 'delete_project_item' methods. For add_project_item, this is the numeric ID of the issue or pull request to add." + "description": "The project item ID. Required for 'update_project_item' and 'delete_project_item' methods. For add_project_item, this is the numeric ID of the issue or pull request to add.", + "type": "number" }, "item_type": { - "type": "string", "description": "The item's type, either issue or pull_request. Required for 'add_project_item' method.", "enum": [ "issue", "pull_request" - ] + ], + "type": "string" }, "method": { - "type": "string", "description": "The method to execute", "enum": [ "add_project_item", "update_project_item", "delete_project_item" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" }, "updated_field": { - "type": "object", - "description": "Object consisting of the ID of the project field to update and the new value for the field. To clear the field, set value to null. Example: {\"id\": 123456, \"value\": \"New Value\"}. Required for 'update_project_item' method." + "description": "Object consisting of the ID of the project field to update and the new value for the field. To clear the field, set value to null. Example: {\"id\": 123456, \"value\": \"New Value\"}. Required for 'update_project_item' method.", + "type": "object" } - } + }, + "required": [ + "method", + "owner_type", + "owner", + "project_number" + ], + "type": "object" }, "name": "projects_write" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/pull_request_read.snap b/pkg/github/__toolsnaps__/pull_request_read.snap index 69b1bd901..a8591fc5c 100644 --- a/pkg/github/__toolsnaps__/pull_request_read.snap +++ b/pkg/github/__toolsnaps__/pull_request_read.snap @@ -5,16 +5,8 @@ }, "description": "Get information on a specific pull request in GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo", - "pullNumber" - ], "properties": { "method": { - "type": "string", "description": "Action to specify what pull request data needs to be retrieved from GitHub. \nPossible options: \n 1. get - Get details of a specific pull request.\n 2. get_diff - Get the diff of a pull request.\n 3. get_status - Get status of a head commit in a pull request. This reflects status of builds and checks.\n 4. get_files - Get the list of files changed in a pull request. Use with pagination parameters to control the number of results returned.\n 5. get_review_comments - Get review threads on a pull request. Each thread contains logically grouped review comments made on the same code location during pull request reviews. Returns threads with metadata (isResolved, isOutdated, isCollapsed) and their associated comments. Use cursor-based pagination (perPage, after) to control results.\n 6. get_reviews - Get the reviews on a pull request. When asked for review comments, use get_review_comments method.\n 7. get_comments - Get comments on a pull request. Use this if user doesn't specifically want review comments. Use with pagination parameters to control the number of results returned.\n", "enum": [ "get", @@ -24,32 +16,40 @@ "get_review_comments", "get_reviews", "get_comments" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "pullNumber": { - "type": "number", - "description": "Pull request number" + "description": "Pull request number", + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "method", + "owner", + "repo", + "pullNumber" + ], + "type": "object" }, "name": "pull_request_read" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/push_files.snap b/pkg/github/__toolsnaps__/push_files.snap index 4db764cc9..c36c236f9 100644 --- a/pkg/github/__toolsnaps__/push_files.snap +++ b/pkg/github/__toolsnaps__/push_files.snap @@ -4,53 +4,53 @@ }, "description": "Push multiple files to a GitHub repository in a single commit", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "branch", - "files", - "message" - ], "properties": { "branch": { - "type": "string", - "description": "Branch to push to" + "description": "Branch to push to", + "type": "string" }, "files": { - "type": "array", "description": "Array of file objects to push, each object with path (string) and content (string)", "items": { - "type": "object", - "required": [ - "path", - "content" - ], "properties": { "content": { - "type": "string", - "description": "file content" + "description": "file content", + "type": "string" }, "path": { - "type": "string", - "description": "path to the file" + "description": "path to the file", + "type": "string" } - } - } + }, + "required": [ + "path", + "content" + ], + "type": "object" + }, + "type": "array" }, "message": { - "type": "string", - "description": "Commit message" + "description": "Commit message", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "branch", + "files", + "message" + ], + "type": "object" }, "name": "push_files" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/request_copilot_review.snap b/pkg/github/__toolsnaps__/request_copilot_review.snap index 0bf419d98..cd00f73fd 100644 --- a/pkg/github/__toolsnaps__/request_copilot_review.snap +++ b/pkg/github/__toolsnaps__/request_copilot_review.snap @@ -3,39 +3,39 @@ "title": "Request Copilot review" }, "description": "Request a GitHub Copilot code review for a pull request. Use this for automated feedback on pull requests, usually before requesting a human reviewer.", - "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "pullNumber" - ], - "properties": { - "owner": { - "type": "string", - "description": "Repository owner" - }, - "pullNumber": { - "type": "number", - "description": "Pull request number" - }, - "repo": { - "type": "string", - "description": "Repository name" - } - } - }, - "name": "request_copilot_review", "icons": [ { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAC20lEQVRIidWUS4wMURSGv3O7kWmPEMRrSMzcbl1dpqtmGuOxsCKECCKxEBusSJhIWEhsWLFAbC1sWFiISBARCyQ2kzSZGaMxHokgXvGIiMH0PRZjpJqqHpb+TeX+59z//H/q5sD/DqlX9H1/zFeX2qzIKoFWYDKgwBtUymL0UkNaT3V3d3/+5wG2EGxB9TDIxGFMvhVhb9/drpN/NaDJC7MGdwJk6TDCv0Gvq0lve9R762GUNdFDLleaZNBrICGq+4yhvf9TJtP/KZNB2PrLlbBliBfRhajuAwnFVa/n8/nkxFkv3GO9oJrzgwVxdesV71ov6I2r5fxggfWCatYL9yYmUJgLPH7Q29WZ4OED6Me4wuAdeQK6MMqna9t0GuibBHFAmgZ9JMG9BhkXZWoSCDSATIq7aguBD0wBplq/tZBgYDIwKnZAs99mFRYD9vd/YK0dpcqhobM6d9haWyOULRTbAauwuNlvsxHTYP3iBnVyXGAa8BIYC3oVeAKioCtAPEE7FCOgR0ErIJdBBZgNskzh40+NF6K6s+9e91lp9osrxMnFoTSmSmPVsF+E5cB0YEDgtoMjjypd5wCy+WC9GnajhEAa4bkqV9LOHKwa9/yneYeyUqwX3AdyQ5EeVrrqro/hYL0g+ggemKh4HGbPmVu0+fB8U76lpR6XgJwZpoGUpNYiusZg1tXjkmCAav0OMTXfJC4eVYPqwbot6l4BCPqyLhd7lwMAWC/cYb3gi/UCzRaKOxsbFzVEM1iv2Ebt5v2Dm14qZbJecZf1Ah3UCrcTbbB+awHnjgHLgHeinHYqZ8aPSXWWy+XvcQZLpdKI9/0D7UbZiLIJmABckVSqo+/OrUrNgF+D8q1LEdcBrAJGAJ8ROlGeicorABWdAswE5gOjge8CF8Ad66v03IjqJb75WS0tE0YOmNWqLBGReaAzgIkMLrt3oM9UpSzCzW9pd+FpT8/7JK3/Gz8Ao5X6wtwP7N4AAAAASUVORK5CYII=", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAC20lEQVRIidWUS4wMURSGv3O7kWmPEMRrSMzcbl1dpqtmGuOxsCKECCKxEBusSJhIWEhsWLFAbC1sWFiISBARCyQ2kzSZGaMxHokgXvGIiMH0PRZjpJqqHpb+TeX+59z//H/q5sD/DqlX9H1/zFeX2qzIKoFWYDKgwBtUymL0UkNaT3V3d3/+5wG2EGxB9TDIxGFMvhVhb9/drpN/NaDJC7MGdwJk6TDCv0Gvq0lve9R762GUNdFDLleaZNBrICGq+4yhvf9TJtP/KZNB2PrLlbBliBfRhajuAwnFVa/n8/nkxFkv3GO9oJrzgwVxdesV71ov6I2r5fxggfWCatYL9yYmUJgLPH7Q29WZ4OED6Me4wuAdeQK6MMqna9t0GuibBHFAmgZ9JMG9BhkXZWoSCDSATIq7aguBD0wBplq/tZBgYDIwKnZAs99mFRYD9vd/YK0dpcqhobM6d9haWyOULRTbAauwuNlvsxHTYP3iBnVyXGAa8BIYC3oVeAKioCtAPEE7FCOgR0ErIJdBBZgNskzh40+NF6K6s+9e91lp9osrxMnFoTSmSmPVsF+E5cB0YEDgtoMjjypd5wCy+WC9GnajhEAa4bkqV9LOHKwa9/yneYeyUqwX3AdyQ5EeVrrqro/hYL0g+ggemKh4HGbPmVu0+fB8U76lpR6XgJwZpoGUpNYiusZg1tXjkmCAav0OMTXfJC4eVYPqwbot6l4BCPqyLhd7lwMAWC/cYb3gi/UCzRaKOxsbFzVEM1iv2Ebt5v2Dm14qZbJecZf1Ah3UCrcTbbB+awHnjgHLgHeinHYqZ8aPSXWWy+XvcQZLpdKI9/0D7UbZiLIJmABckVSqo+/OrUrNgF+D8q1LEdcBrAJGAJ8ROlGeicorABWdAswE5gOjge8CF8Ad66v03IjqJb75WS0tE0YOmNWqLBGReaAzgIkMLrt3oM9UpSzCzW9pd+FpT8/7JK3/Gz8Ao5X6wtwP7N4AAAAASUVORK5CYII=", "theme": "light" }, { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVRIid2UPWsUYRSFn3dxWWJUkESiBgslFokfhehGiGClBBQx4h9IGlEh2ijYxh+gxEL/hIWwhYpF8KNZsFRJYdJEiUbjCkqisj4W+y6Mk5nd1U4PDMOce+45L3fmDvzXUDeo59WK+kb9rn5TF9R76jm1+2/NJ9QPtseSOv4nxrvVmQ6M05hRB9qZ98ZR1NRralntitdEwmw8wQ9HbS329rQKuKLW1XJO/aX6IqdWjr1Xk/y6lG4vMBdCqOacoZZ3uBBCVZ0HDrcK2AYs5ZkAuwBb1N8Dm5JEISXoAnqzOtU9QB+wVR3KCdgClDIr6kCc4c/0O1BLNnahiYpaSmmGY62e/JpCLJ4FpmmMaBHYCDwC5mmMZBQYBC7HnhvAK+B+fN4JHAM+R4+3wGQI4S7qaExtol+9o86pq+oX9Yk6ljjtGfVprK2qr9Xb6vaET109jjqb3Jac2XaM1PLNpok1Aep+G/+dfa24nADTX1EWTgOngLE2XCYKQL0DTfKex2WhXgCutxG9i/fFNlwWpgBQL6orcWyTaldToRbUA2pow61XL0WPFfXCb1HqkPowCj6q0+qIWsw7nlpUj6i31OXY+0AdbGpCRtNRGgt1AigCX4EqsJAYTR+wAzgEdAM/gApwM4TwOOm3JiARtBk4CYwAB4F+oIfGZi/HwOfAM6ASQviU5/Vv4xcBzmW2eT1nrQAAAABJRU5ErkJggg==", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACCElEQVRIid2UPWsUYRSFn3dxWWJUkESiBgslFokfhehGiGClBBQx4h9IGlEh2ijYxh+gxEL/hIWwhYpF8KNZsFRJYdJEiUbjCkqisj4W+y6Mk5nd1U4PDMOce+45L3fmDvzXUDeo59WK+kb9rn5TF9R76jm1+2/NJ9QPtseSOv4nxrvVmQ6M05hRB9qZ98ZR1NRralntitdEwmw8wQ9HbS329rQKuKLW1XJO/aX6IqdWjr1Xk/y6lG4vMBdCqOacoZZ3uBBCVZ0HDrcK2AYs5ZkAuwBb1N8Dm5JEISXoAnqzOtU9QB+wVR3KCdgClDIr6kCc4c/0O1BLNnahiYpaSmmGY62e/JpCLJ4FpmmMaBHYCDwC5mmMZBQYBC7HnhvAK+B+fN4JHAM+R4+3wGQI4S7qaExtol+9o86pq+oX9Yk6ljjtGfVprK2qr9Xb6vaET109jjqb3Jac2XaM1PLNpok1Aep+G/+dfa24nADTX1EWTgOngLE2XCYKQL0DTfKex2WhXgCutxG9i/fFNlwWpgBQL6orcWyTaldToRbUA2pow61XL0WPFfXCb1HqkPowCj6q0+qIWsw7nlpUj6i31OXY+0AdbGpCRtNRGgt1AigCX4EqsJAYTR+wAzgEdAM/gApwM4TwOOm3JiARtBk4CYwAB4F+oIfGZi/HwOfAM6ASQviU5/Vv4xcBzmW2eT1nrQAAAABJRU5ErkJggg==", "theme": "dark" } - ] + ], + "inputSchema": { + "properties": { + "owner": { + "description": "Repository owner", + "type": "string" + }, + "pullNumber": { + "description": "Pull request number", + "type": "number" + }, + "repo": { + "description": "Repository name", + "type": "string" + } + }, + "required": [ + "owner", + "repo", + "pullNumber" + ], + "type": "object" + }, + "name": "request_copilot_review" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/rerun_failed_jobs.snap b/pkg/github/__toolsnaps__/rerun_failed_jobs.snap index 2c627637c..099c89153 100644 --- a/pkg/github/__toolsnaps__/rerun_failed_jobs.snap +++ b/pkg/github/__toolsnaps__/rerun_failed_jobs.snap @@ -4,26 +4,26 @@ }, "description": "Re-run only the failed jobs in a workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "rerun_failed_jobs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/rerun_workflow_run.snap b/pkg/github/__toolsnaps__/rerun_workflow_run.snap index 00514ee79..946bd72f3 100644 --- a/pkg/github/__toolsnaps__/rerun_workflow_run.snap +++ b/pkg/github/__toolsnaps__/rerun_workflow_run.snap @@ -4,26 +4,26 @@ }, "description": "Re-run an entire workflow run", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "run_id" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "run_id": { - "type": "number", - "description": "The unique identifier of the workflow run" + "description": "The unique identifier of the workflow run", + "type": "number" } - } + }, + "required": [ + "owner", + "repo", + "run_id" + ], + "type": "object" }, "name": "rerun_workflow_run" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/run_workflow.snap b/pkg/github/__toolsnaps__/run_workflow.snap index bb35e8213..1b6c8993e 100644 --- a/pkg/github/__toolsnaps__/run_workflow.snap +++ b/pkg/github/__toolsnaps__/run_workflow.snap @@ -4,35 +4,35 @@ }, "description": "Run an Actions workflow by workflow ID or filename", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "workflow_id", - "ref" - ], "properties": { "inputs": { - "type": "object", - "description": "Inputs the workflow accepts" + "description": "Inputs the workflow accepts", + "type": "object" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "ref": { - "type": "string", - "description": "The git reference for the workflow. The reference can be a branch or tag name." + "description": "The git reference for the workflow. The reference can be a branch or tag name.", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "workflow_id": { - "type": "string", - "description": "The workflow ID (numeric) or workflow file name (e.g., main.yml, ci.yaml)" + "description": "The workflow ID (numeric) or workflow file name (e.g., main.yml, ci.yaml)", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "workflow_id", + "ref" + ], + "type": "object" }, "name": "run_workflow" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_code.snap b/pkg/github/__toolsnaps__/search_code.snap index aebd432bf..8b5510aa6 100644 --- a/pkg/github/__toolsnaps__/search_code.snap +++ b/pkg/github/__toolsnaps__/search_code.snap @@ -5,39 +5,39 @@ }, "description": "Fast and precise code search across ALL GitHub repositories using GitHub's native search engine. Best for finding exact symbols, functions, classes, or specific code patterns.", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "order": { - "type": "string", "description": "Sort order for results", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "Search query using GitHub's powerful code search syntax. Examples: 'content:Skill language:Java org:github', 'NOT is:archived language:Python OR language:go', 'repo:github/github-mcp-server'. Supports exact matching, language filters, path filters, and more." + "description": "Search query using GitHub's powerful code search syntax. Examples: 'content:Skill language:Java org:github', 'NOT is:archived language:Python OR language:go', 'repo:github/github-mcp-server'. Supports exact matching, language filters, path filters, and more.", + "type": "string" }, "sort": { - "type": "string", - "description": "Sort field ('indexed' only)" + "description": "Sort field ('indexed' only)", + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_code" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_issues.snap b/pkg/github/__toolsnaps__/search_issues.snap index f76a715fb..beaa5b737 100644 --- a/pkg/github/__toolsnaps__/search_issues.snap +++ b/pkg/github/__toolsnaps__/search_issues.snap @@ -5,44 +5,39 @@ }, "description": "Search for issues in GitHub repositories using issues search syntax already scoped to is:issue", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "order": { - "type": "string", "description": "Sort order", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Optional repository owner. If provided with repo, only issues for this repository are listed." + "description": "Optional repository owner. If provided with repo, only issues for this repository are listed.", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "Search query using GitHub issues search syntax" + "description": "Search query using GitHub issues search syntax", + "type": "string" }, "repo": { - "type": "string", - "description": "Optional repository name. If provided with owner, only issues for this repository are listed." + "description": "Optional repository name. If provided with owner, only issues for this repository are listed.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort field by number of matches of categories, defaults to best match", "enum": [ "comments", @@ -56,9 +51,14 @@ "interactions", "created", "updated" - ] + ], + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_issues" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_orgs.snap b/pkg/github/__toolsnaps__/search_orgs.snap index 36eb948ae..9670a4be8 100644 --- a/pkg/github/__toolsnaps__/search_orgs.snap +++ b/pkg/github/__toolsnaps__/search_orgs.snap @@ -5,44 +5,44 @@ }, "description": "Find GitHub organizations by name, location, or other organization metadata. Ideal for discovering companies, open source foundations, or teams.", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "order": { - "type": "string", "description": "Sort order", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "Organization search query. Examples: 'microsoft', 'location:california', 'created:\u003e=2025-01-01'. Search is automatically scoped to type:org." + "description": "Organization search query. Examples: 'microsoft', 'location:california', 'created:\u003e=2025-01-01'. Search is automatically scoped to type:org.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort field by category", "enum": [ "followers", "repositories", "joined" - ] + ], + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_orgs" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_pull_requests.snap b/pkg/github/__toolsnaps__/search_pull_requests.snap index 2013f5c08..05376c006 100644 --- a/pkg/github/__toolsnaps__/search_pull_requests.snap +++ b/pkg/github/__toolsnaps__/search_pull_requests.snap @@ -5,44 +5,39 @@ }, "description": "Search for pull requests in GitHub repositories using issues search syntax already scoped to is:pr", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "order": { - "type": "string", "description": "Sort order", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "owner": { - "type": "string", - "description": "Optional repository owner. If provided with repo, only pull requests for this repository are listed." + "description": "Optional repository owner. If provided with repo, only pull requests for this repository are listed.", + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "Search query using GitHub pull request search syntax" + "description": "Search query using GitHub pull request search syntax", + "type": "string" }, "repo": { - "type": "string", - "description": "Optional repository name. If provided with owner, only pull requests for this repository are listed." + "description": "Optional repository name. If provided with owner, only pull requests for this repository are listed.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort field by number of matches of categories, defaults to best match", "enum": [ "comments", @@ -56,9 +51,14 @@ "interactions", "created", "updated" - ] + ], + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_pull_requests" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_repositories.snap b/pkg/github/__toolsnaps__/search_repositories.snap index 881bc3816..8e1cb3171 100644 --- a/pkg/github/__toolsnaps__/search_repositories.snap +++ b/pkg/github/__toolsnaps__/search_repositories.snap @@ -5,50 +5,50 @@ }, "description": "Find GitHub repositories by name, description, readme, topics, or other metadata. Perfect for discovering projects, finding examples, or locating specific repositories across GitHub.", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "minimal_output": { - "type": "boolean", + "default": true, "description": "Return minimal repository information (default: true). When false, returns full GitHub API repository objects.", - "default": true + "type": "boolean" }, "order": { - "type": "string", "description": "Sort order", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "Repository search query. Examples: 'machine learning in:name stars:\u003e1000 language:python', 'topic:react', 'user:facebook'. Supports advanced search syntax for precise filtering." + "description": "Repository search query. Examples: 'machine learning in:name stars:\u003e1000 language:python', 'topic:react', 'user:facebook'. Supports advanced search syntax for precise filtering.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort repositories by field, defaults to best match", "enum": [ "stars", "forks", "help-wanted-issues", "updated" - ] + ], + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_repositories" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/search_users.snap b/pkg/github/__toolsnaps__/search_users.snap index 293107696..bed86e8c6 100644 --- a/pkg/github/__toolsnaps__/search_users.snap +++ b/pkg/github/__toolsnaps__/search_users.snap @@ -5,44 +5,44 @@ }, "description": "Find GitHub users by username, real name, or other profile information. Useful for locating developers, contributors, or team members.", "inputSchema": { - "type": "object", - "required": [ - "query" - ], "properties": { "order": { - "type": "string", "description": "Sort order", "enum": [ "asc", "desc" - ] + ], + "type": "string" }, "page": { - "type": "number", "description": "Page number for pagination (min 1)", - "minimum": 1 + "minimum": 1, + "type": "number" }, "perPage": { - "type": "number", "description": "Results per page for pagination (min 1, max 100)", + "maximum": 100, "minimum": 1, - "maximum": 100 + "type": "number" }, "query": { - "type": "string", - "description": "User search query. Examples: 'john smith', 'location:seattle', 'followers:\u003e100'. Search is automatically scoped to type:user." + "description": "User search query. Examples: 'john smith', 'location:seattle', 'followers:\u003e100'. Search is automatically scoped to type:user.", + "type": "string" }, "sort": { - "type": "string", "description": "Sort users by number of followers or repositories, or when the person joined GitHub.", "enum": [ "followers", "repositories", "joined" - ] + ], + "type": "string" } - } + }, + "required": [ + "query" + ], + "type": "object" }, "name": "search_users" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/star_repository.snap b/pkg/github/__toolsnaps__/star_repository.snap index ab1514b3d..3d7088939 100644 --- a/pkg/github/__toolsnaps__/star_repository.snap +++ b/pkg/github/__toolsnaps__/star_repository.snap @@ -3,34 +3,34 @@ "title": "Star repository" }, "description": "Star a GitHub repository", - "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], - "properties": { - "owner": { - "type": "string", - "description": "Repository owner" - }, - "repo": { - "type": "string", - "description": "Repository name" - } - } - }, - "name": "star_repository", "icons": [ { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACG0lEQVRIidWVMWgTYRiGn+/+a21EClGrERRiTWLShrbiUETErDq7u3QRF0WhoKN06uYgKEVx1lGQLjo4OTUJ2FzSpBrEQiCkGYPm7nMwlZBe2rvaxXf6eb//fd//u/+7O0MIJDJz905MnJpvNRufg2oksHli5iwjUgXExUp9La3Vg+isoAGMyiJwBBi11XsQVBaog0zm8plfdGtApEd1LJdEpVL4sZ82UAc/cRf7zAHGPKMPg2j37eB8NnvauGYTODpQ6hjPulAur23tpTd7FePx+JhtIkvAVZ+yraJj48ciH9rtdneYhwCk03NxV5hWNAWSVLykIEngHPs/Rg/4ruiGYG2AbghSMcoXx8l/k3R6Lt4V3STEyAaE2iqTluPk66Arh2wO6Irj5OsGoNVsvIuejEVFmD8Ua+V5zSneAfTvJW83G6vHJ2LjwJV/tH9Wc4p3AYWBKWo1G6vRiZgRuH4ga3S5Vire7+d2jel2s/HxICEKT2ql4qNB3ncEbU9fhTEHGFF56cf7BrhCNmyAi/pqhr1EoQN0iGZIgEyHDUDw1dghNneB1731bR9tsA5yuZwNZPooBd4YT7PVUmGhWios2CpJEV7w5zu0g0xPO3DWAUymZ1OWUO6V3yP6uLpeWPM7XWJq9hIqS6A3ADzl4qZTqPTv2ZUYMd2tjms/NZa+rawXPvkZ76AXfDM1NXPN9eRWxHT3/Df8n/gNrfGxihYBZk0AAAAASUVORK5CYII=", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAACG0lEQVRIidWVMWgTYRiGn+/+a21EClGrERRiTWLShrbiUETErDq7u3QRF0WhoKN06uYgKEVx1lGQLjo4OTUJ2FzSpBrEQiCkGYPm7nMwlZBe2rvaxXf6eb//fd//u/+7O0MIJDJz905MnJpvNRufg2oksHli5iwjUgXExUp9La3Vg+isoAGMyiJwBBi11XsQVBaog0zm8plfdGtApEd1LJdEpVL4sZ82UAc/cRf7zAHGPKMPg2j37eB8NnvauGYTODpQ6hjPulAur23tpTd7FePx+JhtIkvAVZ+yraJj48ciH9rtdneYhwCk03NxV5hWNAWSVLykIEngHPs/Rg/4ruiGYG2AbghSMcoXx8l/k3R6Lt4V3STEyAaE2iqTluPk66Arh2wO6Irj5OsGoNVsvIuejEVFmD8Ua+V5zSneAfTvJW83G6vHJ2LjwJV/tH9Wc4p3AYWBKWo1G6vRiZgRuH4ga3S5Vire7+d2jel2s/HxICEKT2ql4qNB3ncEbU9fhTEHGFF56cf7BrhCNmyAi/pqhr1EoQN0iGZIgEyHDUDw1dghNneB1731bR9tsA5yuZwNZPooBd4YT7PVUmGhWios2CpJEV7w5zu0g0xPO3DWAUymZ1OWUO6V3yP6uLpeWPM7XWJq9hIqS6A3ADzl4qZTqPTv2ZUYMd2tjms/NZa+rawXPvkZ76AXfDM1NXPN9eRWxHT3/Df8n/gNrfGxihYBZk0AAAAASUVORK5CYII=", "theme": "light" }, { - "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABLElEQVRIidWVTUrDQBiG3ylddNG9+IdRMC7qpgfoWTyCnqFLF/62UMGNWw/gTdwoiMUzaCtoHxeZ4BQn6SQdEV8IZPG9zzMzCYlUIcARcFilUwW+AUyBd2DrNwSXfOciNnwVeHMEE2A9puCMnzmNBV8BXj2CCbC2LLwFDDzwPAOgVcYwFpRI6khKJe0616akxoJ1zCS9SHp0rgdJ98aYZ2PhT7ksYpC005A0lnQdGS7LHGcqMMB5yVlXzQiYP1orOYkAHwLFxw30l4AfBx1eTUk/+OkA2zUEiY9V9I7vB69mQefPBJ0aAm+nWWH4Q9KNvT/wdMN2DTTJ/lx5ZsAtsOfMJMAV8OnMTYGiBc8JUqd0B3RLZrt2Jk8aImiTfTZ6QVvOOj3baYd2/k++AC+3Yx0GcXS0AAAAAElFTkSuQmCC", "mimeType": "image/png", + "src": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAABLElEQVRIidWVTUrDQBiG3ylddNG9+IdRMC7qpgfoWTyCnqFLF/62UMGNWw/gTdwoiMUzaCtoHxeZ4BQn6SQdEV8IZPG9zzMzCYlUIcARcFilUwW+AUyBd2DrNwSXfOciNnwVeHMEE2A9puCMnzmNBV8BXj2CCbC2LLwFDDzwPAOgVcYwFpRI6khKJe0616akxoJ1zCS9SHp0rgdJ98aYZ2PhT7ksYpC005A0lnQdGS7LHGcqMMB5yVlXzQiYP1orOYkAHwLFxw30l4AfBx1eTUk/+OkA2zUEiY9V9I7vB69mQefPBJ0aAm+nWWH4Q9KNvT/wdMN2DTTJ/lx5ZsAtsOfMJMAV8OnMTYGiBc8JUqd0B3RLZrt2Jk8aImiTfTZ6QVvOOj3baYd2/k++AC+3Yx0GcXS0AAAAAElFTkSuQmCC", "theme": "dark" } - ] + ], + "inputSchema": { + "properties": { + "owner": { + "description": "Repository owner", + "type": "string" + }, + "repo": { + "description": "Repository name", + "type": "string" + } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" + }, + "name": "star_repository" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/sub_issue_write.snap b/pkg/github/__toolsnaps__/sub_issue_write.snap index 1c721a2bb..1e4fcceab 100644 --- a/pkg/github/__toolsnaps__/sub_issue_write.snap +++ b/pkg/github/__toolsnaps__/sub_issue_write.snap @@ -4,48 +4,48 @@ }, "description": "Add a sub-issue to a parent issue in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "method", - "owner", - "repo", - "issue_number", - "sub_issue_id" - ], "properties": { "after_id": { - "type": "number", - "description": "The ID of the sub-issue to be prioritized after (either after_id OR before_id should be specified)" + "description": "The ID of the sub-issue to be prioritized after (either after_id OR before_id should be specified)", + "type": "number" }, "before_id": { - "type": "number", - "description": "The ID of the sub-issue to be prioritized before (either after_id OR before_id should be specified)" + "description": "The ID of the sub-issue to be prioritized before (either after_id OR before_id should be specified)", + "type": "number" }, "issue_number": { - "type": "number", - "description": "The number of the parent issue" + "description": "The number of the parent issue", + "type": "number" }, "method": { - "type": "string", - "description": "The action to perform on a single sub-issue\nOptions are:\n- 'add' - add a sub-issue to a parent issue in a GitHub repository.\n- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.\n- 'reprioritize' - change the order of sub-issues within a parent issue in a GitHub repository. Use either 'after_id' or 'before_id' to specify the new position.\n\t\t\t\t" + "description": "The action to perform on a single sub-issue\nOptions are:\n- 'add' - add a sub-issue to a parent issue in a GitHub repository.\n- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.\n- 'reprioritize' - change the order of sub-issues within a parent issue in a GitHub repository. Use either 'after_id' or 'before_id' to specify the new position.\n\t\t\t\t", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "replace_parent": { - "type": "boolean", - "description": "When true, replaces the sub-issue's current parent issue. Use with 'add' method only." + "description": "When true, replaces the sub-issue's current parent issue. Use with 'add' method only.", + "type": "boolean" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "sub_issue_id": { - "type": "number", - "description": "The ID of the sub-issue to add. ID is not the same as issue number" + "description": "The ID of the sub-issue to add. ID is not the same as issue number", + "type": "number" } - } + }, + "required": [ + "method", + "owner", + "repo", + "issue_number", + "sub_issue_id" + ], + "type": "object" }, "name": "sub_issue_write" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/unstar_repository.snap b/pkg/github/__toolsnaps__/unstar_repository.snap index 709453650..2bb5d6825 100644 --- a/pkg/github/__toolsnaps__/unstar_repository.snap +++ b/pkg/github/__toolsnaps__/unstar_repository.snap @@ -4,21 +4,21 @@ }, "description": "Unstar a GitHub repository", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo" - ], "properties": { "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo" + ], + "type": "object" }, "name": "unstar_repository" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/update_gist.snap b/pkg/github/__toolsnaps__/update_gist.snap index a3907a88c..6d5ed100e 100644 --- a/pkg/github/__toolsnaps__/update_gist.snap +++ b/pkg/github/__toolsnaps__/update_gist.snap @@ -4,30 +4,30 @@ }, "description": "Update an existing gist", "inputSchema": { - "type": "object", - "required": [ - "gist_id", - "filename", - "content" - ], "properties": { "content": { - "type": "string", - "description": "Content for the file" + "description": "Content for the file", + "type": "string" }, "description": { - "type": "string", - "description": "Updated description of the gist" + "description": "Updated description of the gist", + "type": "string" }, "filename": { - "type": "string", - "description": "Filename to update or create" + "description": "Filename to update or create", + "type": "string" }, "gist_id": { - "type": "string", - "description": "ID of the gist to update" + "description": "ID of the gist to update", + "type": "string" } - } + }, + "required": [ + "gist_id", + "filename", + "content" + ], + "type": "object" }, "name": "update_gist" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/update_project_item.snap b/pkg/github/__toolsnaps__/update_project_item.snap index 8f5afaa58..987590741 100644 --- a/pkg/github/__toolsnaps__/update_project_item.snap +++ b/pkg/github/__toolsnaps__/update_project_item.snap @@ -4,40 +4,40 @@ }, "description": "Update a specific Project item for a user or org", "inputSchema": { - "type": "object", - "required": [ - "owner_type", - "owner", - "project_number", - "item_id", - "updated_field" - ], "properties": { "item_id": { - "type": "number", - "description": "The unique identifier of the project item. This is not the issue or pull request ID." + "description": "The unique identifier of the project item. This is not the issue or pull request ID.", + "type": "number" }, "owner": { - "type": "string", - "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." + "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", + "type": "string" }, "owner_type": { - "type": "string", "description": "Owner type", "enum": [ "user", "org" - ] + ], + "type": "string" }, "project_number": { - "type": "number", - "description": "The project's number." + "description": "The project's number.", + "type": "number" }, "updated_field": { - "type": "object", - "description": "Object consisting of the ID of the project field to update and the new value for the field. To clear the field, set value to null. Example: {\"id\": 123456, \"value\": \"New Value\"}" + "description": "Object consisting of the ID of the project field to update and the new value for the field. To clear the field, set value to null. Example: {\"id\": 123456, \"value\": \"New Value\"}", + "type": "object" } - } + }, + "required": [ + "owner_type", + "owner", + "project_number", + "item_id", + "updated_field" + ], + "type": "object" }, "name": "update_project_item" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/update_pull_request.snap b/pkg/github/__toolsnaps__/update_pull_request.snap index 6dec2c01f..ef330188f 100644 --- a/pkg/github/__toolsnaps__/update_pull_request.snap +++ b/pkg/github/__toolsnaps__/update_pull_request.snap @@ -4,61 +4,61 @@ }, "description": "Update an existing pull request in a GitHub repository.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "pullNumber" - ], "properties": { "base": { - "type": "string", - "description": "New base branch name" + "description": "New base branch name", + "type": "string" }, "body": { - "type": "string", - "description": "New description" + "description": "New description", + "type": "string" }, "draft": { - "type": "boolean", - "description": "Mark pull request as draft (true) or ready for review (false)" + "description": "Mark pull request as draft (true) or ready for review (false)", + "type": "boolean" }, "maintainer_can_modify": { - "type": "boolean", - "description": "Allow maintainer edits" + "description": "Allow maintainer edits", + "type": "boolean" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "pullNumber": { - "type": "number", - "description": "Pull request number to update" + "description": "Pull request number to update", + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" }, "reviewers": { - "type": "array", "description": "GitHub usernames to request reviews from", "items": { "type": "string" - } + }, + "type": "array" }, "state": { - "type": "string", "description": "New state", "enum": [ "open", "closed" - ] + ], + "type": "string" }, "title": { - "type": "string", - "description": "New title" + "description": "New title", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "pullNumber" + ], + "type": "object" }, "name": "update_pull_request" } \ No newline at end of file diff --git a/pkg/github/__toolsnaps__/update_pull_request_branch.snap b/pkg/github/__toolsnaps__/update_pull_request_branch.snap index 9be1cb002..a84ac414d 100644 --- a/pkg/github/__toolsnaps__/update_pull_request_branch.snap +++ b/pkg/github/__toolsnaps__/update_pull_request_branch.snap @@ -4,30 +4,30 @@ }, "description": "Update the branch of a pull request with the latest changes from the base branch.", "inputSchema": { - "type": "object", - "required": [ - "owner", - "repo", - "pullNumber" - ], "properties": { "expectedHeadSha": { - "type": "string", - "description": "The expected SHA of the pull request's HEAD ref" + "description": "The expected SHA of the pull request's HEAD ref", + "type": "string" }, "owner": { - "type": "string", - "description": "Repository owner" + "description": "Repository owner", + "type": "string" }, "pullNumber": { - "type": "number", - "description": "Pull request number" + "description": "Pull request number", + "type": "number" }, "repo": { - "type": "string", - "description": "Repository name" + "description": "Repository name", + "type": "string" } - } + }, + "required": [ + "owner", + "repo", + "pullNumber" + ], + "type": "object" }, "name": "update_pull_request_branch" } \ No newline at end of file