CommunityRédaction et éditiongithub.com

mokhtarabadi/cognitive-lead-hq

Le quartier général centralisé du système multi-agents Cognitive Lead AI. Dispose de prompts système résistants aux hallucinations, de serveurs MCP et de compétences d'agent strictes.

Qu'est-ce que cognitive-lead-hq ?

Ce référentiel sert de plateforme centrale de coordination pour le système multi-agents Cognitive Lead AI, implémentant des compétences d'agent strictes et des prompts système résistants aux hallucinations pour garantir un comportement fiable de l'IA. Il comprend des serveurs MCP (Model Context Protocol) pour standardiser les interactions entre les agents et le code, et applique des bonnes pratiques de développement logiciel telles que la gestion explicite des erreurs et l'architecture en couches. La documentation inclut un guide complet (SKILL.md) dédié aux bonnes pratiques pour le développement d'applications Go avec le framework Gin, couvrant l'optimisation des tokens pour le contexte IA, la structure de projet recommandée, les conventions de nommage, les patrons architecturaux (Architecture Propre, Injection de Dépendances) et les stratégies de test. Ce système est conçu pour être utilisé avec des agents IA comme Claude Code, Cursor ou Codex, afin d'améliorer la qualité et la maintenabilité du code produit.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add mokhtarabadi/cognitive-lead-hq

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

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

Documentation

Go (Gin) — Bonnes Pratiques

Contexte IA & Optimisation des Tokens

  1. Gestion explicite des erreurs : Ne jamais panic. Retourner toujours les erreurs explicitement (%w). Cela crée une piste de débogage traçable pour les outils de débogage IA.
  2. Isolation des interfaces : Définir des interfaces de petite taille au niveau du consommateur (ex. UserRepository). Cela rend les tests unitaires et le mocking pilotés par IA très fiables.
  3. Gestionnaires plats : Maintenir les gestionnaires Gin concentrés strictement sur l'analyse JSON et les codes HTTP. Déléguer toute la logique à la couche de service pour garder les fichiers petits et économes en tokens.

Structure du Projet

project/
├── cmd/                 # Points d'entrée de l'application
│   └── server/
│       └── main.go
├── internal/            # Code d'application privé
│   ├── config/          # Chargement de l'environnement (viper/godotenv)
│   ├── handlers/        # Gestionnaires/contrôleurs HTTP Gin
│   ├── models/          # Structures de domaine et interfaces
│   ├── repository/      # Couche d'accès à la base de données
│   └── service/         # Logique métier
├── pkg/                 # Bibliothèques utilitaires publiques (optionnel)
├── go.mod
└── go.sum

Conventions de Nommage

  • Fichiers/Répertoires : snake_case ou minuscules (ex. user_repository.go)
  • Structures/Interfaces : PascalCase pour les exportés, camelCase pour les non exportés.
  • Fonctions : PascalCase (ex. CreateUser).
  • Interfaces : Se terminent généralement par -er (ex. UserReader, DataWriter).

Patrons Architecturaux

  • Architecture Propre : Handler -> Service -> Repository. Les handlers analysent le JSON et retournent les codes HTTP. Les services contiennent la logique métier. Les repositories gèrent le SQL.
  • Injection de Dépendances : Passer les interfaces dans les constructeurs. ex. func NewUserService(repo models.UserRepository) *UserService.
  • Gestion des Erreurs : Ne jamais utiliser panic. Toujours retourner error comme dernière valeur de retour. Envelopper les erreurs avec du contexte (fmt.Errorf("échec de la récupération de l'utilisateur : %w", err)).
  • Goroutines : Utiliser avec prudence pour les tâches d'arrière-plan ; toujours passer context.Context dans la chaîne d'appels pour gérer les timeouts et les annulations.

Stratégies de Test

  • Framework : Package testing standard + testify pour les assertions/mocks.
  • Mocking : Générer des mocks à partir des interfaces en utilisant mockery ou gomock pour les couches Repository et Service.
  • Tests pilotés par tableaux : Utiliser des slices de structures pour tester plusieurs entrées/sorties dans une seule fonction de test.

Skills associés