claude-flow-novice 2.15.2 → 2.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/hooks/cfn-BACKUP_USAGE.md +243 -243
- package/.claude/hooks/cfn-invoke-security-validation.sh +69 -69
- package/.claude/hooks/cfn-post-edit-cfn-retrospective.sh +78 -78
- package/.claude/hooks/cfn-post-edit.config.json +44 -44
- package/.claude/skills/agent-lifecycle/SKILL.md +60 -0
- package/.claude/skills/agent-lifecycle/execute-lifecycle-hook.sh +573 -0
- package/.claude/skills/agent-lifecycle/simple-audit.sh +31 -0
- package/.claude/skills/cfn-hybrid-routing/check-dependencies.sh +51 -51
- package/.claude/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -252
- package/.claude/skills/cfn-redis-coordination/agent-recovery.sh +74 -74
- package/.claude/skills/cfn-redis-coordination/get-context.sh +112 -112
- package/.claude/skills/cfn-transparency-middleware/middleware-config.sh +28 -28
- package/.claude/skills/cfn-transparency-middleware/performance-benchmark.sh +78 -78
- package/.claude/skills/cfn-transparency-middleware/test-integration.sh +161 -161
- package/.claude/skills/cfn-transparency-middleware/test-transparency-skill.sh +367 -367
- package/.claude/skills/cfn-transparency-middleware/tests/input-validation.sh +92 -92
- package/.claude/skills/cfn-transparency-middleware/wrap-agent.sh +131 -131
- package/claude-assets/hooks/cfn-BACKUP_USAGE.md +243 -243
- package/claude-assets/hooks/cfn-invoke-security-validation.sh +69 -69
- package/claude-assets/hooks/cfn-post-edit-cfn-retrospective.sh +78 -78
- package/claude-assets/hooks/cfn-post-edit.config.json +44 -44
- package/claude-assets/hooks/cfn-post-execution/memory-cleanup.sh +19 -19
- package/claude-assets/hooks/cfn-pre-execution/memory-check.sh +19 -19
- package/claude-assets/skills/agent-lifecycle/execute-lifecycle-hook.sh +572 -572
- package/claude-assets/skills/agent-lifecycle/simple-audit.sh +30 -30
- package/claude-assets/skills/cfn-automatic-memory-persistence/persist-agent-output.sh +48 -48
- package/claude-assets/skills/cfn-automatic-memory-persistence/query-agent-history.sh +34 -34
- package/claude-assets/skills/cfn-deliverable-validation/confidence-calculator.sh +261 -261
- package/claude-assets/skills/cfn-expert-update/update-expert.sh +345 -345
- package/claude-assets/skills/cfn-hybrid-routing/check-dependencies.sh +51 -51
- package/claude-assets/skills/cfn-intervention-detector/detect-intervention.sh +110 -110
- package/claude-assets/skills/cfn-intervention-orchestrator/execute-intervention.sh +58 -58
- package/claude-assets/skills/cfn-loop-validation/orchestrate-cfn-loop.sh +252 -252
- package/claude-assets/skills/cfn-loop2-output-processing/process-validator-output.sh +275 -275
- package/claude-assets/skills/cfn-memory-management/check-memory.sh +159 -159
- package/claude-assets/skills/cfn-memory-management/cleanup-memory.sh +196 -196
- package/claude-assets/skills/cfn-node-heap-sizer/task-mode-heap-limiter.sh +325 -325
- package/claude-assets/skills/cfn-playbook-auto-update/auto-update-playbook.sh +85 -85
- package/claude-assets/skills/cfn-redis-coordination/agent-recovery.sh +74 -74
- package/claude-assets/skills/cfn-redis-coordination/get-context.sh +112 -112
- package/claude-assets/skills/cfn-scope-simplifier/simplify-scope.sh +67 -67
- package/claude-assets/skills/cfn-specialist-injection/recommend-specialist.sh +56 -56
- package/claude-assets/skills/cfn-standardized-error-handling/capture-agent-error.sh +86 -86
- package/claude-assets/skills/cfn-standardized-error-handling/test-error-handling.sh +165 -165
- package/claude-assets/skills/cfn-task-config-init/initialize-config.sh +264 -264
- package/claude-assets/skills/cfn-task-decomposition/task-decomposer.sh +278 -278
- package/claude-assets/skills/cfn-transparency-middleware/middleware-config.sh +28 -28
- package/claude-assets/skills/cfn-transparency-middleware/performance-benchmark.sh +78 -78
- package/claude-assets/skills/cfn-transparency-middleware/test-integration.sh +161 -161
- package/claude-assets/skills/cfn-transparency-middleware/test-transparency-skill.sh +367 -367
- package/claude-assets/skills/cfn-transparency-middleware/tests/input-validation.sh +92 -92
- package/claude-assets/skills/cfn-transparency-middleware/wrap-agent.sh +131 -131
- package/claude-assets/skills/docker-build/SKILL.md +96 -203
- package/claude-assets/skills/docker-build/build.sh +73 -73
- package/claude-assets/skills/integration/agent-handoff.sh +494 -0
- package/claude-assets/skills/integration/file-operations.sh +414 -0
- package/claude-assets/skills/workflow-codification/APPROVAL_WORKFLOW.md +806 -0
- package/claude-assets/skills/workflow-codification/COST_TRACKING.md +637 -0
- package/claude-assets/skills/workflow-codification/EDGE_CASE_TRACKING.md +404 -0
- package/claude-assets/skills/workflow-codification/README_PHASE4.md +457 -0
- package/claude-assets/skills/workflow-codification/SKILL.md +110 -0
- package/claude-assets/skills/workflow-codification/analyze-patterns.sh +899 -0
- package/claude-assets/skills/workflow-codification/approval-workflow.sh +514 -0
- package/claude-assets/skills/workflow-codification/generate-skill-update.sh +525 -0
- package/claude-assets/skills/workflow-codification/review-skill.sh +643 -0
- package/claude-assets/skills/workflow-codification/templates/email-notification.txt +114 -0
- package/claude-assets/skills/workflow-codification/templates/slack-notification.md +85 -0
- package/claude-assets/skills/workflow-codification/test-integration.sh +281 -0
- package/claude-assets/skills/workflow-codification/track-cost-savings.sh +445 -0
- package/claude-assets/skills/workflow-codification/track-edge-case.sh +323 -0
- package/dist/cli/config-manager.js +91 -109
- package/dist/cli/config-manager.js.map +1 -1
- package/dist/integration/DatabaseHandoff.js +507 -0
- package/dist/integration/DatabaseHandoff.js.map +1 -0
- package/dist/integration/StandardAdapter.js +291 -0
- package/dist/integration/StandardAdapter.js.map +1 -0
- package/dist/lib/agent-output-parser.js +518 -0
- package/dist/lib/agent-output-parser.js.map +1 -0
- package/dist/lib/agent-output-validator.js +950 -0
- package/dist/lib/agent-output-validator.js.map +1 -0
- package/dist/lib/artifact-registry.js +443 -0
- package/dist/lib/artifact-registry.js.map +1 -0
- package/dist/lib/config-validator.js +687 -0
- package/dist/lib/config-validator.js.map +1 -0
- package/dist/types/agent-output.js +44 -0
- package/dist/types/agent-output.js.map +1 -0
- package/dist/types/config.js +28 -0
- package/dist/types/config.js.map +1 -0
- package/package.json +2 -1
- package/scripts/artifact-cleanup.sh +392 -0
- package/scripts/deploy-production.sh +355 -355
- package/scripts/docker-playwright-fix.sh +311 -311
- package/scripts/docker-rebuild-all-agents.sh +127 -127
- package/scripts/memory-leak-prevention.sh +305 -305
- package/scripts/migrate-artifacts.sh +563 -0
- package/scripts/migrate-yaml-to-json.sh +465 -0
- package/scripts/run-marketing-tests.sh +42 -42
- package/scripts/update_paths.sh +46 -46
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# Post-Edit Hook for CFN Retrospective Skills
|
|
4
|
-
|
|
5
|
-
# Validate script permissions
|
|
6
|
-
validate_script_permissions() {
|
|
7
|
-
local script_path="$1"
|
|
8
|
-
if [[ ! -x "$script_path" ]]; then
|
|
9
|
-
echo "❌ Script is not executable: $script_path"
|
|
10
|
-
chmod +x "$script_path" && echo "✅ Made script executable: $script_path"
|
|
11
|
-
fi
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
# Basic JSON validation
|
|
15
|
-
validate_json_syntax() {
|
|
16
|
-
local file_path="$1"
|
|
17
|
-
if ! jq empty "$file_path" >/dev/null 2>&1; then
|
|
18
|
-
echo "❌ Invalid JSON syntax in $file_path"
|
|
19
|
-
return 1
|
|
20
|
-
fi
|
|
21
|
-
echo "✅ JSON syntax valid: $file_path"
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
# Specific validation for retrospective components
|
|
25
|
-
validate_retrospective_skills() {
|
|
26
|
-
local base_path="/mnt/c/Users/masha/Documents/claude-flow-novice/.claude/skills"
|
|
27
|
-
local skills=(
|
|
28
|
-
"pattern-extraction/extract-patterns.sh"
|
|
29
|
-
"playbook-auto-update/auto-update-playbook.sh"
|
|
30
|
-
"improvement-recommender/recommend-improvements.sh"
|
|
31
|
-
"retrospective-report/generate-report.sh"
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
for skill in "${skills[@]}"; do
|
|
35
|
-
full_path="${base_path}/${skill}"
|
|
36
|
-
|
|
37
|
-
# Validate script permissions
|
|
38
|
-
validate_script_permissions "$full_path"
|
|
39
|
-
|
|
40
|
-
# Run basic validation for shell scripts
|
|
41
|
-
if ! bash -n "$full_path" >/dev/null 2>&1; then
|
|
42
|
-
echo "❌ Syntax error in shell script: $skill"
|
|
43
|
-
return 1
|
|
44
|
-
fi
|
|
45
|
-
done
|
|
46
|
-
|
|
47
|
-
echo "✅ All retrospective skill scripts validated successfully"
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
# Validate playbook JSON
|
|
51
|
-
validate_playbook() {
|
|
52
|
-
local playbook_path="/mnt/c/Users/masha/Documents/claude-flow-novice/docs/PLAYBOOK.json"
|
|
53
|
-
validate_json_syntax "$playbook_path"
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
# Main validation function
|
|
57
|
-
main() {
|
|
58
|
-
local edited_file="$1"
|
|
59
|
-
echo "🔍 Validating edited file: $edited_file"
|
|
60
|
-
|
|
61
|
-
# Determine validation based on file path
|
|
62
|
-
case "$edited_file" in
|
|
63
|
-
*".claude/skills/pattern-extraction"* | \
|
|
64
|
-
*".claude/skills/playbook-auto-update"* | \
|
|
65
|
-
*".claude/skills/improvement-recommender"* | \
|
|
66
|
-
*".claude/skills/retrospective-report"* | \
|
|
67
|
-
*/PLAYBOOK.json)
|
|
68
|
-
validate_retrospective_skills
|
|
69
|
-
validate_playbook
|
|
70
|
-
;;
|
|
71
|
-
*)
|
|
72
|
-
echo "✅ No specific validation required for this file"
|
|
73
|
-
exit 0
|
|
74
|
-
;;
|
|
75
|
-
esac
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
# Run validation
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Post-Edit Hook for CFN Retrospective Skills
|
|
4
|
+
|
|
5
|
+
# Validate script permissions
|
|
6
|
+
validate_script_permissions() {
|
|
7
|
+
local script_path="$1"
|
|
8
|
+
if [[ ! -x "$script_path" ]]; then
|
|
9
|
+
echo "❌ Script is not executable: $script_path"
|
|
10
|
+
chmod +x "$script_path" && echo "✅ Made script executable: $script_path"
|
|
11
|
+
fi
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
# Basic JSON validation
|
|
15
|
+
validate_json_syntax() {
|
|
16
|
+
local file_path="$1"
|
|
17
|
+
if ! jq empty "$file_path" >/dev/null 2>&1; then
|
|
18
|
+
echo "❌ Invalid JSON syntax in $file_path"
|
|
19
|
+
return 1
|
|
20
|
+
fi
|
|
21
|
+
echo "✅ JSON syntax valid: $file_path"
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
# Specific validation for retrospective components
|
|
25
|
+
validate_retrospective_skills() {
|
|
26
|
+
local base_path="/mnt/c/Users/masha/Documents/claude-flow-novice/.claude/skills"
|
|
27
|
+
local skills=(
|
|
28
|
+
"pattern-extraction/extract-patterns.sh"
|
|
29
|
+
"playbook-auto-update/auto-update-playbook.sh"
|
|
30
|
+
"improvement-recommender/recommend-improvements.sh"
|
|
31
|
+
"retrospective-report/generate-report.sh"
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
for skill in "${skills[@]}"; do
|
|
35
|
+
full_path="${base_path}/${skill}"
|
|
36
|
+
|
|
37
|
+
# Validate script permissions
|
|
38
|
+
validate_script_permissions "$full_path"
|
|
39
|
+
|
|
40
|
+
# Run basic validation for shell scripts
|
|
41
|
+
if ! bash -n "$full_path" >/dev/null 2>&1; then
|
|
42
|
+
echo "❌ Syntax error in shell script: $skill"
|
|
43
|
+
return 1
|
|
44
|
+
fi
|
|
45
|
+
done
|
|
46
|
+
|
|
47
|
+
echo "✅ All retrospective skill scripts validated successfully"
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
# Validate playbook JSON
|
|
51
|
+
validate_playbook() {
|
|
52
|
+
local playbook_path="/mnt/c/Users/masha/Documents/claude-flow-novice/docs/PLAYBOOK.json"
|
|
53
|
+
validate_json_syntax "$playbook_path"
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
# Main validation function
|
|
57
|
+
main() {
|
|
58
|
+
local edited_file="$1"
|
|
59
|
+
echo "🔍 Validating edited file: $edited_file"
|
|
60
|
+
|
|
61
|
+
# Determine validation based on file path
|
|
62
|
+
case "$edited_file" in
|
|
63
|
+
*".claude/skills/pattern-extraction"* | \
|
|
64
|
+
*".claude/skills/playbook-auto-update"* | \
|
|
65
|
+
*".claude/skills/improvement-recommender"* | \
|
|
66
|
+
*".claude/skills/retrospective-report"* | \
|
|
67
|
+
*/PLAYBOOK.json)
|
|
68
|
+
validate_retrospective_skills
|
|
69
|
+
validate_playbook
|
|
70
|
+
;;
|
|
71
|
+
*)
|
|
72
|
+
echo "✅ No specific validation required for this file"
|
|
73
|
+
exit 0
|
|
74
|
+
;;
|
|
75
|
+
esac
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
# Run validation
|
|
79
79
|
main "$1"
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
{
|
|
2
|
-
"enabled": true,
|
|
3
|
-
"version": "2.0.0",
|
|
4
|
-
"pipeline": "config/hooks/post-edit-pipeline.js",
|
|
5
|
-
"triggerOn": ["Edit", "Write", "MultiEdit"],
|
|
6
|
-
"fileTypes": [".ts", ".tsx", ".js", ".jsx", ".json", ".md", ".sh", ".bash", ".py", ".rs"],
|
|
7
|
-
"blocking": false,
|
|
8
|
-
"exitCodes": {
|
|
9
|
-
"0": "SUCCESS",
|
|
10
|
-
"1": "ERROR",
|
|
11
|
-
"2": "SYNTAX_ERROR",
|
|
12
|
-
"9": "BASH_VALIDATOR_ERROR",
|
|
13
|
-
"10": "BASH_VALIDATOR_WARNING"
|
|
14
|
-
},
|
|
15
|
-
"redis": {
|
|
16
|
-
"enabled": true,
|
|
17
|
-
"publishChannel": "swarm:hooks:post-edit",
|
|
18
|
-
"memoryKeyPattern": "swarm/{agentId}/hook-results"
|
|
19
|
-
},
|
|
20
|
-
"logging": {
|
|
21
|
-
"enabled": true,
|
|
22
|
-
"logFile": ".artifacts/logs/post-edit-pipeline.log",
|
|
23
|
-
"includeTimestamp": true,
|
|
24
|
-
"verbose": false
|
|
25
|
-
},
|
|
26
|
-
"validation": {
|
|
27
|
-
"typescript": {
|
|
28
|
-
"enabled": true,
|
|
29
|
-
"noEmit": true,
|
|
30
|
-
"skipLibCheck": true
|
|
31
|
-
},
|
|
32
|
-
"bash": {
|
|
33
|
-
"enabled": true,
|
|
34
|
-
"validators": ["pipe-safety", "dependency-checker", "line-endings"],
|
|
35
|
-
"timeout": 5000
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
"feedback": {
|
|
39
|
-
"provideSuggestions": true,
|
|
40
|
-
"autoFixable": ["LINT_ISSUES"],
|
|
41
|
-
"nonBlocking": ["TYPE_WARNING", "LINT_ISSUES", "BASH_VALIDATOR_WARNING"],
|
|
42
|
-
"blocking": ["SYNTAX_ERROR", "BASH_VALIDATOR_ERROR"]
|
|
43
|
-
}
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"enabled": true,
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"pipeline": "config/hooks/post-edit-pipeline.js",
|
|
5
|
+
"triggerOn": ["Edit", "Write", "MultiEdit"],
|
|
6
|
+
"fileTypes": [".ts", ".tsx", ".js", ".jsx", ".json", ".md", ".sh", ".bash", ".py", ".rs"],
|
|
7
|
+
"blocking": false,
|
|
8
|
+
"exitCodes": {
|
|
9
|
+
"0": "SUCCESS",
|
|
10
|
+
"1": "ERROR",
|
|
11
|
+
"2": "SYNTAX_ERROR",
|
|
12
|
+
"9": "BASH_VALIDATOR_ERROR",
|
|
13
|
+
"10": "BASH_VALIDATOR_WARNING"
|
|
14
|
+
},
|
|
15
|
+
"redis": {
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"publishChannel": "swarm:hooks:post-edit",
|
|
18
|
+
"memoryKeyPattern": "swarm/{agentId}/hook-results"
|
|
19
|
+
},
|
|
20
|
+
"logging": {
|
|
21
|
+
"enabled": true,
|
|
22
|
+
"logFile": ".artifacts/logs/post-edit-pipeline.log",
|
|
23
|
+
"includeTimestamp": true,
|
|
24
|
+
"verbose": false
|
|
25
|
+
},
|
|
26
|
+
"validation": {
|
|
27
|
+
"typescript": {
|
|
28
|
+
"enabled": true,
|
|
29
|
+
"noEmit": true,
|
|
30
|
+
"skipLibCheck": true
|
|
31
|
+
},
|
|
32
|
+
"bash": {
|
|
33
|
+
"enabled": true,
|
|
34
|
+
"validators": ["pipe-safety", "dependency-checker", "line-endings"],
|
|
35
|
+
"timeout": 5000
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"feedback": {
|
|
39
|
+
"provideSuggestions": true,
|
|
40
|
+
"autoFixable": ["LINT_ISSUES"],
|
|
41
|
+
"nonBlocking": ["TYPE_WARNING", "LINT_ISSUES", "BASH_VALIDATOR_WARNING"],
|
|
42
|
+
"blocking": ["SYNTAX_ERROR", "BASH_VALIDATOR_ERROR"]
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# CFN Post-Execution Memory Cleanup Hook
|
|
4
|
-
# Automatically cleans up memory resources after CFN operations
|
|
5
|
-
|
|
6
|
-
set -euo pipefail
|
|
7
|
-
|
|
8
|
-
# Hook configuration
|
|
9
|
-
HOOK_SCRIPT_PATH="$(dirname "$0")/memory-cleanup.sh"
|
|
10
|
-
MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/cleanup-memory.sh"
|
|
11
|
-
|
|
12
|
-
# Use the memory management skill if available, otherwise use local fallback
|
|
13
|
-
if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
|
|
14
|
-
exec "$MEMORY_MANAGEMENT_SKILL" "$@"
|
|
15
|
-
elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
|
|
16
|
-
exec "$HOOK_SCRIPT_PATH" "$@"
|
|
17
|
-
else
|
|
18
|
-
echo "WARNING: Memory cleanup scripts not found, skipping cleanup"
|
|
19
|
-
exit 0
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# CFN Post-Execution Memory Cleanup Hook
|
|
4
|
+
# Automatically cleans up memory resources after CFN operations
|
|
5
|
+
|
|
6
|
+
set -euo pipefail
|
|
7
|
+
|
|
8
|
+
# Hook configuration
|
|
9
|
+
HOOK_SCRIPT_PATH="$(dirname "$0")/memory-cleanup.sh"
|
|
10
|
+
MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/cleanup-memory.sh"
|
|
11
|
+
|
|
12
|
+
# Use the memory management skill if available, otherwise use local fallback
|
|
13
|
+
if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
|
|
14
|
+
exec "$MEMORY_MANAGEMENT_SKILL" "$@"
|
|
15
|
+
elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
|
|
16
|
+
exec "$HOOK_SCRIPT_PATH" "$@"
|
|
17
|
+
else
|
|
18
|
+
echo "WARNING: Memory cleanup scripts not found, skipping cleanup"
|
|
19
|
+
exit 0
|
|
20
20
|
fi
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# CFN Pre-Execution Memory Check Hook
|
|
4
|
-
# Automatically checks memory availability before CFN operations
|
|
5
|
-
|
|
6
|
-
set -euo pipefail
|
|
7
|
-
|
|
8
|
-
# Hook configuration
|
|
9
|
-
HOOK_SCRIPT_PATH="$(dirname "$0")/memory-check.sh"
|
|
10
|
-
MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/check-memory.sh"
|
|
11
|
-
|
|
12
|
-
# Use the memory management skill if available, otherwise use local fallback
|
|
13
|
-
if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
|
|
14
|
-
exec "$MEMORY_MANAGEMENT_SKILL" "$@"
|
|
15
|
-
elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
|
|
16
|
-
exec "$HOOK_SCRIPT_PATH" "$@"
|
|
17
|
-
else
|
|
18
|
-
echo "WARNING: Memory check scripts not found, proceeding without memory validation"
|
|
19
|
-
exit 0
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# CFN Pre-Execution Memory Check Hook
|
|
4
|
+
# Automatically checks memory availability before CFN operations
|
|
5
|
+
|
|
6
|
+
set -euo pipefail
|
|
7
|
+
|
|
8
|
+
# Hook configuration
|
|
9
|
+
HOOK_SCRIPT_PATH="$(dirname "$0")/memory-check.sh"
|
|
10
|
+
MEMORY_MANAGEMENT_SKILL="$(dirname "$0")/../../skills/cfn-memory-management/check-memory.sh"
|
|
11
|
+
|
|
12
|
+
# Use the memory management skill if available, otherwise use local fallback
|
|
13
|
+
if [[ -f "$MEMORY_MANAGEMENT_SKILL" ]]; then
|
|
14
|
+
exec "$MEMORY_MANAGEMENT_SKILL" "$@"
|
|
15
|
+
elif [[ -f "$HOOK_SCRIPT_PATH" ]]; then
|
|
16
|
+
exec "$HOOK_SCRIPT_PATH" "$@"
|
|
17
|
+
else
|
|
18
|
+
echo "WARNING: Memory check scripts not found, proceeding without memory validation"
|
|
19
|
+
exit 0
|
|
20
20
|
fi
|