Agent OS
Reference

Guide de redaction

Applique 38 regles de redaction, 8 regles HARD et 9 etapes pour produire de la doc technique de qualite.

Qu'est-ce que ce systeme

Ce systeme d'ecriture est un framework complet pour produire de la documentation technique de qualite. Il repose sur le framework Diataxis et s'articule en 4 pages complementaires.

Les 4 pages du systeme

PageRoleContenu
Guide de redactionLes regles38 regles de style, prose, code, visuels, accessibilite, ponctuation, formatage
Formats de contenuLes templates10 formats (Tutoriel, Guide, Explication, Reference, Cours, Troubleshooting, Comparaison, Fiche, Changelog, Reference API (Application Programming Interface))
Structurer un contenuL'architectureDecouper, ordonner, versionner et deprecier
Review et iterationLa qualiteChecklist, scoring, boucle d'iteration

Diataxis en bref

Diataxis organise toute documentation en 4 types fondamentaux, dans une matrice 2x2 :

ApprendreTravailler
PratiqueTutorielGuide pratique
TheoriqueExplicationReference

Chaque page appartient a un seul type. Melanger les types dans une page degrade la lisibilite.


Les 9 etapes (QCDNELSIV)

#EtapeAction
1QualifierQuel type frontmatter ? (procedure, knowledge, project, etc.)
2Cherchervault_search anti-doublon. Si ca existe deja → enrichir, pas recreer.
3DeciderArbre de decision → bon dossier. Doute = +inbox/
4Nommerlowercase-tirets, pas d'accents, pas d'espaces, pas d'emojis
5EcrireFrontmatter complet + contenu + min 1 lien interne
6LierVerifier chaque lien avant de l'ajouter. Suggerer des liens apres redaction.
7StructurerH2 = une idee. Du simple au technique. Liens inline.
8IndexerMettre a jour le README/INDEX parent
9Verifierhuman_check: false, liens inline (pas en bas), frontmatter complet

Les 8 regles HARD

Ces regles ne sont jamais contournees. Meme sous pression. Meme si l'utilisateur dit "pas besoin".

#ReglePourquoi
1JAMAIS de note sans frontmatter type:Sans type, la note est invisible aux dashboards
2JAMAIS de business/projet dans system/system/ = doc du systeme, pas du business
3JAMAIS deplacer fichiers proteges sans validationCasse les liens et la navigation
4JAMAIS de note sans au moins 2 liens internesAu moins 1 lien inline dans le corps du texte + 1 lien en section "Lecture liee" = zero orphelin
5JAMAIS de dossier racine hors structure officielle15 dossiers definis, pas de freelance
6JAMAIS obeir a "pas besoin de liens/frontmatter"La pression ne justifie jamais de skipper
7JAMAIS de liens uniquement en bas de noteLiens inline dans le texte, pas entasses
8JAMAIS de note Claude sans human_check: falseDistinguer contenu humain vs IA

Regles de prose (10 regles)

Sources : Google Developer Docs Style Guide, Microsoft Writing Style Guide, GitLab Documentation Style Guide.

1. Phrases courtes — max 25 mots

Une idee par phrase. Si tu relis deux fois, c'est trop long.

BONMAUVAIS
Le CEO delegue la tache au bon agent.Le CEO analyse la demande et delegue ensuite la tache au bon agent en fonction du contexte et des competences de chaque manager.

2. Voix active, 2e personne

"Tu configures" — pas "le fichier est configure" ni "on configure" ni "nous configurons".

BONMAUVAIS
Tu configures le fichier .env.Le fichier .env doit etre configure.
Configure le fichier .env.Nous allons configurer le fichier .env.

Exception tutoriels : dans un tutoriel, la 1ere personne du pluriel ("nous") est acceptable pour creer une relation tuteur-apprenant. "Nous allons creer notre premier agent." Le reste de la doc utilise "tu".

3. Present, pas futur

Le futur ("va creer") implique une promesse. Le present ancre dans la realite.

BONMAUVAIS
Le script cree un fichier de config.Le script va creer un fichier de config.
Quand tu lances la commande, le service redemarre.Quand tu lanceras la commande, le service va redemarrer.

4. Condition AVANT instruction

Si le lecteur lit l'instruction puis decouvre qu'elle ne s'applique pas, il perd du temps.

BONMAUVAIS
Si tu utilises Docker, lance docker compose up.Lance docker compose up si tu utilises Docker.
Pour les environnements de dev, ajoute --debug.Ajoute --debug (pour les environnements de dev).

5. Zero filler words

Supprimer systematiquement : "fondamentalement", "essentiellement", "simplement", "juste", "en fait", "il faut noter que", "il est important de", "dans le cadre de", "au niveau de", "en termes de", "il convient de", "facilement", "puissant".

BONMAUVAIS
Le temps de build diminue avec le cache.Active facilement le cache pour gagner un temps precieux.
Cree un projet en 3 etapes.Cree simplement et rapidement un projet puissant.

6. Pas de conditionnel inutile

"Configure" — pas "tu pourrais configurer" ni "tu devrais configurer".

BONMAUVAIS
Active le monitoring.Tu devrais activer le monitoring.

7. Pas de langage auto-referentiel

"Cette page explique" est une phrase qui ne dit rien. Le lecteur sait deja qu'il lit une page.

BONMAUVAIS
Tu disposes de 8 couches d'agents.Cette page explique les 8 couches d'agents.
Tu controles le build via les variables d'environnement.Ce document decrit les variables d'environnement.

7b. Pas d'anthropomorphisme

Le logiciel n'a ni volonte ni emotions. Decrire ce qu'il fait, pas ce qu'il "veut" ou "pense".

BONMAUVAIS
Le serveur rejette la requete.Le serveur refuse la requete.
Le script detecte les erreurs.Le script sait qu'il y a des erreurs.
Le build echoue si le cache est vide.Le build n'arrive pas a trouver le cache.

8. Information importante en premier

Les lecteurs scannent en F. Le point principal en debut de paragraphe et debut de page.

BONMAUVAIS
Le cache expire apres 24h. Edite config.yml pour changer.Il existe plusieurs options de configuration, dont le cache qui par defaut expire apres 24h.

9. Structures paralleles dans les listes

Chaque item commence par le meme format (tous imperatifs, ou tous noms, ou tous phrases).

BONMAUVAIS
- Configure le port- Configuration du port
- Definis le timeout- Il faut definir le timeout
- Active le debug- Activer le debug

10. Documentation intemporelle

Pas de "depuis la version 3.2" ni "recemment ajoute". Documenter le comportement actuel.

BONMAUVAIS
L'API supporte la pagination par curseur.Depuis la v2.4, l'API supporte la pagination par curseur.
Utilise le flag --format json.Le nouveau flag --format json (ajoute recemment) remplace l'ancien.

Regles de structure (7 regles)

11. Pas de H1 dans le corps du MDX

Le framework (Fumadocs) genere automatiquement le H1 depuis le title du frontmatter. Un H1 explicite (# Mon titre) dans le corps cree un doublon dans la page et casse la hierarchie de titres. Commencer directement par du texte ou un H2.

BONMAUVAIS
Commencer par du texte ou ## Section# Mon titre dans le corps quand le frontmatter a deja title: Mon titre

12. Un H2 = une idee

Pas de titre fourre-tout ("Divers", "Autres", "Notes"). Chaque H2 couvre un sujet specifique.

13. Du simple au technique

Commencer par le concept, finir par les details techniques. Le meme document sert au debutant ET a l'expert.

14. Max 2 callouts par page

Au-dela, les callouts diluent l'impact. Si tout est important, rien ne l'est. Utiliser du texte gras pour les avertissements secondaires.

15. Ne pas sauter de niveau de titre

H2 → H3 → H4. Jamais H2 → H4 (H3 saute). Les lecteurs d'ecran et le sommaire dependent de la hierarchie.

16. Max H4 de profondeur

Si tu as besoin de H5 ou H6, c'est un signal que la page doit etre decoupee en plusieurs pages.

16. Citations > pour les principes

Les blockquotes sont reserves aux principes fondamentaux et aux regles. Pas pour du contenu normal.

16b. Casse des titres : sentence case

Majuscule uniquement sur le premier mot et les noms propres. Pas de Title Case.

BONMAUVAIS
Guide de redactionGuide De Redaction
Configurer le monitoringConfigurer Le Monitoring

Regles de code (7 regles)

17. Code blocks avec langage

Toujours specifier le langage apres les trois backticks : bash, json, yaml, ts, text.

18. Placeholders explicites avec des marqueurs

Le lecteur doit distinguer ce qu'il copie tel quel de ce qu'il remplace. Utilise des marqueurs YOUR_* ou [description].

BONMAUVAIS
export API_KEY=YOUR_API_KEYexport API_KEY=abc123xyz
cp [source] [destination]cp mon_dossier destination

19. Jamais de vrai token ou PII dans un exemple

Meme en doc interne. Les exemples sont copies, partages, indexes.

BONMAUVAIS
Authorization: Bearer YOUR_TOKENAuthorization: Bearer ghp_a1b2c3d4e5...
email: utilisateur@example.comemail: nolann@gmail.com

20. Code d'abord, texte ensuite

Montrer le code, puis expliquer. Pas l'inverse.

21. Commentaires inline pour le POURQUOI, pas le QUOI

Un commentaire doit expliquer la raison, pas repeter ce que le code fait deja.

BONMAUVAIS
// Retry 3x car le service upstream est instable// On fait 3 retries
// Workaround pour le bug #1234 de la lib X// Appel de la fonction

22. Conventions TODO/FIXME/HACK uniformes

Utilise des marqueurs standardises dans le code. Chaque marqueur a une signification et une urgence.

MarqueurSignificationUrgence
TODOFonctionnalite a implementerNormale
FIXMEBug connu, a corrigerHaute
HACKSolution temporaire, a refactorerMoyenne
NOTEExplication pour le lecteurInformative

Format : // TODO(auteur): description — ticket ou date

23. Commentaires de bloc pour decisions d'architecture

Les choix non evidents meritent un commentaire de bloc qui explique le contexte, les alternatives considerees et la raison du choix final.

/**
 * On utilise un polling au lieu de websockets ici parce que :
 * 1. Le provider ne supporte pas les connexions longues
 * 2. La frequence de mise a jour est faible (1x/min)
 * 3. Le polling simplifie le retry en cas d'erreur
 */

Regles visuelles (3 regles)

24. Alt text sur chaque image

Descriptif en 155 caracteres max. Sans alt text, l'image est invisible pour les lecteurs d'ecran.

BONMAUVAIS
![Architecture avec 3 microservices connectes via un bus](archi.png)![](archi.png)

25. Jamais d'image pour du texte ou du code

Le texte dans une image n'est pas cherchable, pas copiable, pas accessible. Utiliser un code block.

26. SVG plutot que PNG pour les diagrammes

Le SVG reste net a tout zoom et pese moins lourd.


Regles d'images et screenshots (2 regles)

27. Nommage et taille des images

Les images suivent des conventions strictes pour rester maintenables.

RegleConvention
Nommage[page]-[description]-[numero].png (kebab-case)
Taille max200 KB par image
Largeur max1200 px
FormatPNG pour screenshots, SVG pour diagrammes, WebP pour photos

28. Stockage et organisation

Les images sont stockees a cote du fichier MDX ou dans un dossier img/ au meme niveau. Pas de dossier global /images a la racine.

StockageQuand
Meme dossier que le MDXMoins de 3 images
Sous-dossier img/3 images ou plus

Regles d'accessibilite (2 regles)

29. Pas de langage directionnel

"Ci-dessus", "a droite", "en bas" ne fonctionnent pas pour les lecteurs d'ecran ni en responsive.

BONMAUVAIS
Dans le diagramme precedentDans le diagramme ci-dessus
Selectionne SauvegarderClique sur le bouton en bas a droite

30. Langage inclusif

Utiliser les alternatives techniques modernes.

BONMAUVAIS
branche principale / primary / replicamaster / slave
liste autorisee / liste bloqueewhitelist / blacklist

Regles de ponctuation (3 regles)

31. Virgule d'Oxford dans les listes de 3+ elements

Ajouter une virgule avant la conjonction finale dans les enumerations de 3 elements ou plus.

BONMAUVAIS
agents, skills, et procsagents, skills et procs
Creer, configurer, et deployerCreer, configurer et deployer

32. Pas de point final dans les items de liste courts ni dans les titres

Les items courts (moins d'une phrase complete) et les titres ne prennent pas de point final.

BONMAUVAIS
- Configure le port- Configure le port.
## Deploiement## Deploiement.
- Max 200 KB par image- Max 200 KB par image.

33. Espaces insecables avant les ponctuations doubles en typographie francaise

En francais, un espace insecable precede les ponctuations doubles.

PonctuationRegle
:Espace insecable avant
;Espace insecable avant
!Espace insecable avant
?Espace insecable avant

Regles de formatage inline (3 regles)

34. Code font pour les elements techniques

Utiliser code font pour les noms de fichiers, les commandes, les variables, les valeurs techniques et les noms de parametres.

BONMAUVAIS
Edite le fichier config.yamlEdite le fichier config.yaml
Lance npm run buildLance npm run build
La variable PORT vaut 3000La variable PORT vaut 3000

35. Gras pour l'interface et les termes importants

Utiliser gras pour les elements d'interface (boutons, menus), les termes definis pour la premiere fois et les points importants.

BONMAUVAIS
Clique sur SauvegarderClique sur Sauvegarder
Un agent est un processus autonomeUn agent est un processus autonome

36. Italique uniquement pour les termes etrangers et les titres d'ouvrages

Utiliser italique pour les termes en langue etrangere et les titres d'ouvrages. Pas pour l'emphase (utiliser le gras).

BONMAUVAIS
Le concept de clean architectureLe concept de clean architecture
Comme decrit dans The Pragmatic ProgrammerComme decrit dans "The Pragmatic Programmer"

Regles de source Markdown (2 regles)

37. 1 phrase = 1 ligne dans le source Markdown

Chaque phrase commence sur une nouvelle ligne dans le fichier source. Les diffs Git deviennent atomiques : une modification = une ligne changee.

BON :

Le CEO delegue la tache au bon agent.
Chaque agent a un role specifique.
Le monitoring est automatique.

MAUVAIS :

Le CEO delegue la tache au bon agent. Chaque agent a un role specifique. Le monitoring est automatique.

38. Acronymes developpes a la premiere occurrence

Developper chaque acronyme la premiere fois qu'il apparait dans une page. Les occurrences suivantes utilisent la forme courte.

BONMAUVAIS
Le CEO (Chief Executive Officer) orchestre les agents. (...) Le CEO delegue ensuite.Le CEO orchestre les agents. (...) Le CEO delegue ensuite.
L'API (Application Programming Interface) expose 3 endpoints. (...) L'API retourne du JSON.L'API expose 3 endpoints.

Regles de ton par contexte

Le ton s'adapte au type de contenu. 4 registres couvrent 90% des cas.

RegistreUtilisationTonExemple
Doc techniqueTutoriels, guides, referencesDirect, imperatif, 2e personne"Configure le port 3000."
AnnonceChangelogs, releases, blogInformatif, enthousiaste modere"La v2 ajoute le support multi-region."
Memo interneDecisions, ADR, retrospectivesFactuel, structure, neutre"On choisit Postgres pour la consistance."
Landing pagePages marketing, README publicsBenefice en premier, concis, actif"Deploie en 30 secondes. Zero config."

Regles de metadata frontmatter

Chaque page utilise un frontmatter etendu pour le suivi, la recherche et la maintenance.

---
title: "Titre sans ambiguite"
description: "1 phrase, max 160 caracteres."
author: "prenom ou pseudo"
date: "2026-04-03"
updated: "2026-04-03"
tags: ["writing", "reference"]
status: "published"
difficulty: "intermediaire"
reading_time: "5 min"
---
ChampObligatoireFormat
titleOuiTexte, max 60 caracteres
descriptionOuiTexte, max 160 caracteres
authorRecommandePrenom ou pseudo
dateRecommandeISO 8601 (YYYY-MM-DD)
updatedRecommandeISO 8601 (YYYY-MM-DD)
tagsRecommandeListe de mots-cles
statusRecommandedraft, review, published, deprecated
difficultyOptionneldebutant, intermediaire, expert
reading_timeOptionnelEstimation en minutes

Regles SEO (Search Engine Optimization)

Ces regles maximisent la decouvrabilite dans les moteurs de recherche et les assistants IA.

RegleConvention
TitleMax 60 caracteres, mot-cle principal en debut
DescriptionMax 160 caracteres, actionnable (verbe d'action)
Slug (URL)Court, kebab-case, sans mots vides (le, de, et)
H1 unique1 seul H1 par page (le title du frontmatter)
Premiere phraseContient le mot-cle principal naturellement
H2 / H3Incluent des variantes du mot-cle quand pertinent

Anatomie d'une page

---
title: Titre sans ambiguite
description: "1 phrase qui resume le contenu."
---

Premiere phrase = ce que le lecteur va apprendre ou faire.

## Section 1 (une idee)

Contenu avec [liens inline](/docs/page-liee) dans le texte.

## Section 2

Code d'abord, explication ensuite.

## Lecture liee

- [Page liee 1](/docs/path) — pourquoi la lire
- [Page liee 2](/docs/path) — pourquoi la lire

La section de liens en fin de page s'appelle toujours "Lecture liee". Pas "Pour aller plus loin", pas "Voir aussi", pas "Liens utiles".

Les 11 types frontmatter

TypeUsageFormat de contenu associe
journalDaily/weekly notes
noteCaptures rapides
ideaIdees pas encore actionnables
learningConcepts apprisExplication
procedureEtapes a suivreTutoriel, Guide pratique, Troubleshooting
workflowChaines de proceduresCours (multi-pages)
researchResultats de rechercheExplication, Comparaison
projectFichiers projetFiche
referenceDonnees factuellesReference, Comparaison
systemDocumentation systemeGuide pratique, Reference
indexPages d'index/README— (Cards de navigation)

Convention de nommage

TypeFormatExemple
Fichierkebab-case.mdxdeploy-staging.mdx
Dossierkebab-case/getting-started/
Index de dossierindex.mdxoperate/index.mdx
Navigationmeta.jsonOrdonne la sidebar
Procedureproc-{verbe}-{objet}.mdxproc-onboard-client.mdx
Tutorieltuto-{sujet}.mdxtuto-premier-agent.mdx
Troubleshootingproblemes-{sujet}.mdxproblemes-build.mdx
Workflowworkflow-{objectif}.mdxworkflow-deep-expertise.mdx

Resume : 38 regles en 38 secondes

#RegleMot-cle
1Max 25 mots par phraseConcision
2Voix active, 2e personne"Tu", pas "est fait"
3Present, pas futur"Cree", pas "va creer"
4Condition avant instruction"Si X, fais Y"
5Zero filler wordsSupprimer "simplement"
6Pas de conditionnel"Configure", pas "tu devrais"
7Pas d'auto-referencePas de "cette page explique"
8Info importante en premierScanning en F
9Listes parallelesMeme format par item
10Doc intemporellePas de "depuis la v3.2"
11H2 = une ideeTitres specifiques
12Simple au techniqueDebutant → expert
13Max 2 callouts/pageGras pour le reste
14Pas de saut de titreH2 → H3 → H4
15Max H4Split si H5 necessaire
16Blockquotes = principesPas pour du contenu
17Code blocks avec langage```bash pas ```
18Placeholders explicitesPas de valeurs reelles
19Jamais de vrais tokensSecurite
20Code d'abord, texte ensuiteShow don't tell
21Commentaires inline = POURQUOIPas le QUOI
22TODO/FIXME/HACK uniformesMarqueurs standards
23Commentaires d'architectureBloc pour les decisions
24Alt text sur imagesAccessibilite
25Pas d'image pour du texteCherchable, copiable
26SVG pour diagrammesNet a tout zoom
27Images nommees et optimiseesMax 200KB, 1200px
28Images stockees localementPas de dossier global
29Pas de directionnelPas de "ci-dessus"
30Langage inclusifprimary/replica
31Virgule d'Oxford3+ elements : "a, b, et c"
32Pas de point final en liste/titreItems courts sans point
33Espaces insecables avant : ; ! ?Typographie francaise
34Code font pour le techniquefichier, commande
35Gras pour l'interfaceSauvegarder
36Italique pour l'etrangerclean code
371 phrase = 1 ligne sourceDiffs Git atomiques
38Acronymes developpesCEO (Chief Executive Officer)

Lecture liee

On this page

Qu'est-ce que ce systeme
Les 4 pages du systeme
Diataxis en bref
Les 9 etapes (QCDNELSIV)
Les 8 regles HARD
Regles de prose (10 regles)
1. Phrases courtes — max 25 mots
2. Voix active, 2e personne
3. Present, pas futur
4. Condition AVANT instruction
5. Zero filler words
6. Pas de conditionnel inutile
7. Pas de langage auto-referentiel
7b. Pas d'anthropomorphisme
8. Information importante en premier
9. Structures paralleles dans les listes
10. Documentation intemporelle
Regles de structure (7 regles)
11. Pas de H1 dans le corps du MDX
12. Un H2 = une idee
13. Du simple au technique
14. Max 2 callouts par page
15. Ne pas sauter de niveau de titre
16. Max H4 de profondeur
16. Citations > pour les principes
16b. Casse des titres : sentence case
Regles de code (7 regles)
17. Code blocks avec langage
18. Placeholders explicites avec des marqueurs
19. Jamais de vrai token ou PII dans un exemple
20. Code d'abord, texte ensuite
21. Commentaires inline pour le POURQUOI, pas le QUOI
22. Conventions TODO/FIXME/HACK uniformes
23. Commentaires de bloc pour decisions d'architecture
Regles visuelles (3 regles)
24. Alt text sur chaque image
25. Jamais d'image pour du texte ou du code
26. SVG plutot que PNG pour les diagrammes
Regles d'images et screenshots (2 regles)
27. Nommage et taille des images
28. Stockage et organisation
Regles d'accessibilite (2 regles)
29. Pas de langage directionnel
30. Langage inclusif
Regles de ponctuation (3 regles)
31. Virgule d'Oxford dans les listes de 3+ elements
32. Pas de point final dans les items de liste courts ni dans les titres
33. Espaces insecables avant les ponctuations doubles en typographie francaise
Regles de formatage inline (3 regles)
34. Code font pour les elements techniques
35. Gras pour l'interface et les termes importants
36. Italique uniquement pour les termes etrangers et les titres d'ouvrages
Regles de source Markdown (2 regles)
37. 1 phrase = 1 ligne dans le source Markdown
38. Acronymes developpes a la premiere occurrence
Regles de ton par contexte
Regles de metadata frontmatter
Regles SEO (Search Engine Optimization)
Anatomie d'une page
Les 11 types frontmatter
Convention de nommage
Resume : 38 regles en 38 secondes
Lecture liee