Hooks Configuration
Make projects ready to use upon generation
Hooks let you execute automation scripts before and after project generation, enabling dependency installation, Git initialization, and more.
Hook Types
AgileBuilder supports two types of hooks:
| Hook | Timing | Purpose |
|------|--------|---------|
| pre-generate | Before file generation | Validate parameters, prepare environment |
| post-generate | After file generation | Install dependencies, initialize Git |
Configure Hooks
In agilebuilder.json:
{
"hooks": {
"pre-generate": "node hooks/pre-generate.js",
"post-generate": "node hooks/post-generate.js"
}
}
Built-in Hooks
AgileBuilder provides common built-in hooks:
Install Dependencies
{
"hooks": {
"post-generate": "@agilebuilder/install-deps"
}
}
Automatically detects package.json and uses the appropriate package manager.
Initialize Git
{
"hooks": {
"post-generate": "@agilebuilder/git-init"
}
}
Combine Multiple Hooks
{
"hooks": {
"post-generate": [
"@agilebuilder/install-deps",
"@agilebuilder/git-init",
"node hooks/custom.js"
]
}
}
Custom Hooks
Create custom hook scripts:
// hooks/post-generate.js
module.exports = async (context) => {
const { projectPath, variables } = context
console.log(`Project generated at: ${projectPath}`)
console.log(`Variables:`, variables)
// Execute custom logic
if (variables.useTypeScript) {
// TypeScript-specific initialization
}
}
Next Steps
- CLI Reference - View complete command documentation
- AI Integration - Let AI use your template library