SPB Git forge
3commits 1branches 0releases
2.9 MBsize
maindefault branch
1 h agolast push
HTML 57.2% Shell 19.1% Python 11.2% CSS 7.4% JavaScript 5.1%
4.4 KB

# Transférer les connaissances Claude Code et l'accès MacLustr sur un autre ordinateur

Un « opérateur » MacLustr = un Mac avec (1) l'accès réseau et SSH au cluster, (2) l'outillage cluster-skill, (3) les connaissances Claude Code (instructions globales, mémoire, commandes). Les trois scripts de operateur/ automatisent le transfert.

# Ce qui constitue la connaissance Claude Code sur cet ordinateur

Élément Emplacement Rôle
Instructions globales ~/.claude/CLAUDE.md inventaire, règles, procédure remote-first, tunnel, mld… chargé à chaque session
Mémoire persistante ~/.claude/projects/-Users-<user>/memory/*.md + MEMORY.md faits appris au fil des sessions (dossier lié au chemin du projet : -Users-simon-pierreboucher = sessions lancées depuis $HOME)
Commandes ~/.claude/commands/cluster*.md /cluster, /cluster-status, /cluster-run, /cluster-compute, /cluster-deploy
Réglages ~/.claude/settings.json modèle, hooks, plugins
Serveurs MCP ~/.claude.json → mcpServers contiennent des jetons (Apify, Tavily, Notion…) — export seulement avec --mcp
Accès ~/.ssh/config (alias des 29 Macs + BHS64 + gitsrv), ~/.ssh/maclustr-egress.sh, clé ed25519 la clé privée ne se copie pas : on en génère une sur le nouveau Mac et on l'autorise
Outillage ~/Desktop/Cluster/cluster-skill (lien ~/Desktop/cluster-skill) clone de gitsrv:srv/git/cluster-skill.git : wrappers mld, mlt, mlmobile, docs

# Prérequis réseau sur le nouveau Mac

  1. Tailscale installé et connecté au même tailnet : les noms *.maclustr.io (GoDaddy) pointent sur les IP Tailscale 100.x des nœuds. Si l'ACL du tailnet restreint les sources (le SSH inter-nœuds y est bloqué), autoriser la nouvelle machine dans la console Tailscale.
  2. Homebrew + python3, rsync, jq (installés par le script si absents). pandoc/weasyprint seulement pour régénérer les PDF.
  3. Même nom d'utilisateur macOS (simon-pierreboucher) recommandé : les chemins absolus des documents restent valables. Sinon le script réécrit /Users/simon-pierreboucher → nouveau $HOME dans CLAUDE.md, la mémoire et la config SSH.

# Procédure

Sur l'ordinateur actuel (source)

bash
~/Desktop/cluster-skill/operateur/export-connaissances.sh [--mcp] [--vers-cluster-skill]
#  → ~/Desktop/maclustr-operateur-<date>.tar.gz (0600)
#  --mcp               inclut les serveurs MCP et leurs jetons
#  --vers-cluster-skill copie aussi CLAUDE.md + mémoire + commandes dans cluster-skill/operateur/connaissances/ et pousse sur spbgit
#                      (seule édition de cluster-skill autorisée depuis le laptop : c'est un export)

Transférer l'archive (AirDrop, clé USB, scp vers un nœud puis vers le nouveau Mac).

Sur le nouvel ordinateur

bash
# 1. clé + config SSH + Claude (sans réseau cluster) — depuis l'archive
tar -xzf maclustr-operateur-<date>.tar.gz -C /tmp/op && bash /tmp/op/operateur/installer-operateur.sh maclustr-operateur-<date>.tar.gz
#    génère ~/.ssh/id_ed25519 si absent et affiche la clé publique à autoriser

Sur l'ordinateur actuel (ou n'importe quelle machine déjà autorisée, M1M32 compris) :

bash
~/Desktop/cluster-skill/operateur/autoriser-operateur.sh "<clé publique affichée>"   # 29 Macs + BHS64 (ubuntu) + gitsrv

Sur le nouvel ordinateur, relancer l'installeur : il clone cluster-skill, pose le lien ~/Desktop/cluster-skill, vérifie ssh M1M32 et mld status.

bash
bash /tmp/op/operateur/installer-operateur.sh maclustr-operateur-<date>.tar.gz

Puis ouvrir Claude Code depuis $HOME (cd ~ && claude) : CLAUDE.md et la mémoire sont chargés.

# Garder deux opérateurs cohérents

  • Docs, wrappers, procédures : vivent dans cluster-skill (spbgit) → git pull sur chaque Mac.
  • CLAUDE.md global et mémoire : propres à chaque Mac. Après une session qui en a changé beaucoup, relancer export-connaissances.sh --vers-cluster-skill sur la machine source puis, sur l'autre, installer-operateur.sh --depuis-cluster-skill (importe depuis le clone, sans archive). Les mémoires ne sont pas fusionnées : la plus récente remplace (sauvegarde ~/.claude/backups/operateur-<date>/).
  • Clés : une clé par machine, toutes autorisées partout ; pour révoquer une machine, retirer sa ligne des authorized_keys (autoriser-operateur.sh --retirer "<clé>").