@hgdc/docs 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/bin/hgdc-docs.mjs +48 -0
  2. package/docs.schema.json +294 -0
  3. package/package.json +51 -4
  4. package/src/build/auto-import.ts +74 -0
  5. package/src/build/markdown.ts +114 -0
  6. package/src/build/outputs.ts +91 -0
  7. package/src/build/public-files.ts +35 -0
  8. package/src/components/Accordion.astro +12 -0
  9. package/src/components/AccordionGroup.astro +4 -0
  10. package/src/components/Card.astro +15 -0
  11. package/src/components/CardGroup.astro +8 -0
  12. package/src/components/Check.astro +10 -0
  13. package/src/components/CodeGroup.astro +4 -0
  14. package/src/components/Columns.astro +8 -0
  15. package/src/components/Danger.astro +10 -0
  16. package/src/components/Frame.astro +11 -0
  17. package/src/components/Info.astro +10 -0
  18. package/src/components/Note.astro +10 -0
  19. package/src/components/Step.astro +11 -0
  20. package/src/components/Steps.astro +4 -0
  21. package/src/components/Tab.astro +9 -0
  22. package/src/components/Tabs.astro +9 -0
  23. package/src/components/Tip.astro +10 -0
  24. package/src/components/Warning.astro +10 -0
  25. package/src/core/answer-markdown.ts +109 -0
  26. package/src/core/assistant-api.ts +65 -0
  27. package/src/core/chunk.ts +134 -0
  28. package/src/core/config.ts +153 -0
  29. package/src/core/corpus.ts +42 -0
  30. package/src/core/json-schema.ts +12 -0
  31. package/src/core/llms.ts +95 -0
  32. package/src/core/navigation.ts +88 -0
  33. package/src/core/theme.ts +111 -0
  34. package/src/integration.ts +229 -0
  35. package/src/locals.d.ts +6 -0
  36. package/src/overrides/Assistant.astro +72 -0
  37. package/src/overrides/Head.astro +12 -0
  38. package/src/overrides/PageFrame.astro +15 -0
  39. package/src/overrides/PageTitle.astro +94 -0
  40. package/src/overrides/Sidebar.astro +60 -0
  41. package/src/overrides/route-data.ts +33 -0
  42. package/src/styles/theme.css +773 -0
  43. package/src/virtual.d.ts +6 -0
  44. package/src/widget/client.ts +252 -0
  45. package/template/.astro/collections/docs.schema.json +651 -0
  46. package/template/.astro/content-assets.mjs +1 -0
  47. package/template/.astro/content-modules.mjs +18 -0
  48. package/template/.astro/content.d.ts +179 -0
  49. package/template/.astro/types.d.ts +2 -0
  50. package/template/.build/.well-known/llms.txt +38 -0
  51. package/template/.build/404.html +42 -0
  52. package/template/.build/_astro/Assistant.astro_astro_type_script_index_0_lang.DWgmlr85.js +4 -0
  53. package/template/.build/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.C3fM4Kra.js +1 -0
  54. package/template/.build/_astro/Search.astro_astro_type_script_index_0_lang.g9hoxVJg.js +1 -0
  55. package/template/.build/_astro/TableOfContents.astro_astro_type_script_index_0_lang.BpJaGz7G.js +1 -0
  56. package/template/.build/_astro/common.8GHCkW7i.css +3 -0
  57. package/template/.build/_astro/ec.0vx5m.js +3 -0
  58. package/template/.build/_astro/ec.8nqtp.css +1 -0
  59. package/template/.build/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2 +0 -0
  60. package/template/.build/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2 +0 -0
  61. package/template/.build/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2 +0 -0
  62. package/template/.build/_astro/geist-latin-wght-normal.BgDaEnEv.woff2 +0 -0
  63. package/template/.build/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2 +0 -0
  64. package/template/.build/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2 +0 -0
  65. package/template/.build/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2 +0 -0
  66. package/template/.build/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2 +0 -0
  67. package/template/.build/_astro/inter-greek-wght-normal.CkhJZR-_.woff2 +0 -0
  68. package/template/.build/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2 +0 -0
  69. package/template/.build/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2 +0 -0
  70. package/template/.build/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2 +0 -0
  71. package/template/.build/_astro/logo-clair.BqNh6JNi.svg +1 -0
  72. package/template/.build/_astro/logo-sombre.BkgsFXxh.svg +1 -0
  73. package/template/.build/_astro/page.cNngjUgL.js +1 -0
  74. package/template/.build/_astro/print.ehPL0gv-.css +1 -0
  75. package/template/.build/_astro/starlight-toc.D4UDIxQL.js +1 -0
  76. package/template/.build/_astro/ui-core.Clh5jUUO.js +2 -0
  77. package/template/.build/_hgdc/corpus.json +1 -0
  78. package/template/.build/demarrer/premiere-doc/index.html +84 -0
  79. package/template/.build/demarrer/premiere-doc.md +65 -0
  80. package/template/.build/explications/donnees/index.html +114 -0
  81. package/template/.build/explications/donnees.md +28 -0
  82. package/template/.build/explications/fonctionnement/index.html +92 -0
  83. package/template/.build/explications/fonctionnement.md +32 -0
  84. package/template/.build/guides/agents/index.html +113 -0
  85. package/template/.build/guides/agents.md +40 -0
  86. package/template/.build/guides/assistant/index.html +117 -0
  87. package/template/.build/guides/assistant.md +42 -0
  88. package/template/.build/guides/composants/index.html +97 -0
  89. package/template/.build/guides/composants.md +103 -0
  90. package/template/.build/guides/ecrire/index.html +115 -0
  91. package/template/.build/guides/ecrire.md +63 -0
  92. package/template/.build/guides/navigation/index.html +89 -0
  93. package/template/.build/guides/navigation.md +63 -0
  94. package/template/.build/guides/publier/index.html +86 -0
  95. package/template/.build/guides/publier.md +65 -0
  96. package/template/.build/guides/theme/index.html +86 -0
  97. package/template/.build/guides/theme.md +33 -0
  98. package/template/.build/images/favicon.svg +1 -0
  99. package/template/.build/images/logo-clair.svg +1 -0
  100. package/template/.build/images/logo-sombre.svg +1 -0
  101. package/template/.build/index.html +87 -0
  102. package/template/.build/index.md +35 -0
  103. package/template/.build/llms-full.txt +830 -0
  104. package/template/.build/llms.txt +38 -0
  105. package/template/.build/pagefind/fragment/fr-ch_148313b.pf_fragment +0 -0
  106. package/template/.build/pagefind/fragment/fr-ch_424fd16.pf_fragment +0 -0
  107. package/template/.build/pagefind/fragment/fr-ch_4f8575c.pf_fragment +0 -0
  108. package/template/.build/pagefind/fragment/fr-ch_5a4d77d.pf_fragment +0 -0
  109. package/template/.build/pagefind/fragment/fr-ch_6c36edc.pf_fragment +0 -0
  110. package/template/.build/pagefind/fragment/fr-ch_73d7887.pf_fragment +0 -0
  111. package/template/.build/pagefind/fragment/fr-ch_8234ed3.pf_fragment +0 -0
  112. package/template/.build/pagefind/fragment/fr-ch_8f8a19e.pf_fragment +0 -0
  113. package/template/.build/pagefind/fragment/fr-ch_9f1b981.pf_fragment +0 -0
  114. package/template/.build/pagefind/fragment/fr-ch_a19039d.pf_fragment +0 -0
  115. package/template/.build/pagefind/fragment/fr-ch_d72cc1e.pf_fragment +0 -0
  116. package/template/.build/pagefind/fragment/fr-ch_d732215.pf_fragment +0 -0
  117. package/template/.build/pagefind/fragment/fr-ch_e2c46e3.pf_fragment +0 -0
  118. package/template/.build/pagefind/fragment/fr-ch_e78d58b.pf_fragment +0 -0
  119. package/template/.build/pagefind/fragment/fr-ch_e92f972.pf_fragment +0 -0
  120. package/template/.build/pagefind/index/fr-ch_f94c95d.pf_index +0 -0
  121. package/template/.build/pagefind/pagefind-component-ui.css +1509 -0
  122. package/template/.build/pagefind/pagefind-component-ui.js +56 -0
  123. package/template/.build/pagefind/pagefind-entry.json +1 -0
  124. package/template/.build/pagefind/pagefind-highlight.js +1070 -0
  125. package/template/.build/pagefind/pagefind-modular-ui.css +214 -0
  126. package/template/.build/pagefind/pagefind-modular-ui.js +8 -0
  127. package/template/.build/pagefind/pagefind-ui.css +1 -0
  128. package/template/.build/pagefind/pagefind-ui.js +2 -0
  129. package/template/.build/pagefind/pagefind-worker.js +6 -0
  130. package/template/.build/pagefind/pagefind.fr-ch_fb78ab42961f4.pf_meta +0 -0
  131. package/template/.build/pagefind/pagefind.js +6 -0
  132. package/template/.build/pagefind/wasm.fr-ch.pagefind +0 -0
  133. package/template/.build/pagefind/wasm.unknown.pagefind +0 -0
  134. package/template/.build/reference/api-assistant/index.html +161 -0
  135. package/template/.build/reference/api-assistant.md +60 -0
  136. package/template/.build/reference/cli/index.html +153 -0
  137. package/template/.build/reference/cli.md +31 -0
  138. package/template/.build/reference/docs-json/index.html +192 -0
  139. package/template/.build/reference/docs-json.md +43 -0
  140. package/template/.build/reference/mcp/index.html +151 -0
  141. package/template/.build/reference/mcp.md +49 -0
  142. package/template/astro.config.ts +6 -0
  143. package/template/node_modules/.vite/deps/_metadata.json +74 -0
  144. package/template/node_modules/.vite/deps/astro-B3JHJyiv.js +434 -0
  145. package/template/node_modules/.vite/deps/astro-B3JHJyiv.js.map +1 -0
  146. package/template/node_modules/.vite/deps/astro_n_aria-query.js +6390 -0
  147. package/template/node_modules/.vite/deps/astro_n_aria-query.js.map +1 -0
  148. package/template/node_modules/.vite/deps/astro_n_axobject-query.js +2705 -0
  149. package/template/node_modules/.vite/deps/astro_n_axobject-query.js.map +1 -0
  150. package/template/node_modules/.vite/deps/astro_n_html-escaper.js +65 -0
  151. package/template/node_modules/.vite/deps/astro_n_html-escaper.js.map +1 -0
  152. package/template/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +455 -0
  153. package/template/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +1 -0
  154. package/template/node_modules/.vite/deps/audit-Do8QH17W.js +1543 -0
  155. package/template/node_modules/.vite/deps/audit-Do8QH17W.js.map +1 -0
  156. package/template/node_modules/.vite/deps/highlight-BLtvqtzO.js +48 -0
  157. package/template/node_modules/.vite/deps/highlight-BLtvqtzO.js.map +1 -0
  158. package/template/node_modules/.vite/deps/icons-C92i61-2.js +42 -0
  159. package/template/node_modules/.vite/deps/icons-C92i61-2.js.map +1 -0
  160. package/template/node_modules/.vite/deps/package.json +3 -0
  161. package/template/node_modules/.vite/deps/rolldown-runtime-C3I60J0A.js +4 -0
  162. package/template/node_modules/.vite/deps/settings-BYmTKrLi.js +189 -0
  163. package/template/node_modules/.vite/deps/settings-BYmTKrLi.js.map +1 -0
  164. package/template/node_modules/.vite/deps/toolbar-CEKhukuK.js +461 -0
  165. package/template/node_modules/.vite/deps/toolbar-CEKhukuK.js.map +1 -0
  166. package/template/node_modules/.vite/deps/ui-library-BO4--ANp.js +1015 -0
  167. package/template/node_modules/.vite/deps/ui-library-BO4--ANp.js.map +1 -0
  168. package/template/node_modules/.vite/deps/window-vo3A6TMn.js +32 -0
  169. package/template/node_modules/.vite/deps/window-vo3A6TMn.js.map +1 -0
  170. package/template/node_modules/.vite/deps/xray-Lf9x6g8P.js +112 -0
  171. package/template/node_modules/.vite/deps/xray-Lf9x6g8P.js.map +1 -0
  172. package/template/src/content.config.ts +21 -0
  173. package/README.md +0 -3
@@ -0,0 +1,153 @@
1
+ <!DOCTYPE html><html lang="fr-CH" dir="ltr" data-theme="dark" data-has-toc data-has-sidebar class="astro-lnvyiehd"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>La commande hgdc-docs | HGDC Docs</title><style>:root{--sl-color-accent-low:#282041;--sl-color-accent:#9258ff;--sl-color-accent-high:#e8b7ff;--hgdc-on-accent:#000000;}:root[data-theme="light"]{--sl-color-accent-low:#f1e9ff;--sl-color-accent:#7c3aed;--sl-color-accent-high:#4e00ae;--hgdc-on-accent:#ffffff;}</style><link rel="shortcut icon" href="/images/favicon.svg" type="image/svg+xml"/><meta name="generator" content="Astro v7.3.8"/><meta name="generator" content="Starlight v0.42.6"/><meta property="og:title" content="La commande hgdc-docs"/><meta property="og:type" content="article"/><meta property="og:locale" content="fr-CH"/><meta property="og:description" content="Les commandes dev, build et preview, et les variables d'environnement du build."/><meta property="og:site_name" content="HGDC Docs"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="Les commandes dev, build et preview, et les variables d'environnement du build."/><link rel="alternate" type="text/markdown" href="/reference/cli.md"><link rel="describedby" type="text/markdown" href="/llms.txt"><script>
2
+ window.StarlightThemeProvider = (() => {
3
+ const storedTheme =
4
+ typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
5
+ const theme =
6
+ storedTheme ||
7
+ (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark');
8
+ document.documentElement.dataset.theme = theme === 'light' ? 'light' : 'dark';
9
+ return {
10
+ updatePickers(theme = storedTheme || 'auto') {
11
+ document.querySelectorAll('starlight-theme-select').forEach((picker) => {
12
+ const select = picker.querySelector('select');
13
+ if (select) select.value = theme;
14
+ /** @type {HTMLTemplateElement | null} */
15
+ const tmpl = document.querySelector(`#theme-icons`);
16
+ const newIcon = tmpl && tmpl.content.querySelector('.' + theme);
17
+ if (newIcon) {
18
+ const oldIcon = picker.querySelector('svg.label-icon');
19
+ if (oldIcon) {
20
+ oldIcon.replaceChildren(...newIcon.cloneNode(true).childNodes);
21
+ }
22
+ }
23
+ });
24
+ },
25
+ };
26
+ })();
27
+ </script><template id="theme-icons"><svg aria-hidden="true" class="light astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/_astro/common.8GHCkW7i.css"><style>@layer starlight.components{svg:where(.astro-xhs3u4tj){color:var(--sl-icon-color);font-size:var(--sl-icon-size,1em);width:1em;height:1em;overflow:visible}}
28
+ </style><script type="module" src="/_astro/page.cNngjUgL.js"></script><style>@layer starlight.components{starlight-tabs:where(.astro-nnis2kke){display:block}.tablist-wrapper:where(.astro-nnis2kke){overflow-x:auto}:where(.astro-nnis2kke)[role=tablist]{border-bottom:2px solid var(--sl-color-gray-5);padding:0;list-style:none;display:flex}.tab:where(.astro-nnis2kke){display:flex}.tab:where(.astro-nnis2kke)>:where(.astro-nnis2kke)[role=tab]{--sl-tab-color-border:var(--sl-color-gray-5);line-height:var(--sl-line-height-headings);box-shadow:0 2px 0 var(--sl-tab-color-border);color:var(--sl-color-gray-3);outline-offset:var(--sl-outline-offset-inside);overflow-wrap:initial;align-items:center;gap:.5rem;padding:.275rem 1.25rem;text-decoration:none;display:flex}.tab:where(.astro-nnis2kke) :where(.astro-nnis2kke)[role=tab][aria-selected=true]{--sl-tab-color-border:var(--sl-color-text-accent);color:var(--sl-color-white);font-weight:600}.tablist-wrapper:where(.astro-nnis2kke)~[role=tabpanel]{margin-top:1rem}}
29
+ </style></head><body class="astro-lnvyiehd"><a class="sl-skip-link astro-udp4fdqq" href="#_top">Aller au contenu</a><div class="page sl-flex astro-wp5b5qr3"><header class="header astro-wp5b5qr3"><div class="header astro-4xpvyfd2"><div class="title-wrapper sl-flex astro-4xpvyfd2"><a href="/" class="site-title sl-flex astro-qbunumlf"><img class="light:sl-hidden print:hidden astro-qbunumlf" alt src="/_astro/logo-sombre.BkgsFXxh.svg" width="32" height="32"><img class="dark:sl-hidden print:block astro-qbunumlf" alt src="/_astro/logo-clair.BqNh6JNi.svg" width="32" height="32"><span class="astro-qbunumlf" translate="no">HGDC Docs</span></a></div><div class="sl-flex print:hidden astro-4xpvyfd2"><site-search class="astro-4xpvyfd2 astro-atzxzflz" data-translations="{&quot;placeholder&quot;:&quot;Rechercher&quot;}"><button data-open-modal disabled aria-label="Rechercher" aria-keyshortcuts="Control+K" class="astro-atzxzflz"><svg aria-hidden="true" class="astro-atzxzflz astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg><span class="sl-hidden md:sl-block astro-atzxzflz" aria-hidden="true">Rechercher</span><kbd class="sl-hidden md:sl-flex astro-atzxzflz" style="display: none;"><kbd class="astro-atzxzflz">Ctrl</kbd><kbd class="astro-atzxzflz">K</kbd></kbd></button><dialog style="padding:0" aria-label="Rechercher" class="astro-atzxzflz"><div class="dialog-frame sl-flex astro-atzxzflz"><button data-close-modal class="sl-flex md:sl-hidden astro-atzxzflz">Annuler</button><div class="search-container astro-atzxzflz"><div id="starlight__search" class="astro-atzxzflz"></div></div></div></dialog></site-search><script>
30
+ (() => {
31
+ const openBtn = document.querySelector('button[data-open-modal]');
32
+ const shortcut = openBtn?.querySelector('kbd');
33
+ if (!openBtn || !(shortcut instanceof HTMLElement)) return;
34
+ const platformKey = shortcut.querySelector('kbd');
35
+ if (platformKey && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)) {
36
+ platformKey.textContent = '⌘';
37
+ openBtn.setAttribute('aria-keyshortcuts', 'Meta+K');
38
+ }
39
+ shortcut.style.display = '';
40
+ })();
41
+ </script><script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.g9hoxVJg.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-4xpvyfd2"><div class="sl-flex social-icons astro-4xpvyfd2"></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-ahwfeyk3"><span class="sr-only astro-ahwfeyk3">Selectionner le thème</span><svg aria-hidden="true" class="icon label-icon astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-ahwfeyk3"><option value="dark" class="astro-ahwfeyk3">Sombre</option><option value="light" class="astro-ahwfeyk3">Clair</option><option value="auto" selected class="astro-ahwfeyk3">Auto</option></select><svg aria-hidden="true" class="icon caret astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
42
+ StarlightThemeProvider.updatePickers();
43
+ </script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-wp5b5qr3" aria-label="principale"><button popovertarget="starlight__sidebar" class="sl-menu-button sl-flex md:sl-hidden print:hidden astro-pddjbwje"><svg aria-hidden="true" class="open-menu astro-pddjbwje astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M3 8h18a1 1 0 1 0 0-2H3a1 1 0 0 0 0 2Zm18 8H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Zm0-5H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Z"/></svg><svg aria-hidden="true" class="close-menu astro-pddjbwje astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="m13.41 12 6.3-6.29a1.004 1.004 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1.004 1.004 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 0 1.42.998.998 0 0 0 1.42 0l6.29-6.3 6.29 6.3a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.42L13.41 12Z"/></svg><span class="sr-only astro-pddjbwje">Menu</span></button><script type="module">var e=class extends HTMLElement{constructor(){super();let e=matchMedia(`(min-width: 50em)`),t=()=>{this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,()=>t()),this.addEventListener(`toggle`,({newState:e})=>this.trapFocus(e===`open`))}trapFocus(e){document.querySelectorAll(`.main-frame, .sl-skip-link`).forEach(t=>{t.toggleAttribute(`inert`,e)})}};customElements.define(`sl-sidebar-pane`,e);</script><script type="module">for(let e of document.querySelectorAll(`[data-hgdc-version]`))e.addEventListener(`change`,()=>window.location.assign(e.value));</script><sl-sidebar-pane popover id="starlight__sidebar" class="sidebar-pane astro-wp5b5qr3"><div class="sidebar-content sl-flex astro-wp5b5qr3"><div class="hgdc-sections"><nav aria-label="Sections de la documentation"><ul class="hgdc-tabs"><li><a href="/">Guides</a></li><li><a href="/reference/docs-json/" aria-current="page">Référence</a></li><li><a href="/explications/fonctionnement/">Explications</a></li></ul></nav></div><sl-sidebar-state-persist data-hash="0zenivk" class="astro-2lv5n4ci"><script aria-hidden="true">
44
+ (() => {
45
+ try {
46
+ if (!matchMedia('(min-width: 50em)').matches) return;
47
+ /** @type {HTMLElement | null} */
48
+ const target = document.querySelector('sl-sidebar-state-persist');
49
+ const state = JSON.parse(sessionStorage.getItem('sl-sidebar-state') || '0');
50
+ if (!target || !state || target.dataset.hash !== state.hash) return;
51
+ window._starlightScrollRestore = state.scroll;
52
+ customElements.define(
53
+ 'sl-sidebar-restore',
54
+ class SidebarRestore extends HTMLElement {
55
+ connectedCallback() {
56
+ try {
57
+ const idx = parseInt(this.dataset.index || '');
58
+ const details = this.closest('details');
59
+ if (details && typeof state.open[idx] === 'boolean') details.open = state.open[idx];
60
+ } catch {}
61
+ }
62
+ }
63
+ );
64
+ } catch {}
65
+ })();
66
+ </script><ul class="top-level astro-4oho6hms"><li class="astro-4oho6hms"><details open class="astro-4oho6hms"><summary class="astro-4oho6hms"><span class="group-label astro-4oho6hms"><span class="large astro-4oho6hms">Configuration</span></span><svg aria-hidden="true" class="caret astro-4oho6hms astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></summary><sl-sidebar-restore data-index="0"></sl-sidebar-restore><ul class="astro-4oho6hms"><li class="astro-4oho6hms"><a href="/reference/docs-json/" class="astro-4oho6hms"><span class="astro-4oho6hms">docs.json</span></a></li><li class="astro-4oho6hms"><a href="/reference/cli/" aria-current="page" class="astro-4oho6hms"><span class="astro-4oho6hms">Commande hgdc-docs</span></a></li></ul></details></li><li class="astro-4oho6hms"><details open class="astro-4oho6hms"><summary class="astro-4oho6hms"><span class="group-label astro-4oho6hms"><span class="large astro-4oho6hms">API</span></span><svg aria-hidden="true" class="caret astro-4oho6hms astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></summary><sl-sidebar-restore data-index="1"></sl-sidebar-restore><ul class="astro-4oho6hms"><li class="astro-4oho6hms"><a href="/reference/api-assistant/" class="astro-4oho6hms"><span class="astro-4oho6hms">API de l&#39;assistant</span></a></li><li class="astro-4oho6hms"><a href="/reference/mcp/" class="astro-4oho6hms"><span class="astro-4oho6hms">Serveur MCP</span></a></li></ul></details></li></ul><script aria-hidden="true">
67
+ (() => {
68
+ const scroller = document.getElementById('starlight__sidebar');
69
+ if (!window._starlightScrollRestore || !scroller) return;
70
+ scroller.scrollTop = window._starlightScrollRestore;
71
+ delete window._starlightScrollRestore;
72
+ })();
73
+ </script></sl-sidebar-state-persist><div class="md:sl-hidden"><div class="mobile-preferences sl-flex astro-rl3robyt"><div class="social-icons astro-rl3robyt"></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-ahwfeyk3"><span class="sr-only astro-ahwfeyk3">Selectionner le thème</span><svg aria-hidden="true" class="icon label-icon astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-ahwfeyk3"><option value="dark" class="astro-ahwfeyk3">Sombre</option><option value="light" class="astro-ahwfeyk3">Clair</option><option value="auto" selected class="astro-ahwfeyk3">Auto</option></select><svg aria-hidden="true" class="icon caret astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
74
+ StarlightThemeProvider.updatePickers();
75
+ </script></div></div></div></sl-sidebar-pane></nav><div class="main-frame astro-wp5b5qr3"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="lg:sl-flex astro-4itz52l2"><aside class="right-sidebar-container print:hidden astro-4itz52l2"><div class="right-sidebar astro-4itz52l2"><div class="lg:sl-hidden astro-kfdnz6db"><mobile-starlight-toc data-min-h="2" data-max-h="3" class="astro-a6nqycz2"><nav aria-labelledby="starlight__on-this-page--mobile" class="astro-a6nqycz2"><details id="starlight__mobile-toc" class="astro-a6nqycz2"><summary id="starlight__on-this-page--mobile" class="sl-flex astro-a6nqycz2"><span class="toggle sl-flex astro-a6nqycz2">Sur cette page<svg aria-hidden="true" class="caret astro-a6nqycz2 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></span><span class="display-current astro-a6nqycz2"></span></summary><div class="dropdown astro-a6nqycz2"><ul class="isMobile astro-3xl44bvg" style="--depth: 0;"><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#_top" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Vue d’ensemble</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#commandes" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Commandes</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#variables-denvironnement" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Variables d’environnement</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#ce-que-contient-dist" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Ce que contient dist/</span></a></li></ul></div></details></nav></mobile-starlight-toc><script type="module" src="/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.C3fM4Kra.js"></script></div><div class="right-sidebar-panel sl-hidden lg:sl-block astro-kfdnz6db"><div class="sl-container astro-kfdnz6db"><starlight-toc data-min-h="2" data-max-h="3"><nav aria-labelledby="starlight__on-this-page"><h2 id="starlight__on-this-page">Sur cette page</h2><ul class="astro-3xl44bvg" style="--depth: 0;"><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#_top" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Vue d’ensemble</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#commandes" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Commandes</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#variables-denvironnement" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Variables d’environnement</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#ce-que-contient-dist" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Ce que contient dist/</span></a></li></ul></nav></starlight-toc><script type="module" src="/_astro/TableOfContents.astro_astro_type_script_index_0_lang.BpJaGz7G.js"></script></div></div></div></aside><div class="main-pane astro-4itz52l2"><main data-pagefind-body class="astro-lnvyiehd" lang="fr-CH" dir="ltr"><div class="content-panel astro-6fa4cqtd"><div class="sl-container astro-6fa4cqtd"><div class="hgdc-title"><h1 id="_top" class="astro-r6a57gjs">La commande hgdc-docs</h1><div class="hgdc-page-actions not-content" data-hgdc-skip data-pagefind-ignore><button type="button" class="hgdc-action" data-hgdc-copy="/reference/cli.md"><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><rect x="8" y="8" width="12" height="12" rx="3" fill="none" stroke="currentColor" stroke-width="1.8"></rect><path d="M16 8V6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2" fill="none" stroke="currentColor" stroke-width="1.8"></path></svg><span data-label>Copier pour un LLM</span></button><details class="hgdc-menu"><summary class="hgdc-action hgdc-action--icon" aria-label="Autres formats de la page"><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><path d="m6 9 6 6 6-6" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></summary><ul class="hgdc-menu__list"><li><a href="/reference/cli.md">Voir en Markdown</a></li><li><a data-hgdc-open="claude" href="https://claude.ai/new" target="_blank" rel="noopener">Ouvrir dans Claude</a></li><li><a data-hgdc-open="chatgpt" href="https://chatgpt.com/" target="_blank" rel="noopener">Ouvrir dans ChatGPT</a></li><li><a href="/llms.txt">Index pour les agents (llms.txt)</a></li></ul></details><button type="button" class="hgdc-action" data-hgdc-ask><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><path d="M12 3l1.9 4.6L18.5 9.5l-4.6 1.9L12 16l-1.9-4.6L5.5 9.5l4.6-1.9z" fill="currentColor"></path></svg><span>Demander à l'assistant</span></button><span class="sr-only" role="status" aria-live="polite" data-hgdc-copy-status></span></div></div><script type="module">var e=document.querySelector(`[data-hgdc-copy-status]`);for(let t of document.querySelectorAll(`[data-hgdc-copy]`)){let n=t.querySelector(`[data-label]`);t.addEventListener(`click`,async()=>{let r=t=>{n.textContent=t,e&&(e.textContent=t),setTimeout(()=>n.textContent=`Copier pour un LLM`,2e3)};try{let e=await fetch(t.dataset.hgdcCopy);if(!e.ok)throw Error(String(e.status));await navigator.clipboard.writeText(await e.text()),r(`Page copiée`)}catch{r(`Copie impossible`)}})}var t=`Lis ${new URL(document.querySelector(`[data-hgdc-copy]`).dataset.hgdcCopy,location.href).href} et réponds à mes questions sur cette page.`;for(let e of document.querySelectorAll(`[data-hgdc-open]`))e.href=`${e.dataset.hgdcOpen===`claude`?`https://claude.ai/new`:`https://chatgpt.com/`}?q=${encodeURIComponent(t)}`;for(let e of document.querySelectorAll(`.hgdc-menu`))document.addEventListener(`click`,t=>{e.open&&!e.contains(t.target)&&(e.open=!1)}),e.addEventListener(`keydown`,t=>{t.key===`Escape`&&e.open&&(e.open=!1,e.querySelector(`summary`)?.focus())});for(let e of document.querySelectorAll(`[data-hgdc-ask]`))e.addEventListener(`click`,()=>document.dispatchEvent(new CustomEvent(`hgdc:assistant-open`)));</script></div></div><div class="content-panel astro-6fa4cqtd"><div class="sl-container astro-6fa4cqtd"><div class="sl-markdown-content"><p><code>hgdc-docs</code> est installée avec le paquet <code>@hgdc/docs</code>. Elle se lance depuis le dossier de la doc, ou avec le chemin du dossier en argument.</p>
76
+ <h2 id="commandes">Commandes</h2>
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+ <table><thead><tr><th>Commande</th><th>Effet</th></tr></thead><tbody><tr><td><code>hgdc-docs dev</code></td><td>Site local sur <code>http://localhost:4321</code>, rechargé à chaque modification.</td></tr><tr><td><code>hgdc-docs build</code></td><td>Site statique dans <code>dist/</code>, avec la recherche, <code>llms.txt</code>, les pages Markdown et le corpus de l’assistant.</td></tr><tr><td><code>hgdc-docs preview</code></td><td>Sert le dernier build, pour vérifier avant de pousser.</td></tr></tbody></table>
99
+ <p>Options : <code>--port 4000</code> change le port de <code>dev</code> et <code>preview</code>, <code>--help</code> affiche l’aide.</p>
100
+ <h2 id="variables-denvironnement">Variables d’environnement</h2>
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+ <table><thead><tr><th>Variable</th><th>Rôle</th></tr></thead><tbody><tr><td><code>HGDC_DOCS_SITE</code></td><td>Adresse publique du site (<code>https://docs.acme.ch</code>). Rend les liens de <code>llms.txt</code> absolus et produit le sitemap. Sur HGDC Host, l’adresse de production est reprise seule.</td></tr><tr><td><code>HGDC_DOCS_OUT</code></td><td>Dossier de sortie, <code>dist/</code> par défaut.</td></tr><tr><td><code>HGDC_DOCS_API</code></td><td>API de l’assistant, <code>https://docs.hgdc.ch</code> par défaut.</td></tr></tbody></table>
123
+ <h2 id="ce-que-contient-dist">Ce que contient dist/</h2>
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+ <table><thead><tr><th>Fichier</th><th>Contenu</th></tr></thead><tbody><tr><td><code>index.html</code>, <code>&#x3C;page>/index.html</code></td><td>Les pages du site.</td></tr><tr><td><code>&#x3C;page>.md</code></td><td>Chaque page en Markdown.</td></tr><tr><td><code>llms.txt</code>, <code>llms-full.txt</code>, <code>.well-known/llms.txt</code></td><td>L’index et la doc complète pour les agents.</td></tr><tr><td><code>pagefind/</code></td><td>L’index de la recherche.</td></tr><tr><td><code>_hgdc/corpus.json</code></td><td>Le contenu publié, lu par la console pour indexer l’assistant.</td></tr></tbody></table></div><footer class="sl-flex astro-k7j6ewsk"><div class="meta sl-flex astro-k7j6ewsk"></div><div class="pagination-links print:hidden astro-lwfwnmnd" dir="ltr"><a href="/reference/docs-json/" rel="prev" class="astro-lwfwnmnd"><svg aria-hidden="true" class="astro-lwfwnmnd astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17 11H9.41l3.3-3.29a1.004 1.004 0 1 0-1.42-1.42l-5 5a1 1 0 0 0-.21.33 1 1 0 0 0 0 .76 1 1 0 0 0 .21.33l5 5a1.002 1.002 0 0 0 1.639-.325 1 1 0 0 0-.219-1.095L9.41 13H17a1 1 0 0 0 0-2Z"/></svg><span class="astro-lwfwnmnd">Précédent<br class="astro-lwfwnmnd"><span class="link-title astro-lwfwnmnd">docs.json</span></span></a><a href="/reference/api-assistant/" rel="next" class="astro-lwfwnmnd"><svg aria-hidden="true" class="astro-lwfwnmnd astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"/></svg><span class="astro-lwfwnmnd">Suivant<br class="astro-lwfwnmnd"><span class="link-title astro-lwfwnmnd">API de l&#39;assistant</span></span></a></div></footer></div></div></main></div></div></div></div><hgdc-assistant data-endpoint="https://docs.hgdc.ch/api/v1/ask" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-name="HGDC Docs"><button type="button" class="hgdc-launcher" data-open aria-haspopup="dialog" aria-expanded="false"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M12 3l1.9 4.6L18.5 9.5l-4.6 1.9L12 16l-1.9-4.6L5.5 9.5l4.6-1.9z" fill="currentColor"></path><path d="M18.5 15l.8 1.9 1.9.8-1.9.8-.8 1.9-.8-1.9-1.9-.8 1.9-.8z" fill="currentColor"></path></svg><span>Demander à l'IA</span><kbd class="hgdc-kbd" data-shortcut aria-hidden="true">Ctrl I</kbd></button><section class="hgdc-panel" role="dialog" aria-modal="false" aria-labelledby="hgdc-assistant-title" hidden><header class="hgdc-panel__header"><div><h2 id="hgdc-assistant-title">Assistant</h2><p>Répond à partir de cette documentation, avec ses sources.</p></div><div class="hgdc-panel__tools"><button type="button" class="hgdc-icon-button" data-reset aria-label="Nouvelle conversation" hidden><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M4 12a8 8 0 1 0 2.3-5.7M4 4v4h4" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></button><button type="button" class="hgdc-icon-button" data-close aria-label="Fermer l'assistant"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M6 6l12 12M18 6 6 18" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></button></div></header><div class="hgdc-panel__body" data-log aria-live="polite"><div class="hgdc-empty" data-empty><p class="hgdc-empty__title">Pose ta question sur HGDC Docs.</p><p>Je cherche dans les pages de cette documentation et je cite mes sources. Si la réponse n'y est pas, je te le dis.</p></div></div><form class="hgdc-panel__form" data-form><label class="sr-only" for="hgdc-question">Ta question</label><textarea id="hgdc-question" data-input rows="1" maxlength="1000" placeholder="Comment publier ma doc ?" required></textarea><button type="submit" class="hgdc-send" data-send aria-label="Envoyer la question"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M12 19V5M5 12l7-7 7 7" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"></path></svg></button></form><p class="hgdc-panel__note">Réponses générées par IA (Claude, d'Anthropic), à vérifier. Les questions sont conservées 90 jours pour améliorer cette documentation.</p></section></hgdc-assistant><script type="module" src="/_astro/Assistant.astro_astro_type_script_index_0_lang.DWgmlr85.js"></script></body></html>
@@ -0,0 +1,31 @@
1
+ # La commande hgdc-docs
2
+
3
+ `hgdc-docs` est installée avec le paquet `@hgdc/docs`. Elle se lance depuis le dossier de la doc, ou avec le chemin du dossier en argument.
4
+
5
+ ## Commandes
6
+
7
+ | Commande | Effet |
8
+ | ------------------- | ---------------------------------------------------------------------------------------------------------- |
9
+ | `hgdc-docs dev` | Site local sur `http://localhost:4321`, rechargé à chaque modification. |
10
+ | `hgdc-docs build` | Site statique dans `dist/`, avec la recherche, `llms.txt`, les pages Markdown et le corpus de l’assistant. |
11
+ | `hgdc-docs preview` | Sert le dernier build, pour vérifier avant de pousser. |
12
+
13
+ Options : `--port 4000` change le port de `dev` et `preview`, `--help` affiche l’aide.
14
+
15
+ ## Variables d’environnement
16
+
17
+ | Variable | Rôle |
18
+ | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
19
+ | `HGDC_DOCS_SITE` | Adresse publique du site (`https://docs.acme.ch`). Rend les liens de `llms.txt` absolus et produit le sitemap. Sur HGDC Host, l’adresse de production est reprise seule. |
20
+ | `HGDC_DOCS_OUT` | Dossier de sortie, `dist/` par défaut. |
21
+ | `HGDC_DOCS_API` | API de l’assistant, `https://docs.hgdc.ch` par défaut. |
22
+
23
+ ## Ce que contient dist/
24
+
25
+ | Fichier | Contenu |
26
+ | --------------------------------------------------- | -------------------------------------------------------------- |
27
+ | `index.html`, `<page>/index.html` | Les pages du site. |
28
+ | `<page>.md` | Chaque page en Markdown. |
29
+ | `llms.txt`, `llms-full.txt`, `.well-known/llms.txt` | L’index et la doc complète pour les agents. |
30
+ | `pagefind/` | L’index de la recherche. |
31
+ | `_hgdc/corpus.json` | Le contenu publié, lu par la console pour indexer l’assistant. |
@@ -0,0 +1,192 @@
1
+ <!DOCTYPE html><html lang="fr-CH" dir="ltr" data-theme="dark" data-has-toc data-has-sidebar class="astro-lnvyiehd"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>docs.json | HGDC Docs</title><style>:root{--sl-color-accent-low:#282041;--sl-color-accent:#9258ff;--sl-color-accent-high:#e8b7ff;--hgdc-on-accent:#000000;}:root[data-theme="light"]{--sl-color-accent-low:#f1e9ff;--sl-color-accent:#7c3aed;--sl-color-accent-high:#4e00ae;--hgdc-on-accent:#ffffff;}</style><link rel="shortcut icon" href="/images/favicon.svg" type="image/svg+xml"/><meta name="generator" content="Astro v7.3.8"/><meta name="generator" content="Starlight v0.42.6"/><meta property="og:title" content="docs.json"/><meta property="og:type" content="article"/><meta property="og:locale" content="fr-CH"/><meta property="og:description" content="Tous les champs du fichier de configuration d'un site HGDC Docs."/><meta property="og:site_name" content="HGDC Docs"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="Tous les champs du fichier de configuration d'un site HGDC Docs."/><link rel="alternate" type="text/markdown" href="/reference/docs-json.md"><link rel="describedby" type="text/markdown" href="/llms.txt"><script>
2
+ window.StarlightThemeProvider = (() => {
3
+ const storedTheme =
4
+ typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
5
+ const theme =
6
+ storedTheme ||
7
+ (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark');
8
+ document.documentElement.dataset.theme = theme === 'light' ? 'light' : 'dark';
9
+ return {
10
+ updatePickers(theme = storedTheme || 'auto') {
11
+ document.querySelectorAll('starlight-theme-select').forEach((picker) => {
12
+ const select = picker.querySelector('select');
13
+ if (select) select.value = theme;
14
+ /** @type {HTMLTemplateElement | null} */
15
+ const tmpl = document.querySelector(`#theme-icons`);
16
+ const newIcon = tmpl && tmpl.content.querySelector('.' + theme);
17
+ if (newIcon) {
18
+ const oldIcon = picker.querySelector('svg.label-icon');
19
+ if (oldIcon) {
20
+ oldIcon.replaceChildren(...newIcon.cloneNode(true).childNodes);
21
+ }
22
+ }
23
+ });
24
+ },
25
+ };
26
+ })();
27
+ </script><template id="theme-icons"><svg aria-hidden="true" class="light astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/_astro/common.8GHCkW7i.css"><style>@layer starlight.components{svg:where(.astro-xhs3u4tj){color:var(--sl-icon-color);font-size:var(--sl-icon-size,1em);width:1em;height:1em;overflow:visible}}
28
+ </style><script type="module" src="/_astro/page.cNngjUgL.js"></script><style>@layer starlight.components{starlight-tabs:where(.astro-nnis2kke){display:block}.tablist-wrapper:where(.astro-nnis2kke){overflow-x:auto}:where(.astro-nnis2kke)[role=tablist]{border-bottom:2px solid var(--sl-color-gray-5);padding:0;list-style:none;display:flex}.tab:where(.astro-nnis2kke){display:flex}.tab:where(.astro-nnis2kke)>:where(.astro-nnis2kke)[role=tab]{--sl-tab-color-border:var(--sl-color-gray-5);line-height:var(--sl-line-height-headings);box-shadow:0 2px 0 var(--sl-tab-color-border);color:var(--sl-color-gray-3);outline-offset:var(--sl-outline-offset-inside);overflow-wrap:initial;align-items:center;gap:.5rem;padding:.275rem 1.25rem;text-decoration:none;display:flex}.tab:where(.astro-nnis2kke) :where(.astro-nnis2kke)[role=tab][aria-selected=true]{--sl-tab-color-border:var(--sl-color-text-accent);color:var(--sl-color-white);font-weight:600}.tablist-wrapper:where(.astro-nnis2kke)~[role=tabpanel]{margin-top:1rem}}
29
+ </style></head><body class="astro-lnvyiehd"><a class="sl-skip-link astro-udp4fdqq" href="#_top">Aller au contenu</a><div class="page sl-flex astro-wp5b5qr3"><header class="header astro-wp5b5qr3"><div class="header astro-4xpvyfd2"><div class="title-wrapper sl-flex astro-4xpvyfd2"><a href="/" class="site-title sl-flex astro-qbunumlf"><img class="light:sl-hidden print:hidden astro-qbunumlf" alt src="/_astro/logo-sombre.BkgsFXxh.svg" width="32" height="32"><img class="dark:sl-hidden print:block astro-qbunumlf" alt src="/_astro/logo-clair.BqNh6JNi.svg" width="32" height="32"><span class="astro-qbunumlf" translate="no">HGDC Docs</span></a></div><div class="sl-flex print:hidden astro-4xpvyfd2"><site-search class="astro-4xpvyfd2 astro-atzxzflz" data-translations="{&quot;placeholder&quot;:&quot;Rechercher&quot;}"><button data-open-modal disabled aria-label="Rechercher" aria-keyshortcuts="Control+K" class="astro-atzxzflz"><svg aria-hidden="true" class="astro-atzxzflz astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg><span class="sl-hidden md:sl-block astro-atzxzflz" aria-hidden="true">Rechercher</span><kbd class="sl-hidden md:sl-flex astro-atzxzflz" style="display: none;"><kbd class="astro-atzxzflz">Ctrl</kbd><kbd class="astro-atzxzflz">K</kbd></kbd></button><dialog style="padding:0" aria-label="Rechercher" class="astro-atzxzflz"><div class="dialog-frame sl-flex astro-atzxzflz"><button data-close-modal class="sl-flex md:sl-hidden astro-atzxzflz">Annuler</button><div class="search-container astro-atzxzflz"><div id="starlight__search" class="astro-atzxzflz"></div></div></div></dialog></site-search><script>
30
+ (() => {
31
+ const openBtn = document.querySelector('button[data-open-modal]');
32
+ const shortcut = openBtn?.querySelector('kbd');
33
+ if (!openBtn || !(shortcut instanceof HTMLElement)) return;
34
+ const platformKey = shortcut.querySelector('kbd');
35
+ if (platformKey && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)) {
36
+ platformKey.textContent = '⌘';
37
+ openBtn.setAttribute('aria-keyshortcuts', 'Meta+K');
38
+ }
39
+ shortcut.style.display = '';
40
+ })();
41
+ </script><script type="module" src="/_astro/Search.astro_astro_type_script_index_0_lang.g9hoxVJg.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-4xpvyfd2"><div class="sl-flex social-icons astro-4xpvyfd2"></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-ahwfeyk3"><span class="sr-only astro-ahwfeyk3">Selectionner le thème</span><svg aria-hidden="true" class="icon label-icon astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-ahwfeyk3"><option value="dark" class="astro-ahwfeyk3">Sombre</option><option value="light" class="astro-ahwfeyk3">Clair</option><option value="auto" selected class="astro-ahwfeyk3">Auto</option></select><svg aria-hidden="true" class="icon caret astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
42
+ StarlightThemeProvider.updatePickers();
43
+ </script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-wp5b5qr3" aria-label="principale"><button popovertarget="starlight__sidebar" class="sl-menu-button sl-flex md:sl-hidden print:hidden astro-pddjbwje"><svg aria-hidden="true" class="open-menu astro-pddjbwje astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M3 8h18a1 1 0 1 0 0-2H3a1 1 0 0 0 0 2Zm18 8H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Zm0-5H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Z"/></svg><svg aria-hidden="true" class="close-menu astro-pddjbwje astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="m13.41 12 6.3-6.29a1.004 1.004 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1.004 1.004 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 0 1.42.998.998 0 0 0 1.42 0l6.29-6.3 6.29 6.3a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.42L13.41 12Z"/></svg><span class="sr-only astro-pddjbwje">Menu</span></button><script type="module">var e=class extends HTMLElement{constructor(){super();let e=matchMedia(`(min-width: 50em)`),t=()=>{this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,()=>t()),this.addEventListener(`toggle`,({newState:e})=>this.trapFocus(e===`open`))}trapFocus(e){document.querySelectorAll(`.main-frame, .sl-skip-link`).forEach(t=>{t.toggleAttribute(`inert`,e)})}};customElements.define(`sl-sidebar-pane`,e);</script><script type="module">for(let e of document.querySelectorAll(`[data-hgdc-version]`))e.addEventListener(`change`,()=>window.location.assign(e.value));</script><sl-sidebar-pane popover id="starlight__sidebar" class="sidebar-pane astro-wp5b5qr3"><div class="sidebar-content sl-flex astro-wp5b5qr3"><div class="hgdc-sections"><nav aria-label="Sections de la documentation"><ul class="hgdc-tabs"><li><a href="/">Guides</a></li><li><a href="/reference/docs-json/" aria-current="page">Référence</a></li><li><a href="/explications/fonctionnement/">Explications</a></li></ul></nav></div><sl-sidebar-state-persist data-hash="0zenivk" class="astro-2lv5n4ci"><script aria-hidden="true">
44
+ (() => {
45
+ try {
46
+ if (!matchMedia('(min-width: 50em)').matches) return;
47
+ /** @type {HTMLElement | null} */
48
+ const target = document.querySelector('sl-sidebar-state-persist');
49
+ const state = JSON.parse(sessionStorage.getItem('sl-sidebar-state') || '0');
50
+ if (!target || !state || target.dataset.hash !== state.hash) return;
51
+ window._starlightScrollRestore = state.scroll;
52
+ customElements.define(
53
+ 'sl-sidebar-restore',
54
+ class SidebarRestore extends HTMLElement {
55
+ connectedCallback() {
56
+ try {
57
+ const idx = parseInt(this.dataset.index || '');
58
+ const details = this.closest('details');
59
+ if (details && typeof state.open[idx] === 'boolean') details.open = state.open[idx];
60
+ } catch {}
61
+ }
62
+ }
63
+ );
64
+ } catch {}
65
+ })();
66
+ </script><ul class="top-level astro-4oho6hms"><li class="astro-4oho6hms"><details open class="astro-4oho6hms"><summary class="astro-4oho6hms"><span class="group-label astro-4oho6hms"><span class="large astro-4oho6hms">Configuration</span></span><svg aria-hidden="true" class="caret astro-4oho6hms astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></summary><sl-sidebar-restore data-index="0"></sl-sidebar-restore><ul class="astro-4oho6hms"><li class="astro-4oho6hms"><a href="/reference/docs-json/" aria-current="page" class="astro-4oho6hms"><span class="astro-4oho6hms">docs.json</span></a></li><li class="astro-4oho6hms"><a href="/reference/cli/" class="astro-4oho6hms"><span class="astro-4oho6hms">Commande hgdc-docs</span></a></li></ul></details></li><li class="astro-4oho6hms"><details open class="astro-4oho6hms"><summary class="astro-4oho6hms"><span class="group-label astro-4oho6hms"><span class="large astro-4oho6hms">API</span></span><svg aria-hidden="true" class="caret astro-4oho6hms astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.25rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></summary><sl-sidebar-restore data-index="1"></sl-sidebar-restore><ul class="astro-4oho6hms"><li class="astro-4oho6hms"><a href="/reference/api-assistant/" class="astro-4oho6hms"><span class="astro-4oho6hms">API de l&#39;assistant</span></a></li><li class="astro-4oho6hms"><a href="/reference/mcp/" class="astro-4oho6hms"><span class="astro-4oho6hms">Serveur MCP</span></a></li></ul></details></li></ul><script aria-hidden="true">
67
+ (() => {
68
+ const scroller = document.getElementById('starlight__sidebar');
69
+ if (!window._starlightScrollRestore || !scroller) return;
70
+ scroller.scrollTop = window._starlightScrollRestore;
71
+ delete window._starlightScrollRestore;
72
+ })();
73
+ </script></sl-sidebar-state-persist><div class="md:sl-hidden"><div class="mobile-preferences sl-flex astro-rl3robyt"><div class="social-icons astro-rl3robyt"></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-ahwfeyk3"><span class="sr-only astro-ahwfeyk3">Selectionner le thème</span><svg aria-hidden="true" class="icon label-icon astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-ahwfeyk3"><option value="dark" class="astro-ahwfeyk3">Sombre</option><option value="light" class="astro-ahwfeyk3">Clair</option><option value="auto" selected class="astro-ahwfeyk3">Auto</option></select><svg aria-hidden="true" class="icon caret astro-ahwfeyk3 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
74
+ StarlightThemeProvider.updatePickers();
75
+ </script></div></div></div></sl-sidebar-pane></nav><div class="main-frame astro-wp5b5qr3"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="lg:sl-flex astro-4itz52l2"><aside class="right-sidebar-container print:hidden astro-4itz52l2"><div class="right-sidebar astro-4itz52l2"><div class="lg:sl-hidden astro-kfdnz6db"><mobile-starlight-toc data-min-h="2" data-max-h="3" class="astro-a6nqycz2"><nav aria-labelledby="starlight__on-this-page--mobile" class="astro-a6nqycz2"><details id="starlight__mobile-toc" class="astro-a6nqycz2"><summary id="starlight__on-this-page--mobile" class="sl-flex astro-a6nqycz2"><span class="toggle sl-flex astro-a6nqycz2">Sur cette page<svg aria-hidden="true" class="caret astro-a6nqycz2 astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1rem;"><path d="m14.83 11.29-4.24-4.24a1 1 0 1 0-1.42 1.41L12.71 12l-3.54 3.54a1 1 0 0 0 0 1.41 1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.24-4.24a1.002 1.002 0 0 0 0-1.42Z"/></svg></span><span class="display-current astro-a6nqycz2"></span></summary><div class="dropdown astro-a6nqycz2"><ul class="isMobile astro-3xl44bvg" style="--depth: 0;"><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#_top" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Vue d’ensemble</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#champs" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Champs</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#navigation" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Navigation</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#erreurs" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Erreurs</span></a></li></ul></div></details></nav></mobile-starlight-toc><script type="module" src="/_astro/MobileTableOfContents.astro_astro_type_script_index_0_lang.C3fM4Kra.js"></script></div><div class="right-sidebar-panel sl-hidden lg:sl-block astro-kfdnz6db"><div class="sl-container astro-kfdnz6db"><starlight-toc data-min-h="2" data-max-h="3"><nav aria-labelledby="starlight__on-this-page"><h2 id="starlight__on-this-page">Sur cette page</h2><ul class="astro-3xl44bvg" style="--depth: 0;"><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#_top" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Vue d’ensemble</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#champs" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Champs</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#navigation" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Navigation</span></a></li><li style="--depth: 0;" class="astro-3xl44bvg"><a href="#erreurs" style="--depth: 0;" class="astro-3xl44bvg"><span style="--depth: 0;" class="astro-3xl44bvg">Erreurs</span></a></li></ul></nav></starlight-toc><script type="module" src="/_astro/TableOfContents.astro_astro_type_script_index_0_lang.BpJaGz7G.js"></script></div></div></div></aside><div class="main-pane astro-4itz52l2"><main data-pagefind-body class="astro-lnvyiehd" lang="fr-CH" dir="ltr"><div class="content-panel astro-6fa4cqtd"><div class="sl-container astro-6fa4cqtd"><div class="hgdc-title"><h1 id="_top" class="astro-r6a57gjs">docs.json</h1><div class="hgdc-page-actions not-content" data-hgdc-skip data-pagefind-ignore><button type="button" class="hgdc-action" data-hgdc-copy="/reference/docs-json.md"><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><rect x="8" y="8" width="12" height="12" rx="3" fill="none" stroke="currentColor" stroke-width="1.8"></rect><path d="M16 8V6a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2" fill="none" stroke="currentColor" stroke-width="1.8"></path></svg><span data-label>Copier pour un LLM</span></button><details class="hgdc-menu"><summary class="hgdc-action hgdc-action--icon" aria-label="Autres formats de la page"><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><path d="m6 9 6 6 6-6" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></summary><ul class="hgdc-menu__list"><li><a href="/reference/docs-json.md">Voir en Markdown</a></li><li><a data-hgdc-open="claude" href="https://claude.ai/new" target="_blank" rel="noopener">Ouvrir dans Claude</a></li><li><a data-hgdc-open="chatgpt" href="https://chatgpt.com/" target="_blank" rel="noopener">Ouvrir dans ChatGPT</a></li><li><a href="/llms.txt">Index pour les agents (llms.txt)</a></li></ul></details><button type="button" class="hgdc-action" data-hgdc-ask><svg aria-hidden="true" viewBox="0 0 24 24" width="16" height="16"><path d="M12 3l1.9 4.6L18.5 9.5l-4.6 1.9L12 16l-1.9-4.6L5.5 9.5l4.6-1.9z" fill="currentColor"></path></svg><span>Demander à l'assistant</span></button><span class="sr-only" role="status" aria-live="polite" data-hgdc-copy-status></span></div></div><script type="module">var e=document.querySelector(`[data-hgdc-copy-status]`);for(let t of document.querySelectorAll(`[data-hgdc-copy]`)){let n=t.querySelector(`[data-label]`);t.addEventListener(`click`,async()=>{let r=t=>{n.textContent=t,e&&(e.textContent=t),setTimeout(()=>n.textContent=`Copier pour un LLM`,2e3)};try{let e=await fetch(t.dataset.hgdcCopy);if(!e.ok)throw Error(String(e.status));await navigator.clipboard.writeText(await e.text()),r(`Page copiée`)}catch{r(`Copie impossible`)}})}var t=`Lis ${new URL(document.querySelector(`[data-hgdc-copy]`).dataset.hgdcCopy,location.href).href} et réponds à mes questions sur cette page.`;for(let e of document.querySelectorAll(`[data-hgdc-open]`))e.href=`${e.dataset.hgdcOpen===`claude`?`https://claude.ai/new`:`https://chatgpt.com/`}?q=${encodeURIComponent(t)}`;for(let e of document.querySelectorAll(`.hgdc-menu`))document.addEventListener(`click`,t=>{e.open&&!e.contains(t.target)&&(e.open=!1)}),e.addEventListener(`keydown`,t=>{t.key===`Escape`&&e.open&&(e.open=!1,e.querySelector(`summary`)?.focus())});for(let e of document.querySelectorAll(`[data-hgdc-ask]`))e.addEventListener(`click`,()=>document.dispatchEvent(new CustomEvent(`hgdc:assistant-open`)));</script></div></div><div class="content-panel astro-6fa4cqtd"><div class="sl-container astro-6fa4cqtd"><div class="sl-markdown-content"><p><code>docs.json</code> vit à la racine du dossier de la doc. Il reprend le format de Mintlify : les champs que HGDC Docs ne gère pas sont acceptés et ignorés. Pour l’autocomplétion dans ton éditeur, ajoute <code>"$schema": "https://docs.hgdc.ch/docs.schema.json"</code>.</p>
76
+ <h2 id="champs">Champs</h2>
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+ <table><thead><tr><th>Champ</th><th>Type</th><th>Obligatoire</th><th>Rôle</th></tr></thead><tbody><tr><td><code>name</code></td><td>texte</td><td>oui</td><td>Nom de la doc, en tête du site et dans <code>llms.txt</code>. 80 caractères au plus.</td></tr><tr><td><code>description</code></td><td>texte</td><td>non</td><td>Une phrase de présentation.</td></tr><tr><td><code>navigation</code></td><td>objet</td><td>oui</td><td>Pages, groupes, onglets ou versions. Voir <a href="/guides/navigation/">Navigation</a>.</td></tr><tr><td><code>project</code></td><td>texte</td><td>non</td><td>Identifiant du projet dans la console. Active l’assistant et l’indexation.</td></tr><tr><td><code>language</code></td><td><code>fr</code>, <code>en</code>, <code>de</code>, <code>it</code></td><td>non</td><td>Langue de l’interface du site. <code>fr</code> par défaut.</td></tr><tr><td><code>colors.primary</code></td><td>couleur <code>#rrggbb</code></td><td>non</td><td>Couleur des liens et des éléments actifs.</td></tr><tr><td><code>colors.dark</code></td><td>couleur <code>#rrggbb</code></td><td>non</td><td>La même, en mode sombre.</td></tr><tr><td><code>logo</code></td><td>chemin, ou <code>{ light, dark }</code></td><td>non</td><td>Logo affiché en tête.</td></tr><tr><td><code>favicon</code></td><td>chemin</td><td>non</td><td>Icône de l’onglet du navigateur.</td></tr><tr><td><code>footer.socials</code></td><td>objet</td><td>non</td><td>Liens vers tes réseaux : <code>github</code>, <code>gitlab</code>, <code>linkedin</code>, <code>x.com</code>, <code>mastodon</code>, <code>discord</code>, <code>youtube</code>, <code>instagram</code>, <code>bluesky</code>.</td></tr><tr><td><code>assistant.enabled</code></td><td>oui / non</td><td>non</td><td><code>false</code> cache l’assistant du site.</td></tr><tr><td><code>assistant.endpoint</code></td><td>adresse</td><td>non</td><td>API de l’assistant, à ne changer que pour un environnement de test.</td></tr></tbody></table>
161
+ <h2 id="navigation">Navigation</h2>
162
+ <p>Quatre formes, une seule à la fois :</p>
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+ <table><thead><tr><th>Forme</th><th>Exemple</th></tr></thead><tbody><tr><td><code>pages</code></td><td><code>["index", "installation"]</code></td></tr><tr><td><code>groups</code></td><td><code>[{ "group": "Démarrer", "pages": ["index"] }]</code></td></tr><tr><td><code>tabs</code></td><td><code>[{ "tab": "Guides", "groups": [...] }]</code></td></tr><tr><td><code>versions</code></td><td><code>[{ "version": "v2", "default": true, "groups": [...] }]</code></td></tr></tbody></table>
189
+ <p>Un groupe accepte <code>expanded: false</code> pour être replié par défaut, et peut contenir des groupes.</p>
190
+ <h2 id="erreurs">Erreurs</h2>
191
+ <p>Un <code>docs.json</code> invalide fait échouer le build avec la liste des problèmes, par exemple :</p>
192
+ <div class="expressive-code"><link rel="stylesheet" href="/_astro/ec.8nqtp.css"><script type="module" src="/_astro/ec.0vx5m.js"></script><figure class="frame not-content"><figcaption class="header"></figcaption><pre data-language="text"><code><div class="ec-line"><div class="code"><span style="--0:#e6edf3;--1:#1f2328">docs.json invalide :</span></div></div><div class="ec-line"><div class="code"><span style="--0:#e6edf3;--1:#1f2328">- colors.primary : couleur attendue au format #rrggbb</span></div></div><div class="ec-line"><div class="code"><span style="--0:#e6edf3;--1:#1f2328">- navigation : utiliser une seule forme parmi versions, tabs, groups ou pages</span></div></div></code></pre><div class="copy"><div aria-live="polite"></div><button title="Copier dans le presse-papiers" data-copied="Copié !" data-code="docs.json invalide :- colors.primary : couleur attendue au format #rrggbb- navigation : utiliser une seule forme parmi versions, tabs, groups ou pages"><div></div></button></div></figure></div></div><footer class="sl-flex astro-k7j6ewsk"><div class="meta sl-flex astro-k7j6ewsk"></div><div class="pagination-links print:hidden astro-lwfwnmnd" dir="ltr"><a href="/reference/cli/" rel="next" class="astro-lwfwnmnd"><svg aria-hidden="true" class="astro-lwfwnmnd astro-xhs3u4tj" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"/></svg><span class="astro-lwfwnmnd">Suivant<br class="astro-lwfwnmnd"><span class="link-title astro-lwfwnmnd">Commande hgdc-docs</span></span></a></div></footer></div></div></main></div></div></div></div><hgdc-assistant data-endpoint="https://docs.hgdc.ch/api/v1/ask" data-project="jn7dj6vzkgs7n2d16kqjtb99yd8gbdw0" data-name="HGDC Docs"><button type="button" class="hgdc-launcher" data-open aria-haspopup="dialog" aria-expanded="false"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M12 3l1.9 4.6L18.5 9.5l-4.6 1.9L12 16l-1.9-4.6L5.5 9.5l4.6-1.9z" fill="currentColor"></path><path d="M18.5 15l.8 1.9 1.9.8-1.9.8-.8 1.9-.8-1.9-1.9-.8 1.9-.8z" fill="currentColor"></path></svg><span>Demander à l'IA</span><kbd class="hgdc-kbd" data-shortcut aria-hidden="true">Ctrl I</kbd></button><section class="hgdc-panel" role="dialog" aria-modal="false" aria-labelledby="hgdc-assistant-title" hidden><header class="hgdc-panel__header"><div><h2 id="hgdc-assistant-title">Assistant</h2><p>Répond à partir de cette documentation, avec ses sources.</p></div><div class="hgdc-panel__tools"><button type="button" class="hgdc-icon-button" data-reset aria-label="Nouvelle conversation" hidden><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M4 12a8 8 0 1 0 2.3-5.7M4 4v4h4" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></button><button type="button" class="hgdc-icon-button" data-close aria-label="Fermer l'assistant"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M6 6l12 12M18 6 6 18" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round"></path></svg></button></div></header><div class="hgdc-panel__body" data-log aria-live="polite"><div class="hgdc-empty" data-empty><p class="hgdc-empty__title">Pose ta question sur HGDC Docs.</p><p>Je cherche dans les pages de cette documentation et je cite mes sources. Si la réponse n'y est pas, je te le dis.</p></div></div><form class="hgdc-panel__form" data-form><label class="sr-only" for="hgdc-question">Ta question</label><textarea id="hgdc-question" data-input rows="1" maxlength="1000" placeholder="Comment publier ma doc ?" required></textarea><button type="submit" class="hgdc-send" data-send aria-label="Envoyer la question"><svg aria-hidden="true" viewBox="0 0 24 24" width="18" height="18"><path d="M12 19V5M5 12l7-7 7 7" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"></path></svg></button></form><p class="hgdc-panel__note">Réponses générées par IA (Claude, d'Anthropic), à vérifier. Les questions sont conservées 90 jours pour améliorer cette documentation.</p></section></hgdc-assistant><script type="module" src="/_astro/Assistant.astro_astro_type_script_index_0_lang.DWgmlr85.js"></script></body></html>
@@ -0,0 +1,43 @@
1
+ # docs.json
2
+
3
+ `docs.json` vit à la racine du dossier de la doc. Il reprend le format de Mintlify : les champs que HGDC Docs ne gère pas sont acceptés et ignorés. Pour l’autocomplétion dans ton éditeur, ajoute `"$schema": "https://docs.hgdc.ch/docs.schema.json"`.
4
+
5
+ ## Champs
6
+
7
+ | Champ | Type | Obligatoire | Rôle |
8
+ | -------------------- | ---------------------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------- |
9
+ | `name` | texte | oui | Nom de la doc, en tête du site et dans `llms.txt`. 80 caractères au plus. |
10
+ | `description` | texte | non | Une phrase de présentation. |
11
+ | `navigation` | objet | oui | Pages, groupes, onglets ou versions. Voir [Navigation](/guides/navigation/). |
12
+ | `project` | texte | non | Identifiant du projet dans la console. Active l’assistant et l’indexation. |
13
+ | `language` | `fr`, `en`, `de`, `it` | non | Langue de l’interface du site. `fr` par défaut. |
14
+ | `colors.primary` | couleur `#rrggbb` | non | Couleur des liens et des éléments actifs. |
15
+ | `colors.dark` | couleur `#rrggbb` | non | La même, en mode sombre. |
16
+ | `logo` | chemin, ou `{ light, dark }` | non | Logo affiché en tête. |
17
+ | `favicon` | chemin | non | Icône de l’onglet du navigateur. |
18
+ | `footer.socials` | objet | non | Liens vers tes réseaux : `github`, `gitlab`, `linkedin`, `x.com`, `mastodon`, `discord`, `youtube`, `instagram`, `bluesky`. |
19
+ | `assistant.enabled` | oui / non | non | `false` cache l’assistant du site. |
20
+ | `assistant.endpoint` | adresse | non | API de l’assistant, à ne changer que pour un environnement de test. |
21
+
22
+ ## Navigation
23
+
24
+ Quatre formes, une seule à la fois :
25
+
26
+ | Forme | Exemple |
27
+ | ---------- | --------------------------------------------------------- |
28
+ | `pages` | `["index", "installation"]` |
29
+ | `groups` | `[{ "group": "Démarrer", "pages": ["index"] }]` |
30
+ | `tabs` | `[{ "tab": "Guides", "groups": [...] }]` |
31
+ | `versions` | `[{ "version": "v2", "default": true, "groups": [...] }]` |
32
+
33
+ Un groupe accepte `expanded: false` pour être replié par défaut, et peut contenir des groupes.
34
+
35
+ ## Erreurs
36
+
37
+ Un `docs.json` invalide fait échouer le build avec la liste des problèmes, par exemple :
38
+
39
+ ```text
40
+ docs.json invalide :
41
+ - colors.primary : couleur attendue au format #rrggbb
42
+ - navigation : utiliser une seule forme parmi versions, tabs, groups ou pages
43
+ ```