---
title: "Référence d'API — nodefony — command"
source: docs/api/core/command.md
url: https://nodefony.github.io/nodefony-core/docs/api/core/command/
---


[Documentation](../../../) › [Référence d'API](../../) › [`nodefony`](../) › command

> Générée depuis les déclarations de types publiées de `nodefony` **10.0.0-beta.5** : exactement ce que reçoit une application qui l'installe. Cette page n'existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

## `nodefony`

`import { … } from "nodefony"` — 3 symboles.

### Classes (2)

#### `Builder`

```ts
class Builder extends Service
```

- `command: Command`
- `cli: Cli | null`
- `response: Record<string, any>`
- `debug: boolean`
- `interactive: boolean`
- `location: string`
- `constructor(command: Command)`
- `run(...args: any[]): Promise<any>`
- `generate(): Promise<any>`
- `setLocation(location: string | FileClass): string`
- `removeInteractivePath(file: string): Promise<boolean>`
- `buildSkeleton(skeleton: string | FileClass, parse: boolean, data: Record<string, any>): Promise<string | NodeJS.ArrayBufferView>`
- `createFile(myPath: string, skeleton: string, parse?: boolean, params?: Record<string, any>): Promise<File>`
- `createDirectory(myPath: fs.PathLike, mode?: fs.MakeDirectoryOptions | fs.Mode | null, force?: boolean): Promise<File>`
- `build(obj: BuilderObject | BuilderObject[], parent?: FileClass | string | File, force?: boolean): Promise<FileClass | null | File>`

#### `Command`

```ts
class Command extends Service
```

- `cli: Cli | CliKernel`
- `command: Cmd`
- `program: typeof program`
- `json: boolean`
- `debug: boolean`
- `interactive: boolean`
- `builder: Builder | null`
- `prompts: typeof import("@inquirer/prompts")` — Namespace `@inquirer/prompts` — chargé LAZY via `loadPrompts` (import dynamique) uniquement pour les commandes interactives.
- `options: OptionsCommandInterface` — Options de la commande — le type précis du champ hérité de `Service`.
- `response: Record<string, any>`
- `kernelEvent: KernelEventKey`
- `lifetime: RunLifetime` — Durée de vie déclarée (cf `OptionsCommandInterface.lifetime`).
- `runProfile: IRunProfile | null` — Profil d'exécution déclaré (cf `OptionsCommandInterface.runProfile`) — `null` si non déclaré.
- `quietBoot: boolean` — Boot silencieux déclaré (cf `OptionsCommandInterface.quietBoot`).
- `servesTraffic: boolean` — Intention de servir du trafic (cf `OptionsCommandInterface.servesTraffic`).
- `onKernelPreStart?(...args: unknown[]): Promise<void>`
- `onKernelStart?(...args: unknown[]): Promise<void>`
- `onKernelPreRegister?(...args: unknown[]): Promise<void>`
- `onKernelRegister?(...args: unknown[]): Promise<void>`
- `onKernelPreBoot?(...args: unknown[]): Promise<void>`
- `onKernelBoot?(...args: unknown[]): Promise<void>`
- `onKernelReady?(...args: unknown[]): Promise<void>`
- `onKernelServersReady?(...args: unknown[]): Promise<void>`
- `onKernelPostReady?(...args: unknown[]): Promise<void>`
- `onKernelTerminate?(...args: unknown[]): Promise<void>` — Cleanup / graceful shutdown — fire à `terminate()` (reçoit le code en dernier arg).
- `currentCommand?: Cmd`
- `constructor(name: string, description: string, cli: Cli | CliKernel, options?: OptionsCommandInterface)`
- `setEvents(...args: unknown[]): void`
- `isComplete(): boolean`
- `description(): string`
- `loadPrompts(): Promise<void>` — Charge `@inquirer/prompts` à la demande (import dynamique, idempotent) et le pose sur `prompts`.
- `askArgument(value: string, spec: { name: string; message: string; choices?: readonly string[]; isTTY?: boolean; }): Promise<string>` — Rend un argument : celui qu'on a reçu, ou celui qu'on DEMANDE.
- `action(...args: unknown[]): Promise<unknown>` — Méthode d'action de la commande.
- `run(...args: unknown[]): Promise<unknown>` — Méthode principale pour exécuter la commande.
- `forceInteractiveMode(): void`
- `interaction(...args: unknown[]): Promise<unknown>` — Méthode pour l'interaction avec l'utilisateur.
- `generate(...args: unknown[]): Promise<unknown>` — Méthode pour générer le résultat de la commande.
- `alias(name: string): Cmd`
- `addBuilder(builder: typeof Builder): Builder`
- `parse(argv?: string[], options?: ParseOptions): Cmd` — Méthode pour analyser les arguments de la commande.
- `parseAsync(argv?: string[], options?: ParseOptions): Promise<Cmd>`
- `runCommand(cmd: string, args?: any[]): Cmd` — Méthode pour exécuter une commande avec des arguments spécifiques.
- `runCommandAsync(cmd: string, args?: any[]): Promise<Cmd>`
- `addOption(flags: string, description?: string, suggestions?: readonly string[]): Option` — Méthode pour ajouter une option à la commande.
- `addArgument(arg: string, description?: string): Argument` — Méthode pour ajouter un argument à la commande.
- `showBanner(): Promise<string | Error>` — Méthode pour afficher une bannière liée à la commande.
- `logger(pci: any, severity?: Severity, msgid?: Msgid, msg?: Message): void` — Méthode pour gérer la journalisation de la commande.
- `terminate(code?: number): Promise<void>`

### Interfaces (1)

#### `OptionsCommandInterface`

```ts
interface OptionsCommandInterface extends DefaultOptionsService
```

- `showBanner?: boolean`
- `kernelEvent?: KernelEventKey`
- `lifetime?: RunLifetime` — Durée de vie du run (capability déclarative).
- `runProfile?: IRunProfile` — Profil d'exécution DÉCLARÉ (capability statique, cf `IRunProfile`).
- `servesTraffic?: boolean` — La commande, une fois lancée, SERT du trafic — dans ce process ou dans ceux qu'elle démarre (workers d'un cluster, enfant d'un superviseur).
- `quietBoot?: boolean` — Boot SILENCIEUX pour CETTE commande (capability déclarative).
- `helpGroup?: string` — Le groupe d'INTENTION sous lequel l'aide range cette commande.
- `examples?: readonly string[] | () => readonly string[]` — Des invocations COMPLÈTES qui marchent, telles qu'on les tape (`"nodefony orm:generate --name ajout_du_titre"`).

---

[← Toutes les références d'API](../../)
