Skip to content

Commit d62af97

Browse files
committed
Issues consolidation
1 parent e5522fc commit d62af97

File tree

13 files changed

+1066
-1087
lines changed

13 files changed

+1066
-1087
lines changed

README.md

Lines changed: 42 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -566,44 +566,48 @@ The following sets of tools are available (all are on by default):
566566
- `owner`: Repository owner (string, required)
567567
- `repo`: Repository name (string, required)
568568

569-
- **add_sub_issue** - Add sub-issue
570-
- `issue_number`: The number of the parent issue (number, required)
571-
- `owner`: Repository owner (string, required)
572-
- `replace_parent`: When true, replaces the sub-issue's current parent issue (boolean, optional)
573-
- `repo`: Repository name (string, required)
574-
- `sub_issue_id`: The ID of the sub-issue to add. ID is not the same as issue number (number, required)
575-
576569
- **assign_copilot_to_issue** - Assign Copilot to issue
577570
- `issueNumber`: Issue number (number, required)
578571
- `owner`: Repository owner (string, required)
579572
- `repo`: Repository name (string, required)
580573

581-
- **create_issue** - Open new issue
582-
- `assignees`: Usernames to assign to this issue (string[], optional)
583-
- `body`: Issue body content (string, optional)
584-
- `labels`: Labels to apply to this issue (string[], optional)
585-
- `milestone`: Milestone number (number, optional)
586-
- `owner`: Repository owner (string, required)
574+
- **get_label** - Get a specific label from a repository.
575+
- `name`: Label name. (string, required)
576+
- `owner`: Repository owner (username or organization name) (string, required)
587577
- `repo`: Repository name (string, required)
588-
- `title`: Issue title (string, required)
589-
- `type`: Type of this issue (string, optional)
590578

591-
- **get_issue** - Get issue details
579+
- **issue_read** - Get issue details
592580
- `issue_number`: The number of the issue (number, required)
581+
- `method`: The read operation to perform on a single issue.
582+
Options are:
583+
1. 'get' - get issue details
584+
2. 'get_comments' - get issue comments
585+
3. 'get_sub_issues' - list sub-issues of the issue
586+
4. 'get_labels' - list labels assigned to the issue
587+
(string, required)
593588
- `owner`: The owner of the repository (string, required)
594-
- `repo`: The name of the repository (string, required)
595-
596-
- **get_issue_comments** - Get issue comments
597-
- `issue_number`: Issue number (number, required)
598-
- `owner`: Repository owner (string, required)
599589
- `page`: Page number for pagination (min 1) (number, optional)
600590
- `perPage`: Results per page for pagination (min 1, max 100) (number, optional)
601-
- `repo`: Repository name (string, required)
591+
- `repo`: The name of the repository (string, required)
602592

603-
- **get_label** - Get a specific label from a repository.
604-
- `name`: Label name. (string, required)
605-
- `owner`: Repository owner (username or organization name) (string, required)
593+
- **issue_write** - Create or update issue.
594+
- `assignees`: Usernames to assign to this issue (string[], optional)
595+
- `body`: Issue body content (string, optional)
596+
- `duplicate_of`: Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'. (number, optional)
597+
- `issue_number`: Issue number to update (number, optional)
598+
- `labels`: Labels to apply to this issue (string[], optional)
599+
- `method`: Write operation to perform on a single issue.
600+
Options are:
601+
- 'create' - creates a new issue.
602+
- 'update' - updates an existing issue.
603+
(string, required)
604+
- `milestone`: Milestone number (number, optional)
605+
- `owner`: Repository owner (string, required)
606606
- `repo`: Repository name (string, required)
607+
- `state`: New state (string, optional)
608+
- `state_reason`: Reason for the state change. Ignored unless state is changed. (string, optional)
609+
- `title`: Issue title (string, optional)
610+
- `type`: Type of this issue (string, optional)
607611

608612
- **list_issue_types** - List available issue types
609613
- `owner`: The organization owner of the repository (string, required)
@@ -619,32 +623,6 @@ The following sets of tools are available (all are on by default):
619623
- `since`: Filter by date (ISO 8601 timestamp) (string, optional)
620624
- `state`: Filter by state, by default both open and closed issues are returned when not provided (string, optional)
621625

622-
- **list_label** - List labels from a repository or an issue
623-
- `issue_number`: Issue number - if provided, lists labels on the specific issue (number, optional)
624-
- `owner`: Repository owner (username or organization name) - required for all operations (string, required)
625-
- `repo`: Repository name - required for all operations (string, required)
626-
627-
- **list_sub_issues** - List sub-issues
628-
- `issue_number`: Issue number (number, required)
629-
- `owner`: Repository owner (string, required)
630-
- `page`: Page number for pagination (default: 1) (number, optional)
631-
- `per_page`: Number of results per page (max 100, default: 30) (number, optional)
632-
- `repo`: Repository name (string, required)
633-
634-
- **remove_sub_issue** - Remove sub-issue
635-
- `issue_number`: The number of the parent issue (number, required)
636-
- `owner`: Repository owner (string, required)
637-
- `repo`: Repository name (string, required)
638-
- `sub_issue_id`: The ID of the sub-issue to remove. ID is not the same as issue number (number, required)
639-
640-
- **reprioritize_sub_issue** - Reprioritize sub-issue
641-
- `after_id`: The ID of the sub-issue to be prioritized after (either after_id OR before_id should be specified) (number, optional)
642-
- `before_id`: The ID of the sub-issue to be prioritized before (either after_id OR before_id should be specified) (number, optional)
643-
- `issue_number`: The number of the parent issue (number, required)
644-
- `owner`: Repository owner (string, required)
645-
- `repo`: Repository name (string, required)
646-
- `sub_issue_id`: The ID of the sub-issue to reprioritize. ID is not the same as issue number (number, required)
647-
648626
- **search_issues** - Search issues
649627
- `order`: Sort order (string, optional)
650628
- `owner`: Optional repository owner. If provided with repo, only issues for this repository are listed. (string, optional)
@@ -654,19 +632,20 @@ The following sets of tools are available (all are on by default):
654632
- `repo`: Optional repository name. If provided with owner, only issues for this repository are listed. (string, optional)
655633
- `sort`: Sort field by number of matches of categories, defaults to best match (string, optional)
656634

657-
- **update_issue** - Edit issue
658-
- `assignees`: New assignees (string[], optional)
659-
- `body`: New description (string, optional)
660-
- `duplicate_of`: Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'. (number, optional)
661-
- `issue_number`: Issue number to update (number, required)
662-
- `labels`: New labels (string[], optional)
663-
- `milestone`: New milestone number (number, optional)
635+
- **sub_issue_write** - Change sub-issue
636+
- `after_id`: The ID of the sub-issue to be prioritized after (either after_id OR before_id should be specified) (number, optional)
637+
- `before_id`: The ID of the sub-issue to be prioritized before (either after_id OR before_id should be specified) (number, optional)
638+
- `issue_number`: The number of the parent issue (number, required)
639+
- `method`: The action to perform on a single sub-issue
640+
Options are:
641+
- 'add' - add a sub-issue to a parent issue in a GitHub repository.
642+
- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.
643+
- '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.
644+
(string, required)
664645
- `owner`: Repository owner (string, required)
646+
- `replace_parent`: When true, replaces the sub-issue's current parent issue. Use with 'add' method only. (boolean, optional)
665647
- `repo`: Repository name (string, required)
666-
- `state`: New state (string, optional)
667-
- `state_reason`: Reason for the state change. Ignored unless state is changed. (string, optional)
668-
- `title`: New title (string, optional)
669-
- `type`: New issue type (string, optional)
648+
- `sub_issue_id`: The ID of the sub-issue to add. ID is not the same as issue number (number, required)
670649

671650
</details>
672651

@@ -688,8 +667,7 @@ The following sets of tools are available (all are on by default):
688667
- `owner`: Repository owner (username or organization name) (string, required)
689668
- `repo`: Repository name (string, required)
690669

691-
- **list_label** - List labels from a repository or an issue
692-
- `issue_number`: Issue number - if provided, lists labels on the specific issue (number, optional)
670+
- **list_label** - List labels from a repository
693671
- `owner`: Repository owner (username or organization name) - required for all operations (string, required)
694672
- `repo`: Repository name - required for all operations (string, required)
695673

pkg/github/__toolsnaps__/get_issue.snap

Lines changed: 0 additions & 30 deletions
This file was deleted.

pkg/github/__toolsnaps__/get_issue_comments.snap

Lines changed: 0 additions & 41 deletions
This file was deleted.
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
{
2+
"annotations": {
3+
"title": "Get issue details",
4+
"readOnlyHint": true
5+
},
6+
"description": "Get information about a specific issue in a GitHub repository.",
7+
"inputSchema": {
8+
"properties": {
9+
"issue_number": {
10+
"description": "The number of the issue",
11+
"type": "number"
12+
},
13+
"method": {
14+
"description": "The read operation to perform on a single issue. \nOptions are: \n1. 'get' - get issue details\n2. 'get_comments' - get issue comments\n3. 'get_sub_issues' - list sub-issues of the issue\n4. 'get_labels' - list labels assigned to the issue\n",
15+
"enum": [
16+
"get",
17+
"get_comments",
18+
"get_sub_issues",
19+
"get_labels"
20+
],
21+
"type": "string"
22+
},
23+
"owner": {
24+
"description": "The owner of the repository",
25+
"type": "string"
26+
},
27+
"page": {
28+
"description": "Page number for pagination (min 1)",
29+
"minimum": 1,
30+
"type": "number"
31+
},
32+
"perPage": {
33+
"description": "Results per page for pagination (min 1, max 100)",
34+
"maximum": 100,
35+
"minimum": 1,
36+
"type": "number"
37+
},
38+
"repo": {
39+
"description": "The name of the repository",
40+
"type": "string"
41+
}
42+
},
43+
"required": [
44+
"method",
45+
"owner",
46+
"repo",
47+
"issue_number"
48+
],
49+
"type": "object"
50+
},
51+
"name": "issue_read"
52+
}
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
{
2+
"annotations": {
3+
"title": "Create or update issue.",
4+
"readOnlyHint": false
5+
},
6+
"description": "Create a new or update an existing issue in a GitHub repository.",
7+
"inputSchema": {
8+
"properties": {
9+
"assignees": {
10+
"description": "Usernames to assign to this issue",
11+
"items": {
12+
"type": "string"
13+
},
14+
"type": "array"
15+
},
16+
"body": {
17+
"description": "Issue body content",
18+
"type": "string"
19+
},
20+
"duplicate_of": {
21+
"description": "Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'.",
22+
"type": "number"
23+
},
24+
"issue_number": {
25+
"description": "Issue number to update",
26+
"type": "number"
27+
},
28+
"labels": {
29+
"description": "Labels to apply to this issue",
30+
"items": {
31+
"type": "string"
32+
},
33+
"type": "array"
34+
},
35+
"method": {
36+
"description": "Write operation to perform on a single issue.\nOptions are: \n- 'create' - creates a new issue. \n- 'update' - updates an existing issue.\n",
37+
"enum": [
38+
"create",
39+
"update"
40+
],
41+
"type": "string"
42+
},
43+
"milestone": {
44+
"description": "Milestone number",
45+
"type": "number"
46+
},
47+
"owner": {
48+
"description": "Repository owner",
49+
"type": "string"
50+
},
51+
"repo": {
52+
"description": "Repository name",
53+
"type": "string"
54+
},
55+
"state": {
56+
"description": "New state",
57+
"enum": [
58+
"open",
59+
"closed"
60+
],
61+
"type": "string"
62+
},
63+
"state_reason": {
64+
"description": "Reason for the state change. Ignored unless state is changed.",
65+
"enum": [
66+
"completed",
67+
"not_planned",
68+
"duplicate"
69+
],
70+
"type": "string"
71+
},
72+
"title": {
73+
"description": "Issue title",
74+
"type": "string"
75+
},
76+
"type": {
77+
"description": "Type of this issue",
78+
"type": "string"
79+
}
80+
},
81+
"required": [
82+
"method",
83+
"owner",
84+
"repo"
85+
],
86+
"type": "object"
87+
},
88+
"name": "issue_write"
89+
}

pkg/github/__toolsnaps__/list_label.snap

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,9 @@
33
"title": "List labels from a repository.",
44
"readOnlyHint": true
55
},
6-
"description": "List labels from a repository or an issue",
6+
"description": "List labels from a repository",
77
"inputSchema": {
88
"properties": {
9-
"issue_number": {
10-
"description": "Issue number - if provided, lists labels on the specific issue",
11-
"type": "number"
12-
},
139
"owner": {
1410
"description": "Repository owner (username or organization name) - required for all operations",
1511
"type": "string"

0 commit comments

Comments
 (0)