cmd

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2026 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Execute

func Execute(args []string) (err error)

func ExitCode

func ExitCode(err error) int

func VersionString

func VersionString() string

Types

type AuthCmd

type AuthCmd struct {
	Setup  AuthSetupCmd  `cmd:"" help:"Configure OAuth credentials"`
	Login  AuthLoginCmd  `cmd:"" help:"Authenticate with Front"`
	Logout AuthLogoutCmd `cmd:"" help:"Remove stored tokens"`
	Status AuthStatusCmd `cmd:"" help:"Show authentication status"`
	List   AuthListCmd   `cmd:"" help:"List authenticated accounts"`
}

type AuthListCmd

type AuthListCmd struct{}

func (*AuthListCmd) Run

func (c *AuthListCmd) Run() error

type AuthLoginCmd

type AuthLoginCmd struct {
	Email        string `help:"Email/identifier to associate with this token" name:"email"`
	ClientName   string `help:"Client name" default:"default" name:"client-name"`
	ForceConsent bool   `help:"Force consent prompt even if already authorized"`
	Manual       bool   `help:"Manual authorization (paste URL instead of callback server)"`
}

func (*AuthLoginCmd) Run

func (c *AuthLoginCmd) Run(flags *RootFlags) error

type AuthLogoutCmd

type AuthLogoutCmd struct {
	Email      string `help:"Email/account to log out" name:"email"`
	ClientName string `help:"Client name" default:"default" name:"client-name"`
	All        bool   `help:"Log out all accounts for this client"`
}

func (*AuthLogoutCmd) Run

func (c *AuthLogoutCmd) Run() error

type AuthSetupCmd

type AuthSetupCmd struct {
	ClientID     string `arg:"" help:"OAuth client ID"`
	ClientSecret string `name:"client-secret" help:"OAuth client secret (for non-interactive use)"`
	ClientName   string `help:"Client name (default: default)" default:"default" name:"client-name"`
	RedirectURI  string `help:"OAuth redirect URI" default:"https://localhost:8484/callback"`
}

func (*AuthSetupCmd) Run

func (c *AuthSetupCmd) Run() error

type AuthStatusCmd

type AuthStatusCmd struct {
	ClientName string `help:"Client name" default:"default" name:"client-name"`
}

func (*AuthStatusCmd) Run

func (c *AuthStatusCmd) Run() error

type CLI

type CLI struct {
	RootFlags `embed:""`

	Version    kong.VersionFlag `help:"Print version and exit"`
	VersionCmd VersionCmd       `cmd:"" name:"version" help:"Print version"`
	Config     ConfigCmd        `cmd:"" help:"Manage configuration"`
	Auth       AuthCmd          `cmd:"" help:"Authentication and credentials"`
	Conv       ConvCmd          `cmd:"" name:"conversations" aliases:"conv" help:"Conversations"`
	Msg        MsgCmd           `cmd:"" name:"messages" aliases:"msg" help:"Messages"`
	Draft      DraftCmd         `cmd:"" name:"drafts" help:"Drafts"`
	Tag        TagCmd           `cmd:"" name:"tags" help:"Tags"`
	Inbox      InboxCmd         `cmd:"" name:"inboxes" help:"Inboxes"`
	Teammate   TeammateCmd      `cmd:"" name:"teammates" help:"Teammates"`
	Contact    ContactCmd       `cmd:"" name:"contacts" help:"Contacts"`
	Channel    ChannelCmd       `cmd:"" name:"channels" help:"Channels"`
	Comment    CommentCmd       `cmd:"" name:"comments" help:"Comments (internal discussions)"`
	Template   TemplateCmd      `cmd:"" name:"templates" help:"Templates (canned responses)"`
	Completion CompletionCmd    `cmd:"" help:"Generate shell completions"`
	Whoami     WhoamiCmd        `cmd:"" help:"Show authenticated user info"`
}

type ChannelCmd

type ChannelCmd struct {
	List ChannelListCmd `cmd:"" help:"List channels"`
	Get  ChannelGetCmd  `cmd:"" help:"Get a channel"`
}

type ChannelGetCmd

type ChannelGetCmd struct {
	ID string `arg:"" help:"Channel ID"`
}

func (*ChannelGetCmd) Run

func (c *ChannelGetCmd) Run(flags *RootFlags) error

type ChannelListCmd

type ChannelListCmd struct{}

func (*ChannelListCmd) Run

func (c *ChannelListCmd) Run(flags *RootFlags) error

type CommentCmd

type CommentCmd struct {
	List   CommentListCmd   `cmd:"" help:"List comments in a conversation"`
	Get    CommentGetCmd    `cmd:"" help:"Get a comment"`
	Create CommentCreateCmd `cmd:"" help:"Create a comment"`
}

type CommentCreateCmd

type CommentCreateCmd struct {
	ConvID string `arg:"" help:"Conversation ID"`
	Body   string `required:"" help:"Comment body (@mentions supported)"`
}

func (*CommentCreateCmd) Run

func (c *CommentCreateCmd) Run(flags *RootFlags) error

type CommentGetCmd

type CommentGetCmd struct {
	ID string `arg:"" help:"Comment ID"`
}

func (*CommentGetCmd) Run

func (c *CommentGetCmd) Run(flags *RootFlags) error

type CommentListCmd

type CommentListCmd struct {
	ConvID string `arg:"" help:"Conversation ID"`
}

func (*CommentListCmd) Run

func (c *CommentListCmd) Run(flags *RootFlags) error

type CompletionBashCmd

type CompletionBashCmd struct{}

func (*CompletionBashCmd) Run

func (c *CompletionBashCmd) Run() error

type CompletionCmd

type CompletionCmd struct {
	Bash CompletionBashCmd `cmd:"" help:"Generate bash completions"`
	Zsh  CompletionZshCmd  `cmd:"" help:"Generate zsh completions"`
	Fish CompletionFishCmd `cmd:"" help:"Generate fish completions"`
}

type CompletionFishCmd

type CompletionFishCmd struct{}

func (*CompletionFishCmd) Run

func (c *CompletionFishCmd) Run() error

type CompletionZshCmd

type CompletionZshCmd struct{}

func (*CompletionZshCmd) Run

func (c *CompletionZshCmd) Run() error

type ConfigCmd

type ConfigCmd struct {
	Path ConfigPathCmd `cmd:"" help:"Show configuration paths"`
}

type ConfigPathCmd

type ConfigPathCmd struct{}

func (*ConfigPathCmd) Run

func (c *ConfigPathCmd) Run() error

type ContactCmd

type ContactCmd struct {
	List    ContactListCmd    `cmd:"" help:"List contacts"`
	Search  ContactSearchCmd  `cmd:"" help:"Search contacts"`
	Get     ContactGetCmd     `cmd:"" help:"Get a contact"`
	Handles ContactHandlesCmd `cmd:"" help:"List contact handles"`
	Handle  ContactHandleCmd  `cmd:"" help:"Manage contact handles"`
	Notes   ContactNotesCmd   `cmd:"" help:"List contact notes"`
	Note    ContactNoteCmd    `cmd:"" help:"Manage contact notes"`
	Convos  ContactConvosCmd  `cmd:"" help:"List conversations for a contact"`
	Create  ContactCreateCmd  `cmd:"" help:"Create a contact"`
	Update  ContactUpdateCmd  `cmd:"" help:"Update a contact"`
	Delete  ContactDeleteCmd  `cmd:"" help:"Delete a contact"`
	Merge   ContactMergeCmd   `cmd:"" help:"Merge contacts"`
}

type ContactConvosCmd

type ContactConvosCmd struct {
	ID    string `arg:"" help:"Contact ID"`
	Limit int    `help:"Maximum results" default:"25"`
}

func (*ContactConvosCmd) Run

func (c *ContactConvosCmd) Run(flags *RootFlags) error

type ContactCreateCmd

type ContactCreateCmd struct {
	Handle      string `required:"" help:"Contact handle (e.g., email:[email protected])"`
	Name        string `help:"Contact name"`
	Description string `help:"Contact description"`
}

func (*ContactCreateCmd) Run

func (c *ContactCreateCmd) Run(flags *RootFlags) error

type ContactDeleteCmd

type ContactDeleteCmd struct {
	ID string `arg:"" help:"Contact ID"`
}

func (*ContactDeleteCmd) Run

func (c *ContactDeleteCmd) Run(flags *RootFlags) error

type ContactGetCmd

type ContactGetCmd struct {
	ID string `arg:"" help:"Contact ID"`
}

func (*ContactGetCmd) Run

func (c *ContactGetCmd) Run(flags *RootFlags) error

type ContactHandleAddCmd

type ContactHandleAddCmd struct {
	ContactID string `arg:"" help:"Contact ID"`
	Type      string `required:"" help:"Handle type (email, phone, etc)"`
	Value     string `required:"" help:"Handle value"`
}

func (*ContactHandleAddCmd) Run

func (c *ContactHandleAddCmd) Run(flags *RootFlags) error

type ContactHandleCmd

type ContactHandleCmd struct {
	Add    ContactHandleAddCmd    `cmd:"" help:"Add a handle to a contact"`
	Delete ContactHandleDeleteCmd `cmd:"" help:"Delete a contact handle"`
}

type ContactHandleDeleteCmd

type ContactHandleDeleteCmd struct {
	ID string `arg:"" help:"Handle ID"`
}

func (*ContactHandleDeleteCmd) Run

func (c *ContactHandleDeleteCmd) Run(flags *RootFlags) error

type ContactHandlesCmd

type ContactHandlesCmd struct {
	ID string `arg:"" help:"Contact ID"`
}

func (*ContactHandlesCmd) Run

func (c *ContactHandlesCmd) Run(flags *RootFlags) error

type ContactListCmd

type ContactListCmd struct {
	Limit int `help:"Maximum results" default:"25"`
}

func (*ContactListCmd) Run

func (c *ContactListCmd) Run(flags *RootFlags) error

type ContactMergeCmd

type ContactMergeCmd struct {
	Source string `arg:"" help:"Source contact ID (will be merged into target)"`
	Target string `arg:"" help:"Target contact ID (will receive merged data)"`
}

func (*ContactMergeCmd) Run

func (c *ContactMergeCmd) Run(flags *RootFlags) error

type ContactNoteAddCmd

type ContactNoteAddCmd struct {
	ContactID string `arg:"" help:"Contact ID"`
	Body      string `required:"" help:"Note body"`
}

func (*ContactNoteAddCmd) Run

func (c *ContactNoteAddCmd) Run(flags *RootFlags) error

type ContactNoteCmd

type ContactNoteCmd struct {
	Add ContactNoteAddCmd `cmd:"" help:"Add a note to a contact"`
}

type ContactNotesCmd

type ContactNotesCmd struct {
	ID string `arg:"" help:"Contact ID"`
}

func (*ContactNotesCmd) Run

func (c *ContactNotesCmd) Run(flags *RootFlags) error

type ContactSearchCmd

type ContactSearchCmd struct {
	Query    string `arg:"" help:"Search query (matches name or handle)"`
	Limit    int    `help:"Maximum results" default:"25"`
	MaxPages int    `help:"Maximum pages to search (100 contacts/page)" default:"25"`
}

func (*ContactSearchCmd) Run

func (c *ContactSearchCmd) Run(flags *RootFlags) error

type ContactUpdateCmd

type ContactUpdateCmd struct {
	ID          string `arg:"" help:"Contact ID"`
	Name        string `help:"New name"`
	Description string `help:"New description"`
}

func (*ContactUpdateCmd) Run

func (c *ContactUpdateCmd) Run(flags *RootFlags) error

type ConvArchiveCmd

type ConvArchiveCmd struct {
	IDs     []string `arg:"" help:"Conversation IDs to archive"`
	IDsFrom string   `help:"Read conversation IDs from stdin (use '-' for stdin)"`
}

func (*ConvArchiveCmd) Run

func (c *ConvArchiveCmd) Run(flags *RootFlags) error

type ConvAssignCmd

type ConvAssignCmd struct {
	ID string `arg:"" help:"Conversation ID"`
	To string `required:"" help:"Teammate ID to assign to"`
}

func (*ConvAssignCmd) Run

func (c *ConvAssignCmd) Run(flags *RootFlags) error

type ConvCmd

type ConvCmd struct {
	List      ConvListCmd      `cmd:"" help:"List conversations"`
	Get       ConvGetCmd       `cmd:"" help:"Get a conversation"`
	Search    ConvSearchCmd    `cmd:"" help:"Search conversations"`
	Messages  ConvMessagesCmd  `cmd:"" help:"List messages in a conversation"`
	Comments  ConvCommentsCmd  `cmd:"" help:"List comments in a conversation"`
	Archive   ConvArchiveCmd   `cmd:"" help:"Archive conversations"`
	Open      ConvOpenCmd      `cmd:"" help:"Open (unarchive) conversations"`
	Trash     ConvTrashCmd     `cmd:"" help:"Move conversations to trash"`
	Assign    ConvAssignCmd    `cmd:"" help:"Assign a conversation"`
	Unassign  ConvUnassignCmd  `cmd:"" help:"Unassign a conversation"`
	Snooze    ConvSnoozeCmd    `cmd:"" help:"Snooze a conversation"`
	Unsnooze  ConvUnsnoozeCmd  `cmd:"" help:"Unsnooze a conversation"`
	Followers ConvFollowersCmd `cmd:"" help:"List followers of a conversation"`
	Follow    ConvFollowCmd    `cmd:"" help:"Follow a conversation"`
	Unfollow  ConvUnfollowCmd  `cmd:"" help:"Unfollow a conversation"`
	Tag       ConvTagCmd       `cmd:"" help:"Add tag to conversation"`
	Untag     ConvUntagCmd     `cmd:"" help:"Remove tag from conversation"`
	Update    ConvUpdateCmd    `cmd:"" help:"Update conversation custom fields"`
}

type ConvCommentsCmd

type ConvCommentsCmd struct {
	ID    string `arg:"" help:"Conversation ID"`
	Limit int    `help:"Maximum number of comments" default:"25"`
}

func (*ConvCommentsCmd) Run

func (c *ConvCommentsCmd) Run(flags *RootFlags) error

type ConvFollowCmd

type ConvFollowCmd struct {
	ID   string `arg:"" help:"Conversation ID"`
	User string `help:"Teammate ID to follow as"`
}

func (*ConvFollowCmd) Run

func (c *ConvFollowCmd) Run(flags *RootFlags) error

type ConvFollowersCmd

type ConvFollowersCmd struct {
	ID string `arg:"" help:"Conversation ID"`
}

func (*ConvFollowersCmd) Run

func (c *ConvFollowersCmd) Run(flags *RootFlags) error

type ConvGetCmd

type ConvGetCmd struct {
	ID       string `arg:"" help:"Conversation ID"`
	Messages bool   `help:"Include messages" short:"m"`
	Comments bool   `help:"Include comments" short:"c"`
	Full     bool   `help:"Include full content with comments inline (implies -m -c)"`
	HTML     bool   `help:"Show message body as HTML (with --full)"`
	Text     bool   `help:"Show message body as plain text (with --full)"`
}

func (*ConvGetCmd) Run

func (c *ConvGetCmd) Run(flags *RootFlags) error

type ConvListCmd

type ConvListCmd struct {
	Inbox     string `help:"Filter by inbox ID"`
	Tag       string `help:"Filter by tag ID"`
	Status    string `help:"Filter by status (open, assigned, unassigned, archived, snoozed, trashed)"`
	Limit     int    `help:"Maximum number of results" default:"25"`
	SortOrder string `help:"Sort order (asc, desc)" short:"s" enum:"asc,desc,-" default:"-"`
}

func (*ConvListCmd) Run

func (c *ConvListCmd) Run(flags *RootFlags) error

type ConvMessagesCmd

type ConvMessagesCmd struct {
	ID    string `arg:"" help:"Conversation ID"`
	Limit int    `help:"Maximum number of messages" default:"25"`
}

func (*ConvMessagesCmd) Run

func (c *ConvMessagesCmd) Run(flags *RootFlags) error

type ConvOpenCmd

type ConvOpenCmd struct {
	IDs     []string `arg:"" help:"Conversation IDs to open"`
	IDsFrom string   `help:"Read conversation IDs from stdin (use '-' for stdin)"`
}

func (*ConvOpenCmd) Run

func (c *ConvOpenCmd) Run(flags *RootFlags) error

type ConvSearchCmd

type ConvSearchCmd struct {
	Query      string   `arg:"" optional:"" help:"Search query"`
	RawQuery   string   `help:"Raw query override" short:"q" name:"query"`
	From       string   `help:"Filter by sender (from:)"`
	To         string   `help:"Filter by recipient (to:)"`
	Recipient  string   `help:"Filter by recipient (recipient:)"`
	Inbox      string   `help:"Filter by inbox (inbox:)"`
	Tag        []string `help:"Filter by tag (tag:)"`
	Status     string   `help:"Filter by status (open, archived, snoozed, trashed)"`
	Assignee   string   `help:"Filter by assignee (assignee: or me)"`
	Unassigned bool     `help:"Filter unassigned conversations"`
	Before     string   `help:"Filter before date/time (before:)"`
	After      string   `help:"Filter after date/time (after:)"`
	Limit      int      `help:"Maximum results" default:"25"`
}

func (*ConvSearchCmd) Run

func (c *ConvSearchCmd) Run(flags *RootFlags) error

type ConvSnoozeCmd

type ConvSnoozeCmd struct {
	ID       string `arg:"" help:"Conversation ID"`
	Until    string `help:"Snooze until (RFC3339 timestamp)"`
	Duration string `help:"Snooze duration (e.g. 2h, 30m)"`
}

func (*ConvSnoozeCmd) Run

func (c *ConvSnoozeCmd) Run(flags *RootFlags) error

type ConvTagCmd

type ConvTagCmd struct {
	ID    string `arg:"" help:"Conversation ID"`
	TagID string `arg:"" help:"Tag ID to add"`
}

func (*ConvTagCmd) Run

func (c *ConvTagCmd) Run(flags *RootFlags) error

type ConvTrashCmd

type ConvTrashCmd struct {
	IDs     []string `arg:"" help:"Conversation IDs to trash"`
	IDsFrom string   `help:"Read conversation IDs from stdin (use '-' for stdin)"`
}

func (*ConvTrashCmd) Run

func (c *ConvTrashCmd) Run(flags *RootFlags) error

type ConvUnassignCmd

type ConvUnassignCmd struct {
	ID string `arg:"" help:"Conversation ID"`
}

func (*ConvUnassignCmd) Run

func (c *ConvUnassignCmd) Run(flags *RootFlags) error

type ConvUnfollowCmd

type ConvUnfollowCmd struct {
	ID   string `arg:"" help:"Conversation ID"`
	User string `help:"Teammate ID to unfollow"`
}

func (*ConvUnfollowCmd) Run

func (c *ConvUnfollowCmd) Run(flags *RootFlags) error

type ConvUnsnoozeCmd

type ConvUnsnoozeCmd struct {
	ID string `arg:"" help:"Conversation ID"`
}

func (*ConvUnsnoozeCmd) Run

func (c *ConvUnsnoozeCmd) Run(flags *RootFlags) error

type ConvUntagCmd

type ConvUntagCmd struct {
	ID    string `arg:"" help:"Conversation ID"`
	TagID string `arg:"" help:"Tag ID to remove"`
}

func (*ConvUntagCmd) Run

func (c *ConvUntagCmd) Run(flags *RootFlags) error

type ConvUpdateCmd

type ConvUpdateCmd struct {
	ID     string   `arg:"" help:"Conversation ID"`
	Fields []string `help:"Custom field update (key=value)" name:"field"`
}

func (*ConvUpdateCmd) Run

func (c *ConvUpdateCmd) Run(flags *RootFlags) error

type DraftCmd

type DraftCmd struct {
	Create DraftCreateCmd `cmd:"" help:"Create a draft"`
	List   DraftListCmd   `cmd:"" help:"List drafts in a conversation"`
	Get    DraftGetCmd    `cmd:"" help:"Get a draft"`
	Update DraftUpdateCmd `cmd:"" help:"Update a draft"`
	Delete DraftDeleteCmd `cmd:"" help:"Delete a draft"`
}

type DraftCreateCmd

type DraftCreateCmd struct {
	ConvID   string `arg:"" help:"Conversation ID (for reply drafts)" optional:""`
	Channel  string `help:"Channel ID (for new message drafts)"`
	To       string `help:"Recipient (for new message drafts)"`
	Subject  string `help:"Draft subject"`
	Body     string `help:"Draft body"`
	BodyFile string `help:"Read body from file" type:"existingfile"`
}

func (*DraftCreateCmd) Run

func (c *DraftCreateCmd) Run(flags *RootFlags) error

type DraftDeleteCmd

type DraftDeleteCmd struct {
	ID string `arg:"" help:"Draft ID"`
}

func (*DraftDeleteCmd) Run

func (c *DraftDeleteCmd) Run(flags *RootFlags) error

type DraftGetCmd

type DraftGetCmd struct {
	ID string `arg:"" help:"Draft ID"`
}

func (*DraftGetCmd) Run

func (c *DraftGetCmd) Run(flags *RootFlags) error

type DraftListCmd

type DraftListCmd struct {
	ConvID string `arg:"" help:"Conversation ID"`
}

func (*DraftListCmd) Run

func (c *DraftListCmd) Run(flags *RootFlags) error

type DraftUpdateCmd

type DraftUpdateCmd struct {
	ID           string `arg:"" help:"Draft ID"`
	Body         string `help:"New body"`
	BodyFile     string `help:"Read body from file" type:"existingfile"`
	Subject      string `help:"New subject"`
	DraftVersion int    `required:"" name:"draft-version" help:"Current version number (for optimistic locking)"`
}

func (*DraftUpdateCmd) Run

func (c *DraftUpdateCmd) Run(flags *RootFlags) error

type ExitError

type ExitError struct {
	Code int
	Err  error
}

func (*ExitError) Error

func (e *ExitError) Error() string

func (*ExitError) Unwrap

func (e *ExitError) Unwrap() error

type InboxChannelsCmd

type InboxChannelsCmd struct {
	ID string `arg:"" help:"Inbox ID"`
}

func (*InboxChannelsCmd) Run

func (c *InboxChannelsCmd) Run(flags *RootFlags) error

type InboxCmd

type InboxCmd struct {
	List     InboxListCmd     `cmd:"" help:"List inboxes"`
	Get      InboxGetCmd      `cmd:"" help:"Get an inbox"`
	Convos   InboxConvosCmd   `cmd:"" help:"List conversations in an inbox"`
	Channels InboxChannelsCmd `cmd:"" help:"List channels in an inbox"`
}

type InboxConvosCmd

type InboxConvosCmd struct {
	ID    string `arg:"" help:"Inbox ID"`
	Limit int    `help:"Maximum number of results" default:"25"`
}

func (*InboxConvosCmd) Run

func (c *InboxConvosCmd) Run(flags *RootFlags) error

type InboxGetCmd

type InboxGetCmd struct {
	ID string `arg:"" help:"Inbox ID"`
}

func (*InboxGetCmd) Run

func (c *InboxGetCmd) Run(flags *RootFlags) error

type InboxListCmd

type InboxListCmd struct{}

func (*InboxListCmd) Run

func (c *InboxListCmd) Run(flags *RootFlags) error

type MsgAttachmentCmd

type MsgAttachmentCmd struct {
	Download MsgAttachmentDownloadCmd `cmd:"" help:"Download an attachment"`
}

type MsgAttachmentDownloadCmd

type MsgAttachmentDownloadCmd struct {
	ID     string `arg:"" help:"Attachment ID"`
	Output string `short:"o" help:"Output file path"`
}

func (*MsgAttachmentDownloadCmd) Run

func (c *MsgAttachmentDownloadCmd) Run(flags *RootFlags) error

type MsgAttachmentsCmd

type MsgAttachmentsCmd struct {
	ID string `arg:"" help:"Message ID"`
}

func (*MsgAttachmentsCmd) Run

func (c *MsgAttachmentsCmd) Run(flags *RootFlags) error

type MsgCmd

type MsgCmd struct {
	Get         MsgGetCmd         `cmd:"" help:"Get a message"`
	Send        MsgSendCmd        `cmd:"" help:"Send a new message"`
	Reply       MsgReplyCmd       `cmd:"" help:"Reply to a conversation"`
	Attachments MsgAttachmentsCmd `cmd:"" help:"List message attachments"`
	Attachment  MsgAttachmentCmd  `cmd:"" help:"Attachment operations"`
}

type MsgGetCmd

type MsgGetCmd struct {
	ID  string `arg:"" help:"Message ID"`
	Raw bool   `help:"Show raw body (no HTML conversion)"`
}

func (*MsgGetCmd) Run

func (c *MsgGetCmd) Run(flags *RootFlags) error

type MsgReplyCmd

type MsgReplyCmd struct {
	ConvID    string `arg:"" help:"Conversation ID to reply to"`
	Body      string `help:"Reply body"`
	BodyFile  string `help:"Read body from file" type:"existingfile"`
	InReplyTo string `help:"Message ID to reply to (for threading)"`
}

func (*MsgReplyCmd) Run

func (c *MsgReplyCmd) Run(flags *RootFlags) error

type MsgSendCmd

type MsgSendCmd struct {
	Channel  string `required:"" help:"Channel ID to send from"`
	To       string `required:"" help:"Recipient address"`
	Subject  string `help:"Message subject"`
	Body     string `help:"Message body"`
	BodyFile string `help:"Read body from file" type:"existingfile"`
}

func (*MsgSendCmd) Run

func (c *MsgSendCmd) Run(flags *RootFlags) error

type RootFlags

type RootFlags struct {
	Account string `help:"Account email for multi-account support"`
	Client  string `help:"OAuth client name override"`
	JSON    bool   `help:"Output JSON to stdout (best for scripting)"`
	Plain   bool   `help:"Output TSV (stable for scripts)"`
	Verbose bool   `help:"Enable verbose logging"`
}

type TagChildrenCmd

type TagChildrenCmd struct {
	ID string `arg:"" help:"Parent tag ID"`
}

func (*TagChildrenCmd) Run

func (c *TagChildrenCmd) Run(flags *RootFlags) error

type TagCmd

type TagCmd struct {
	List     TagListCmd     `cmd:"" help:"List tags"`
	Get      TagGetCmd      `cmd:"" help:"Get a tag"`
	Create   TagCreateCmd   `cmd:"" help:"Create a tag"`
	Update   TagUpdateCmd   `cmd:"" help:"Update a tag"`
	Delete   TagDeleteCmd   `cmd:"" help:"Delete a tag"`
	Children TagChildrenCmd `cmd:"" help:"List child tags"`
	Convos   TagConvosCmd   `cmd:"" help:"List conversations with a tag"`
}

type TagConvosCmd

type TagConvosCmd struct {
	ID    string `arg:"" help:"Tag ID"`
	Limit int    `help:"Maximum number of results" default:"25"`
}

func (*TagConvosCmd) Run

func (c *TagConvosCmd) Run(flags *RootFlags) error

type TagCreateCmd

type TagCreateCmd struct {
	Name        string `required:"" help:"Tag name"`
	Description string `help:"Tag description"`
	Color       string `help:"Tag color (highlight)"`
	Parent      string `help:"Parent tag ID"`
}

func (*TagCreateCmd) Run

func (c *TagCreateCmd) Run(flags *RootFlags) error

type TagDeleteCmd

type TagDeleteCmd struct {
	ID string `arg:"" help:"Tag ID"`
}

func (*TagDeleteCmd) Run

func (c *TagDeleteCmd) Run(flags *RootFlags) error

type TagGetCmd

type TagGetCmd struct {
	ID string `arg:"" help:"Tag ID"`
}

func (*TagGetCmd) Run

func (c *TagGetCmd) Run(flags *RootFlags) error

type TagListCmd

type TagListCmd struct {
	Tree bool `help:"Show hierarchical tree view"`
}

func (*TagListCmd) Run

func (c *TagListCmd) Run(flags *RootFlags) error

type TagUpdateCmd

type TagUpdateCmd struct {
	ID          string `arg:"" help:"Tag ID"`
	Name        string `help:"New name"`
	Description string `help:"New description"`
	Color       string `help:"New color"`
}

func (*TagUpdateCmd) Run

func (c *TagUpdateCmd) Run(flags *RootFlags) error

type TeammateCmd

type TeammateCmd struct {
	List   TeammateListCmd   `cmd:"" help:"List teammates"`
	Get    TeammateGetCmd    `cmd:"" help:"Get a teammate"`
	Convos TeammateConvosCmd `cmd:"" help:"List conversations assigned to a teammate"`
}

type TeammateConvosCmd

type TeammateConvosCmd struct {
	ID    string `arg:"" help:"Teammate ID"`
	Limit int    `help:"Maximum number of results" default:"25"`
}

func (*TeammateConvosCmd) Run

func (c *TeammateConvosCmd) Run(flags *RootFlags) error

type TeammateGetCmd

type TeammateGetCmd struct {
	ID string `arg:"" help:"Teammate ID"`
}

func (*TeammateGetCmd) Run

func (c *TeammateGetCmd) Run(flags *RootFlags) error

type TeammateListCmd

type TeammateListCmd struct{}

func (*TeammateListCmd) Run

func (c *TeammateListCmd) Run(flags *RootFlags) error

type TemplateCmd

type TemplateCmd struct {
	List TemplateListCmd `cmd:"" help:"List templates"`
	Get  TemplateGetCmd  `cmd:"" help:"Get a template"`
	Use  TemplateUseCmd  `cmd:"" help:"Output a template body for piping"`
}

type TemplateGetCmd

type TemplateGetCmd struct {
	ID string `arg:"" help:"Template ID"`
}

func (*TemplateGetCmd) Run

func (c *TemplateGetCmd) Run(flags *RootFlags) error

type TemplateListCmd

type TemplateListCmd struct{}

func (*TemplateListCmd) Run

func (c *TemplateListCmd) Run(flags *RootFlags) error

type TemplateUseCmd

type TemplateUseCmd struct {
	ID string `arg:"" help:"Template ID"`
}

func (*TemplateUseCmd) Run

func (c *TemplateUseCmd) Run(flags *RootFlags) error

type VersionCmd

type VersionCmd struct{}

func (*VersionCmd) Run

func (c *VersionCmd) Run() error

type WhoamiCmd

type WhoamiCmd struct{}

func (*WhoamiCmd) Run

func (c *WhoamiCmd) Run(flags *RootFlags) error

Jump to

Keyboard shortcuts

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