INNER CODE UNIT · Python
LazyGroup
evalstate/fast-agent · src/fast_agent/cli/main.py:87
class LazyGroup(TyperGroup):
lazy_subcommands: ClassVar[dict[str, str]] = {}
lazy_subcommand_help: ClassVar[dict[str, str]] = {}
def parse_args(self, ctx: Context, args: list[str]) -> list[str]:
normalize_convenience_flag_args(args)
if _first_root_command(args) == "go":
normalize_resume_flag_args(args)
return super().parse_args(ctx, args)
def list_commands(self, ctx: Context) -> list[str]:
del ctx
return sorted(self.lazy_subcommands)
def get_command(self, ctx: Context, cmd_name: str) -> Command | None:
if ctx.meta.get(_ROOT_HELP_CONTEXT_KEY) is True:
short_help = self.lazy_subcommand_help.get(cmd_name)
return TyperCommand(name=cmd_name, help=short_help) if short_help is not None else None