LE DÉVELOPPEMENT AGENTIQUE DANS SAP

Vos agents.
Votre SAP.
Vos règles.

Donnez à vos agents IA les moyens d’agir dans votre système SAP. Du code aux opérations, avec les autorisations et la traçabilité que vos équipes attendent.

  • 01 Dans SAP
  • 02 Autorisations natives
  • 03 Journal d’audit
  • 04 Votre client MCP
Schéma : votre agent IA, dans votre client MCP avec le plugin Klystron et un dépôt Git local, appelle par MCP sur HTTPS le serveur Klystron installé dans votre système SAP, avec ses modules de lecture et d’écriture ; vos règles s’appliquent côté SAP : rôles PFCG, services natifs, journal SLG1.

01 / LA PLATEFORME

Une plateforme.
Trois piliers.

Klystron connecte votre client MCP au serveur d’application SAP. Des outils natifs pour agir, des skills pour guider l’agent, un savoir partagé pour progresser. Chaque pilier est détaillé plus bas.

01PILIER

Des outils natifs SAP.

Le serveur MCP est écrit en ABAP et tourne dans votre système. Développement ABAP, qualité, transports, customizing, sécurité, exploitation Basis et intégration, exposés comme des outils typés. Chaque objet est aussi un fichier au format SAP, prêt pour Git.

Le serveur dans SAP
02PILIER

Un agent guidé par des skills SAP.

Un plugin pour votre client MCP. Un coordinateur associe à chaque tâche un processus et un domaine SAP. Le diagnostic, l’intégration et la Basis restent en lecture seule ; l’écriture passe par le protocole transports.

BIENTÔTSkills avancés et équipes d’agents.

Le plugin agentique
03PILIERBIENTÔT

Un savoir partagé.

Le Central Hub transformera les constats de terrain en documentation vérifiée et signée, redistribuée aux systèmes participants. Vous choisirez votre périmètre de contribution.

Le Central Hub

02 / LES USAGES

Le vrai travail.
Dans le vrai système.

Lire le contexte. Proposer un changement. Le vérifier. Quatre scénarios ; le premier est tiré d’une session réelle.

SESSION RÉELLE · CODEX + PLUGIN KLYSTRON · SERVEUR V2SESSION DU 19 OCT. 2026
BRIEF COMPLET
68 min
session de 6 h 40, pauses comprises
VOS MESSAGES
11
APPELS SAP
≈ 460
OBJETS LIVRÉS
38 · package ZBC_PRT
VOUS

« Lis BRIEF.md et construis-le. »

AGENT CODEX

Crée l’ordre de transport et le package ZBC_PRT. Choix de conception : des messages IPP binaires sur le client HTTP de SAP, avec un contrôle séparé des erreurs HTTP et IPP. Toute modification du standard sera soumise à votre accord.

abap_create_transportabap_write_package
AGENT CODEX

Les 8 tests unitaires de l’encodeur sont au vert : ordre des octets, UTF-8, valeurs répétées, messages mal formés. Point d’accroche trouvé dans le spool : le callback MAIL2 de RSPOLPRF reçoit déjà le fichier d’impression.

klystron sync pushabap_run_unit_testsabap_read_file
AGENT CODEX

« Puis-je activer l’enhancement ZBC_PRT_MAIL au début de RSPOLPRF, FORM MAIL2 ? Il ne redirige que les imprimantes créées par ZBC_PRT ; les autres suivent le code SAP existant. »

request_user_input
VOUS

Accord donné, limité à cet enhancement.

AGENT CODEX
INCIDENT REMONTÉ

L’impression ne passe pas par le hook : l’outil d’écriture d’enhancement a enregistré un mode d’exécution invalide (« I », alors que SAP ne connaît que S et D). L’agent corrige par l’API d’enhancement de SAP et déclare lui-même le défaut du plugin.

abap_read_enhancement_codemcp_report_incident
AGENT CODEX

Après un dernier correctif (COMMIT WORK est interdit dans ce callback), l’impression automatique passe : le spool SAP arrive sur la file de test CUPS, le travail se termine et SAP affiche le statut « terminé ».

abap_read_dumpabap_classrun
AGENT CODEX

Une impression vers une file inexistante apparaît en erreur dans SAP, avec le message de CUPS dans le journal du spool. À 10 h 38, le brief est rempli : synchronisation, impression, échec visible, ATC sans priorité 1 ou 2, un seul transport.

abap_classrunabap_read_spool
VOUS

« PDFUC ne serait-il pas meilleur ? Analyse cet écart fonctionnel et propose quelque chose. »

AGENT CODEX

PDFUC est la bonne base pour l’Unicode, mais ne transmet ni la couleur ni le recto-verso. Proposition : synchroniser les capacités de chaque imprimante et traduire les choix de chaque impression en attributs IPP.

web searchabap_classrun
AGENT CODEX

En relisant le document réellement reçu par CUPS, l’agent voit que le cyrillique et le chinois sont remplacés par « # », alors que l’aperçu SAP était correct. Correction par la conversion PDF standard de SAP, appel par appel, sans paramètre système.

abap_classrunabap_read_spool
AGENT CODEX

18 tests unitaires verts, ATC sans priorité 1 ou 2 sur 30 objets, tout dans un seul transport. À votre demande, une page couleur recto-verso est imprimée sur une imprimante HP réelle.

abap_run_unit_testsabap_run_atc
  1. Brief
  2. Protocole IPP
  3. Synchronisation
  4. Impression
  5. Qualité
  6. Capacités
Le code sur GitHub · bientôt Session menée en anglais : citations traduites et résumées. Adresses, hôtes et identifiants retirés. Ces sessions servent aussi de banc d’essai : en usage réel, les agents remontent eux-mêmes les défauts rencontrés dans le plugin.

03 / COMMENT ÇA MARCHE

Le point d’entrée est
dans votre système.

Trois mécanismes, dans l’ordre des piliers : le serveur qui expose les outils, les agents qui les utilisent, le hub qui capitalise ce qu’ils apprennent.

VUE D’ENSEMBLE

Une architecture type.

Un exemple : un agent, deux paysages SAP. Le développement en lecture et écriture, la qualification et la production en lecture seule.

Architecture type de Klystron : un seul agent IA, avec un dépôt Git local au format AFF, se connecte par MCP à deux paysages SAP. Dans chaque paysage, le système de développement porte les modules de lecture et d’écriture du serveur Klystron ; la qualification et la production portent seulement le module de lecture. Les transports relient DEV, QA et PROD. Le Central Hub, optionnel et bientôt disponible, partage un savoir vérifié.
Exemple de configuration : le nombre de paysages et de systèmes est libre, et vous choisissez les systèmes qui reçoivent le module d’écriture. Cliquez pour agrandir. Schéma dessiné avec le kit de diagrammes SAP BTP.
3.1 / PILIER 01

Le serveur dans SAP.

Un service ICF expose les outils. Exécution, contrôles et journal restent côté SAP.

VOTRE ENVIRONNEMENT IA POSTE DE TRAVAIL OU CI
VOTRE AGENT Client MCP + plugin Klystron L’agent et les skills SAP. Il lit et écrit les fichiers du dépôt.
VOTRE DÉPÔT GIT
zsd_pricing/un dossier = un package
zcl_discount.clas.jsonen-tête · format SAP
zcl_discount.clas.abapsource
zcl_discount.clas.testclasses.abaptests
zsd_price.tabl.jsontable · format SAP
zi_sd_price.ddls.acdsvue CDS
zi_sd_price.bdef.abdlcomportement RAP
zsd_price_var.vari.jsonformat Klystron
Vos objets SAP, en fichiers, chez vous. Versionnez, relisez, ouvrez des merge requests, avec les outils Git natifs.
MCP / HTTPS
Appels d’outils typés
DÉSÉRIALISERÉcrire un fichier : vérifié, écrit si l’empreinte correspond, relu, activé.
SÉRIALISERLire un package : ses objets deviennent des fichiers, une empreinte par fichier.
Résultats, refus motivés, journal
VOTRE SYSTÈME SAPABAP APPLICATION SERVER
klystron.Le serveur MCP, en ABAP, derrière un service ICF.
Outils typés
Actions bornées
LE RÉFÉRENTIELObjets clients Z / Y
Classes, interfaces, programmesTables, domaines, élémentsVues CDSRAPFonctionsVariantesRôles PFCGTransports

Chaque objet a un nom de fichier et un format : celui que SAP publie, ABAP File Formats, quand il existe ; un format Klystron dans la même convention sinon, distinguable par sa version (formatVersion 900). La sérialisation est celle de SAP : transformations générées depuis les types ABAP, JSON canonique identique à celui du handler SAP.

AutoriserRôles SAP / PFCG
ExécuterServices natifs SAP
TracerJournal SLG1
LES OUTILS PAR DOMAINE

Tout le système, pas seulement le code.

Chaque domaine est exposé par des outils typés, sous les autorisations SAP de l’utilisateur connecté. En bleu, le skill du plugin qui les met en œuvre ; en pointillé, le skill à venir. Les outils sont disponibles sur le serveur dans les deux cas.

DÉVELOPPEMENT ABAP

Du code au service RAP.

Classes, programmes, fonctions, dictionnaire, CDS, RAP, enhancements et BAdI, textes, packages, transactions, formulaires Adobe. Lecture, écriture, activation.

abap-dev
QUALITÉ ET DIAGNOSTIC

Vérifier, comprendre.

Syntaxe, ATC, ABAP Unit, dumps ST22, versions, objets inactifs, where-used, recherche de code, Notes SAP.

incident-analysis + quality-read
TRANSPORTS

Livrer par le CTS.

Ordres et tâches : création, affectation, contenu, simulation et libération.

transports
CUSTOMIZING

Le paramétrage aussi.

Contenu de tables, vues de customizing, IMG, BC Sets et leur activation, sous ordre de customizing.

skill · bientôt
SÉCURITÉ ET RÔLES

Les autorisations, outillées.

Rôles PFCG et profils, rôles issus d’une trace, valeurs SU24, objets d’autorisation, utilisateurs et porteurs de rôles, audit de sécurité.

skills rôles · bientôt
EXPLOITATION BASIS

Observer, planifier.

Processus de travail, mises à jour, verrous, log système, base de données, sauvegardes, CCMS, files RFC, spool ; jobs et démons ABAP.

basis-observation + basisjobs · bientôt
INTÉGRATION

IDoc et services web.

Types de base, segments et extensions IDoc, statut des IDoc, services web et proxies, WSDL, destinations RFC.

integration-inspection + integration
REMONTÉE D’INCIDENTS

Les défauts remontent seuls.

Échecs d’outils, capacités manquantes, tentatives de contourner une permission : l’agent les déclare au journal d’audit du serveur.

tool-reporting

Des droits explicites.

Un périmètre par domaine et activité. Lire, modifier ou exécuter sont des permissions distinctes, contrôlées côté serveur.

Un contrat lisible.

Des entrées et sorties typées, dans le vocabulaire des fichiers. L’agent sait quoi envoyer, quoi attendre et pourquoi une demande est refusée.

Des écritures sûres.

Contrôle de syntaxe avant toute sauvegarde ; empreinte et écriture conditionnelle contre les écrasements concurrents ; relecture après écriture.

Aucun middleware.

Le modèle IA reste celui de votre client : le choix du fournisseur et les données transmises relèvent de votre politique.

3.2 / PILIER 02

Le plugin agentique.

Un plugin pour votre client MCP : un coordinateur, des skills SAP par processus et par domaine, et les outils du serveur.

LE PLUGIN · CÔTÉ CLIENT MCPLE SERVEUR · DANS SAP
NIVEAU 1 · COORDINATIONLe coordinateurPour chaque tâche, il choisit un skill de processus et un skill de domaine, puis les outils utiles.
klystron-core+ équipes d’agents · bientôt
NIVEAU 2 · PROCÉDURES SAPLes skills SAPLe processus porte la démarche, le domaine le savoir SAP et un catalogue d’outils ciblé. Deux skills transverses s’y ajoutent.
abap-dev + transportsincident-analysis + quality-readintegration-inspection + integrationbasis-observation + basistool-reportingshared-memorycli · optionnel+ skills avancés · bientôt
NIVEAU 3 · SERVEUR KLYSTRON DANS SAPLes outils natifsLe serveur MCP expose les outils typés par domaine ; autorisations, exécution et journal restent côté SAP (voir 3.1).
Développement ABAPQualité et diagnosticTransportsCustomizingSécurité et rôlesExploitation BasisIntégration

Pourquoi cette pile. Charger tous les outils SAP dans le contexte d’un agent gaspille le contexte et ne dit rien des règles d’ordre ni des risques. Les skills apportent la procédure et un catalogue d’outils restreint ; le coordinateur ne charge que la paire utile à la tâche ; les contrôles SAP encadrent l’exécution.

LES GARDE-FOUS DU PLUGIN

Écrire, lire, livrer, signaler.

Des règles appliquées par le plugin, en plus des autorisations SAP de l’utilisateur connecté.

  1. 01 / ÉCRIRE

    Skill transports

    Sous protocole transports.

    Toute action qui écrit, crée, supprime ou libère dans SAP est bloquée tant que le protocole transports n’est pas chargé, outil MCP comme ligne de commande.

    SEUL PROCESSUS QUI ÉCRITLe développement ABAP ; une écriture passe par le fichier entier.
  2. 02 / LIRE

    Diagnostic · intégration · Basis

    Lecture seule par construction.

    Chaque lecture passe par son skill de processus. Le diagnostic des dumps, l’inspection des interfaces et l’observation Basis ne modifient rien.

    RÉSULTATUn constat documenté, à décider avec vos équipes.
  3. 03 / LIVRER

    Skill transports

    Libérer en connaissance de cause.

    Simulation avant libération ; ATC et tests unitaires avant de libérer du code ; suppression seulement avec l’ordre qui détient l’objet, après confirmation.

    CÔTÉ SERVEURLes outils d’écriture refusent les objets hors espace client (Z, Y).
  4. 04 / SIGNALER

    Skill tool-reporting

    Les défauts remontent seuls.

    L’agent déclare lui-même les échecs d’outils, les capacités manquantes et toute tentative de contourner une permission.

    EN SESSION RÉELLEVoir le premier usage : l’agent signale un défaut du plugin et le contourne proprement.

Ce que les garde-fous ne font pas. Ils bloquent ou se taisent, ils n’accordent jamais de droit. La limite réelle reste les autorisations SAP de l’utilisateur connecté et les permissions de votre client MCP ; selon le client, ces règles sont appliquées par des hooks ou portées par les instructions des skills.

3.3 / PILIER 03 BIENTÔT

Le Central Hub.

Une boucle : ce qu’un client apprend revient à tous les autres.

Boucle de connaissance : les agents de plusieurs clients écrivent leur documentation et la partagent avec le Central Hub, qui synthétise la connaissance et la redistribue à tous les clients.
  1. 01 / CHEZ CHAQUE CLIENTLes agents documentent.

    Constats, incidents, particularités de release : chaque mission laisse une documentation.

  2. 02 / VERS LE HUBIls la partagent.

    Contributions signées et chiffrées, dans le périmètre que vous avez choisi.

  3. 03 / AU HUBLe hub synthétise.

    Tri, reproduction sur systèmes de référence, revue humaine, publication signée.

  4. 04 / VERS TOUS LES CLIENTS ↻Le savoir revient.

    Documentation métier, limites connues et solutions vérifiées, pour les équipes et leurs agents. Puis la boucle repart.

Le Central Hub est en préparation. Les outils natifs et le plugin fonctionnent sans lui ; le partage s’activera selon vos besoins.

04 / POURQUOI MAINTENANT

L’IA avance.
Votre patrimoine aussi.

Les équipes doivent moderniser le code, préparer la transition et continuer à opérer. Notre parti pris : donner aux agents un accès concret au système, avec un cadre que les équipes SAP peuvent examiner.

LA TRANSITION EST DÉJÀ LÀ
2027→ 2030

Un calendrier.
Des années de code.

Fin de maintenance standard des applications cœur Business Suite 7 à fin 2027 ; maintenance étendue optionnelle jusqu’à fin 2030.

Stratégie de maintenance SAP
UN ÉCOSYSTÈME QUI S’OUTILLE

Le protocole ouvre la porte.
Le produit fait le travail.

MCP relie vos agents à SAP. Klystron leur donne les outils, la méthode et le savoir pour agir.

L’évolution agentique selon SAP

05 / LES BONNES QUESTIONS

Parlons concret.

Données, droits, hébergement et place dans votre outillage.

Faut-il installer un serveur intermédiaire ?

Non. Le serveur MCP est écrit en ABAP et tourne dans le serveur d’application SAP, derrière un service ICF. Vous connectez ensuite votre client MCP. L’agent et son modèle conservent leurs propres besoins d’hébergement et d’accès réseau.

Quelles données sont envoyées au modèle IA ?

Les résultats que votre client MCP transmet au modèle peuvent contenir du code ou des données du système. Le serveur dans SAP ne signifie pas que le modèle est local. Le choix du client, du fournisseur IA, des domaines autorisés et des données accessibles fait partie du cadrage du pilote.

Avec quels droits l’agent agit-il ?

Avec l’identité SAP utilisée par le client, les droits natifs applicables et les autorisations du serveur par domaine et activité. Un compte technique éventuel doit être autorisé explicitement. Le périmètre du pilote se vérifie avec le compte qui sera réellement utilisé.

Le hub est-il nécessaire pour utiliser les outils SAP ?

Non. Le Central Hub ouvrira prochainement ; les outils natifs SAP et le plugin s’utilisent sans lui. Une fois ouvert, vous activerez le partage de connaissances selon vos besoins, avec une configuration et un périmètre de contribution explicites.

Le Central Hub pilote-t-il mes agents à distance ?

Non. Le Central Hub, bientôt disponible, partagera des connaissances vérifiées. Les agents travaillent dans leur environnement, avec les contrôles SAP de votre système. Le hub collectera les contributions, organisera leur reproduction et leur revue, puis distribuera une documentation signée. Vos équipes gardent la maîtrise de l’exécution et des données partagées.

Klystron remplace-t-il abapGit ?

Non. abapGit reste un composant utile et important de vos infrastructures. Pour ses agents, Klystron avait besoin d’une méthode plus proche de Git natif : le serveur synchronise les objets avec un dépôt local, directement au format ABAP File Formats (AFF) de SAP dès que l’objet le permet. Agents et équipes profitent ainsi de toute la puissance des outils Git natifs : diff, branches, revue, merge requests. Vos pipelines de livraison restent les vôtres.

Klystron remplace-t-il Joule ?

Klystron n’est pas un assistant. Il donne à l’assistant de votre choix, via MCP, des outils natifs dans votre système, des agents et des skills SAP. Le client, le modèle et les données transmises relèvent de votre politique ; aucun service Klystron ne s’intercale.

Comment intégrer Klystron à mon paysage SAP ?

Le déploiement se cadre selon votre release, vos composants et vos usages, sur ECC ou S/4HANA. Un pilote en développement ou en test permet de valider les scénarios et les droits avec vos équipes. Le passage en production suit vos processus de changement et d’exploitation.

Comment démarrer un pilote ?

Choisissez une release, un domaine et un scénario mesurable : un test ABAP, une analyse de findings ou une proposition de rôle.

06 / COMMENÇONS PAR UN VRAI CAS D’USAGE

Votre système a du potentiel.
Donnez-lui un agent.

Préparer un pilote par e-mail

Ou écrivez directement à contact-klystron@thirion.fr

Un système. Un périmètre. Un premier cas d’usage.