issue

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 24, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(reg *registry.Registry, client *gitlab.Client)

Register はIssue関連ツールを登録する

Types

type CreateIssueDiscussionInput

type CreateIssueDiscussionInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	Body      string `json:"body" jsonschema:"description:Discussion body text"`
}

CreateIssueDiscussionInput は create_issue_discussion の入力パラメータ

type CreateIssueDiscussionOutput

type CreateIssueDiscussionOutput struct {
	ID string `json:"id"`
}

CreateIssueDiscussionOutput は create_issue_discussion の出力

type CreateIssueInput

type CreateIssueInput struct {
	ProjectID   string   `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	Title       string   `json:"title" jsonschema:"description:Issue title"`
	Description *string  `json:"description,omitempty" jsonschema:"description:Issue description"`
	Labels      []string `json:"labels,omitempty" jsonschema:"description:Labels to add"`
	AssigneeIDs []int    `json:"assignee_ids,omitempty" jsonschema:"description:Assignee user IDs"`
	MilestoneID *int     `json:"milestone_id,omitempty" jsonschema:"description:Milestone ID"`
}

CreateIssueInput は create_issue の入力パラメータ

type CreateIssueNoteInput

type CreateIssueNoteInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	Body      string `json:"body" jsonschema:"description:Comment body text"`
}

CreateIssueNoteInput は create_issue_note の入力パラメータ

type CreateIssueNoteOutput

type CreateIssueNoteOutput struct {
	ID         int64  `json:"id"`
	Body       string `json:"body"`
	AuthorName string `json:"author_name,omitempty"`
	CreatedAt  string `json:"created_at,omitempty"`
}

CreateIssueNoteOutput は create_issue_note の出力

type CreateIssueOutput

type CreateIssueOutput struct {
	IID    int64  `json:"iid"`
	Title  string `json:"title"`
	WebURL string `json:"web_url"`
}

CreateIssueOutput は create_issue の出力

type DeleteIssueInput

type DeleteIssueInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
}

DeleteIssueInput は delete_issue の入力パラメータ

type DeleteIssueNoteInput

type DeleteIssueNoteInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	NoteID    int    `json:"note_id" jsonschema:"description:Note ID to delete"`
}

DeleteIssueNoteInput は delete_issue_note の入力パラメータ

type DeleteIssueNoteOutput

type DeleteIssueNoteOutput struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

DeleteIssueNoteOutput は delete_issue_note の出力

type DeleteIssueOutput

type DeleteIssueOutput struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

DeleteIssueOutput は delete_issue の出力

type DiscussionNote

type DiscussionNote struct {
	ID         int64  `json:"id"`
	Body       string `json:"body"`
	AuthorName string `json:"author_name,omitempty"`
}

DiscussionNote はディスカッション内のノート情報

type DiscussionSummary

type DiscussionSummary struct {
	ID    string           `json:"id"`
	Notes []DiscussionNote `json:"notes"`
}

DiscussionSummary はディスカッションのサマリー情報

type GetIssueInput

type GetIssueInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
}

GetIssueInput は get_issue の入力パラメータ

type GetIssueOutput

type GetIssueOutput = IssueDetail

GetIssueOutput は get_issue の出力

type IssueDetail

type IssueDetail struct {
	IID         int64    `json:"iid"`
	Title       string   `json:"title"`
	Description string   `json:"description"`
	State       string   `json:"state"`
	WebURL      string   `json:"web_url"`
	AuthorName  string   `json:"author_name,omitempty"`
	Labels      []string `json:"labels,omitempty"`
	CreatedAt   string   `json:"created_at,omitempty"`
	UpdatedAt   string   `json:"updated_at,omitempty"`
}

IssueDetail はIssue詳細情報

type IssueSummary

type IssueSummary struct {
	IID        int64    `json:"iid"`
	Title      string   `json:"title"`
	State      string   `json:"state"`
	WebURL     string   `json:"web_url"`
	AuthorName string   `json:"author_name,omitempty"`
	Labels     []string `json:"labels,omitempty"`
}

IssueSummary はIssue一覧の各項目

type ListIssueDiscussionsInput

type ListIssueDiscussionsInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	Page      int    `json:"page,omitempty" jsonschema:"description:Page number (default: 1)"`
	PerPage   int    `json:"per_page,omitempty" jsonschema:"description:Number of items per page (default: 100, max: 100)"`
}

ListIssueDiscussionsInput は list_issue_discussions の入力パラメータ

type ListIssueDiscussionsOutput

type ListIssueDiscussionsOutput struct {
	Discussions []DiscussionSummary `json:"discussions"`
}

ListIssueDiscussionsOutput は list_issue_discussions の出力

type ListIssueNotesInput

type ListIssueNotesInput struct {
	ProjectID string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID  int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	Page      int    `json:"page,omitempty" jsonschema:"description:Page number (default: 1)"`
	PerPage   int    `json:"per_page,omitempty" jsonschema:"description:Number of items per page (default: 100, max: 100)"`
}

ListIssueNotesInput は list_issue_notes の入力パラメータ

type ListIssueNotesOutput

type ListIssueNotesOutput struct {
	Notes []NoteInfo `json:"notes"`
}

ListIssueNotesOutput は list_issue_notes の出力

type ListIssuesInput

type ListIssuesInput struct {
	ProjectID  string   `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	State      *string  `json:"state,omitempty" jsonschema:"enum:opened,enum:closed,enum:all,description:Issue state filter"`
	Labels     []string `json:"labels,omitempty" jsonschema:"description:Label names filter"`
	AssigneeID *int     `json:"assignee_id,omitempty" jsonschema:"description:Assignee user ID filter"`
	AuthorID   *int     `json:"author_id,omitempty" jsonschema:"description:Author user ID filter"`
	Search     *string  `json:"search,omitempty" jsonschema:"description:Search query"`
	Page       int      `json:"page,omitempty" jsonschema:"description:Page number (default: 1)"`
	PerPage    int      `json:"per_page,omitempty" jsonschema:"description:Number of items per page (default: 100, max: 100)"`
}

ListIssuesInput は list_issues の入力パラメータ

type ListIssuesOutput

type ListIssuesOutput struct {
	Issues []IssueSummary `json:"issues"`
}

ListIssuesOutput は list_issues の出力

type NoteInfo

type NoteInfo struct {
	ID         int64  `json:"id"`
	Body       string `json:"body"`
	AuthorName string `json:"author_name,omitempty"`
	CreatedAt  string `json:"created_at,omitempty"`
	System     bool   `json:"system"`
}

NoteInfo はノート情報

type ReplyToIssueDiscussionInput

type ReplyToIssueDiscussionInput struct {
	ProjectID    string `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID     int    `json:"issue_iid" jsonschema:"description:Issue IID"`
	DiscussionID string `json:"discussion_id" jsonschema:"description:Discussion ID to reply to"`
	Body         string `json:"body" jsonschema:"description:Reply body text"`
}

ReplyToIssueDiscussionInput は reply_to_issue_discussion の入力パラメータ

type ReplyToIssueDiscussionOutput

type ReplyToIssueDiscussionOutput struct {
	ID         int64  `json:"id"`
	Body       string `json:"body"`
	AuthorName string `json:"author_name,omitempty"`
	CreatedAt  string `json:"created_at,omitempty"`
}

ReplyToIssueDiscussionOutput は reply_to_issue_discussion の出力

type UpdateIssueInput

type UpdateIssueInput struct {
	ProjectID   string   `json:"project_id" jsonschema:"description:Project ID or URL-encoded path"`
	IssueIID    int      `json:"issue_iid" jsonschema:"description:Issue IID"`
	Title       *string  `json:"title,omitempty" jsonschema:"description:New title"`
	Description *string  `json:"description,omitempty" jsonschema:"description:New description"`
	StateEvent  *string  `json:"state_event,omitempty" jsonschema:"enum:close,enum:reopen,description:State event"`
	Labels      []string `json:"labels,omitempty" jsonschema:"description:New labels"`
	AssigneeIDs []int    `json:"assignee_ids,omitempty" jsonschema:"description:New assignee user IDs"`
	MilestoneID *int     `json:"milestone_id,omitempty" jsonschema:"description:New milestone ID"`
}

UpdateIssueInput は update_issue の入力パラメータ

type UpdateIssueOutput

type UpdateIssueOutput struct {
	IID    int64  `json:"iid"`
	Title  string `json:"title"`
	State  string `json:"state"`
	WebURL string `json:"web_url"`
}

UpdateIssueOutput は update_issue の出力

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL