refactor: restructure repo layout

This commit is contained in:
2026-03-27 10:24:55 +01:00
parent 1a6d5a7dda
commit 648fef9929
95 changed files with 33 additions and 44 deletions

View File

@@ -40,49 +40,28 @@ Le serveur MCP lance aichat au démarrage sur un port libre. Qwen3 dispose d'out
## Installation dans un projet existant ## Installation dans un projet existant
### 1. Cloner ce dépôt ### 1. Ajouter CrazyClaude comme subtree
Avec **Jujutsu** : Depuis la racine de votre projet (jj colocalisé git) :
```sh ```sh
# Depuis la racine de votre projet git subtree add --prefix .claude https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git main --squash
jj git clone https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git .claude-crazy
``` ```
Puis copiez le contenu : Le contenu du repo s'installe directement dans `.claude/` — agents, hooks, mcp, etc.
### 2. Ajouter llm-functions comme subtree
```sh ```sh
cp -r .claude-crazy/.claude ./.claude git subtree add --prefix .claude/llm-functions https://github.com/sigoden/llm-functions.git main --squash
cp -r .claude-crazy/llm-functions ./.claude/llm-functions # si présent dans le clone
``` ```
> Avec jj colocalisé git, vous pouvez aussi utiliser subtree : ### 3. Construire les outils llm-functions
>
> ```sh
> git subtree add --prefix .claude https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git main --squash
> ```
### 2. Créer le virtualenv Python Choisissez les outils à activer en éditant `.claude/llm-functions/tools.txt`, puis :
```sh ```sh
cd .claude cd .claude/llm-functions && argc build
python3 -m venv venv
venv/bin/pip install -r mcp/qwen3-mcp/requirements.txt
```
### 3. Installer et construire llm-functions
Si `llm-functions/` n'est pas déjà présent dans `.claude/` :
```sh
git clone https://github.com/sigoden/llm-functions .claude/llm-functions
```
Choisissez les outils à activer en éditant `.claude/llm-functions/tools.txt`, puis construisez :
```sh
cd .claude/llm-functions
argc build
``` ```
Les outils activés par défaut : Les outils activés par défaut :
@@ -99,7 +78,15 @@ web_search_aichat.sh
execute_py_code.py execute_py_code.py
``` ```
### 4. Configurer aichat ### 4. Créer le virtualenv Python
```sh
cd .claude
python3 -m venv venv
venv/bin/pip install -r mcp/qwen3-mcp/requirements.txt
```
### 5. Configurer aichat
Vérifiez que aichat peut accéder à LM Studio et que le modèle `qwen/qwen3-coder-next` est disponible : Vérifiez que aichat peut accéder à LM Studio et que le modèle `qwen/qwen3-coder-next` est disponible :
@@ -107,7 +94,7 @@ Vérifiez que aichat peut accéder à LM Studio et que le modèle `qwen/qwen3-co
aichat --list-models | grep qwen aichat --list-models | grep qwen
``` ```
### 5. Enregistrer le serveur MCP ### 6. Enregistrer le serveur MCP
```sh ```sh
claude mcp add --transport stdio qwen3 -- .claude/venv/bin/python3 .claude/mcp/qwen3-mcp/server.py claude mcp add --transport stdio qwen3 -- .claude/venv/bin/python3 .claude/mcp/qwen3-mcp/server.py
@@ -120,11 +107,11 @@ claude mcp list
# qwen3: ... - ✓ Connected # qwen3: ... - ✓ Connected
``` ```
### 6. Adapter CLAUDE.md à votre projet ### 7. Adapter CLAUDE.md à votre projet
Éditez `.claude/CLAUDE.md` : mettez à jour la section `## Stack` et les heuristiques de délégation. Éditez `.claude/CLAUDE.md` : mettez à jour la section `## Stack` et les heuristiques de délégation.
### 7. Rendre les hooks exécutables ### 8. Rendre les hooks exécutables
```sh ```sh
chmod +x .claude/hooks/*.sh chmod +x .claude/hooks/*.sh
@@ -216,16 +203,18 @@ printf ".claude/venv/\n.claude/logs/\n.claude/llm-functions/bin/\n.claude/llm-fu
## Mise à jour ## Mise à jour
Avec Jujutsu colocalisé (`jj git init --colocate`), la mise à jour est gérée côté git : Utilisez le script inclus depuis la racine de votre projet :
```sh
bash .claude/update_crazyclaude.sh
```
Ou manuellement :
```sh ```sh
git subtree pull --prefix .claude https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git main --squash git subtree pull --prefix .claude https://gargoton.petite-maison-orange.fr/eric/CrazyClaude.git main --squash
``` git subtree pull --prefix .claude/llm-functions https://github.com/sigoden/llm-functions.git main --squash
jj voit le commit résultant comme un commit ordinaire dans son graphe.
Après mise à jour, reconstruire llm-functions si `tools.txt` a changé :
```sh
cd .claude/llm-functions && argc build cd .claude/llm-functions && argc build
``` ```
jj voit chaque commit résultant comme un commit ordinaire dans son graphe.

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env -S .claude/venv/bin/python3 #!/usr/bin/env -S venv/bin/python3
""" """
MCP server stdio exposant un outil `qwen3_task`. MCP server stdio exposant un outil `qwen3_task`.
Lance aichat en mode serveur au démarrage et gère la boucle tool_calls. Lance aichat en mode serveur au démarrage et gère la boucle tool_calls.