procedure-cli 0.1.15 → 0.1.17
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/README.md +2 -1
- package/config/defaults.json +8 -0
- package/config/powerline-config.json +52 -0
- package/config/stacks/typescript-node.json +15 -0
- package/dist/app.d.ts +5 -1
- package/dist/app.js +18 -2
- package/dist/app.js.map +1 -1
- package/dist/cli.js +1 -11
- package/dist/cli.js.map +1 -1
- package/dist/lib/template.js +1 -0
- package/dist/lib/template.js.map +1 -1
- package/dist/steps/generation.js +7 -2
- package/dist/steps/generation.js.map +1 -1
- package/package.json +3 -2
- package/templates/AGENTS.md.hbs +57 -0
- package/templates/CLAUDE.md.hbs +5 -0
package/README.md
CHANGED
|
@@ -9,13 +9,14 @@ mkdir my-project && cd my-project
|
|
|
9
9
|
npx @b3awesome/procedure
|
|
10
10
|
```
|
|
11
11
|
|
|
12
|
-
If the directory already has files, the CLI
|
|
12
|
+
If the directory already has files, the CLI shows an interactive prompt to **Continue** or **Exit**. If you continue, existing files that would be overwritten are listed explicitly in Step 5 (Generation) before you confirm.
|
|
13
13
|
|
|
14
14
|
## What It Generates
|
|
15
15
|
|
|
16
16
|
| File | Purpose |
|
|
17
17
|
|------|---------|
|
|
18
18
|
| `CLAUDE.md` | AI-ready development guide with architecture, code style, and workflow |
|
|
19
|
+
| `AGENTS.md` | Tool-agnostic AI agent instructions (open standard, works with Copilot, Codex, Cursor, etc.) |
|
|
19
20
|
| `README.md` | Project overview with quick start, tech stack, and docs links |
|
|
20
21
|
| `docs/PRD.md` | Product Requirements Document with vision, features, and tech stack |
|
|
21
22
|
| `docs/USER-STORIES.md` | Gherkin-formatted acceptance criteria and user stories |
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"theme": "tokyo-night",
|
|
3
|
+
"display": {
|
|
4
|
+
"style": "powerline",
|
|
5
|
+
"colorCompatibility": "auto",
|
|
6
|
+
"lines": [
|
|
7
|
+
{
|
|
8
|
+
"segments": {
|
|
9
|
+
"directory": { "enabled": true, "showBasename": true },
|
|
10
|
+
"model": { "enabled": true },
|
|
11
|
+
"git": {
|
|
12
|
+
"enabled": true,
|
|
13
|
+
"showSha": false,
|
|
14
|
+
"showWorkingTree": false,
|
|
15
|
+
"showOperation": false,
|
|
16
|
+
"showTag": true,
|
|
17
|
+
"showTimeSinceCommit": false,
|
|
18
|
+
"showStashCount": false,
|
|
19
|
+
"showUpstream": false,
|
|
20
|
+
"showRepoName": false
|
|
21
|
+
},
|
|
22
|
+
"context": { "enabled": true, "showPercentageOnly": true }
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"segments": {
|
|
27
|
+
"block": {
|
|
28
|
+
"enabled": true,
|
|
29
|
+
"type": "time",
|
|
30
|
+
"burnType": "both"
|
|
31
|
+
},
|
|
32
|
+
"session": {
|
|
33
|
+
"enabled": true,
|
|
34
|
+
"type": "both",
|
|
35
|
+
"costSource": "calculated"
|
|
36
|
+
},
|
|
37
|
+
"today": { "enabled": true, "type": "both" },
|
|
38
|
+
"version": { "enabled": false },
|
|
39
|
+
"metrics": {
|
|
40
|
+
"enabled": false,
|
|
41
|
+
"showResponseTime": true,
|
|
42
|
+
"showLastResponseTime": true,
|
|
43
|
+
"showDuration": true,
|
|
44
|
+
"showMessageCount": true,
|
|
45
|
+
"showLinesAdded": true,
|
|
46
|
+
"showLinesRemoved": true
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
]
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"codeStyle": [
|
|
3
|
+
"TypeScript strict mode, ESM imports",
|
|
4
|
+
"camelCase for variables, PascalCase for types",
|
|
5
|
+
"stdlib -> external -> internal import ordering",
|
|
6
|
+
"Return errors, don't throw"
|
|
7
|
+
],
|
|
8
|
+
"buildCommand": "npm run build",
|
|
9
|
+
"testCommand": "npm run test",
|
|
10
|
+
"typecheckCommand": "npm run typecheck",
|
|
11
|
+
"lintCommand": "npm run lint",
|
|
12
|
+
"architectureNotes": "",
|
|
13
|
+
"framework": "Node.js",
|
|
14
|
+
"language": "TypeScript"
|
|
15
|
+
}
|
package/dist/app.d.ts
CHANGED
package/dist/app.js
CHANGED
|
@@ -4,6 +4,8 @@ import { Box, Text, useInput } from "ink";
|
|
|
4
4
|
import { C } from "./theme.js";
|
|
5
5
|
import Banner from "./components/banner.js";
|
|
6
6
|
import Timeline from "./components/timeline.js";
|
|
7
|
+
import { GutterLine } from "./components/gutter-line.js";
|
|
8
|
+
import { GutteredSelect } from "./components/guttered-select.js";
|
|
7
9
|
import ProjectInfo from "./steps/project-info.js";
|
|
8
10
|
import StackStyle from "./steps/stack-style.js";
|
|
9
11
|
import Architecture from "./steps/architecture.js";
|
|
@@ -109,7 +111,12 @@ function adaptCommands(partial, packageManager) {
|
|
|
109
111
|
prCommand: adapt(partial.prCommand) ?? partial.prCommand,
|
|
110
112
|
};
|
|
111
113
|
}
|
|
112
|
-
|
|
114
|
+
const DIR_CHECK_OPTIONS = [
|
|
115
|
+
{ label: "Continue", value: "continue", description: "Proceed — existing files can be overwritten in Generation" },
|
|
116
|
+
{ label: "Exit", value: "exit", description: "Quit and start in an empty directory" },
|
|
117
|
+
];
|
|
118
|
+
export default function App({ dirEntries }) {
|
|
119
|
+
const [dirCheckDone, setDirCheckDone] = useState(dirEntries.length === 0);
|
|
113
120
|
const [currentStep, setCurrentStep] = useState(0);
|
|
114
121
|
const [answers, setAnswers] = useState(EMPTY_ANSWERS);
|
|
115
122
|
const [finished, setFinished] = useState(false);
|
|
@@ -133,13 +140,22 @@ export default function App() {
|
|
|
133
140
|
setFinished(true);
|
|
134
141
|
}
|
|
135
142
|
}
|
|
143
|
+
if (!dirCheckDone) {
|
|
144
|
+
const sample = dirEntries.slice(0, 3).join(", ");
|
|
145
|
+
const extra = dirEntries.length > 3 ? `, +${dirEntries.length - 3} more` : "";
|
|
146
|
+
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsx(Banner, {}), _jsxs(Box, { flexDirection: "column", children: [_jsx(GutterLine, { children: _jsx(Text, { color: C.peach, bold: true, children: "Directory is not empty" }) }), _jsx(GutterLine, { children: _jsxs(Text, { color: C.overlay1, children: [" Found: ", sample, extra] }) }), _jsx(GutterLine, { children: _jsx(Text, { color: C.overlay1, children: " Existing files may be overwritten during Generation." }) }), _jsx(GutterLine, { children: _jsx(Text, { children: " " }) }), _jsx(GutteredSelect, { options: DIR_CHECK_OPTIONS, onChange: (val) => {
|
|
147
|
+
if (val === "exit")
|
|
148
|
+
process.exit(0);
|
|
149
|
+
setDirCheckDone(true);
|
|
150
|
+
} })] })] }));
|
|
151
|
+
}
|
|
136
152
|
if (finished) {
|
|
137
153
|
const steps = STEP_NAMES.map((name, i) => ({
|
|
138
154
|
name,
|
|
139
155
|
status: "completed",
|
|
140
156
|
summary: getSummary(i, answers),
|
|
141
157
|
}));
|
|
142
|
-
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsx(Banner, {}), _jsx(Timeline, { steps: steps, children: _jsx(Box, {}) }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Text, { bold: true, color: C.green, children: ["✔", " Procedure CLI setup complete!"] }), _jsx(Text, { children: " " }), answers.generationSkipped ? (_jsx(Text, { color: C.overlay1, children: "Generation was skipped \u2014 no files were written." })) : (_jsxs(_Fragment, { children: [_jsxs(Text, { children: ["Project ", _jsxs(Text, { bold: true, color: C.sapphire, children: ["\"", answers.projectName, "\""] }), " has been scaffolded."] }), _jsx(Text, { color: C.overlay1, children: "Check the generated CLAUDE.md, PRD.md, and USER-STORIES.md." })] })), _jsx(Text, { children: " " }), _jsx(Text, { color: C.overlay1, children: "Press Enter to exit." })] })] }));
|
|
158
|
+
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsx(Banner, {}), _jsx(Timeline, { steps: steps, children: _jsx(Box, {}) }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Text, { bold: true, color: C.green, children: ["✔", " Procedure CLI setup complete!"] }), _jsx(Text, { children: " " }), answers.generationSkipped ? (_jsx(Text, { color: C.overlay1, children: "Generation was skipped \u2014 no files were written." })) : (_jsxs(_Fragment, { children: [_jsxs(Text, { children: ["Project ", _jsxs(Text, { bold: true, color: C.sapphire, children: ["\"", answers.projectName, "\""] }), " has been scaffolded."] }), _jsx(Text, { color: C.overlay1, children: "Check the generated CLAUDE.md, AGENTS.md, PRD.md, and USER-STORIES.md." })] })), _jsx(Text, { children: " " }), _jsx(Text, { color: C.overlay1, children: "Press Enter to exit." })] })] }));
|
|
143
159
|
}
|
|
144
160
|
const steps = STEP_NAMES.map((name, i) => {
|
|
145
161
|
if (i < currentStep) {
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAC;AAI/B,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,QAAQ,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAC;AAI/B,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,cAAc,MAAM,4BAA4B,CAAC;AACxD,OAAO,UAAU,MAAM,uBAAuB,CAAC;AAC/C,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,MAAM,UAAU,GAAG;IACjB,cAAc;IACd,eAAe;IACf,cAAc;IACd,iBAAiB;IACjB,YAAY;IACZ,OAAO;CACC,CAAC;AAEX,MAAM,aAAa,GAAkB;IACnC,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,KAAK;IACrB,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,WAAW,EAAE,EAAE;IACf,gBAAgB,EAAE,EAAE;IACpB,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,EAAE;IAChB,iBAAiB,EAAE,EAAE;IACrB,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,EAAE;IACT,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,EAAE;IACb,WAAW,EAAE,EAAE;IACf,OAAO,EAAE,EAAE;IACX,iBAAiB,EAAE,KAAK;IACxB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,YAAY,EAAE,KAAK;CACpB,CAAC;AAEF,SAAS,UAAU,CAAC,SAAiB,EAAE,OAAsB;IAC3D,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC;YAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,gBAAgB,CAAC;YACrD,OAAO,GAAG,IAAI,MAAM,IAAI,EAAE,CAAC;QAC7B,CAAC;QACD,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,OAAO,CAAC,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,OAAO,CAAC,SAAS;gBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5D,CAAC;QACD,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,OAAO,OAAO,CAAC,YAAY,IAAI,YAAY,CAAC;QAC9C,CAAC;QACD,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;YAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,QAAQ,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,WAAW,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,QAAQ,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,YAAY,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjF,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5D,CAAC;QACD,KAAK,CAAC;YACJ,OAAO,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACnE,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,OAAO,CAAC,cAAc;gBAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,OAAO,CAAC,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,OAAO,CAAC,YAAY;gBAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACxD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzD,CAAC;QACD;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,SAAS,aAAa,CAAC,OAA+B,EAAE,cAAsB;IAC5E,IAAI,cAAc,KAAK,KAAK;QAAE,OAAO,OAAO,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,GAAuB,EAAsB,EAAE;QAC5D,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAC;QACrB,IAAI,cAAc,KAAK,MAAM;YAAE,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACxE,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,cAAc,OAAO,CAAC,CAAC;IAC5D,CAAC,CAAC;IACF,OAAO;QACL,GAAG,OAAO;QACV,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,YAAY;QACjE,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,WAAW;QAC9D,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,gBAAgB;QAC7E,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,WAAW;QAC9D,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,SAAS;KACzD,CAAC;AACJ,CAAC;AAMD,MAAM,iBAAiB,GAAG;IACxB,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,2DAA2D,EAAE;IAClH,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,sCAAsC,EAAE;CACtF,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,EAAE,UAAU,EAAY;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAC1E,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAgB,aAAa,CAAC,CAAC;IACrE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS,kBAAkB,CAAC,OAA+B;QACzD,mFAAmF;QACnF,MAAM,OAAO,GAAG,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC7F,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;QAC1C,UAAU,CAAC,MAAM,CAAC,CAAC;QAEnB,IAAI,WAAW,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,cAAc,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAE9E,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,KAAC,MAAM,KAAG,EACV,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,UAAU,cACT,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,6CAA8B,GAC7C,EACb,KAAC,UAAU,cACT,MAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,0BAAY,MAAM,EAAE,KAAK,IAAQ,GAC7C,EACb,KAAC,UAAU,cACT,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,uEAA+D,GAC3E,EACb,KAAC,UAAU,cAAC,KAAC,IAAI,oBAAS,GAAa,EACvC,KAAC,cAAc,IACb,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;gCAChB,IAAI,GAAG,KAAK,MAAM;oCAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gCACpC,eAAe,CAAC,IAAI,CAAC,CAAC;4BACxB,CAAC,GACD,IACE,IACF,CACP,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,KAAK,GAAmB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,IAAI;YACJ,MAAM,EAAE,WAAoB;YAC5B,OAAO,EAAE,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC;SAChC,CAAC,CAAC,CAAC;QAEJ,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,KAAC,MAAM,KAAG,EACV,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACpB,KAAC,GAAG,KAAG,GACE,EACX,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,MAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,KAAK,aACtB,GAAG,sCACC,EACP,KAAC,IAAI,oBAAS,EACb,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAC3B,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,qEAAwD,CAChF,CAAC,CAAC,CAAC,CACF,8BACE,MAAC,IAAI,2BACK,MAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,mBAAI,OAAO,CAAC,WAAW,UAAS,6BAC/D,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,uFAEhB,IACN,CACJ,EACD,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,qCAA6B,IAChD,IACF,CACP,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAmB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACvD,IAAI,CAAC,GAAG,WAAW,EAAE,CAAC;YACpB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAoB,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;YACtB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAiB,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAkB,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,CACpB,8BACG,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,WAAW,IAAC,UAAU,EAAE,kBAAkB,GAAI,CAChD,EACA,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,UAAU,IAAC,UAAU,EAAE,kBAAkB,GAAI,CAC/C,EACA,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,YAAY,IAAC,UAAU,EAAE,kBAAkB,GAAI,CACjD,EACA,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,cAAc,IACb,aAAa,EAAE,OAAO,EACtB,UAAU,EAAE,kBAAkB,GAC9B,CACH,EACA,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,kBAAkB,GAC9B,CACH,EACA,WAAW,KAAK,CAAC,IAAI,CACpB,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,GAAI,CAChE,IACA,CACJ,CAAC;IAEF,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,KAAC,MAAM,KAAG,EACV,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,aAAa,GAAY,IAC9C,CACP,CAAC;AACJ,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -4,15 +4,5 @@ import { render } from "ink";
|
|
|
4
4
|
import { readdirSync } from "node:fs";
|
|
5
5
|
import App from "./app.js";
|
|
6
6
|
const entries = readdirSync(process.cwd()).filter((e) => e !== ".DS_Store");
|
|
7
|
-
|
|
8
|
-
const sample = entries.slice(0, 3).join(", ");
|
|
9
|
-
const extra = entries.length > 3 ? `, +${entries.length - 3} more` : "";
|
|
10
|
-
console.error(`\nWarning: current directory is not empty.`);
|
|
11
|
-
console.error(` Found: ${sample}${extra}`);
|
|
12
|
-
console.error(` Existing files can be overwritten during Step 6 (Generation).`);
|
|
13
|
-
console.error(` Recommended for a fresh project:`);
|
|
14
|
-
console.error(` mkdir my-project && cd my-project`);
|
|
15
|
-
console.error(` npx procedure-cli (or: npx @b3awesome/procedure)\n`);
|
|
16
|
-
}
|
|
17
|
-
render(_jsx(App, {}));
|
|
7
|
+
render(_jsx(App, { dirEntries: entries }));
|
|
18
8
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;AAE5E,MAAM,CAAC,KAAC,GAAG,IAAC,UAAU,EAAE,OAAO,GAAI,CAAC,CAAC"}
|
package/dist/lib/template.js
CHANGED
|
@@ -15,6 +15,7 @@ export function writeTemplate(templatePath, outputPath, data) {
|
|
|
15
15
|
}
|
|
16
16
|
const TEMPLATE_MAP = [
|
|
17
17
|
{ template: 'CLAUDE.md.hbs', output: 'CLAUDE.md' },
|
|
18
|
+
{ template: 'AGENTS.md.hbs', output: 'AGENTS.md' },
|
|
18
19
|
{ template: 'README.md.hbs', output: 'README.md' },
|
|
19
20
|
{ template: 'docs/PRD.md.hbs', output: 'docs/PRD.md' },
|
|
20
21
|
{ template: 'docs/USER-STORIES.md.hbs', output: 'docs/USER-STORIES.md' },
|
package/dist/lib/template.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/lib/template.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/lib/template.ts"],"names":[],"mappings":"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"}
|
package/dist/steps/generation.js
CHANGED
|
@@ -7,6 +7,7 @@ import { scaffoldAll, checkConflicts } from "../lib/template.js";
|
|
|
7
7
|
import { C } from "../theme.js";
|
|
8
8
|
const FILES_TO_GENERATE = [
|
|
9
9
|
"CLAUDE.md",
|
|
10
|
+
"AGENTS.md",
|
|
10
11
|
"README.md",
|
|
11
12
|
"docs/PRD.md",
|
|
12
13
|
"docs/USER-STORIES.md",
|
|
@@ -22,14 +23,18 @@ export default function Generation({ answers, onComplete }) {
|
|
|
22
23
|
try {
|
|
23
24
|
scaffoldAll(process.cwd(), answers);
|
|
24
25
|
setPhase("done");
|
|
25
|
-
const timer = setTimeout(() => onComplete({ generationSkipped: false }), 1500);
|
|
26
|
-
return () => clearTimeout(timer);
|
|
27
26
|
}
|
|
28
27
|
catch (err) {
|
|
29
28
|
setPhase("error");
|
|
30
29
|
setErrorMsg(err instanceof Error ? err.message : String(err));
|
|
31
30
|
}
|
|
32
31
|
}, [phase]);
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
if (phase !== "done")
|
|
34
|
+
return;
|
|
35
|
+
const timer = setTimeout(() => onComplete({ generationSkipped: false }), 1500);
|
|
36
|
+
return () => clearTimeout(timer);
|
|
37
|
+
}, [phase]);
|
|
33
38
|
function handleConfirm() { setPhase("running"); }
|
|
34
39
|
function handleCancel() { onComplete({ generationSkipped: true }); }
|
|
35
40
|
if (phase === "summary") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generation.js","sourceRoot":"","sources":["../../src/steps/generation.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,CAAC,EAAE,MAAM,aAAa,CAAC;AAOhC,MAAM,iBAAiB,GAAG;IACxB,WAAW;IACX,WAAW;IACX,aAAa;IACb,sBAAsB;IACtB,cAAc;IACd,YAAY;CACb,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAS;IAC/D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA2C,SAAS,CAAC,CAAC;IACxF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"generation.js","sourceRoot":"","sources":["../../src/steps/generation.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "procedure-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "CLI-based AI Agent powered by AI SDK 6, Z.ai, and OpenAI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist",
|
|
8
|
-
"templates"
|
|
8
|
+
"templates",
|
|
9
|
+
"config"
|
|
9
10
|
],
|
|
10
11
|
"bin": {
|
|
11
12
|
"procedure": "./dist/cli.js"
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# AGENTS.md
|
|
2
|
+
|
|
3
|
+
> {{description}}
|
|
4
|
+
|
|
5
|
+
This file provides tool-agnostic instructions for AI coding agents working on this project. For Claude Code-specific workflow and configuration, see [CLAUDE.md](./CLAUDE.md).
|
|
6
|
+
|
|
7
|
+
## Build & Test
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
{{buildCommand}} # Build
|
|
11
|
+
{{typecheckCommand}} # Typecheck
|
|
12
|
+
{{testCommand}} # Run tests
|
|
13
|
+
{{lintCommand}} # Lint
|
|
14
|
+
{{prCommand}} # Pre-PR checks
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Run typecheck before build. Run all checks before submitting a PR.
|
|
18
|
+
|
|
19
|
+
## Code Style
|
|
20
|
+
|
|
21
|
+
- Language: {{language}}
|
|
22
|
+
{{#if framework}}- Framework: {{framework}}{{/if}}
|
|
23
|
+
{{#each codeStyle}}
|
|
24
|
+
- {{{this}}}
|
|
25
|
+
{{/each}}
|
|
26
|
+
|
|
27
|
+
## Architecture
|
|
28
|
+
|
|
29
|
+
{{{architecture}}}
|
|
30
|
+
|
|
31
|
+
## Testing
|
|
32
|
+
|
|
33
|
+
1. Run `{{typecheckCommand}}` — must pass with no errors
|
|
34
|
+
2. Run `{{testCommand}}` — all tests must pass
|
|
35
|
+
3. Run `{{lintCommand}}` — no lint violations
|
|
36
|
+
|
|
37
|
+
When adding new functionality, add corresponding tests. When fixing a bug, add a regression test.
|
|
38
|
+
|
|
39
|
+
## PR & Commit Guidelines
|
|
40
|
+
|
|
41
|
+
- Keep commits focused — one logical change per commit
|
|
42
|
+
- Write descriptive commit messages explaining **why**, not just what
|
|
43
|
+
- After any implementation change, verify that documentation (README.md, docs/PRD.md, docs/USER-STORIES.md) still reflects the current state
|
|
44
|
+
- Run `{{prCommand}}` before opening a PR
|
|
45
|
+
|
|
46
|
+
## Security
|
|
47
|
+
|
|
48
|
+
- Never hardcode secrets, API keys, or credentials — use environment variables
|
|
49
|
+
- Validate all external inputs (user input, API responses, file contents)
|
|
50
|
+
- Check `.env.example` for the expected environment variable format
|
|
51
|
+
- Do not commit `.env` files or any file containing secrets
|
|
52
|
+
|
|
53
|
+
## Reference Docs
|
|
54
|
+
|
|
55
|
+
- [CLAUDE.md](./CLAUDE.md) — Claude Code development guide with detailed workflow
|
|
56
|
+
- [docs/PRD.md](./docs/PRD.md) — Product requirements
|
|
57
|
+
- [docs/USER-STORIES.md](./docs/USER-STORIES.md) — User stories with acceptance criteria
|
package/templates/CLAUDE.md.hbs
CHANGED
|
@@ -32,6 +32,11 @@ See docs/PRD.md for product requirements and docs/USER-STORIES.md for user stori
|
|
|
32
32
|
- If something goes sideways, STOP and re-plan — don't keep pushing
|
|
33
33
|
- A good plan lets you one-shot the implementation
|
|
34
34
|
|
|
35
|
+
### Documentation Sync
|
|
36
|
+
- After EVERY implementation: update CLAUDE.md, README.md, and product artifacts (docs/PRD.md, docs/USER-STORIES.md) to reflect the current state
|
|
37
|
+
- Architecture descriptions, step counts, component lists, and behavioral descriptions must match the actual code
|
|
38
|
+
- Never leave docs describing removed features, old step numbers, or stale behavior
|
|
39
|
+
|
|
35
40
|
### Verification
|
|
36
41
|
- Never mark a task complete without proving it works
|
|
37
42
|
- Run tests, check logs, demonstrate correctness
|