Communitygithub.com

GiaSip/giasip-skills

Agent de recherche fondée sur des preuves pour Claude Code et Codex : chaque affirmation obtient un indice de confiance et une étiquette de source, avec des barrières adversariales bloquant les affirmations non étayées avant qu'elles n'atteignent votre rapport. Livré avec un répartiteur multi-modèles.

Qu'est-ce que giasip-skills ?

GiaSip Dispatch est un répartiteur multi-modèles conçu pour les agents d'IA de développement logiciel comme Claude Code et Codex. Il permet d'envoyer une tâche ou une invite à différents modèles d'IA pour exécution et de récupérer le résultat, sans imposer de préférence de modèle intégrée. Le répartiteur prend en charge plusieurs canaux : l'API Aggregator (recommandée, avec une seule clé pour les fournisseurs comme OpenRouter ou SiliconFlow), les appels API directs par fournisseur, les invocations CLI (Codex, Gemini, Kimi), et même le SubAgent interne de Claude Code. Une fonction de routage de complexité sélectionne automatiquement la meilleure stratégie : tâches visuelles vers Gemini, analyse pure vers API directe (10x plus rapide que CLI), code vers Codex, et tâches critiques vers un dispatch parallèle à plusieurs modèles. L'outil gère également l'exécution parallèle multi-modèles avec attente, permettant une validation croisée pour les décisions importantes. Il automatise le basculement, la gestion des erreurs et la journalisation, et exige une configuration initiale unique de BASE_DIR pour pointer vers les scripts.

Compatible avec✓Claude Code✓Codex CLI~Cursor✓Antigravity✓Gemini CLI
npx skills add GiaSip/giasip-skills

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

✦ Une compétence GiaSip · faisant partie de la boîte à outils giasip · github.com/GiaSip

/dispatch — Répartiteur Multi-Modèles

Envoie une tâche ou une invite à un autre modèle d'IA pour exécution et récupère le résultat. Cette compétence fournit uniquement la capacité de répartition — le modèle à choisir, s'il faut répartir sur plusieurs modèles, est décidé par vous (ou par Claude actuel) en fonction de la tâche. Aucune préférence de modèle intégrée.

Répertoire des Scripts

Important : Tous les scripts se trouvent dans le sous-répertoire scripts/ de ce dossier de compétence.

Configuration de l'agent — à faire UNE FOIS avant d'exécuter toute commande ci-dessous : déterminez le chemin absolu du répertoire qui contient ce fichier SKILL.md et exportez-le en tant que BASE_DIR :

# Installation globale (la plus courante) ; utilisez le chemin du cache du plugin si installé en tant que plugin
export BASE_DIR="$HOME/.claude/skills/giasip-dispatch"

Chaque commande ci-dessous référence les scripts comme $BASE_DIR/scripts/<nom-du-script>. BASE_DIR est une variable shell que vous définissez dans la session — il n'y a pas de variable d'environnement CLAUDE_SKILL_DIR injectée par l'environnement d'exécution, donc définissez BASE_DIR d'abord, sinon les chemins des scripts se résoudront en rien.

Canaux de Répartition

CanalModèlesPrérequis
API Aggregator ★ chemin facile — une cléOutre-mer : OpenRouter (DeepSeek/Qwen/GLM/Kimi/MiniMax + Claude/GPT/Gemini). Chine : SiliconFlow 硅基流动 (DeepSeek/Qwen/GLM/Kimi/MiniMax)Un fichier de clés — openrouter.env ou siliconflow.env dans ~/.config/ai-keys/ ; définissez DISPATCH_PROVIDER une fois
Appel API direct (curl, par fournisseur)DeepSeek / Qwen / GLM / Doubao / MiniMaxUn fichier .env par fournisseur séparé dans ~/.config/ai-keys/ (avancé)
Invocation CLI (agentique)Codex / Gemini / KimiInstallation locale + connexion par CLI — nécessaire pour les capacités agentiques (écriture de code, vision native)
Sous-Agent InterneClaude Haiku / SonnetIntégré dans Claude Code, aucune dépendance externe

Chemin facile (recommandé pour la plupart des utilisateurs) : procurez-vous une clé d'agrégateur et tous les alias que votre fournisseur choisi supporte fonctionnent — pas d'inscription par fournisseur. Outre-mer → OpenRouter ; Chine → SiliconFlow. Voir le README "giasip-dispatch — Dépendances" pour la configuration.

Quand vous avez encore besoin des chemins par fournisseur / CLI : les clés directes par fournisseur (si vous les avez déjà, ou pour éviter la commission d'environ 5,5 % d'OpenRouter sur les rechargements de crédit) ; les canaux CLI pour le travail agentique que l'API de chat ne peut pas faire — mode écriture de Codex (modification de fichiers), vision native PDF/image de Gemini. Les agrégateurs couvrent toutes les utilisations d'analyse pure + de répartition multiple.

Pour les tâches de réflexion/analyse pures (pas d'E/S fichier, pas d'exécution de commande, pas de modifications de code), préférez l'appel API Aggregator / direct — environ 10 fois plus rapide que la CLI. Utilisez la CLI uniquement lorsque la tâche nécessite des capacités agentiques (accès au système de fichiers, exécution de commandes, modifications de code, vision native).


Discipline Générale (à lire impérativement pour tous les appels CLI)

  1. Utilisez heredoc pour les invites — évite les problèmes de guillemets / caractères spéciaux.
  2. Ajoutez </dev/null à tous les appels CLI — l'environnement Bash de Claude Code a un canal d'entrée stdin qui ne se ferme jamais ; sans cela, les CLI restent bloquées en attente d'entrée.
  3. Lors de la construction des invites : gardez-les concises et claires ; n'injectez pas de concepts spécifiques à Claude Code (compétences / hooks / Sous-Agent) ; utilisez des invites en chinois pour les tâches en chinois, en anglais pour les tâches en anglais ; incluez le contexte nécessaire du projet lorsque pertinent.

Routage par Complexité

Sélectionnez automatiquement la stratégie de répartition en fonction de la nature de la tâche :

Tâche visuelle ? (catalogue PDF / document scanné / capture d'écran / analyse d'image)
├── Oui → [CLI Gemini] — analyse visuelle native PDF + image
│   Déclencheur : l'utilisateur fournit un chemin d'image/PDF + la tâche implique la "lecture" du contenu ;
│   ou la sortie markitdown est vide/anormalement petite
│   → N'essayez PAS markitdown d'abord — acheminez directement vers Gemini
│
├── Réflexion/analyse pure (analyse métier, stratégie, compréhension de texte, traduction)
│   → [Appel API direct] — aucune capacité agentique nécessaire, appelez l'API directement avec curl
│   10x plus rapide ; supporte les modèles sans CLI (DeepSeek/Qwen/GLM etc.)
│
├── Simple + réversible (installation de paquets, formatage, recherche, génération de modèles)
│   → [Répartition unique] — préférez le Sous-Agent Claude (Haiku) pour la vitesse
│   Utilisez la CLI externe uniquement lorsque la tâche nécessite des capacités natives chinoises ou spécifiques
│
├── Exécution de code (correction de bug, écriture de tests, petite refactorisation, génération de fichiers de code)
│   → [Mode écriture Codex] — sandbox=complet, Codex modifie le code directement
│   Condition : tâche claire, dans un projet géré par git, rayon d'impact contrôlable
│   Rappelez toujours à l'utilisateur de faire `git diff` ensuite
│
├── Complexité moyenne (développement de fonctionnalité, analyse de document, analyse de code)
│   → [Répartition unique] — envoyez à l'IA la mieux adaptée
│
├── Complexe + irréversible (conception d'architecture, sélection technique, refactorisation majeure)
│   → [Répartition multiple] — escalade automatique, envoyez à 2-3 IA, comparez les sorties
│
└── L'utilisateur spécifie l'IA ("exécute ceci avec Kimi")
    → [Affectation directe] — envoyez à l'IA spécifiée, ignorez la correspondance

Déclencheurs de répartition multiple (l'un quelconque déclenche l'escalade automatique) :

  • L'utilisateur dit "important", "décision critique", "ne peut pas se tromper"
  • La tâche implique des opérations irréversibles (migration de base de données, déploiement en production)
  • La tâche est une sélection technique ou une conception d'architecture
  • Rayon d'impact estimé > 10 fichiers ou 3 modules
  • Tâches d'analyse métier/stratégique en chinois (par défaut : parallèle à trois voies)

→ Voir references/model-roster.md pour les recommandations de composition de répartition multiple par type de tâche.


Méthodes de Répartition

API Aggregator — ★ chemin facile (une clé, recommandé)

Le même api-dispatch.sh achemine via un agrégateur lorsque vous définissez un fournisseur. Une clé déverrouille tous les modèles ci-dessous — pas d'inscription par fournisseur.

# Définir une fois par session (outre-mer → openrouter, Chine → siliconflow), puis tous les alias supportés fonctionnent
export DISPATCH_PROVIDER=openrouter        # ou : siliconflow

$BASE_DIR/scripts/api-dispatch.sh --model deepseek "$(cat <<'EOF'
contenu de l'invite
EOF
)"

# Remplacement par appel sans toucher à l'environnement
$BASE_DIR/scripts/api-dispatch.sh --via siliconflow --model kimi "invite"

# Porte de sortie — passer n'importe quel ID de modèle d'agrégateur textuellement (la table d'alias ne peut pas tout couvrir)
$BASE_DIR/scripts/api-dispatch.sh --via openrouter --model-id anthropic/claude-3.7-sonnet "invite"

Ordre de résolution du fournisseur : drapeau --via > env $DISPATCH_PROVIDER > direct (par défaut).

FournisseurFichier de Clés (~/.config/ai-keys/)AliasNote
openrouteropenrouter.env (OPENROUTER_API_KEY)deepseek / qwen / glm / kimi / minimax / claude / gpt / geminiOutre-mer ; nécessite un VPN en Chine continentale
siliconflowsiliconflow.env (SILICONFLOW_API_KEY)deepseek / qwen / glm / kimi / minimaxChine direct ; open-source/domestique uniquement (pas de Claude/GPT/Gemini). Utilisateurs internationaux : export SILICONFLOW_BASE_URL=https://api.siliconflow.com/v1

Les ID de modèle d'agrégateur sont la partie volatile — les mappages alias → ID de modèle résident dans references/model-roster.md ; si un appel renvoie 404 sur le modèle, vérifiez sur la page des modèles du fournisseur ou passez l'ID correct via --model-id.

Appel API Direct — par fournisseur (avancé, sans agrégateur)

Si vous détenez déjà des clés par fournisseur (ou souhaitez éviter les frais de rechargement de crédit de l'agrégateur), appelez chaque fournisseur directement. Nécessite un fichier .env séparé par fournisseur :

$BASE_DIR/scripts/api-dispatch.sh --model <model> "$(cat <<'EOF'
contenu de l'invite
EOF
)"

Texte long via stdin :

echo "contenu de texte long" | $BASE_DIR/scripts/api-dispatch.sh --model <model> --stdin

Modèles supportés — voir references/model-roster.md pour la liste complète avec les forces par modèle et les recommandations de composition de répartition multiple.

ParamètreModèleFichier de ClésContexte
deepseekDeepSeek V4-Pro (mode réflexion activé)deepseek.env1M
qwenQwen3.6 Plus (Tongyi)dashscope.env1M
glmGLM-5.2 (Zhipu phare)zai.env200K
doubaoDoubao Seed-2.0 Pro (ByteDance)volcengine.env256K
minimaxMiniMax M3minimax.env—

Les noms de modèles évoluent avec les mises à jour des fournisseurs — vérifiez la documentation du fournisseur avant d'appeler.

Codex CLI (OpenAI) — Protocole App Server, pas de démarrage à froid

Mode lecture seule (analyse / révision / recherche) :

node $BASE_DIR/scripts/codex-appserver.mjs --effort xhigh "$(cat <<'EOF'
contenu de l'invite
EOF
)" </dev/null

Mode écriture (modifications de code / corrections de bugs / génération de tests / création de fichiers) :

node $BASE_DIR/scripts/codex-appserver.mjs --effort xhigh --sandbox full "$(cat <<'EOF'
contenu de l'invite
EOF
)" </dev/null

Règles de sécurité du mode écriture :

  • Utiliser uniquement dans les répertoires de projet gérés par git (--cwd /chemin/vers/projet)
  • Après exécution, rappelez toujours à l'utilisateur de faire git diff pour réviser les modifications ; git checkout . pour annuler si insatisfait
  • Pour le code de production / les bases de données / les scripts de déploiement, revenez en mode lecture seule + sortie de recommandations à la place

Remarques :

  • --sandbox par défaut à read-only ; le mode écriture utilise full (le script supporte également workspace-write / danger-full-access pour une utilisation avancée)
  • Le script a une solution intégrée de lien symbolique automatique pour les chemins non ASCII (--cwd avec des caractères CJK crée automatiquement un lien symbolique temporaire dans /tmp, nettoyé à la sortie)
  • N'ajoutez pas 2>/dev/null — le script affiche des informations structurées de progression et d'erreur sur stderr
  • Le texte long peut utiliser stdin : echo "texte long" | node $BASE_DIR/scripts/codex-appserver.mjs --stdin --effort xhigh

CLI Gemini (Google) — script superviseur recommandé

Le superviseur intègre une nouvelle tentative intelligente / chaîne de repli / coupe-circuit / délai d'attente / journalisation :

$BASE_DIR/scripts/gemini-supervisor.sh --cwd "/chemin/vers/répertoire/de/travail" "$(cat <<'PROMPT_END'
contenu de l'invite
PROMPT_END
)"

Comportement par défaut du superviseur :

  • Chaîne de repli : modèle phare → GA stable → flash (saut automatique si indisponible)
  • Classification d'erreur : 429 congestion à court terme → backoff + tentative avec gigue ; épuisement du quota quotidien → passer au modèle suivant ; 503 → même chemin de backoff
  • Budget global de tentatives : 6 ; délai d'attente dur par modèle : 600s (configurable via GEMINI_MODEL_TIMEOUT)
  • Coupe-circuit : 3 échecs consécutifs par modèle → temps de repos de 30 minutes
  • Journaux : ~/.cache/dispatch/gemini.log (JSONL) + état : ~/.cache/dispatch/gemini-state.json

Spécifier un seul modèle (ignorer le repli) : $BASE_DIR/scripts/gemini-supervisor.sh --model <model-id> "invite" Mode stdin (recommandé pour les invites longues) : cat invite.txt | $BASE_DIR/scripts/gemini-supervisor.sh --stdin --cwd "/répertoire/travail"

Vision Gemini / analyse PDF (Gemini supporte nativement l'analyse visuelle PDF + image — le chemin standard pour les PDF scannés / captures d'écran) :

$BASE_DIR/scripts/gemini-supervisor.sh \
  --cwd "/chemin/vers/répertoire/fichiers" \
  "$(cat <<'PROMPT_END'
Veuillez analyser complètement toutes les pages de xxx.pdf et les afficher au format markdown :
- Préservez tous les tableaux de données (utilisez la syntaxe de tableau markdown)
- Préservez toutes les spécifications, paramètres techniques, numéros de modèle
- Annotez les numéros de page (## Page 1 / ## Page 2 ...)
- N'omettez aucun détail technique
PROMPT_END
)" > output.md

Cas d'utilisation : catalogues PDF (sans couche de texte), scans, fiches techniques de produits, analyse de captures d'écran, OCR d'images, extraction de données de graphiques. Dirigez vers un fichier (... > output.md) pour les sorties volumineuses afin d'éviter la troncature stdout.

CLI Kimi (Moonshot) — script wrapper recommandé, routage automatique du point de terminaison

Discipline du modèle de réflexion : Kimi K2.6 est un modèle de réflexion — le raisonnement peut prendre des minutes pour les invites complexes. Le délai d'attente Bash doit être ≥600000 (10 min) pour les tâches complexes. Le script intègre le streaming SSE + garde d'inactivité (seuil de 120s sans octet) + limite dure de 900s. Ne tuez PAS en cours d'exécution et ne remplacez PAS par un curl écrit à la main. Pour le mode rapide : préfixez KIMI_NO_THINK=1 (injecte {"thinking":{"type":"disabled"}}, réponse ~4s, mais la qualité baisse — uniquement pour les tâches sans raisonnement).

# Par défaut : point de terminaison général Moonshot (api.moonshot.cn/v1, MOONSHOT_API_KEY)
$BASE_DIR/scripts/kimi-dispatch.sh "$(cat <<'EOF'
contenu de l'invite
EOF
)"

# Point de terminaison de codage optionnel (CLI Kimi + api.kimi.com/coding/v1, KIMI_API_KEY)
KIMI_FOR_CODING=1 $BASE_DIR/scripts/kimi-dispatch.sh "invite"

# Mode rapide (désactiver la réflexion, réponse ~4s)
KIMI_NO_THINK=1 $BASE_DIR/scripts/kimi-dispatch.sh "tâche simple"
Point de terminaisonCaractéristiquesMeilleur pour
Général Moonshot par défautRaisonnement visible, conserve la tendance au suiviAnalyse générale, Q&R
KIMI_FOR_CODING=1Volume de sortie plus important, harnais agentique intégré, raisonnement cachéRapports longs, écriture de fichiers pilotée par agent, code multi-étapes

Sous-Agent Interne Claude Code (pas de CLI externe)

Pour les tâches simples, utilisez Haiku, pour les tâches standard, utilisez Sonnet — générez un Sous-Agent via l'outil Agent (spécifiez model: haiku ou model: sonnet). Plus rapide et moins cher que la CLI sans tête, sans dépendances externes.


Vérification de l'Environnement

Vérification rapide de disponibilité avant la répartition :

# Outils CLI
command -v codex; command -v gemini; command -v kimi

# Clés API (pour les appels API directs)
ls ~/.config/ai-keys/*.env 2>/dev/null

Répartissez uniquement vers les modèles disponibles. Si une CLI est indisponible, revenez à l'appel API direct ou changez de modèle ; un fichier de clé API existant signifie que ce modèle est appelable.


Parallèle Multi-Modèles (validation croisée / multi-perspective)

Lorsque vous avez besoin de plusieurs modèles pour donner des perspectives indépendantes sur la même question, lancez plusieurs appels Bash en parallèle et demandez à Claude de synthétiser les résultats. Scénarios typiques : décisions importantes, sélection technique, vérification préalable avant des actions irréversibles, faible confiance dans la sortie d'un seul modèle.

# Exemple parallèle à trois voies (même invite pour trois modèles)
$BASE_DIR/scripts/kimi-dispatch.sh "tâche d'analyse" &
$BASE_DIR/scripts/api-dispatch.sh --model deepseek "tâche d'analyse" &
$BASE_DIR/scripts/api-dispatch.sh --model doubao "tâche d'analyse" &
wait

Principe de sélection : diversité cognitive > quantité — choisissez des modèles avec des données d'entraînement / architectures différentes pour obtenir des perspectives vraiment différentes ; utilisez toujours le plus haut niveau de chaque modèle ; contrôlez le coût en limitant...

Skills associés