@alejandrochaves/devflow-cli 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/amend.d.ts +8 -2
- package/dist/commands/amend.d.ts.map +1 -1
- package/dist/commands/amend.js +55 -22
- package/dist/commands/amend.js.map +1 -1
- package/dist/commands/branch.d.ts +8 -2
- package/dist/commands/branch.d.ts.map +1 -1
- package/dist/commands/branch.js +72 -44
- package/dist/commands/branch.js.map +1 -1
- package/dist/commands/changelog.d.ts +5 -2
- package/dist/commands/changelog.d.ts.map +1 -1
- package/dist/commands/changelog.js +29 -9
- package/dist/commands/changelog.js.map +1 -1
- package/dist/commands/cleanup.d.ts +7 -2
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +47 -28
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/commit.d.ts +12 -2
- package/dist/commands/commit.d.ts.map +1 -1
- package/dist/commands/commit.js +133 -65
- package/dist/commands/commit.js.map +1 -1
- package/dist/commands/fixup.d.ts +8 -2
- package/dist/commands/fixup.d.ts.map +1 -1
- package/dist/commands/fixup.js +70 -25
- package/dist/commands/fixup.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +4 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/issue.d.ts +10 -2
- package/dist/commands/issue.d.ts.map +1 -1
- package/dist/commands/issue.js +127 -58
- package/dist/commands/issue.js.map +1 -1
- package/dist/commands/merge.d.ts +5 -2
- package/dist/commands/merge.d.ts.map +1 -1
- package/dist/commands/merge.js +40 -19
- package/dist/commands/merge.js.map +1 -1
- package/dist/commands/pr.d.ts +8 -2
- package/dist/commands/pr.d.ts.map +1 -1
- package/dist/commands/pr.js +53 -24
- package/dist/commands/pr.js.map +1 -1
- package/dist/commands/release.d.ts +6 -2
- package/dist/commands/release.d.ts.map +1 -1
- package/dist/commands/release.js +39 -19
- package/dist/commands/release.js.map +1 -1
- package/dist/commands/review.d.ts +6 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +56 -24
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/stash.d.ts +8 -1
- package/dist/commands/stash.d.ts.map +1 -1
- package/dist/commands/stash.js +56 -29
- package/dist/commands/stash.js.map +1 -1
- package/dist/commands/test-plan.d.ts +7 -1
- package/dist/commands/test-plan.d.ts.map +1 -1
- package/dist/commands/test-plan.js +75 -50
- package/dist/commands/test-plan.js.map +1 -1
- package/dist/commands/undo.d.ts +4 -2
- package/dist/commands/undo.d.ts.map +1 -1
- package/dist/commands/undo.js +10 -7
- package/dist/commands/undo.js.map +1 -1
- package/dist/commands/update.d.ts +6 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +305 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/worktree.d.ts +7 -1
- package/dist/commands/worktree.d.ts.map +1 -1
- package/dist/commands/worktree.js +59 -25
- package/dist/commands/worktree.js.map +1 -1
- package/dist/devflow-version.d.ts +18 -0
- package/dist/devflow-version.d.ts.map +1 -0
- package/dist/devflow-version.js +87 -0
- package/dist/devflow-version.js.map +1 -0
- package/dist/index.js +87 -7
- package/dist/index.js.map +1 -1
- package/package.json +6 -2
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { existsSync, readFileSync, writeFileSync } from "fs";
|
|
2
|
+
import { resolve } from "path";
|
|
3
|
+
import { yellow, dim, cyan } from "./colors.js";
|
|
4
|
+
const VERSION_FILE = ".devflow/version.json";
|
|
5
|
+
export function getVersionFilePath(cwd = process.cwd()) {
|
|
6
|
+
return resolve(cwd, VERSION_FILE);
|
|
7
|
+
}
|
|
8
|
+
export function readVersionInfo(cwd = process.cwd()) {
|
|
9
|
+
const versionPath = getVersionFilePath(cwd);
|
|
10
|
+
if (!existsSync(versionPath)) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
return JSON.parse(readFileSync(versionPath, "utf-8"));
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export function writeVersionInfo(cliVersion, cwd = process.cwd()) {
|
|
21
|
+
const versionPath = getVersionFilePath(cwd);
|
|
22
|
+
const info = {
|
|
23
|
+
cliVersion,
|
|
24
|
+
generatedAt: new Date().toISOString(),
|
|
25
|
+
files: {
|
|
26
|
+
aiInstructions: cliVersion,
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
writeFileSync(versionPath, JSON.stringify(info, null, 2) + "\n");
|
|
30
|
+
}
|
|
31
|
+
export function getCliVersion() {
|
|
32
|
+
try {
|
|
33
|
+
const pkgPath = new URL("../package.json", import.meta.url);
|
|
34
|
+
const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
|
|
35
|
+
return pkg.version;
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return "0.0.0";
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Check if devflow generated files are outdated and show a warning.
|
|
43
|
+
* Returns true if outdated.
|
|
44
|
+
*/
|
|
45
|
+
export function checkForDevflowUpdates(cwd = process.cwd()) {
|
|
46
|
+
// Only check if .devflow directory exists (project has been initialized)
|
|
47
|
+
const devflowDir = resolve(cwd, ".devflow");
|
|
48
|
+
if (!existsSync(devflowDir)) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
const versionInfo = readVersionInfo(cwd);
|
|
52
|
+
const currentVersion = getCliVersion();
|
|
53
|
+
// If no version file, the files were generated with an older CLI
|
|
54
|
+
if (!versionInfo) {
|
|
55
|
+
console.log(yellow("\n⚠ DevFlow files may be outdated.") +
|
|
56
|
+
dim(` Run ${cyan("devflow update")} to get the latest AI instructions.\n`));
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
// Compare versions (simple string comparison works for semver)
|
|
60
|
+
if (versionInfo.cliVersion !== currentVersion) {
|
|
61
|
+
const isNewer = compareVersions(currentVersion, versionInfo.cliVersion) > 0;
|
|
62
|
+
if (isNewer) {
|
|
63
|
+
console.log(yellow(`\n⚠ DevFlow files were generated with v${versionInfo.cliVersion} (current: v${currentVersion}).`) +
|
|
64
|
+
dim(` Run ${cyan("devflow update")} to update.\n`));
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Compare two semver versions.
|
|
72
|
+
* Returns: 1 if a > b, -1 if a < b, 0 if equal
|
|
73
|
+
*/
|
|
74
|
+
function compareVersions(a, b) {
|
|
75
|
+
const partsA = a.split(".").map(Number);
|
|
76
|
+
const partsB = b.split(".").map(Number);
|
|
77
|
+
for (let i = 0; i < 3; i++) {
|
|
78
|
+
const numA = partsA[i] || 0;
|
|
79
|
+
const numB = partsB[i] || 0;
|
|
80
|
+
if (numA > numB)
|
|
81
|
+
return 1;
|
|
82
|
+
if (numA < numB)
|
|
83
|
+
return -1;
|
|
84
|
+
}
|
|
85
|
+
return 0;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=devflow-version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devflow-version.js","sourceRoot":"","sources":["../src/devflow-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAUhD,MAAM,YAAY,GAAG,uBAAuB,CAAC;AAE7C,MAAM,UAAU,kBAAkB,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IAC5D,OAAO,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IACzD,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,UAAkB,EAAE,MAAc,OAAO,CAAC,GAAG,EAAE;IAC9E,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAuB;QAC/B,UAAU;QACV,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,KAAK,EAAE;YACL,cAAc,EAAE,UAAU;SAC3B;KACF,CAAC;IACF,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,OAAO,GAAG,CAAC,OAAO,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IAChE,yEAAyE;IACzE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,cAAc,GAAG,aAAa,EAAE,CAAC;IAEvC,iEAAiE;IACjE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CACT,MAAM,CAAC,oCAAoC,CAAC;YAC5C,GAAG,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,uCAAuC,CAAC,CAC3E,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,IAAI,WAAW,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,eAAe,CAAC,cAAc,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5E,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CACT,MAAM,CAAC,0CAA0C,WAAW,CAAC,UAAU,eAAe,cAAc,IAAI,CAAC;gBACzG,GAAG,CAAC,QAAQ,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CACnD,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,GAAG,IAAI;YAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,IAAI,GAAG,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -23,11 +23,19 @@ import { statsCommand } from "./commands/stats.js";
|
|
|
23
23
|
import { lintConfigCommand } from "./commands/lint-config.js";
|
|
24
24
|
import { commentsCommand } from "./commands/comments.js";
|
|
25
25
|
import { issueCommand } from "./commands/issue.js";
|
|
26
|
+
import { updateCommand } from "./commands/update.js";
|
|
26
27
|
import { loadPlugins } from "./plugins.js";
|
|
27
28
|
import { checkForUpdates } from "./update-notifier.js";
|
|
29
|
+
import { checkForDevflowUpdates } from "./devflow-version.js";
|
|
28
30
|
const pkg = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf-8"));
|
|
29
31
|
// Check for updates (non-blocking, cached)
|
|
30
32
|
checkForUpdates();
|
|
33
|
+
// Check if devflow generated files need updating (skip for certain commands)
|
|
34
|
+
const skipVersionCheck = ["update", "up", "init", "doctor", "completions", "--help", "-h", "--version", "-V"];
|
|
35
|
+
const args = process.argv.slice(2);
|
|
36
|
+
if (args.length > 0 && !skipVersionCheck.some((cmd) => args[0] === cmd)) {
|
|
37
|
+
checkForDevflowUpdates();
|
|
38
|
+
}
|
|
31
39
|
const program = new Command();
|
|
32
40
|
program
|
|
33
41
|
.name("devflow")
|
|
@@ -39,53 +47,91 @@ program
|
|
|
39
47
|
.alias("b")
|
|
40
48
|
.description("Create a new branch with type/ticket/description format")
|
|
41
49
|
.option("--dry-run", "Preview without executing git commands")
|
|
50
|
+
.option("--type <type>", "Branch type (feat, fix, chore, etc.)")
|
|
51
|
+
.option("--ticket <ticket>", "Ticket number (use UNTRACKED to skip)")
|
|
52
|
+
.option("-d, --description <desc>", "Branch description")
|
|
53
|
+
.option("--test-plan <steps>", "Pipe-separated test plan steps")
|
|
54
|
+
.option("--yes", "Skip confirmation prompts")
|
|
42
55
|
.action((opts) => branchCommand(opts));
|
|
43
56
|
program
|
|
44
57
|
.command("commit")
|
|
45
58
|
.alias("c")
|
|
46
59
|
.description("Create a conventional commit with guided prompts")
|
|
47
60
|
.option("--dry-run", "Preview without executing git commands")
|
|
61
|
+
.option("--type <type>", "Commit type (feat, fix, chore, etc.)")
|
|
62
|
+
.option("--scope <scope>", "Commit scope")
|
|
63
|
+
.option("-m, --message <message>", "Commit message")
|
|
64
|
+
.option("--body <body>", "Optional longer description")
|
|
65
|
+
.option("--breaking", "Mark as breaking change")
|
|
66
|
+
.option("--breaking-desc <desc>", "Breaking change description")
|
|
67
|
+
.option("--all", "Stage all changes")
|
|
68
|
+
.option("--files <files>", "Comma-separated files to stage")
|
|
69
|
+
.option("--yes", "Skip confirmation prompts")
|
|
48
70
|
.action((opts) => commitCommand(opts));
|
|
49
71
|
program
|
|
50
72
|
.command("pr")
|
|
51
73
|
.alias("p")
|
|
52
74
|
.description("Create or update a pull request with auto-filled template")
|
|
53
75
|
.option("--dry-run", "Preview without executing git commands")
|
|
76
|
+
.option("--title <title>", "PR title")
|
|
77
|
+
.option("--summary <summary>", "PR summary/body text")
|
|
78
|
+
.option("--base <branch>", "Base branch")
|
|
79
|
+
.option("--yes", "Skip confirmation prompts")
|
|
80
|
+
.option("--ready", "Create as ready (not draft)")
|
|
54
81
|
.action((opts) => prCommand(opts));
|
|
55
82
|
program
|
|
56
83
|
.command("amend")
|
|
57
84
|
.alias("a")
|
|
58
85
|
.description("Amend the last commit with guided prompts")
|
|
59
86
|
.option("--dry-run", "Preview without executing git commands")
|
|
87
|
+
.option("--type <type>", "New commit type")
|
|
88
|
+
.option("--scope <scope>", "New commit scope")
|
|
89
|
+
.option("-m, --message <message>", "New commit message")
|
|
90
|
+
.option("--breaking", "Mark as breaking change")
|
|
91
|
+
.option("--yes", "Skip confirmation prompts")
|
|
60
92
|
.action((opts) => amendCommand(opts));
|
|
61
93
|
program
|
|
62
94
|
.command("undo")
|
|
63
95
|
.alias("u")
|
|
64
96
|
.description("Undo the last commit (keeps changes staged)")
|
|
65
97
|
.option("--dry-run", "Preview without executing git commands")
|
|
98
|
+
.option("--yes", "Skip confirmation prompt")
|
|
66
99
|
.action((opts) => undoCommand(opts));
|
|
67
100
|
program
|
|
68
101
|
.command("fixup")
|
|
69
102
|
.alias("f")
|
|
70
103
|
.description("Create a fixup commit targeting a previous commit")
|
|
71
104
|
.option("--dry-run", "Preview without executing git commands")
|
|
105
|
+
.option("--target <commit>", "Target commit hash or reference")
|
|
106
|
+
.option("--all", "Stage all changes")
|
|
107
|
+
.option("--files <files>", "Comma-separated files to stage")
|
|
108
|
+
.option("--auto-squash", "Auto-rebase with --autosquash")
|
|
109
|
+
.option("--yes", "Skip confirmation prompts")
|
|
72
110
|
.action((opts) => fixupCommand(opts));
|
|
73
111
|
program
|
|
74
112
|
.command("merge")
|
|
75
113
|
.alias("m")
|
|
76
114
|
.description("Merge the current branch PR with squash/merge/rebase")
|
|
77
115
|
.option("--dry-run", "Preview without executing git commands")
|
|
116
|
+
.option("--method <method>", "Merge method: squash, merge, or rebase")
|
|
117
|
+
.option("--yes", "Skip confirmation prompts")
|
|
78
118
|
.action((opts) => mergeCommand(opts));
|
|
79
119
|
program
|
|
80
120
|
.command("release")
|
|
81
121
|
.alias("rel")
|
|
82
122
|
.description("Create a release with version bump, changelog, tag, and GitHub release")
|
|
83
|
-
.
|
|
123
|
+
.option("--bump <type>", "Version bump type: patch, minor, or major")
|
|
124
|
+
.option("--version <version>", "Explicit version number")
|
|
125
|
+
.option("--yes", "Skip confirmation prompts")
|
|
126
|
+
.action((opts) => releaseCommand(opts));
|
|
84
127
|
program
|
|
85
128
|
.command("review")
|
|
86
129
|
.alias("rv")
|
|
87
130
|
.description("List and interact with open pull requests")
|
|
88
|
-
.
|
|
131
|
+
.option("--pr <number>", "PR number to review")
|
|
132
|
+
.option("--action <action>", "Action: checkout, approve, comment, request-changes, view")
|
|
133
|
+
.option("--comment <text>", "Comment text (for comment/request-changes)")
|
|
134
|
+
.action((opts) => reviewCommand(opts));
|
|
89
135
|
program
|
|
90
136
|
.command("comments")
|
|
91
137
|
.alias("cm")
|
|
@@ -99,17 +145,33 @@ program
|
|
|
99
145
|
.alias("i")
|
|
100
146
|
.description("Create a GitHub issue with Scrum templates (story, bug, task, spike, tech-debt)")
|
|
101
147
|
.option("--dry-run", "Preview without creating the issue")
|
|
148
|
+
.option("--type <type>", "Issue type (user-story, bug, task, spike, tech-debt)")
|
|
149
|
+
.option("--title <title>", "Issue title")
|
|
150
|
+
.option("--body <body>", "Issue body (raw markdown)")
|
|
151
|
+
.option("--json <data>", "JSON string with template field values")
|
|
152
|
+
.option("--create-branch", "Auto-create branch after issue creation")
|
|
153
|
+
.option("--branch-desc <desc>", "Branch description (for --create-branch)")
|
|
154
|
+
.option("--yes", "Skip confirmation prompts")
|
|
102
155
|
.action((opts) => issueCommand(opts));
|
|
103
156
|
program
|
|
104
157
|
.command("stash")
|
|
105
158
|
.alias("st")
|
|
106
159
|
.description("Save, pop, apply, or drop named stashes")
|
|
107
|
-
.action
|
|
160
|
+
.option("--action <action>", "Action: save, pop, apply, drop, show")
|
|
161
|
+
.option("--message <msg>", "Stash message (for save)")
|
|
162
|
+
.option("--index <n>", "Stash index (for pop/apply/drop/show)")
|
|
163
|
+
.option("--include-untracked", "Include untracked files (for save)")
|
|
164
|
+
.option("--yes", "Skip confirmation prompts")
|
|
165
|
+
.action((opts) => stashCommand(opts));
|
|
108
166
|
program
|
|
109
167
|
.command("worktree")
|
|
110
168
|
.alias("wt")
|
|
111
169
|
.description("Manage git worktrees for parallel branch work")
|
|
112
|
-
.action
|
|
170
|
+
.option("--action <action>", "Action: add, remove, list")
|
|
171
|
+
.option("--branch <branch>", "Branch name (for add)")
|
|
172
|
+
.option("--path <path>", "Directory path (for add)")
|
|
173
|
+
.option("--yes", "Skip confirmation prompts")
|
|
174
|
+
.action((opts) => worktreeCommand(opts));
|
|
113
175
|
program
|
|
114
176
|
.command("log")
|
|
115
177
|
.alias("l")
|
|
@@ -125,16 +187,26 @@ program
|
|
|
125
187
|
.command("test-plan")
|
|
126
188
|
.alias("tp")
|
|
127
189
|
.description("View or edit the test plan for the current branch")
|
|
128
|
-
.
|
|
190
|
+
.option("--add <steps>", "Pipe-separated steps to add")
|
|
191
|
+
.option("--replace <steps>", "Replace all steps with these (pipe-separated)")
|
|
192
|
+
.option("--clear", "Clear all steps")
|
|
193
|
+
.option("--show", "Show current steps (default if no other flags)")
|
|
194
|
+
.action((opts) => testPlanCommand(opts));
|
|
129
195
|
program
|
|
130
196
|
.command("changelog")
|
|
131
197
|
.description("Generate a changelog from conventional commits since last tag")
|
|
132
198
|
.option("--dry-run", "Preview without writing to file")
|
|
199
|
+
.option("--version <version>", "Version number for the changelog")
|
|
200
|
+
.option("--yes", "Skip confirmation prompt")
|
|
133
201
|
.action((opts) => changelogCommand(opts));
|
|
134
202
|
program
|
|
135
203
|
.command("cleanup")
|
|
136
204
|
.description("Delete local branches that have been merged or whose remote is gone")
|
|
137
205
|
.option("--dry-run", "Preview without deleting branches")
|
|
206
|
+
.option("--all", "Delete all eligible branches")
|
|
207
|
+
.option("--branches <list>", "Comma-separated branch names to delete")
|
|
208
|
+
.option("--force", "Force delete unmerged branches")
|
|
209
|
+
.option("--yes", "Skip confirmation prompts")
|
|
138
210
|
.action((opts) => cleanupCommand(opts));
|
|
139
211
|
program
|
|
140
212
|
.command("stats")
|
|
@@ -154,6 +226,13 @@ program
|
|
|
154
226
|
.command("doctor")
|
|
155
227
|
.description("Check that all devflow dependencies are properly configured")
|
|
156
228
|
.action(doctorCommand);
|
|
229
|
+
program
|
|
230
|
+
.command("update")
|
|
231
|
+
.alias("up")
|
|
232
|
+
.description("Update AI instructions and other devflow files to latest version")
|
|
233
|
+
.option("--dry-run", "Preview without writing files")
|
|
234
|
+
.option("--yes", "Skip confirmation prompts")
|
|
235
|
+
.action((opts) => updateCommand(opts));
|
|
157
236
|
program
|
|
158
237
|
.command("completions")
|
|
159
238
|
.description("Output shell completion script")
|
|
@@ -174,7 +253,7 @@ function generateBashCompletions() {
|
|
|
174
253
|
# Add to ~/.bashrc: eval "$(devflow completions --shell bash)"
|
|
175
254
|
_devflow_completions() {
|
|
176
255
|
local cur="\${COMP_WORDS[COMP_CWORD]}"
|
|
177
|
-
local commands="branch commit pr amend undo fixup merge release review comments issue stash worktree log status test-plan changelog cleanup stats lint-config init doctor completions"
|
|
256
|
+
local commands="branch commit pr amend undo fixup merge release review comments issue stash worktree log status test-plan changelog cleanup stats lint-config init doctor update completions"
|
|
178
257
|
|
|
179
258
|
if [ "\${COMP_CWORD}" -eq 1 ]; then
|
|
180
259
|
COMPREPLY=($(compgen -W "\${commands}" -- "\${cur}"))
|
|
@@ -212,6 +291,7 @@ _devflow() {
|
|
|
212
291
|
'lint-config:Validate devflow config (alias: lint)'
|
|
213
292
|
'init:Initialize devflow config'
|
|
214
293
|
'doctor:Check devflow dependencies'
|
|
294
|
+
'update:Update AI instructions to latest (alias: up)'
|
|
215
295
|
'completions:Output shell completion script'
|
|
216
296
|
)
|
|
217
297
|
|
|
@@ -225,7 +305,7 @@ _devflow() {
|
|
|
225
305
|
;;
|
|
226
306
|
args)
|
|
227
307
|
case "\${words[1]}" in
|
|
228
|
-
branch|commit|pr|amend|undo|fixup|merge|cleanup|changelog|issue)
|
|
308
|
+
branch|commit|pr|amend|undo|fixup|merge|cleanup|changelog|issue|update)
|
|
229
309
|
_arguments '--dry-run[Preview without executing]'
|
|
230
310
|
;;
|
|
231
311
|
completions)
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alejandrochaves/devflow-cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "Interactive CLI for branch creation, conventional commits, and PR management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"prepublishOnly": "npm run build",
|
|
15
15
|
"docs:dev": "vitepress dev docs",
|
|
16
16
|
"docs:build": "vitepress build docs",
|
|
17
|
-
"docs:preview": "vitepress preview docs"
|
|
17
|
+
"docs:preview": "vitepress preview docs",
|
|
18
|
+
"prepare": "husky"
|
|
18
19
|
},
|
|
19
20
|
"keywords": [
|
|
20
21
|
"cli",
|
|
@@ -44,7 +45,10 @@
|
|
|
44
45
|
"commander": "^13.1.0"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
48
|
+
"@commitlint/cli": "^20.3.1",
|
|
49
|
+
"@commitlint/config-conventional": "^20.3.1",
|
|
47
50
|
"@types/node": "^22.0.0",
|
|
51
|
+
"husky": "^9.1.7",
|
|
48
52
|
"typescript": "~5.9.2",
|
|
49
53
|
"vitepress": "^1.6.4",
|
|
50
54
|
"vitest": "^4.0.18"
|