@nowline/cli 0.8.6 → 0.9.0

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 (89) hide show
  1. package/README.md +32 -9
  2. package/dist/cli/args.d.ts +20 -4
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +20 -0
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli/help.d.ts.map +1 -1
  7. package/dist/cli/help.js +30 -2
  8. package/dist/cli/help.js.map +1 -1
  9. package/dist/cli/options.d.ts +74 -0
  10. package/dist/cli/options.d.ts.map +1 -0
  11. package/dist/cli/options.js +209 -0
  12. package/dist/cli/options.js.map +1 -0
  13. package/dist/commands/init.d.ts.map +1 -1
  14. package/dist/commands/init.js +2 -3
  15. package/dist/commands/init.js.map +1 -1
  16. package/dist/commands/mcp-install.d.ts +18 -0
  17. package/dist/commands/mcp-install.d.ts.map +1 -0
  18. package/dist/commands/mcp-install.js +151 -0
  19. package/dist/commands/mcp-install.js.map +1 -0
  20. package/dist/commands/mcp.d.ts.map +1 -1
  21. package/dist/commands/mcp.js +5 -11
  22. package/dist/commands/mcp.js.map +1 -1
  23. package/dist/commands/render.d.ts +7 -0
  24. package/dist/commands/render.d.ts.map +1 -1
  25. package/dist/commands/render.js +161 -155
  26. package/dist/commands/render.js.map +1 -1
  27. package/dist/commands/serve.d.ts.map +1 -1
  28. package/dist/commands/serve.js +87 -60
  29. package/dist/commands/serve.js.map +1 -1
  30. package/dist/diagnostics/adapt.d.ts +12 -1
  31. package/dist/diagnostics/adapt.d.ts.map +1 -1
  32. package/dist/diagnostics/adapt.js +53 -1
  33. package/dist/diagnostics/adapt.js.map +1 -1
  34. package/dist/diagnostics/model.d.ts +1 -1
  35. package/dist/generated/version.d.ts +1 -1
  36. package/dist/generated/version.js +2 -2
  37. package/dist/i18n/locale.d.ts.map +1 -1
  38. package/dist/i18n/locale.js +2 -5
  39. package/dist/i18n/locale.js.map +1 -1
  40. package/dist/index.js +4 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/io/config.d.ts +1 -1
  43. package/dist/io/config.d.ts.map +1 -1
  44. package/dist/io/config.js +1 -1
  45. package/dist/io/config.js.map +1 -1
  46. package/dist/io/log.d.ts +17 -0
  47. package/dist/io/log.d.ts.map +1 -0
  48. package/dist/io/log.js +16 -0
  49. package/dist/io/log.js.map +1 -0
  50. package/dist/mcp-install/clients.d.ts +58 -0
  51. package/dist/mcp-install/clients.d.ts.map +1 -0
  52. package/dist/mcp-install/clients.js +304 -0
  53. package/dist/mcp-install/clients.js.map +1 -0
  54. package/dist/mcp-install/host.d.ts +29 -0
  55. package/dist/mcp-install/host.d.ts.map +1 -0
  56. package/dist/mcp-install/host.js +72 -0
  57. package/dist/mcp-install/host.js.map +1 -0
  58. package/dist/mcp-install/json-config.d.ts +29 -0
  59. package/dist/mcp-install/json-config.d.ts.map +1 -0
  60. package/dist/mcp-install/json-config.js +139 -0
  61. package/dist/mcp-install/json-config.js.map +1 -0
  62. package/dist/mcp-install/server-command.d.ts +26 -0
  63. package/dist/mcp-install/server-command.d.ts.map +1 -0
  64. package/dist/mcp-install/server-command.js +52 -0
  65. package/dist/mcp-install/server-command.js.map +1 -0
  66. package/man/fr/nowline.1 +246 -19
  67. package/man/fr/nowline.5 +819 -45
  68. package/man/nowline.1 +191 -18
  69. package/man/nowline.5 +764 -36
  70. package/package.json +19 -19
  71. package/src/cli/args.ts +55 -5
  72. package/src/cli/help.ts +30 -2
  73. package/src/cli/options.ts +286 -0
  74. package/src/commands/init.ts +2 -3
  75. package/src/commands/mcp-install.ts +211 -0
  76. package/src/commands/mcp.ts +8 -13
  77. package/src/commands/render.ts +198 -195
  78. package/src/commands/serve.ts +102 -74
  79. package/src/diagnostics/adapt.ts +62 -0
  80. package/src/diagnostics/model.ts +1 -1
  81. package/src/generated/version.ts +2 -2
  82. package/src/i18n/locale.ts +2 -6
  83. package/src/index.ts +3 -0
  84. package/src/io/config.ts +0 -1
  85. package/src/io/log.ts +33 -0
  86. package/src/mcp-install/clients.ts +443 -0
  87. package/src/mcp-install/host.ts +106 -0
  88. package/src/mcp-install/json-config.ts +179 -0
  89. package/src/mcp-install/server-command.ts +75 -0
@@ -0,0 +1,26 @@
1
+ import type { HostEnv } from './host.js';
2
+ export type ServerKind = 'self' | 'npx';
3
+ /** The stdio launch line every harness config stores. */
4
+ export interface ServerEntry {
5
+ command: string;
6
+ args: string[];
7
+ }
8
+ export interface ResolvedServer {
9
+ entry: ServerEntry;
10
+ /** Notices for stderr (dropped under `-q`). */
11
+ warnings: string[];
12
+ }
13
+ /**
14
+ * Decides what `--mcp-install` registers.
15
+ *
16
+ * `self` points at the installed `nowline`. The path is absolute because GUI
17
+ * harnesses (Claude Desktop, Cursor, VS Code launched from the Dock) don't
18
+ * inherit the shell PATH, and it is the stable PATH entry rather than the
19
+ * realpath, so a Homebrew symlink keeps working across `brew upgrade` instead
20
+ * of pinning `Cellar/nowline/<version>/`.
21
+ *
22
+ * `npx` registers `npx -y @nowline/mcp`, which tracks npm independently of
23
+ * the CLI but needs Node visible to the harness.
24
+ */
25
+ export declare function resolveServer(kind: ServerKind, root: string | undefined, host: HostEnv): ResolvedServer;
26
+ //# sourceMappingURL=server-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-command.d.ts","sourceRoot":"","sources":["../../src/mcp-install/server-command.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC;AAExC,yDAAyD;AACzD,MAAM,WAAW,WAAW;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CACzB,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE,OAAO,GACd,cAAc,CAyChB"}
@@ -0,0 +1,52 @@
1
+ import * as path from 'node:path';
2
+ /**
3
+ * Decides what `--mcp-install` registers.
4
+ *
5
+ * `self` points at the installed `nowline`. The path is absolute because GUI
6
+ * harnesses (Claude Desktop, Cursor, VS Code launched from the Dock) don't
7
+ * inherit the shell PATH, and it is the stable PATH entry rather than the
8
+ * realpath, so a Homebrew symlink keeps working across `brew upgrade` instead
9
+ * of pinning `Cellar/nowline/<version>/`.
10
+ *
11
+ * `npx` registers `npx -y @nowline/mcp`, which tracks npm independently of
12
+ * the CLI but needs Node visible to the harness.
13
+ */
14
+ export function resolveServer(kind, root, host) {
15
+ const rootArgs = root !== undefined ? ['--root', path.resolve(host.cwd, root)] : [];
16
+ if (kind === 'npx') {
17
+ // Windows GUI apps can't spawn `npx.cmd` without a shell.
18
+ if (host.platform === 'win32') {
19
+ return {
20
+ entry: { command: 'cmd', args: ['/c', 'npx', '-y', '@nowline/mcp', ...rootArgs] },
21
+ warnings: [],
22
+ };
23
+ }
24
+ return {
25
+ entry: { command: 'npx', args: ['-y', '@nowline/mcp', ...rootArgs] },
26
+ warnings: [],
27
+ };
28
+ }
29
+ if (host.isCompiledBinary) {
30
+ const binary = host.realpath(host.execPath);
31
+ const onPath = host
32
+ .findAllOnPath('nowline')
33
+ .find((candidate) => host.realpath(candidate) === binary);
34
+ const command = onPath ?? host.execPath;
35
+ const warnings = [];
36
+ if (onPath === undefined && /[\\/]Cellar[\\/]/.test(command)) {
37
+ warnings.push(`warning: registered ${command}, which changes on \`brew upgrade\`; put Homebrew's bin on PATH and re-run --mcp-install.`);
38
+ }
39
+ return { entry: { command, args: ['--mcp', ...rootArgs] }, warnings };
40
+ }
41
+ // Running under Node (npm install or a checkout): the `nowline` shim is a
42
+ // `#!/usr/bin/env node` script a GUI harness may not be able to run, so
43
+ // register the absolute Node and the script it runs.
44
+ const script = host.realpath(host.argv1 ?? '');
45
+ return {
46
+ entry: { command: host.execPath, args: [script, '--mcp', ...rootArgs] },
47
+ warnings: [
48
+ `warning: registered ${host.execPath}; re-run --mcp-install if you remove or switch this Node version.`,
49
+ ],
50
+ };
51
+ }
52
+ //# sourceMappingURL=server-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-command.js","sourceRoot":"","sources":["../../src/mcp-install/server-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAiBlC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CACzB,IAAgB,EAChB,IAAwB,EACxB,IAAa;IAEb,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpF,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACjB,0DAA0D;QAC1D,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO;gBACH,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC,EAAE;gBACjF,QAAQ,EAAE,EAAE;aACf,CAAC;QACN,CAAC;QACD,OAAO;YACH,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC,EAAE;YACpE,QAAQ,EAAE,EAAE;SACf,CAAC;IACN,CAAC;IAED,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI;aACd,aAAa,CAAC,SAAS,CAAC;aACxB,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC;QACxC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,MAAM,KAAK,SAAS,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,QAAQ,CAAC,IAAI,CACT,uBAAuB,OAAO,2FAA2F,CAC5H,CAAC;QACN,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC;IAC1E,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,qDAAqD;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC/C,OAAO;QACH,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,EAAE;QACvE,QAAQ,EAAE;YACN,uBAAuB,IAAI,CAAC,QAAQ,mEAAmE;SAC1G;KACJ,CAAC;AACN,CAAC"}
package/man/fr/nowline.1 CHANGED
@@ -1,6 +1,11 @@
1
1
  .\" Traduction française neutre. Les divergences régionales (fr-CA, fr-FR)
2
2
  .\" prennent la forme de surcouches dans packages/cli/man/<locale>/nowline.1
3
3
  .\" lorsqu'elles existent. Voir specs/localization.md.
4
+ .\"
5
+ .\" Empreinte de la page anglaise relue pour cette traduction. Après avoir
6
+ .\" reporté une modification de la page anglaise, remplacez-la par la ligne
7
+ .\" qu'affiche packages/cli/test/man/translation-parity.test.ts.
8
+ .\" translated-from: nowline.1 sha256:3fc6d77fadcf4ba2add7f127da8cff257262ed010f253a1b0a0e7801b56f0d4f
4
9
  .Dd $Mdocdate$
5
10
  .Dt NOWLINE 1
6
11
  .Os
@@ -13,6 +18,7 @@
13
18
  .Op Fl o Ar chemin
14
19
  .Op Fl t Ar thème
15
20
  .Op Fl -now Ar date
21
+ .Op Fl -timezone Ar fuseau
16
22
  .Op Ar options
17
23
  .Ar entrée
18
24
  .Nm
@@ -24,6 +30,17 @@
24
30
  .Fl -init
25
31
  .Op Ar nom
26
32
  .Nm
33
+ .Fl -mcp
34
+ .Op Fl -root Ar rép
35
+ .Nm
36
+ .Fl -mcp-install
37
+ .Op Ar client
38
+ .Op Ar options
39
+ .Nm
40
+ .Fl -mcp-uninstall
41
+ .Op Ar client
42
+ .Op Ar options
43
+ .Nm
27
44
  .Fl -dry-run
28
45
  .Op Ar options
29
46
  .Ar entrée
@@ -137,6 +154,9 @@ rendu réussi.
137
154
  L'option
138
155
  .Fl o Ar chemin
139
156
  écrit également le résultat sur le disque à chaque reconstruction.
157
+ Il accepte les mêmes options de rendu qu'un rendu simple (thème,
158
+ largeur, liens, mode strict, etc.) et affiche ce qu'afficherait un
159
+ rendu simple du fichier avec les mêmes options.
140
160
  .It Fl -init Op Ar nom
141
161
  Crée un fichier
142
162
  .Pa .nowline
@@ -149,6 +169,37 @@ est ajouté automatiquement s'il manque.
149
169
  Le nom par défaut est
150
170
  .Sy roadmap .
151
171
  Les fichiers existants sont écrasés sans confirmation.
172
+ .It Fl -mcp
173
+ Lance un serveur Model Context Protocol (MCP) sur l'entrée et la sortie
174
+ standard, qui expose à un agent les outils de validation, de rendu,
175
+ d'export et de fichiers.
176
+ Avec
177
+ .Fl -port Ar n ,
178
+ il sert plutôt du Streamable HTTP local.
179
+ C'est le même serveur que
180
+ .Ql npx @nowline/mcp .
181
+ .It Fl -mcp-install Op Ar client
182
+ Enregistre le serveur MCP auprès d'un agent\ :
183
+ .Sy claude-code , claude-desktop , cursor , vscode , codex , gemini ,
184
+ .Sy antigravity , muse , opencode , copilot , windsurf , zed , amp , goose ,
185
+ ou
186
+ .Sy all .
187
+ Sans
188
+ .Ar client ,
189
+ l'installe dans chaque agent trouvé sur cette machine.
190
+ Les configurations JSON sont modifiées sur place, en conservant les
191
+ commentaires et les autres entrées\ ; Claude Code (portée utilisateur) et
192
+ Codex passent par leur propre commande
193
+ .Ql mcp add \ ;
194
+ Goose reçoit un extrait à coller.
195
+ Relancer la commande est sans risque.
196
+ Avec
197
+ .Fl n ,
198
+ affiche la modification sans rien écrire ni exécuter.
199
+ Voir
200
+ .Sx OPTIONS MCP .
201
+ .It Fl -mcp-uninstall Op Ar client
202
+ Retire le serveur des mêmes configurations.
152
203
  .It Fl n , -dry-run
153
204
  Exécute la totalité du pipeline (analyse + validation + mise en page +
154
205
  format) sans écrire de fichier.
@@ -189,16 +240,63 @@ comme
189
240
  .Sh OPTIONS DE PRODUCTION
190
241
  .Bl -tag -width Fl
191
242
  .It Fl t , -theme Ar nom
192
- .Sy light | dark .
243
+ .Sy light | dark | grayscale ;
244
+ .Sy greyscale
245
+ est accepté comme alias.
246
+ Par défaut\ :
247
+ .Pa .nowlinerc
248
+ .Sy theme ,
249
+ sinon
250
+ .Sy light .
193
251
  .It Fl -now Ar date
194
252
  Ancrage
195
253
  .Sq Maintenant
196
- pour la ligne de temps présent et le calcul des dates, au format
197
- .Pa AAAA-MM-JJ .
198
- Par défaut\ : aujourd'hui (date civile UTC du système).
254
+ pour la ligne de temps présent et le calcul des dates.
255
+ Accepte une date nue
256
+ .Pa AAAA-MM-JJ
257
+ (flottante\ ; indépendante du fuseau) ou un instant ISO\~8601 complet tel que
258
+ .Pa 2026-06-04T23:00:00Z
259
+ ou
260
+ .Pa 2026-06-05T06:00:00+07:00
261
+ (un Z ou un décalage \(+-HH:MM intégré l'emporte sur
262
+ .Fl -timezone ) .
263
+ Une date nue ou un instant sans décalage est flottant\ : la partie date
264
+ écrite est utilisée et
265
+ .Fl -timezone
266
+ est ignoré.
267
+ La partie date doit désigner un jour réel du calendrier\ :
268
+ .Pa 2026-02-30
269
+ est une erreur de saisie, et non le 2\~mars.
270
+ Par défaut\ : la date civile du jour dans le fuseau de l'hôte (ou celui de
271
+ .Fl -timezone
272
+ s'il est indiqué).
199
273
  Indiquez
200
274
  .Fl -now Sq -
201
275
  pour supprimer entièrement la ligne de temps présent.
276
+ .It Fl -timezone Ar fuseau
277
+ Fuseau horaire utilisé pour la valeur par défaut «\ aujourd'hui\ »
278
+ fondée sur l'horloge\ ; consulté uniquement lorsque
279
+ .Fl -now
280
+ est omis.
281
+ Formes acceptées\ :
282
+ .Bl -tag -width "America/Los_Angeles" -compact
283
+ .It Sy local
284
+ Fuseau de l'hôte ou du lecteur (par défaut si l'option est absente).
285
+ .It Sy UTC
286
+ UTC.
287
+ .It Sy Z , +00:00
288
+ Raccourci pour un décalage nul (équivaut à
289
+ .Sy UTC ) .
290
+ .It Sy \(+-HH , \(+-HH:MM , \(+-HHMM
291
+ Décalage fixe (ignore l'heure d'été\ ; limitation documentée).
292
+ .It Sy America/Los_Angeles
293
+ Tout nom de fuseau IANA valide.
294
+ .El
295
+ Les abréviations ambiguës telles que
296
+ .Sy PST
297
+ et
298
+ .Sy IST
299
+ sont rejetées avec un message d'erreur explicite.
202
300
  .It Fl -locale Ar bcp47
203
301
  Étiquette de langue BCP-47 pour les messages CLI de l'opérateur
204
302
  (diagnostics de validation sur la sortie d'erreur,
@@ -250,10 +348,35 @@ Facteur d'échelle pour le rendu raster (PNG uniquement\ ; 1 par défaut).
250
348
  .It Fl -strict
251
349
  Promeut les avertissements (assets, sanitiseur) en erreurs.
252
350
  .It Fl w , -width Ar px
253
- Largeur du canevas en pixels (1280 par défaut).
351
+ Largeur maximale du canevas en pixels.
352
+ Par défaut\ :
353
+ .Pa .nowlinerc
354
+ .Sy width ,
355
+ sinon aucune, et le canevas s'ajuste au contenu.
356
+ Une feuille de route plus large resserre sa frise pour tenir, jusqu'à un pixel
357
+ par jour\ ; les légendes qui débordent de leurs barres peuvent encore élargir le
358
+ canevas.
359
+ .It Fl -non-working Ar mode
360
+ Façon dont un calendrier ouvré affiche ses jours non travaillés sur le
361
+ graphique\ :
362
+ .Sy hide
363
+ les replie (par défaut),
364
+ .Sy show
365
+ les dessine en bandes grisées.
366
+ Prévaut sur la clé
367
+ .Sy default roadmap non-working:
368
+ du fichier\ ; sans option, la clé s'applique, puis
369
+ .Sy hide .
370
+ Toute autre valeur se termine avec le code 2.
371
+ L'ordonnancement est identique dans les deux vues\ : les sorties Mermaid,
372
+ MS Project et XLSX ne changent pas.
254
373
  .It Fl -asset-root Ar dossier
255
374
  Dossier à partir duquel les ressources logo / image peuvent être
256
- chargées (par défaut\ : dossier du fichier d'entrée).
375
+ chargées (par défaut\ : la clé
376
+ .Sy assetRoot
377
+ de
378
+ .Pa .nowlinerc ,
379
+ puis le dossier du fichier d'entrée).
257
380
  .El
258
381
  .Sh OPTIONS SPÉCIFIQUES AU FORMAT
259
382
  .Bl -tag -width Fl
@@ -292,12 +415,13 @@ Saute le sondage de polices de la plateforme et force la paire DejaVu
292
415
  intégrée.
293
416
  La sortie est stable octet par octet entre machines.
294
417
  .It Fl -start Ar date
295
- MS Project\ : date d'ancrage
296
- .Pq Pa AAAA-MM-JJ
297
- pour les feuilles de route uniquement relatives.
298
- Par défaut\ :
299
- .Fl -now ,
300
- puis repli déterministe.
418
+ MS Project\ : date de début du projet
419
+ .Pq Pa AAAA-MM-JJ .
420
+ Par défaut\ : le
421
+ .Cm start:
422
+ de la feuille de route, sinon
423
+ .Fl -now
424
+ (aujourd'hui).
301
425
  .El
302
426
  .Sh OPTIONS DE SERVEUR
303
427
  .Bl -tag -width Fl
@@ -312,6 +436,36 @@ pour exposer sur le réseau local).
312
436
  .It Fl -open
313
437
  Ouvre le navigateur au démarrage.
314
438
  .El
439
+ .Sh OPTIONS MCP
440
+ .Bl -tag -width Fl
441
+ .It Fl -root Ar rép
442
+ Répertoire que les outils de fichiers MCP peuvent lire et écrire (par
443
+ défaut\ : le répertoire courant).
444
+ Avec
445
+ .Fl -mcp-install ,
446
+ il est inscrit dans la commande enregistrée sous forme de chemin absolu.
447
+ .It Fl -scope Ar portée
448
+ Où
449
+ .Fl -mcp-install
450
+ écrit\ :
451
+ .Sy user
452
+ (par défaut\ ; la configuration propre à l'utilisateur de l'agent) ou
453
+ .Sy project
454
+ (le fichier de configuration du répertoire courant, à versionner).
455
+ .It Fl -server Ar type
456
+ Ce que
457
+ .Fl -mcp-install
458
+ enregistre\ :
459
+ .Sy self
460
+ (par défaut\ ; ce binaire
461
+ .Nm
462
+ avec
463
+ .Fl -mcp ,
464
+ si bien qu'une installation Homebrew n'exige pas Node.js) ou
465
+ .Sy npx
466
+ .Pq Ql npx -y @nowline/mcp ,
467
+ qui suit npm indépendamment de la CLI.
468
+ .El
315
469
  .Sh OPTIONS DE JOURNALISATION
316
470
  Les indicateurs de journalisation sont mutuellement exclusifs.
317
471
  .Bl -tag -width Fl
@@ -321,7 +475,10 @@ Affiche des diagnostics supplémentaires sur la sortie d'erreur standard
321
475
  décisions de repli).
322
476
  .It Fl q , -quiet
323
477
  Supprime les messages non liés aux erreurs sur la sortie d'erreur
324
- standard.
478
+ standard : avertissements, notices et avertissements du rapport de
479
+ diagnostics d'une exécution en échec.
480
+ Les erreurs et les diagnostics JSON restent affichés, et le code de
481
+ sortie ne change pas.
325
482
  .El
326
483
  .Sh OPTIONS STANDARD
327
484
  .Bl -tag -width Fl
@@ -370,25 +527,84 @@ pour la matrice de résolution.
370
527
  Fichier de configuration JSON ou YAML facultatif.
371
528
  Recherché en remontant depuis le dossier du fichier d'entrée\ ; le plus
372
529
  proche l'emporte.
373
- Les indicateurs CLI surclassent les valeurs de configuration.
374
- Clés reconnues\ :
375
- .Sy theme , defaultFormat , width , pdfPageSize , pdfOrientation ,
376
- .Sy pdfMargin , fontSans , fontMono , headlessFonts , locale .
530
+ Chaque clé reconnue sert de valeur par défaut à un indicateur\ :
531
+ l'indicateur l'emporte s'il est fourni, puis la clé, puis la valeur
532
+ par défaut intégrée.
533
+ .Sy theme
534
+ .Pq Fl t ,
535
+ .Sy defaultFormat
536
+ .Pq Fl f ,
537
+ .Sy width
538
+ .Pq Fl w ,
539
+ .Sy pdfPageSize
540
+ .Pq Fl -page-size ,
541
+ .Sy pdfOrientation
542
+ .Pq Fl -orientation ,
543
+ .Sy pdfMargin
544
+ .Pq Fl -margin ,
545
+ .Sy fontSans
546
+ .Pq Fl -font-sans ,
547
+ .Sy fontMono
548
+ .Pq Fl -font-mono ,
549
+ .Sy headlessFonts
550
+ .Pq Fl -headless ,
551
+ .Sy useSystemFonts
552
+ .Pq Fl -use-system-fonts ,
553
+ .Sy assetRoot
554
+ .Pq Fl -asset-root ,
555
+ .Sy locale
556
+ .Pq Fl -locale .
557
+ .Sy defaultFormat
558
+ ne s'applique que si l'extension de
559
+ .Fl o
560
+ n'est pas reconnue\ ;
561
+ .Sy locale
562
+ passe après les variables d'environnement de langue.
563
+ Une clé
564
+ .Sy assetRoot
565
+ relative est résolue par rapport au dossier du
566
+ .Pa .nowlinerc
567
+ qui la contient, alors qu'une valeur relative de
568
+ .Fl -asset-root
569
+ est résolue par rapport au dossier de travail.
570
+ .Fl -serve
571
+ lit
572
+ .Sy theme ,
573
+ .Sy width ,
574
+ .Sy assetRoot
575
+ et
576
+ .Sy locale .
577
+ Une valeur invalide est une erreur d'utilisation qui nomme la clé.
377
578
  Les clés inconnues sont ignorées.
579
+ Il n'y a pas de clé de journalisation\ :
580
+ .Sy quiet
581
+ est ignorée, et
582
+ .Fl q
583
+ et
584
+ .Fl v
585
+ ne s'appliquent qu'en ligne de commande.
378
586
  .El
379
587
  .Sh CODES DE SORTIE
380
588
  .Bl -tag -width Ds
381
589
  .It 0
382
590
  Succès.
383
591
  .It 1
384
- Erreur de validation (analyse en échec, référence invalide, etc.).
592
+ Erreur de validation (analyse en échec, référence invalide, etc.), y
593
+ compris les règles de vagues vérifiées à travers les fichiers inclus,
594
+ comme
595
+ .Sy NL.E0202 .
596
+ Elles sont signalées comme les diagnostics du validateur, au fichier et
597
+ à la ligne qu'elles désignent.
385
598
  .It 2
386
599
  Erreur d'utilisation (entrée manquante, indicateurs incorrects ou
387
600
  mutuellement exclusifs, format non pris en charge, fichier introuvable,
388
601
  sortie binaire vers un terminal, entrée illisible).
389
602
  .It 3
390
603
  Erreur de sortie (impossible d'écrire à la destination, échec du
391
- pipeline d'export).
604
+ pipeline d'export), y compris une inclusion impossible à résoudre
605
+ (inclusion illisible, circulaire ou en double,
606
+ .Cm start:
607
+ différent).
392
608
  .El
393
609
  .Sh EXEMPLES
394
610
  Produire le SVG par défaut dans le dossier courant\ :
@@ -425,6 +641,14 @@ nowline --init
425
641
  nowline --init mon-projet
426
642
  .Ed
427
643
  .Pp
644
+ Servir les outils MCP, ou les enregistrer auprès de chaque agent
645
+ trouvé\ :
646
+ .Bd -literal -offset indent
647
+ nowline --mcp
648
+ nowline --mcp-install
649
+ nowline --mcp-install cursor --scope project -n
650
+ .Ed
651
+ .Pp
428
652
  PDF avec géométrie de page explicite, stable octet pour octet entre
429
653
  machines\ :
430
654
  .Bd -literal -offset indent
@@ -445,6 +669,9 @@ qu'elle reste française quel que soit l'opérateur qui exécute
445
669
  nowline v1 locale:fr-CA
446
670
  .Ed
447
671
  .Sh VOIR AUSSI
672
+ .Xr nowline 5
673
+ .Pq Sy man 5 nowline
674
+ .Pp
448
675
  .Lk https://github.com/lolay/nowline "Code source, suivi des incidents et référence DSL complète"
449
676
  .Pp
450
677
  Le dossier