feat: add CLI scaffolding tool and templates for new projects #7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What
Introduce a new CLI scaffolding tool that simplifies the creation of new CLI projects. This feature includes a script for generating project templates, along with README and checklist files to guide users through the setup process. The changes affect the
scripts/,templates/, andpackage.jsonfiles, enhancing the developer experience by providing a structured approach to project initialization.Implemented a scaffolding script in
scripts/scaffold-cli.ts.Added templates for README and checklist in
templates/cli-basic/.Updated
package.jsonto include a new command for scaffolding.How to test
Run
pnpm scaffold:cli -- --name=my-cli --description="What it does"to create a new CLI project.Verify that the new project structure is created under
src/cli/my-cli/.Check that the generated files contain the correct placeholders and instructions.
Security review
Secrets / env vars: not changed.
Auth / session: not changed.
Network / API calls: not changed.
Data handling / PII: not changed.
Dependencies: not changed.
No security-impacting changes identified.
No new dependencies and no network calls.
No env var changes and no auth/session logic touched.