Added in git-flow

This commit is contained in:
Your Name
2025-08-10 00:36:36 +00:00
parent 20d6c2549d
commit 896859d83a
110 changed files with 17310 additions and 1 deletions
+58
View File
@@ -0,0 +1,58 @@
# Claude Code Hooks for claude-flow
## Purpose
Automatically coordinate, format, and learn from Claude Code operations using hooks.
## Available Hooks
### Pre-Operation Hooks
- **pre-edit**: Validate and assign agents before file modifications
- **pre-bash**: Check command safety and resource requirements
- **pre-task**: Auto-spawn agents for complex tasks
### Post-Operation Hooks
- **post-edit**: Auto-format code and train neural patterns
- **post-bash**: Log execution and update metrics
- **post-search**: Cache results and improve search patterns
### MCP Integration Hooks
- **mcp-initialized**: Persist swarm configuration
- **agent-spawned**: Update agent roster
- **task-orchestrated**: Monitor task progress
- **neural-trained**: Save pattern improvements
### Session Hooks
- **notify**: Custom notifications with swarm status
- **session-end**: Generate summary and save state
- **session-restore**: Load previous session state
## Configuration
Hooks are configured in `.claude/settings.json`:
```json
{
"hooks": {
"PreToolUse": [
{
"matcher": "^(Write|Edit|MultiEdit)$",
"hooks": [{
"type": "command",
"command": "npx claude-flow hook pre-edit --file '${tool.params.file_path}'"
}]
}
]
}
}
```
## Benefits
- 🤖 Automatic agent assignment based on file type
- 🎨 Consistent code formatting
- 🧠 Continuous neural pattern improvement
- 💾 Cross-session memory persistence
- 📊 Performance metrics tracking
## See Also
- [Pre-Edit Hook](./pre-edit.md)
- [Post-Edit Hook](./post-edit.md)
- [Session End Hook](./session-end.md)
+103
View File
@@ -0,0 +1,103 @@
# Setting Up ruv-swarm Hooks
## Quick Start
### 1. Initialize with Hooks
```bash
npx claude-flow init --hooks
```
This automatically creates:
- `.claude/settings.json` with hook configurations
- Hook command documentation
- Default hook handlers
### 2. Test Hook Functionality
```bash
# Test pre-edit hook
npx claude-flow hook pre-edit --file test.js
# Test session summary
npx claude-flow hook session-end --summary
```
### 3. Customize Hooks
Edit `.claude/settings.json` to customize:
```json
{
"hooks": {
"PreToolUse": [
{
"matcher": "^Write$",
"hooks": [{
"type": "command",
"command": "npx claude-flow hook pre-write --file '${tool.params.file_path}'"
}]
}
]
}
}
```
## Hook Response Format
Hooks return JSON with:
- `continue`: Whether to proceed (true/false)
- `reason`: Explanation for decision
- `metadata`: Additional context
Example blocking response:
```json
{
"continue": false,
"reason": "Protected file - manual review required",
"metadata": {
"file": ".env.production",
"protection_level": "high"
}
}
```
## Performance Tips
- Keep hooks lightweight (< 100ms)
- Use caching for repeated operations
- Batch related operations
- Run non-critical hooks asynchronously
## Debugging Hooks
```bash
# Enable debug output
export CLAUDE_FLOW_DEBUG=true
# Test specific hook
npx claude-flow hook pre-edit --file app.js --debug
```
## Common Patterns
### Auto-Format on Save
Already configured by default for common file types.
### Protected File Detection
```json
{
"matcher": "^(Write|Edit)$",
"hooks": [{
"type": "command",
"command": "npx claude-flow hook check-protected --file '${tool.params.file_path}'"
}]
}
```
### Automatic Testing
```json
{
"matcher": "^Write$",
"hooks": [{
"type": "command",
"command": "test -f '${tool.params.file_path%.js}.test.js' && npm test '${tool.params.file_path%.js}.test.js'"
}]
}
```