You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+21Lines changed: 21 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,27 @@ The format follows Keep a Changelog and the version numbers follow Semantic Vers
6
6
7
7
## [Unreleased]
8
8
9
+
## [0.4.5] - 2026-03-31
10
+
11
+
### Added
12
+
13
+
- Added config-as-code support with `devforge init --config <path>` so saved scaffold plans can be replayed non-interactively.
14
+
- Added `devforge init --save-config [path]` so interactive runs can emit a reusable `devforge.config.json` file for teams and future scaffolds.
15
+
- Added config regression coverage that round-trips normalized plans through saved config files and verifies scaffold output stays deterministic.
16
+
- Added `devforge add <feature>` for managed post-scaffold updates, with initial support for `testing`, `docker`, `github-actions`, and `ai-rules`.
17
+
18
+
### Changed
19
+
20
+
- Extended CLI help, generated project docs, and repository docs to explain the new config-driven workflow and how reusable scaffold plans fit alongside interactive prompts.
21
+
- Routed config-driven runs through the same environment defaults and normalization flow as interactive runs so support-matrix rules stay consistent across both entrypoints.
22
+
- Extended the packed npm-artifact smoke path so it now exercises `devforge add docker` after scaffold creation, verifying the shipped CLI can perform managed post-scaffold updates.
23
+
24
+
### Fixed
25
+
26
+
- Made post-scaffold feature application metadata-driven by reading `.devforge/project-plan.json`, which avoids stack guessing and keeps repeated `devforge add` runs idempotent.
27
+
- Fixed `devforge init --save-config` with the default in-project config path so the saved config no longer makes the target directory look non-empty before generation.
28
+
- Tightened `devforge add` guidance and managed-file updates so repeated runs avoid unnecessary churn and generated README content stays aligned with newly added managed features.
-`npm run smoke:packed` packs the actual npm tarball, installs it into a temp directory, and verifies the published artifact shape instead of only the source checkout.
120
133
-`npm run runtime:matrix -- --scenario ...` installs, builds, and verifies generated projects so the scaffold output is tested as a product, not just as source code.
121
134
135
+
## Config As Code
136
+
137
+
-`devforge init --save-config` saves the resolved scaffold plan as `devforge.config.json` in the generated project by default.
138
+
-`devforge init --save-config ./configs/web.json` saves the normalized plan to a custom location.
- Added config-as-code support with `devforge init --config <path>` so saved scaffold plans can be replayed non-interactively.
17
+
- Added `devforge init --save-config [path]` so interactive runs can emit a reusable `devforge.config.json` file for teams and future scaffolds.
18
+
- Added config regression coverage that round-trips normalized plans through saved config files and verifies scaffold output stays deterministic.
19
+
- Added `devforge add <feature>` for managed post-scaffold updates, with initial support for `testing`, `docker`, `github-actions`, and `ai-rules`.
20
+
21
+
### Changed
22
+
23
+
- Extended CLI help, generated project docs, and repository docs to explain the new config-driven workflow and how reusable scaffold plans fit alongside interactive prompts.
24
+
- Routed config-driven runs through the same environment defaults and normalization flow as interactive runs so support-matrix rules stay consistent across both entrypoints.
25
+
- Extended the packed npm-artifact smoke path so it now exercises `devforge add docker` after scaffold creation, verifying the shipped CLI can perform managed post-scaffold updates.
26
+
27
+
### Fixed
28
+
29
+
- Made post-scaffold feature application metadata-driven by reading `.devforge/project-plan.json`, which avoids stack guessing and keeps repeated `devforge add` runs idempotent.
30
+
- Fixed `devforge init --save-config` with the default in-project config path so the saved config no longer makes the target directory look non-empty before generation.
31
+
- Tightened `devforge add` guidance and managed-file updates so repeated runs avoid unnecessary churn and generated README content stays aligned with newly added managed features.
-`--save-config` writes the normalized project plan to `devforge.config.json` so the same scaffold can be replayed later.
30
+
-`--config` runs the generator non-interactively from a saved plan while still letting `--output` or `--name` override the destination.
31
+
- Config-driven runs pass through the same normalization and compatibility checks as interactive runs, so invalid hand-written combinations are still corrected or rejected with guidance.
32
+
-`devforge add <feature>` updates an existing DevForge project by reading `.devforge/project-plan.json` and rewriting only the managed files for that feature.
Copy file name to clipboardExpand all lines: docs/index.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,6 +35,12 @@ DevForge CLI turns project intent into a runnable JavaScript or TypeScript repos
35
35
-`npx --yes @ali-dev11/devforge@latest`: run DevForge without a global install.
36
36
-`npx --yes @ali-dev11/devforge@latest doctor`: inspect local machine readiness before generating a scaffold.
37
37
-`npx --yes @ali-dev11/devforge@latest init --preflight-only`: run stack-aware checks for the chosen plan without writing files yet.
38
+
-`npx --yes @ali-dev11/devforge@latest init --save-config`: save the resolved scaffold plan as `devforge.config.json` for reuse.
39
+
-`npx --yes @ali-dev11/devforge@latest init --config ./devforge.config.json --output ./my-app`: regenerate a saved scaffold non-interactively in a new location.
40
+
-`npx --yes @ali-dev11/devforge@latest add testing`: add the recommended managed testing setup to an existing DevForge project.
41
+
-`npx --yes @ali-dev11/devforge@latest add docker`: add the generated Docker assets to an existing DevForge project.
42
+
-`npx --yes @ali-dev11/devforge@latest add github-actions`: add the generated CI workflow to an existing DevForge project.
43
+
-`npx --yes @ali-dev11/devforge@latest add ai-rules`: add the managed AI rule files back into an existing DevForge project.
38
44
-`Project prompts`: use the [Prompt Reference](./prompts.md) when you want to know what a question changes before answering it.
39
45
-`npm run check`: validate the DevForge repository itself before pushing changes.
40
46
-`npm run smoke`: verify a non-interactive scaffold path.
0 commit comments