@@ -28,14 +28,7 @@ export type CommandFamilyFacet<TCommandName extends string = string> = {
2828 cliOutputFormatters ?: Readonly < Partial < Record < TCommandName , CliOutputFormatter > > > ;
2929} ;
3030
31- /**
32- * What a command file authors: metadata plus the one function that runs the command. `run`'s
33- * `Input` is inferred from `metadata.readInput`, so there is nowhere else to declare the
34- * executable definition — `defineCommandFacet` derives `name`, `description`, `mcpDetail`,
35- * `inputSchema`, and `invoke` from these two fields. `cliSchema` carries grammar only and may be
36- * omitted entirely; `text` is required, because a command with no list line has nowhere to
37- * appear in `--help`.
38- */
31+ /** What a command file authors: metadata plus `run`; the facet derives the executable from them. */
3932export type CommandFacetInput <
4033 TCommandName extends string = string ,
4134 Input = unknown ,
@@ -52,13 +45,7 @@ export type CommandFacetInput<
5245 text : FacetCommandText ;
5346} ;
5447
55- /**
56- * What `defineCommandFacet` returns: the authored facet with its schema completed and the
57- * executable `definition` derived from `metadata` and `run`. Stating this as a distinct type is
58- * what lets the registry read `cliSchema` and `definition` without asserting they are populated.
59- * `Result` carries the command's specific return type through to `definition.invoke`, the same way
60- * `CommandExecutionResult` recovers it per command name from the family registry.
61- */
48+ /** The authored facet with `cliSchema` completed and `definition` derived, typed per command. */
6249export type CommandFacet <
6350 TCommandName extends string = string ,
6451 Result = unknown ,
0 commit comments