cmd

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: May 5, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AttachmentsAddCmd

type AttachmentsAddCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	FilePath string `arg:"" help:"Path to file to attach. After attaching, use !filename! in descriptions/comments to embed inline"`
	Filename string `help:"Display name for the attachment (defaults to file's basename)"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*AttachmentsAddCmd) Run

func (c *AttachmentsAddCmd) Run(client *api.Client) error

type AttachmentsCmd

type AttachmentsCmd struct {
	Add AttachmentsAddCmd `cmd:"" help:"Add an attachment to an issue"`
}

type CommentsAddCmd

type CommentsAddCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Text     string `arg:"" optional:"" help:"Comment text (supports markdown, @mentions, and inline images (!filename!))"`
	File     string `help:"Read comment from file"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*CommentsAddCmd) Run

func (c *CommentsAddCmd) Run(client *api.Client) error

type CommentsCmd

type CommentsCmd struct {
	List   CommentsListCmd   `cmd:"" help:"List comments on an issue"`
	Add    CommentsAddCmd    `cmd:"" help:"Add a comment to an issue"`
	Update CommentsUpdateCmd `cmd:"" help:"Update a comment"`
	Delete CommentsDeleteCmd `cmd:"" help:"Delete a comment"`
}

type CommentsDeleteCmd

type CommentsDeleteCmd struct {
	IssueKey  string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	CommentID string `arg:"" help:"Comment ID"`
	Force     bool   `short:"f" help:"Skip confirmation"`
}

func (*CommentsDeleteCmd) Run

func (c *CommentsDeleteCmd) Run(client *api.Client) error

type CommentsListCmd

type CommentsListCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Max      int    `short:"n" default:"50" help:"Maximum results"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*CommentsListCmd) Run

func (c *CommentsListCmd) Run(client *api.Client) error

type CommentsUpdateCmd

type CommentsUpdateCmd struct {
	IssueKey  string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	CommentID string `arg:"" help:"Comment ID"`
	Text      string `arg:"" help:"New comment text (supports markdown, @mentions, and inline images (!filename!))"`
	JSON      bool   `short:"j" help:"Output as JSON"`
}

func (*CommentsUpdateCmd) Run

func (c *CommentsUpdateCmd) Run(client *api.Client) error

type IssuesCmd

type IssuesCmd struct {
	Search     IssuesSearchCmd     `cmd:"" help:"Search issues with JQL"`
	Get        IssuesGetCmd        `cmd:"" help:"Get an issue by key"`
	Create     IssuesCreateCmd     `cmd:"" help:"Create a new issue"`
	Update     IssuesUpdateCmd     `cmd:"" help:"Update an issue"`
	Delete     IssuesDeleteCmd     `cmd:"" help:"Delete an issue"`
	Transition IssuesTransitionCmd `cmd:"" help:"Transition an issue to a new status"`
	Parent     IssuesParentCmd     `cmd:"" help:"Manage an issue's parent (the 'Epic' for stories under an epic — same field)"`
}

type IssuesCreateCmd

type IssuesCreateCmd struct {
	Project     string `short:"p" required:"" help:"Project key (e.g., ED)"`
	Type        string `short:"t" default:"Task" help:"Issue type (Bug, Task, Story, etc.)"`
	Summary     string `short:"s" required:"" help:"Issue summary/title"`
	Description string `short:"d" help:"Issue description (supports markdown, @mentions, and inline images (!filename!))"`
	Priority    string `help:"Priority (Highest, High, Medium, Low, Lowest)"`
	Assignee    string `short:"a" help:"Assignee account ID"`
	Labels      string `short:"l" help:"Comma-separated labels"`
	DueDate     string `help:"Due date (YYYY-MM-DD)"`
	Parent      string `help:"Parent issue key (in JIRA's UI this is the 'Epic' for stories under epics — same field)"`
	JSON        bool   `short:"j" help:"Output as JSON"`
}

func (*IssuesCreateCmd) Run

func (c *IssuesCreateCmd) Run(client *api.Client) error

type IssuesDeleteCmd

type IssuesDeleteCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Force    bool   `short:"f" help:"Skip confirmation"`
}

func (*IssuesDeleteCmd) Run

func (c *IssuesDeleteCmd) Run(client *api.Client) error

type IssuesGetCmd

type IssuesGetCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Comments bool   `help:"Include comments"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*IssuesGetCmd) Run

func (c *IssuesGetCmd) Run(client *api.Client) error

type IssuesParentClearCmd added in v0.6.0

type IssuesParentClearCmd struct {
	Children []string `arg:"" name:"child" help:"Issue keys to detach from their parent (one or more)"`
}

func (*IssuesParentClearCmd) Run added in v0.6.0

func (c *IssuesParentClearCmd) Run(client *api.Client) error

type IssuesParentCmd added in v0.6.0

type IssuesParentCmd struct {
	Set   IssuesParentSetCmd   `cmd:"" help:"Attach one or more issues to a parent (e.g., add stories to an epic)"`
	Clear IssuesParentClearCmd `cmd:"" help:"Detach one or more issues from their parent"`
}

IssuesParentCmd manages an issue's parent (in JIRA's UI this is the "Epic" of a story under an epic — same field).

type IssuesParentSetCmd added in v0.6.0

type IssuesParentSetCmd struct {
	Children []string `arg:"" name:"child" help:"Issue keys to attach to the parent (one or more)"`
	To       string   `required:"" help:"Parent issue key (the 'Epic' for stories under an epic — same field)"`
}

func (*IssuesParentSetCmd) Run added in v0.6.0

func (c *IssuesParentSetCmd) Run(client *api.Client) error

type IssuesSearchCmd

type IssuesSearchCmd struct {
	JQL      string `arg:"" optional:"" help:"JQL query string"`
	Project  string `short:"p" help:"Filter by project key"`
	Status   string `short:"s" help:"Filter by status name"`
	Assignee string `short:"a" help:"Filter by assignee (account ID or 'currentUser()')"`
	MyIssues bool   `short:"m" help:"Show only issues assigned to current user"`
	Type     string `short:"t" help:"Filter by issue type (Bug, Task, Story, etc.)"`
	Parent   string `help:"Filter by parent issue key (in JIRA's UI, the 'Epic' for stories under an epic — same field)"`
	Max      int    `short:"n" default:"50" help:"Maximum results"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*IssuesSearchCmd) Run

func (c *IssuesSearchCmd) Run(client *api.Client) error

type IssuesTransitionCmd

type IssuesTransitionCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Status   string `arg:"" optional:"" help:"Target status name (e.g., 'In Progress', 'Done')"`
	List     bool   `help:"List available transitions"`
}

func (*IssuesTransitionCmd) Run

func (c *IssuesTransitionCmd) Run(client *api.Client) error

type IssuesUpdateCmd

type IssuesUpdateCmd struct {
	IssueKey    string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	Summary     string `short:"s" help:"New summary"`
	Description string `short:"d" help:"New description (supports markdown, @mentions, and inline images (!filename!))"`
	Priority    string `help:"New priority"`
	Assignee    string `short:"a" help:"New assignee account ID"`
	Unassign    bool   `help:"Remove assignee"`
	Labels      string `short:"l" help:"New comma-separated labels"`
	DueDate     string `help:"Due date (YYYY-MM-DD)"`
	NoDueDate   bool   `help:"Remove due date"`
}

func (*IssuesUpdateCmd) Run

func (c *IssuesUpdateCmd) Run(client *api.Client) error

type LinksAddCmd

type LinksAddCmd struct {
	InwardIssue  string `arg:"" help:"Inward issue key (e.g., PROJ-123)"`
	OutwardIssue string `arg:"" help:"Outward issue key (e.g., PROJ-456)"`
	Type         string `short:"t" required:"" help:"Link type name (e.g., 'Blocks', '1. Relates')"`
}

func (*LinksAddCmd) Run

func (c *LinksAddCmd) Run(client *api.Client) error

type LinksCmd

type LinksCmd struct {
	List   LinksListCmd   `cmd:"" help:"List links on an issue"`
	Add    LinksAddCmd    `cmd:"" help:"Link two issues"`
	Delete LinksDeleteCmd `cmd:"" help:"Delete an issue link"`
	Types  LinksTypesCmd  `cmd:"" help:"List available link types"`
}

type LinksDeleteCmd

type LinksDeleteCmd struct {
	LinkID string `arg:"" help:"Link ID (use 'links list' to find IDs)"`
	Force  bool   `short:"f" help:"Skip confirmation"`
}

func (*LinksDeleteCmd) Run

func (c *LinksDeleteCmd) Run(client *api.Client) error

type LinksListCmd

type LinksListCmd struct {
	IssueKey string `arg:"" help:"Issue key (e.g., PROJ-123)"`
	JSON     bool   `short:"j" help:"Output as JSON"`
}

func (*LinksListCmd) Run

func (c *LinksListCmd) Run(client *api.Client) error

type LinksTypesCmd

type LinksTypesCmd struct {
	JSON bool `short:"j" help:"Output as JSON"`
}

func (*LinksTypesCmd) Run

func (c *LinksTypesCmd) Run(client *api.Client) error

type ProjectsCmd

type ProjectsCmd struct {
	List ProjectsListCmd `cmd:"" help:"List projects"`
	Get  ProjectsGetCmd  `cmd:"" help:"Get project details"`
}

type ProjectsGetCmd

type ProjectsGetCmd struct {
	ProjectKey string `arg:"" help:"Project key (e.g., ED)"`
	JSON       bool   `short:"j" help:"Output as JSON"`
}

func (*ProjectsGetCmd) Run

func (c *ProjectsGetCmd) Run(client *api.Client) error

type ProjectsListCmd

type ProjectsListCmd struct {
	Max  int  `short:"n" default:"50" help:"Maximum results"`
	JSON bool `short:"j" help:"Output as JSON"`
}

func (*ProjectsListCmd) Run

func (c *ProjectsListCmd) Run(client *api.Client) error

type UsersAssignableCmd

type UsersAssignableCmd struct {
	Project string `short:"p" required:"" help:"Project key"`
	Max     int    `short:"n" default:"50" help:"Maximum results"`
	JSON    bool   `short:"j" help:"Output as JSON"`
}

func (*UsersAssignableCmd) Run

func (c *UsersAssignableCmd) Run(client *api.Client) error

type UsersCmd

type UsersCmd struct {
	Me         UsersMeCmd         `cmd:"" help:"Show current user"`
	Search     UsersSearchCmd     `cmd:"" help:"Search for users"`
	Assignable UsersAssignableCmd `cmd:"" help:"List users assignable to a project"`
}

type UsersMeCmd

type UsersMeCmd struct {
	JSON bool `short:"j" help:"Output as JSON"`
}

func (*UsersMeCmd) Run

func (c *UsersMeCmd) Run(client *api.Client) error

type UsersSearchCmd

type UsersSearchCmd struct {
	Query string `arg:"" help:"Search query (name or email)"`
	Max   int    `short:"n" default:"50" help:"Maximum results"`
	JSON  bool   `short:"j" help:"Output as JSON"`
}

func (*UsersSearchCmd) Run

func (c *UsersSearchCmd) Run(client *api.Client) error

Jump to

Keyboard shortcuts

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