add setup.sh
This commit is contained in:
parent
e9ede2dbb7
commit
18a98e9342
1 changed files with 70 additions and 0 deletions
70
setup.sh
Normal file
70
setup.sh
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
# Setup Claude Code - Reverdin Consulting
|
||||||
|
# Usage : curl -fsSL https://git.reverdin.eu/marc/claude-rc-config/raw/branch/main/setup.sh | bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
REPO_BASE="https://git.reverdin.eu/marc/claude-rc-config/raw/branch/main"
|
||||||
|
CLAUDE_DIR="$HOME/.claude"
|
||||||
|
SKILLS_DIR="$CLAUDE_DIR/skills"
|
||||||
|
|
||||||
|
echo "=== Claude Code - Setup Reverdin Consulting ==="
|
||||||
|
|
||||||
|
# 1. Verifier / installer Claude Code
|
||||||
|
if ! command -v claude &>/dev/null; then
|
||||||
|
echo ">>> Installation de Claude Code..."
|
||||||
|
if command -v npm &>/dev/null; then
|
||||||
|
npm install -g @anthropic-ai/claude-code
|
||||||
|
elif command -v brew &>/dev/null; then
|
||||||
|
brew install anthropic/tap/claude-code 2>/dev/null || npm install -g @anthropic-ai/claude-code
|
||||||
|
else
|
||||||
|
echo "ERREUR : npm ou brew requis. Installer Node.js depuis https://nodejs.org"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo ">>> Claude Code deja installe : $(claude --version 2>/dev/null || echo ok)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 2. Creer les repertoires
|
||||||
|
mkdir -p "$SKILLS_DIR/rc-brief" "$SKILLS_DIR/rc-writer" "$SKILLS_DIR/research-query" "$SKILLS_DIR/think"
|
||||||
|
|
||||||
|
# 3. Telecharger les fichiers
|
||||||
|
echo ">>> Telechargement de la configuration RC..."
|
||||||
|
|
||||||
|
curl -fsSL "$REPO_BASE/config/settings.json" -o "$CLAUDE_DIR/settings.json.rc"
|
||||||
|
curl -fsSL "$REPO_BASE/config/CLAUDE.md" -o "$CLAUDE_DIR/CLAUDE.md"
|
||||||
|
curl -fsSL "$REPO_BASE/skills/rc-brief/SKILL.md" -o "$SKILLS_DIR/rc-brief/SKILL.md"
|
||||||
|
curl -fsSL "$REPO_BASE/skills/rc-writer/SKILL.md" -o "$SKILLS_DIR/rc-writer/SKILL.md"
|
||||||
|
curl -fsSL "$REPO_BASE/skills/research-query/SKILL.md" -o "$SKILLS_DIR/research-query/SKILL.md"
|
||||||
|
curl -fsSL "$REPO_BASE/skills/think/SKILL.md" -o "$SKILLS_DIR/think/SKILL.md"
|
||||||
|
|
||||||
|
# 4. Fusionner settings.json
|
||||||
|
if [ -f "$CLAUDE_DIR/settings.json" ]; then
|
||||||
|
echo ">>> settings.json existant - fusion..."
|
||||||
|
python3 - << 'PYMERGE'
|
||||||
|
import json, os
|
||||||
|
home = os.path.expanduser("~")
|
||||||
|
rc = json.load(open(f"{home}/.claude/settings.json.rc"))
|
||||||
|
existing = json.load(open(f"{home}/.claude/settings.json"))
|
||||||
|
for key in ["allow", "deny"]:
|
||||||
|
ep = existing.get("permissions", {}).get(key, [])
|
||||||
|
rp = rc.get("permissions", {}).get(key, [])
|
||||||
|
existing.setdefault("permissions", {})[key] = list(dict.fromkeys(ep + rp))
|
||||||
|
with open(f"{home}/.claude/settings.json", "w") as f:
|
||||||
|
json.dump(existing, f, indent=2, ensure_ascii=False)
|
||||||
|
print("Fusion OK")
|
||||||
|
PYMERGE
|
||||||
|
else
|
||||||
|
cp "$CLAUDE_DIR/settings.json.rc" "$CLAUDE_DIR/settings.json"
|
||||||
|
echo ">>> settings.json cree"
|
||||||
|
fi
|
||||||
|
rm -f "$CLAUDE_DIR/settings.json.rc"
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "=== Installation terminee ==="
|
||||||
|
echo ""
|
||||||
|
echo "ETAPE MANUELLE :"
|
||||||
|
echo " Claude Desktop > Settings > Integrations"
|
||||||
|
echo " Connecter Microsoft 365 avec votre compte @reverdin.eu"
|
||||||
|
echo ""
|
||||||
|
echo "Skills : /rc-brief /rc-writer /research-query /think"
|
||||||
Loading…
Add table
Reference in a new issue