mirror of
https://github.com/MaksTinyWorkshop/_Assistant_Lead_Tech
synced 2026-04-06 21:41:42 +02:00
Affiner sync projets + publication skills Claude/Codex
This commit is contained in:
@@ -12,6 +12,7 @@ SOURCE="$REPO_ROOT/_AI_INSTRUCTIONS.md"
|
||||
# --- Détection machine ---
|
||||
OS="$(uname -s)"
|
||||
CHANGED=0
|
||||
SKILLS_SOURCE_DIR="$REPO_ROOT/skills"
|
||||
|
||||
generate_repo_claude() {
|
||||
local header="$1"
|
||||
@@ -57,6 +58,40 @@ ensure_symlink() {
|
||||
CHANGED=1
|
||||
}
|
||||
|
||||
sync_skills_for_target() {
|
||||
local target_root="$1"
|
||||
local source_dir="$2"
|
||||
local skill_dir
|
||||
local skill_name
|
||||
local target_link
|
||||
|
||||
mkdir -p "$target_root"
|
||||
[ -d "$source_dir" ] || return 0
|
||||
|
||||
for skill_dir in "$source_dir"/*; do
|
||||
[ -d "$skill_dir" ] || continue
|
||||
[ -f "$skill_dir/SKILL.md" ] || continue
|
||||
|
||||
skill_name="$(basename "$skill_dir")"
|
||||
target_link="$target_root/$skill_name"
|
||||
|
||||
if [ -L "$target_link" ]; then
|
||||
local current_target
|
||||
current_target="$(readlink "$target_link")"
|
||||
if [ "$current_target" = "$skill_dir" ] && [ -e "$target_link" ]; then
|
||||
continue
|
||||
fi
|
||||
rm -f "$target_link"
|
||||
elif [ -e "$target_link" ]; then
|
||||
echo "WARN: skill déjà présent et non symlink, conservé: $target_link" >&2
|
||||
continue
|
||||
fi
|
||||
|
||||
ln -s "$skill_dir" "$target_link"
|
||||
CHANGED=1
|
||||
done
|
||||
}
|
||||
|
||||
CLAUDE_HEADER="# Instructions globales — Lead Tech Copilote
|
||||
|
||||
Ce fichier est chargé automatiquement par Claude Code ou Codex à chaque session.
|
||||
@@ -65,6 +100,8 @@ Il constitue la porte d'entrée principale de la base de connaissance Lead_tech
|
||||
generate_repo_claude "$CLAUDE_HEADER" "$HOME/.claude/CLAUDE.md"
|
||||
|
||||
ensure_symlink "$HOME/.claude/CLAUDE.md" "$HOME/.codex/AGENTS.md"
|
||||
sync_skills_for_target "$HOME/.claude/skills" "$SKILLS_SOURCE_DIR"
|
||||
sync_skills_for_target "$HOME/.codex/skills" "$SKILLS_SOURCE_DIR"
|
||||
|
||||
if [ "$CHANGED" -eq 1 ]; then
|
||||
echo "Sync AI instructions (OS: $OS)"
|
||||
|
||||
Reference in New Issue
Block a user