Aller au contenu

Les 25 outils de Sentral

En bref

Sentral expose 25 outils à un agent IA. Ils sont organisés en étages : on demande d'abord est l'information, puis on lit juste ce qu'il faut. Cette page les liste par domaine, avec ce dont chacun a besoin pour répondre — certains suffisent d'un simple clone du dépôt, d'autres exigent la base de données.

Comment lire ce tableau

La colonne « Besoin » dit ce qu'il faut avoir sous la main :

  • fichier : l'outil lit un fichier versionné. Il répond dès le clone du dépôt — pas de base, pas de clé, pas de réseau ;
  • fichier (dépôt voisin) : même chose, mais le fichier vit dans le dépôt de l'agent Sage de l'entreprise, que Sentral lit sans jamais y écrire. Sans ce dépôt à côté, l'outil ne répond pas ;
  • PostgreSQL : l'outil interroge la base de Sentral, donc il faut l'avoir installée et avoir lancé l'ingestion.

La règle des étages

Ne lisez jamais avant d'avoir cherché. Un enchaînement type coûte environ 800 jetons : chercher (search_docs), demander le plan (document_outline), lire une section (read_document). Côté Sage, sage_find_table puis sage_describe_table puis sage_columns filtré : environ 850 jetons pour aller d'un besoin métier aux trois colonnes qui y répondent.

Recherche documentaire

Outil Rôle Besoin
list_projects inventaire des sources indexées : projets, types de documents, volumes, fraîcheur. À appeler une seule fois en début de tâche PostgreSQL
search_docs recherche hybride (plein texte et sémantique) dans toute la documentation interne ; renvoie des extraits cités avec l'identifiant du document. Filtres : projet, type de document, source, étiquette PostgreSQL
find_document retrouve des documents par leur titre, en recherche approximative PostgreSQL
document_outline plan d'un document : ses sections avec leur taille estimée. L'étape à privilégier avant de lire quoi que ce soit PostgreSQL
read_document lit un document, ou seulement une de ses sections. Sans section précisée, la réponse est tronquée au budget PostgreSQL
sentral_stats état du serveur : volumes indexés, recherche sémantique active ou non PostgreSQL

L'étiquette est un filtre multivalué porté par le document (un fonds Sage, un module, un niveau de pertinence) : list_projects liste les étiquettes disponibles par source.

Plan comptable général

Outil Rôle Besoin
find_account trouve un compte par son numéro ou par ce qu'il enregistre (« TVA récupérable sur achats », « emprunt bancaire »). Réponse issue du registre des comptes, pas de la prose qui les illustre PostgreSQL

C'est l'outil à utiliser pour toute question « quel compte pour… ? ». Sa limite connue est documentée sur Sentral : il se trompe sur le vocabulaire courant, parce que le plan comptable nomme des catégories là où l'utilisateur nomme une chose.

Schéma Sage 100

Outil Rôle Besoin
sage_tables liste les tables du catalogue validé (périmètre restreint), avec domaine et rôle fichier (dépôt voisin)
sage_find_table trouve les tables correspondant à un besoin métier (« immobilisations », « écritures », « dépôts ») dans le schéma complet, pas seulement dans le catalogue validé. Réponse déterministe fichier
sage_describe_table fiche d'une table : rôle, colonnes clés, types, énumérations, clés, jointures possibles et règles associées. Hors catalogue validé, renvoie la structure brute, signalée comme telle fichier
sage_columns colonnes d'une table, filtrées par un mot (nom ou signification française) : type, signification, valeurs énumérées, domaine de validité fichier
sage_joins jointures documentées d'une table, éventuellement vers une table cible précise, avec leur cardinalité fichier (dépôt voisin)

Deux étages qu'il ne faut jamais confondre

Le catalogue validé couvre un petit nombre de tables avec leur métier : rôle, règles de filtrage, jointures validées, exemples SQL éprouvés. Le schéma complet couvre les 402 tables, mais seulement leur structure : aucune sémantique métier validée. Un outil qui répond depuis le second le dit dans sa réponse.

Sans filtre, sage_columns ne rend que les premières colonnes : une table Sage peut en porter 145.

Règles métier et contrat d'API

Outil Rôle Besoin
sage_rules règles métier Sage 100 correspondant à une recherche : pièges de filtrage, jointures composites, conventions. Les règles de terrain mesurées sont rendues en premier fichier
sage_sql_examples exemples SQL validés sur base réelle, correspondant à une intention (« chiffre d'affaires annuel », « factures impayées »). Point de départ à adapter, jamais à inventer fichier (dépôt voisin)
sage_metrics métriques canoniques (chiffre d'affaires, marges, encours…) : définition métier, expression de calcul et filtres obligatoires fichier (dépôt voisin)
find_endpoint catalogue des points d'entrée HTTP : le contrat publié de l'API SenSaaS et les routes extraites du code. Les deux origines sont distinguées PostgreSQL

Sur find_endpoint, la distinction est volontaire : le contrat dit ce que l'API promet, le code ce qu'il expose, et un écart entre les deux est une information, pas un bug d'affichage.

Rapports comptables Sage

Outil Rôle Besoin
find_report quel état comptable Sage répond à une question métier : nom exact, chemin de menu, tables, et ce qu'il faut savoir avant de s'en servir. Réponses issues d'états réellement produits et confrontés fichier
read_report une section précise de la fiche d'un état : requête SQL, paramètres, pièges, résultat, colonnes, comportement, divergences, correspondance avec l'API fichier

Colonnage des listes Sage

Outil Rôle Besoin
colonnage_find où Sage enregistre le droit d'affichage d'une colonne de liste (Obligatoire / Disponible / Masquée) : table SQL, colonne du droit, colonne et valeur de l'identifiant, et la requête à écrire. Chercher par libellé tel qu'il apparaît à l'écran fichier
colonnage_liste les colonnes d'une liste et leurs droits, filtrables par libellé et par type de document fichier

L'API et Sage peuvent diverger

La dernière mesure du laboratoire colonnage a relevé 196 créneaux où l'API SenSaaS et le serveur Sage ne disent pas la même chose, uniquement entre « Disponible » et « Masquée ». Comme le nombre de colonnes obligatoires est identique de part et d'autre, aucun contrôle de longueur ne trahit l'écart. La conséquence est écrite dans la réponse des deux outils : l'affichage doit lire l'instance que Sage sert.

Sans filtre, colonnage_liste ne rend que les premières colonnes : une liste peut en porter 133.

Base d'assistance Sage France

Outil Rôle Besoin
sage_kb_find quel(s) article(s) répondent à une question sur Sage 100, la Paie, Génération Experts, les États Comptables et Fiscaux. Filtres : pertinence (développeur / fonctionnel / interface) et fonds fichier
sage_kb_read le contenu d'un article, par identifiant ou par titre ; une seule section si on la précise. Le texte est tronqué à 12 000 caractères, et la réponse le dit quand elle tronque fichier

Ces 6 220 articles sont servis par un registre, pas par la recherche en prose : c'est un choix assumé, parce que la moitié « prose » du serveur n'a pas de banc de mesure. Droits d'usage : voir Les corpus.

Code source

Outil Rôle Besoin
list_repos inventaire des dépôts de code indexés : langages, nombre de symboles et de routes. À appeler avant de chercher du code PostgreSQL
find_symbol trouve une classe, fonction, méthode ou type dans tous les dépôts indexés. Renvoie l'emplacement exact (fichier et ligne) et la signature — sans lire les fichiers. Filtres : dépôt, nature, langage PostgreSQL
read_symbol lit le code source d'un symbole à sa position actuelle dans le dépôt PostgreSQL

Pourquoi des symboles plutôt que des numéros de ligne

Un pointeur « fichier, ligne 86 » périme au premier remaniement du code ; un nom qualifié survit. Ces deux outils résolvent le symbole vers sa ligne courante à chaque appel — c'est ce qui permet à la documentation de citer du code sans pourrir. Revers de la médaille : si l'index n'est pas rafraîchi après un git pull, la citation est juste et le code renvoyé est faux. Voir le cycle de mise à jour.

Questions fréquentes

Quels outils marchent sans installer PostgreSQL ?

Tous ceux marqués « fichier » : le schéma Sage, la base d'assistance Sage, le colonnage, les rapports comptables et les règles. C'est-à-dire la totalité des registres déterministes. Il manquera la recherche documentaire, la recherche de code, le catalogue des points d'entrée et le plan comptable.

Un agent peut-il n'avoir accès qu'à certains outils ?

Pas côté serveur : Sentral sert ses 25 outils à qui l'appelle. Le périmètre d'un agent tient entièrement dans le programme qui le pilote — liste blanche, arguments imposés, lecture bornée aux identifiants déjà vus. Voir Règles pour les agents.

Où sont les descriptions exactes lues par l'agent ?

Dans le code du serveur MCP. Elles sont librement éditables et c'est probablement le meilleur rapport effort / gain du dépôt : une description ambiguë coûte un appel inutile à chaque conversation.

Voir aussi