id = "mob"
name = "mob"
homepage = "https://mob.sh"
description = "Fast git handover for remote pair/mob programming."
executables = ["mob"]
[dotfiles]
paths = ["~/.mob"]
exclude = []
secret = []
side_effect = false
[commands]
format = 1
label = "mob"
description = "Fast git handover for mob programming. Use the subcommand tabs for start, next and done."
quality = "ai-draft"
base = "fig:mob"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/mob.ts"
license = "MIT"
[[commands.subcommand]]
path = ["start"]
label = "Start a session"
description = "Start a mob session from the base branch in a wip branch, optionally with a timer."
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/mob.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "minutes"
label = "Timer (minutes)"
type = "integer"
position = 0
sources = ["fig"]
[[commands.subcommand.field]]
id = "include_uncommitted"
label = "Move uncommitted changes to the wip branch"
type = "boolean"
option = ["--include-uncommitted-changes", "-i"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "branch"
label = "Branch postfix"
type = "string"
option = ["--branch", "-b"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "start"
label = "Start session"
fields = ["minutes", "include_uncommitted", "branch"]
required = []
[[commands.subcommand.task]]
id = "timed"
label = "Start with a 10 minute timer"
fields = ["minutes"]
required = ["minutes"]
set = { minutes = [10] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["minutes", "include_uncommitted", "branch"]
[[commands.subcommand]]
path = ["next"]
label = "Hand over"
description = "Hand over changes in the wip branch to the next person."
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/mob.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "stay"
label = "Stay on wip branch"
type = "boolean"
option = ["--stay", "-s"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "return_to_base"
label = "Return to base branch"
type = "boolean"
option = ["--return-to-base-branch", "-r"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "message"
label = "Commit message"
type = "string"
option = ["--message", "-m"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "next"
label = "Hand over"
fields = ["message", "return_to_base"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["stay", "return_to_base", "message"]
[[commands.subcommand]]
path = ["done"]
label = "Finish the session"
description = "Squash the wip branch into the base branch index."
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/mob.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "squash"
label = "Squash all commits"
type = "boolean"
option = ["--squash"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "squash_wip"
label = "Squash wip commits only"
type = "boolean"
option = ["--squash-wip"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "no_squash"
label = "Do not squash, only merge"
type = "boolean"
option = ["--no-squash"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "done"
label = "Finish"
fields = ["squash", "squash_wip", "no_squash"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["squash", "squash_wip", "no_squash"]