fix: lazy-load heavy CLI commands

This commit is contained in:
AgentRun Artificer
2026-06-11 03:30:08 +08:00
parent ef5c1c0680
commit 9e2dd375d7
3 changed files with 83 additions and 18 deletions
+21 -11
View File
@@ -1,10 +1,5 @@
import { ghHelp } from "./gh";
import { authBrokerHelp } from "./auth-broker";
import { hwlabHelp } from "./hwlab-cd";
import { hwlabG14Help } from "./hwlab-g14";
import { hwlabNodeHelp } from "./hwlab-node";
import { agentRunHelp } from "./agentrun";
import { platformInfraHelp } from "./platform-infra";
export function rootHelp(): unknown {
return {
@@ -600,7 +595,7 @@ function artifactRegistryHelp(): unknown {
};
}
export function staticNamespaceHelp(args: string[]): unknown | null {
export async function staticNamespaceHelp(args: string[]): Promise<unknown | null> {
const [top, sub] = args;
if (!args.slice(1).some(isHelpToken)) return null;
if (top === "config") return configHelp();
@@ -619,10 +614,25 @@ export function staticNamespaceHelp(args: string[]): unknown | null {
if (top === "artifact-registry") return artifactRegistryHelp();
if (top === "auth-broker") return authBrokerHelp();
if (top === "gh") return ghHelp();
if (top === "agentrun") return agentRunHelp();
if (top === "platform-infra") return platformInfraHelp();
if (top === "hwlab" && (sub === "node" || sub === "nodes")) return hwlabNodeHelp();
if (top === "hwlab" && sub === "g14") return hwlabG14Help();
if (top === "hwlab") return hwlabHelp();
if (top === "agentrun") {
const { agentRunHelp } = await import("./agentrun");
return agentRunHelp();
}
if (top === "platform-infra") {
const { platformInfraHelp } = await import("./platform-infra");
return platformInfraHelp();
}
if (top === "hwlab" && (sub === "node" || sub === "nodes")) {
const { hwlabNodeHelp } = await import("./hwlab-node");
return hwlabNodeHelp();
}
if (top === "hwlab" && sub === "g14") {
const { hwlabG14Help } = await import("./hwlab-g14");
return hwlabG14Help();
}
if (top === "hwlab") {
const { hwlabHelp } = await import("./hwlab-cd");
return hwlabHelp();
}
return null;
}