sklp flow
sklp flowDescription
Feature lifecycle: open a branch/worktree (start), diff vs target + run CI (end)
Subcommands
Technical details
Technical details
Raw command JSON
{
"path": [
"sklp",
"flow"
],
"slug": "flow",
"name": "flow",
"short": "Feature lifecycle: open a branch/worktree (start), diff vs target + run CI (end)",
"synopsis": "sklp flow",
"subcommands": [
{
"path": [
"sklp",
"flow",
"end"
],
"slug": "flow-end",
"name": "end",
"short": "Push the branch and open a PR into --onto; CI runs on the PR",
"long": "Diff the current branch vs --onto, push it and open a PR. CI then runs\non the PR itself, so the pipeline is not executed here: running it\nlocally too would do the same work twice on the same commit.\n\n--local runs the pipeline on this machine instead and pushes nothing,\nfor checking a change before it leaves the laptop.",
"synopsis": "sklp flow end [flags]",
"flags": [
{
"name": "onto",
"usage": "target ref the feature builds on / diffs against",
"type": "string",
"default": "main"
},
{
"name": "pipeline",
"usage": "pipeline name under .sklp/pipelines/ to run with --local (empty = auto-select by scope match)",
"type": "string"
},
{
"name": "local",
"aliases": [
"test"
],
"usage": "run the pipeline on this machine instead of opening a PR",
"type": "bool"
},
{
"name": "no-test",
"usage": "only show the diff + impacted scope; do nothing else",
"type": "bool"
}
]
},
{
"path": [
"sklp",
"flow",
"start"
],
"slug": "flow-start",
"name": "start",
"short": "Open feat/<name> in a worktree (default, --worktree) or in place (--branch) from --onto",
"synopsis": "sklp flow start [flags] <name>",
"flags": [
{
"name": "onto",
"usage": "target ref the feature builds on / diffs against",
"type": "string",
"default": "main"
},
{
"name": "worktree",
"usage": "create a dedicated worktree (default; explicit opt-in)",
"type": "bool"
},
{
"name": "branch",
"usage": "checkout in place instead of creating a dedicated worktree",
"type": "bool"
}
],
"positionals": [
{
"name": "name",
"required": true
}
]
}
]
}