Ajout du script de mise à jour CrazyClaude et llm-functions

Introduit un script bash (.claude/update_crazyclaude.sh) pour automatiser la mise à jour de CrazyClaude et llm-functions depuis leurs dépôts upstream, puis reconstruire les outils argc. Le script supporte le mode --dry-run et vérifie la présence des dépendances (git, argc, jq).
This commit is contained in:
2026-03-27 09:17:13 +01:00
parent 75b8ed6bb6
commit ec30ca332d

46
.claude/update_crazyclaude.sh Executable file
View File

@@ -0,0 +1,46 @@
#!/usr/bin/env bash
# Met à jour .claude depuis CrazyClaude et llm-functions depuis upstream,
# puis reconstruit les outils aichat.
#
# Usage : bash .claude/update_crazyclaude.sh [--dry-run]
set -euo pipefail
CRAZY_CLAUDE_URL="https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git"
LLM_FUNCTIONS_URL="https://github.com/sigoden/llm-functions.git"
CLAUDE_PREFIX=".claude"
LLM_PREFIX=".claude/llm-functions"
dry_run=0
[[ "${1:-}" == "--dry-run" ]] && dry_run=1
run() {
if [[ "$dry_run" -eq 1 ]]; then
echo "[dry-run] $*"
else
echo "» $*"
"$@"
fi
}
require() {
command -v "$1" &>/dev/null || { echo "ERREUR : '$1' introuvable dans le PATH" >&2; exit 1; }
}
require git
require argc
require jq
echo "=== Mise à jour de .claude (CrazyClaude) ==="
run git subtree pull --prefix "$CLAUDE_PREFIX" "$CRAZY_CLAUDE_URL" main --squash
echo ""
echo "=== Mise à jour de .claude/llm-functions ==="
run git subtree pull --prefix "$LLM_PREFIX" "$LLM_FUNCTIONS_URL" main --squash
echo ""
echo "=== Reconstruction des outils llm-functions ==="
run argc build --arcgfile "$LLM_PREFIX/Argcfile.sh"
echo ""
echo "OK — outils reconstruits dans $LLM_PREFIX/bin/"