Question
Why is the [COMMAND] not showed after the different OPTIONS but directly after the first option. Is it by convention or a rendering issue ?
Code
@GroupCommandDefinition(
name = "acp",
description = "acp tool for any acp compatible agent (OpenCode, Claude, Pi, Gemini, etc.)",
generateHelp = true,
groupCommands = {RegistryCommand.class}
)
public class AcpCommand implements Command<CommandInvocation> {
// -- CLI options ----
@Option(shortName = 'a', name = "agent",
description = "ACP agent registry ID: opencode, claude-acp, pi-acp, gemini, ... (use 'acp reg list --registry' to see all) [env: ACP_AGENT]")
String agent;
@Option(name = "agent-binary",
description = "Override agent binary path (for custom agents) [env: ACP_AGENT_BINARY]")
String acpAgentBinary;
@Option(name = "agent-args",
description = "Override agent arguments (for custom agents) [env: ACP_AGENT_ARGS]")
String acpAgentArgs;
@Option(shortName = 'p', name = "prompt",
description = "The prompt text to send to the agent [env: ACP_PROMPT]")
String prompt;
@Option(shortName = 'm', name = "model",
description = "The model to use, e.g. claude-opus-4-6 (resolved per agent/provider) [env: ACP_MODEL]")
String model;
@Option(name = "provider",
description = "Provider: zen, vertex-ai [env: ACP_PROVIDER]")
String provider;
@Option(name = "request-timeout",
description = "Timeout in seconds for requests (initialize, create session, etc.) [env: ACP_REQUEST_TIMEOUT]")
Integer requestTimeout;
@Option(name = "prompt-timeout",
description = "Timeout in seconds for prompt requests; 0 means no timeout [env: ACP_PROMPT_TIMEOUT]")
Integer promptTimeout;
@Option(name = "permission-mode",
description = "How to respond to agent permission requests: allow_always, allow_once, reject_once, reject_always [env: ACP_PERMISSION_MODE]")
String permissionMode;
@Option(shortName = 'b', name = "backup",
description = "Backup workspace to target/workdirs before running: yes, no (default: yes). Only applies to Maven/Gradle projects [env: ACP_BACKUP]")
String backup;
@Option(name = "backup-project-name",
description = "Name of the project used in the backup directory: target/workdirs/<name>_<timestamp> (default: current directory name) [env: ACP_BACKUP_PROJECT_NAME]")
String backupProjectName;
@Option(aliases = "wks",
name = "workspace-path",
description = "Absolute path to the project/workspace directory used as CWD for the session. If not set, defaults to the directory where the command is executed [env: WORKSPACE_PATH]")
String workspacePath;
@Option(shortName = 's', name = "skill-path",
description = "Absolute path to a skills folder to add as additional directory [env: SKILL_PATH]")
String skillPath;
@Option(shortName = 'l', name = "log-level",
description = "Log level: INFO, DEBUG, TRACE, WARNING, SEVERE [env: ACP_LOG_LEVEL]")
String logLevel;
Question
Why is the
[COMMAND]not showed after the differentOPTIONSbut directly after the first option. Is it by convention or a rendering issue ?Code