Bootstrap project skeletons from local templates.
ag-bootstrap keeps the bootstrap logic small and reusable:
- Templates live in
./templates/<project-type>. - The CLI renders template files into a destination directory.
- Skills can call the same CLI instead of re-implementing scaffold logic.
For now, one project type is supported:
typescript: a pnpm monorepo with Lerna, Nx, Jest, ESLint, Prettier, Husky, GitHub Actions, and AGD starter docs.
.
├── SKILL.md
├── bin/ag-bootstrap
├── templates/
│ └── typescript/
└── tests/
List available project types:
./bin/ag-bootstrap listBootstrap the TypeScript monorepo template:
./bin/ag-bootstrap bootstrap typescript ~/code/example-monorepoSkip install and test follow-up:
./bin/ag-bootstrap bootstrap typescript ~/code/example-monorepo --skip-followupOverride template variables:
./bin/ag-bootstrap bootstrap typescript ~/code/example-monorepo \
--project-name "Example Monorepo" \
--package-name example-monorepo \
--description "Example pnpm monorepo" \
--var author="Kevin Lin"Install the standard Husky hooks in an existing project:
./bin/ag-bootstrap add-precommit ~/code/example-monorepoEvery template currently receives these variables:
project_namepackage_namepackage_scopedescription
Extra values can be passed with repeated --var key=value.
bootstrap runs these steps by default:
pnpm installpnpm testgit initwhen the target is not already a git repo- write the standard
.husky/pre-commitand.husky/pre-pushhooks pnpm prepareaftergit initso Husky hooks activate
Pass --skip-followup to only render files.