#compdef aoe

autoload -U is-at-least

_aoe() {
    typeset -A opt_args
    typeset -a _arguments_options
    local ret=1

    if is-at-least 5.2; then
        _arguments_options=(-s -S -C)
    else
        _arguments_options=(-s -C)
    fi

    local context curcontext="$curcontext" state line
    _arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'-V[Print version]' \
'--version[Print version]' \
":: :_aoe_commands" \
"*::: :->aoe" \
&& ret=0
    case $state in
    (aoe)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" : \
'-t+[Session title (defaults to folder name)]:TITLE:_default' \
'--title=[Session title (defaults to folder name)]:TITLE:_default' \
'-g+[Group path (defaults to parent folder)]:GROUP:_default' \
'--group=[Group path (defaults to parent folder)]:GROUP:_default' \
'-c+[Command to run (e.g., '\''claude'\'' or any other supported agent)]:COMMAND:_default' \
'--cmd=[Command to run (e.g., '\''claude'\'' or any other supported agent)]:COMMAND:_default' \
'(-c --cmd)--tool=[Named built-in or configured custom agent to run]:TOOL:_default' \
'-P+[Parent session (creates sub-session, inherits group, not worktree or path). Without \`--worktree\` or \`--scratch\`, opens at \`<path>\` (default\: current directory) on its checked-out branch. \`--scratch\` uses a fresh directory]:PARENT:_default' \
'--parent=[Parent session (creates sub-session, inherits group, not worktree or path). Without \`--worktree\` or \`--scratch\`, opens at \`<path>\` (default\: current directory) on its checked-out branch. \`--scratch\` uses a fresh directory]:PARENT:_default' \
'--fork-from=[Fork an existing session\: resume its conversation context in a new, independent session that then diverges. Give the source session'\''s id or title. Terminal fork; available for agents that support forking (claude, codex, opencode, pi)]:FORK_FROM:_default' \
'-w+[Create session in a git worktree for the specified branch]:WORKTREE_BRANCH:_default' \
'--worktree=[Create session in a git worktree for the specified branch]:WORKTREE_BRANCH:_default' \
'--base-branch=[Branch to base the new worktree branch on (use with --new-branch). Defaults to the repository'\''s default branch. Useful for stacking work on top of an in-flight PR branch, hot-fixing a release branch, or branching off a teammate'\''s branch]:BASE_BRANCH:_default' \
'*--repo-base=[Base branch for one repo of a multi-repo workspace, as \`<repo>=<branch>\` (repeatable). \`<repo>\` is the repo'\''s directory name or the path you passed to \`--repo\`. Outranks \`--base-branch\`, which stays the base for every repo this does not name. Example\: \`--base-branch develop --repo-base api=epic/checkout\`]:REPO_BASES:_default' \
'*-r+[Additional repositories for multi-repo workspace (use with --worktree)]:EXTRA_REPOS:_files' \
'*--repo=[Additional repositories for multi-repo workspace (use with --worktree)]:EXTRA_REPOS:_files' \
'*--project=[Names of registered projects to include as extra repos (use with --worktree). Resolves against the union of global + profile project registries]:PROJECTS:_default' \
'--sandbox-image=[Custom container image for sandbox (implies --sandbox)]:SANDBOX_IMAGE:_default' \
'--extra-args=[Extra arguments to append after the agent binary]:EXTRA_ARGS:_default' \
'--cmd-override=[Override the agent binary command]:CMD_OVERRIDE:_default' \
'--agent=[Pick a specific ACP agent for the structured view (e.g., claude-code, codex)]:AGENT:_default' \
'--model=[Override the model used by the ACP agent (e.g., claude-opus-4-7, gpt-5, gemini-2.5-pro). Forwarded to the agent at session start]:MODEL:_default' \
'--effort=[Reasoning effort for the ACP agent (e.g., low, medium, high). Checked against the agent'\''s known thought-level choices when cached. Structured view only]:EFFORT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-i[Prompt for the session name, mirroring the TUI \`n\` flow. Shows the generated default; press Enter to accept it. Ignored when --title is given. Requires an interactive terminal]' \
'--interactive[Prompt for the session name, mirroring the TUI \`n\` flow. Shows the generated default; press Enter to accept it. Ignored when --title is given. Requires an interactive terminal]' \
'-l[Launch the session immediately after creating]' \
'--launch[Launch the session immediately after creating]' \
'-b[Create a new branch (use with --worktree)]' \
'--new-branch[Create a new branch (use with --worktree)]' \
'(-t --title)--generated-name[Use a generated civilization name as the session title and as the \`{branch}\` value of the worktree path template, instead of the branch name (use with --worktree). The git branch stays as given. Attaching to an existing worktree keeps its directory and only generates the title. Cannot be combined with --title, --repo or --project]' \
'--no-submodules[Skip \`git submodule update --init --recursive\` after creating the worktree, overriding the \`worktree.init_submodules\` config (default true). Useful for repos with large or deeply nested submodule trees that you don'\''t need inside the agent session]' \
'-s[Run session in a container sandbox]' \
'--sandbox[Run session in a container sandbox]' \
'-y[Enable YOLO mode (skip permission prompts)]' \
'--yolo[Enable YOLO mode (skip permission prompts)]' \
'--trust-hooks[Automatically trust this repository'\''s hooks and project-local MCP servers without prompting]' \
'--structured-view[Render this session in the structured view (ACP-based native rendering) instead of the default terminal view. \`aoe add\` defaults to the terminal (raw tmux/PTY) so the CLI matches the TUI; pass this (or \`--agent\`) to opt into the structured rendering. Ignored for tools with no ACP adapter]' \
'(-w --worktree -b --new-branch --base-branch --repo-base -r --repo --project --no-submodules)--scratch[Create the session in a fresh scratch directory under \`<app_dir>/scratch/<id>/\` instead of a project path. The directory is removed when the session is deleted (unless \`aoe rm\` is given \`--keep-scratch\`). Mutually exclusive with worktree-related flags]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::path -- Project directory (defaults to current directory). Omit when using `--scratch`:_files' \
&& ret=0
;;
(agents)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(init)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::path -- Directory to initialize (defaults to current directory):_files' \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" : \
'--state=[Filter by session state. Defaults to \`all\`, every persisted session, which is what \`aoe list\` has always shown. Pass \`--state=live\` to skip trashed and archived rows; the vocabulary matches the REST API'\''s \`GET /api/sessions?state=\`]:STATE:((live\:"Only sessions that are neither archived nor trashed"
trashed\:"Only sessions currently in the trash"
all\:"Every persisted session in the profile (default)"))' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output as JSON]' \
'--all[List sessions from all profiles]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(ps)
_arguments "${_arguments_options[@]}" : \
'--interval=[Seconds between \`--watch\` redraws]:INTERVAL:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output as JSON]' \
'--tmux[Show only tmux-backed sessions]' \
'(--tmux)--acp[Show only ACP (structured-view) workers, with their ACP-specific columns (BUILD, MODEL, CWD, SOCKET); \`--json\` adds \`substrate\`, \`state\`, \`age_secs\`, and \`model\` to the keys the removed \`aoe acp ps\` emitted, but sorts by substrate, then title, then id rather than by \`started_at\`. Dead and orphaned workers are hidden unless \`--dead\` is also passed; the worker registry is global, so with an explicit \`-p\` the workers of other profiles surface as orphans (also hidden without \`--dead\`)]' \
'--dead[Include dead sessions and orphaned substrate entries (hidden by default)]' \
'()--watch[Redraw continuously until Ctrl-C; with \`--json\`, print one compact JSON array per line instead of clearing the screen]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::session -- Show one session in detail, including dead runtimes (id, id prefix, title, or path):_default' \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
'-n+[Show only the last N lines (fallback viewers; lnav handles its own)]:N:_default' \
'--lines=[Show only the last N lines (fallback viewers; lnav handles its own)]:N:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-f[Live-tail the log]' \
'--follow[Live-tail the log]' \
'--no-pager[Skip viewer detection; write plain log to stdout]' \
'--path[Print the resolved log file path and exit (no viewing)]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(log-level)
_arguments "${_arguments_options[@]}" : \
'--filter=[Raw EnvFilter directive. Use this for per-target tuning, e.g. \`--filter acp.protocol=trace,info\`. Bare \`--filter debug\` is rejected; use the positional \`level\` form instead]:FILTER:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'(--filter)--get[Print the current filter without changing it]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::level -- Bare level (trace|debug|info|warn|error). Expands to all known target roots, avoiding the firehose of dependency logs you would get from `RUST_LOG=debug`:_default' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--delete-worktree[Delete worktree directory (default\: keep worktree)]' \
'--delete-branch[Delete git branch after worktree removal (default\: per config)]' \
'--force[Force worktree removal even with untracked/modified files]' \
'--keep-container[Keep container instead of deleting it (default\: delete per config)]' \
'--keep-scratch[For scratch sessions, keep the scratch directory on disk instead of removing it. The session record is still deleted; the kept path is logged so you can find the files later. No effect on non-scratch sessions]' \
'--purge[Permanently delete instead of moving to trash]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title to remove:_default' \
&& ret=0
;;
(send)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--no-revive[Fail loud on dead/stopped sessions instead of auto-respawning. Default behavior is to revive the session so a \`send\` after a crash or stop just works; pass this for scripts that want the previous bail-out]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
':message -- Message to send to the agent:_default' \
&& ret=0
;;
(status)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-v[Show detailed session list]' \
'--verbose[Show detailed session list]' \
'-q[Only output waiting count (for scripts)]' \
'--quiet[Only output waiting count (for scripts)]' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(killall)
_arguments "${_arguments_options[@]}" : \
'--timeout-secs=[Grace period in seconds before force-killing agent workers. tmux sessions and the daemon use their own built-in grace]:TIMEOUT_SECS:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--keep-daemon[Leave the \`aoe serve\` daemon running; stop only workers and tmux sessions]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::args -- Swallow any args the user typed (e.g. a session id) so the trap fires instead of clap erroring on an unexpected positional:_default' \
&& ret=0
;;
(session)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-session-command-$line[1]:"
        case $line[1] in
            (start)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
'--parallel=[Concurrency cap for \`--all\`. Restarting many sandboxed sessions in parallel pressures dockerd, so the default is intentionally modest. Ignored when \`--all\` is not set]:PARALLEL:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'()--all[Restart every session in the active profile. Useful after \`aoe update\`, after editing \`sandbox.environment\`, after a Docker hiccup, or after changing a hook. Mutually exclusive with \`identifier\`. When run from an agent session, the caller is skipped so the command can finish]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::identifier -- Session ID or title (required unless `--all` is passed):_default' \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::identifier -- Session ID or title (optional, auto-detects in tmux):_default' \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
'-t+[New title for the session]:TITLE:_default' \
'--title=[New title for the session]:TITLE:_default' \
'-g+[New group for the session (empty string to ungroup)]:GROUP:_default' \
'--group=[New group for the session (empty string to ungroup)]:GROUP:_default' \
'(--rename-branch)--branch=[Rename the Git branch without moving the worktree directory]:BRANCH:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--rename-branch[When the session is tied (session.tie_workdir_to_name) and an aoe-managed worktree, also rename the underlying git branch to match. Off by default; ignored for untied / non-worktree sessions]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::identifier -- Session ID or title (optional, auto-detects in tmux):_default' \
&& ret=0
;;
(set-worktree-name)
_arguments "${_arguments_options[@]}" : \
'--name=[New workdir (worktree directory) name]:NAME:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--rename-branch[Also rename the underlying git branch to match the new name]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::identifier -- Session ID or title (optional, auto-detects in tmux):_default' \
&& ret=0
;;
(capture)
_arguments "${_arguments_options[@]}" : \
'-n+[Number of lines to capture]:LINES:_default' \
'--lines=[Number of lines to capture]:LINES:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--strip-ansi[Strip ANSI escape codes]' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::identifier -- Session ID or title (auto-detects in tmux if omitted):_default' \
&& ret=0
;;
(current)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-q[Just session name (for scripting)]' \
'--quiet[Just session name (for scripting)]' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(add-project)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--attach-existing-branch[Check out a branch that already exists in the repo being attached instead of refusing. A same-named branch in another repo can hold unrelated commits, so this is off by default. When set, aoe records the branch as not its own and leaves it in place when the session is deleted]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
':project -- Repo to attach\: a path, or the name of a registered project (`aoe project list`):_default' \
&& ret=0
;;
(set-session-id)
_arguments "${_arguments_options[@]}" : \
'--store=[Assert the native store\: a Claude store directory, or a Pi/OMP transcript file]:STORE:_files' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
':session_id -- Conversation to resume. An empty string requests a one-shot fresh start, which only a terminal session can take\: a structured session keeps its ACP conversation and needs the native ID plus an explicit `--store` and a bound Claude conversation:_default' \
&& ret=0
;;
(set-base)
_arguments "${_arguments_options[@]}" : \
'--repo=[Workspace repo to set the base for, by directory name (as shown in the diff panel and \`aoe list --json\`). Required on a multi-repo workspace session, where each repo has its own base; omit it on a single-repo session]:REPO:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'()--clear[Clear the override and fall back to the recorded creation base, then the profile default, then the auto-detected base]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
'::branch -- Branch ref to diff against (short name like `main` or remote-qualified like `upstream/main`). Required unless `--clear` is passed:_default' \
&& ret=0
;;
(snooze)
_arguments "${_arguments_options[@]}" : \
'--minutes=[Snooze duration in minutes; if omitted, uses \`session.snooze_duration_minutes\` from the active config (default 30)]:MINUTES:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(unsnooze)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(favorite)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(unfavorite)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(color)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
':color -- Color label\: `red` (needs attention), `amber` (working), `green` (done), or `none`/`clear` to remove the label:_default' \
&& ret=0
;;
(archive)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--no-kill[Skip tmux teardown on archive]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(unarchive)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(restore)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" : \
'--group=[Place imported sessions under this session group]:GROUP:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'()--all[Import every discoverable Claude session, ignoring the path filter]' \
'--structured[Import as structured-view sessions (rendered in the web dashboard and the structured TUI view) instead of terminal/tmux sessions. Structured sessions replay their transcript under \`aoe serve\`]' \
'--launch[Start terminal sessions immediately after importing (spawns the tmux pane running \`claude --resume <id>\`). Ignored for structured imports]' \
'--dry-run[List what would be imported without creating anything]' \
'-y[Skip the confirmation prompt when importing more than one session]' \
'--yes[Skip the confirmation prompt when importing more than one session]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::paths -- Directories to scan. Only Claude sessions whose recorded working directory is at or under one of these are imported. Defaults to the current directory. Cannot be combined with `--all`:_default' \
&& ret=0
;;
(list-trash)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(empty-trash)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__session__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-session-help-command-$line[1]:"
        case $line[1] in
            (start)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-worktree-name)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(capture)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(current)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-project)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-session-id)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-base)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(snooze)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unsnooze)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(favorite)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unfavorite)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(color)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(archive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unarchive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restore)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list-trash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(empty-trash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(group)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__group_commands" \
"*::: :->group" \
&& ret=0

    case $state in
    (group)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-group-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'--parent=[Parent group for creating subgroups]:PARENT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Group name:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--force[Force delete by moving sessions to default group]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Group name:_default' \
&& ret=0
;;
(move)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
':group -- Target group:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__group__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-group-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(move)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(plugin)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__plugin_commands" \
"*::: :->plugin" \
&& ret=0

    case $state in
    (plugin)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-plugin-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id, e.g. `aoe.web`:_default' \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id:_default' \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id:_default' \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id:_default' \
&& ret=0
;;
(install)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--yes[Grant all requested capabilities without prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':source -- `gh\:owner/repo` (latest release) or `gh\:owner/repo@ref` (unverified) or a local directory path:_default' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--yes[Re-approve a changed capability set without prompting]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id:_default' \
&& ret=0
;;
(uninstall)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':id -- Plugin id:_default' \
&& ret=0
;;
(hash)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':path -- Path to the plugin directory:_default' \
&& ret=0
;;
(discover)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::query -- Optional free-text term to narrow the search:_default' \
&& ret=0
;;
(outdated)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__plugin__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-plugin-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(install)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(uninstall)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(hash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(discover)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(outdated)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(profile)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__profile_commands" \
"*::: :->profile" \
&& ret=0

    case $state in
    (profile)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-profile-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Profile name\: letters, digits, `_` and `-` only, at most 64 characters; `all` is reserved:_default' \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Profile name:_default' \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':old_name -- Current profile name:_default' \
':new_name -- New profile name (same rules as `aoe profile create`):_default' \
&& ret=0
;;
(default)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::name -- Profile name (optional, shows current if not provided):_default' \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
'--status-map=[Print the resolved status map for an agent]:AGENT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Emit JSON output]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__profile__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-profile-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(default)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(project)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__project_commands" \
"*::: :->project" \
&& ret=0

    case $state in
    (project)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-project-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'--scope=[Filter by scope (default\: all)]:SCOPE:(all global profile)' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
'--name=[Display name (defaults to the directory'\''s basename)]:NAME:_default' \
'--scope=[Registry scope. When omitted\: defaults to GLOBAL, unless \`-p <profile>\` was passed at the top level, in which case it defaults to PROFILE (scoping the entry to that profile only)]:SCOPE:(global profile)' \
'--base-branch=[Default base branch for new worktree branches created against this project, whether it is the launch repo or an extra repo in a multi-repo workspace. An explicit session base wins; when omitted, falls back to the global/profile \`worktree.default_base_branch\`, then the repo'\''s detected default branch]:BASE_BRANCH:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--allow-override[Allow registering this path even if it already exists in the other scope. Without this flag the command errors when the same canonical path is already registered globally (when adding to profile) or in any profile (when adding globally). When override is allowed and both scopes hold the same path, the profile entry shadows the global one]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':path -- Path to the project directory\: a git repository, or any directory to run sessions in place:_files -/' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'--scope=[Registry scope to remove from. When omitted\: defaults to GLOBAL, unless \`-p <profile>\` was passed at the top level, in which case it defaults to PROFILE]:SCOPE:(global profile)' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name_or_path -- Project name or path to remove:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__project__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-project-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(sandbox)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__sandbox_commands" \
"*::: :->sandbox" \
&& ret=0

    case $state in
    (sandbox)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-sandbox-command-$line[1]:"
        case $line[1] in
            (reclaim)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--delete[Remove the reported stores instead of only naming them]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__sandbox__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-sandbox-help-command-$line[1]:"
        case $line[1] in
            (reclaim)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(worktree)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__worktree_commands" \
"*::: :->worktree" \
&& ret=0

    case $state in
    (worktree)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-worktree-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':identifier -- Session ID or title:_default' \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-f[Actually remove worktrees (default is dry-run)]' \
'--force[Actually remove worktrees (default is dry-run)]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__worktree__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-worktree-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(tmux)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__tmux_commands" \
"*::: :->tmux" \
&& ret=0

    case $state in
    (tmux)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-tmux-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-f+[Output format (text or json)]:FORMAT:_default' \
'--format=[Output format (text or json)]:FORMAT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__tmux__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-tmux-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(sounds)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__sounds_commands" \
"*::: :->sounds" \
&& ret=0

    case $state in
    (sounds)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-sounds-command-$line[1]:"
        case $line[1] in
            (install)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(test)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Sound file name (without extension):_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__sounds__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-sounds-help-command-$line[1]:"
        case $line[1] in
            (install)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(theme)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__theme_commands" \
"*::: :->theme" \
&& ret=0

    case $state in
    (theme)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-theme-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" : \
'-o+[Output file path (defaults to \`<name>.toml\` in the themes directory)]:OUTPUT:_default' \
'--output=[Output file path (defaults to \`<name>.toml\` in the themes directory)]:OUTPUT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Theme name to export:_default' \
&& ret=0
;;
(dir)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__theme__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-theme-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(dir)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(settings)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__settings_commands" \
"*::: :->settings" \
&& ret=0

    case $state in
    (settings)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-settings-command-$line[1]:"
        case $line[1] in
            (explain)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':key -- The setting key to explain:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__settings__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-settings-help-command-$line[1]:"
        case $line[1] in
            (explain)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(cityhall)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__cityhall_commands" \
"*::: :->cityhall" \
&& ret=0

    case $state in
    (cityhall)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-cityhall-command-$line[1]:"
        case $line[1] in
            (export)
_arguments "${_arguments_options[@]}" : \
'-o+[Write to a file instead of stdout]:OUT:_files' \
'--out=[Write to a file instead of stdout]:OUT:_files' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(apply)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':file -- Bundle to apply; `-` reads stdin:_files' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__cityhall__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-cityhall-help-command-$line[1]:"
        case $line[1] in
            (export)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(apply)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(telemetry)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__telemetry_commands" \
"*::: :->telemetry" \
&& ret=0

    case $state in
    (telemetry)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-telemetry-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(reset-id)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__telemetry__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-telemetry-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-id)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(mcp)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__mcp_commands" \
"*::: :->mcp" \
&& ret=0

    case $state in
    (mcp)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-mcp-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'--agent=[Agent whose effective set to resolve. Defaults to the configured default tool. MCP forwarding is per-agent because the agent-native layer differs]:AGENT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output machine-readable JSON instead of a table]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
'--transport=[]:TRANSPORT:(stdio http sse)' \
'--command=[Executable to run (stdio only)]:COMMAND:_default' \
'*--arg=[Argument for the command; repeat for several (stdio only)]:ARGS:_default' \
'*--env=[Environment variable as KEY=VALUE; repeatable (stdio only)]:ENV:_default' \
'--url=[Server URL (http and sse only)]:URL:_default' \
'*--header=[Request header as KEY=VALUE; repeatable (http and sse only)]:HEADER:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Server name (letters, digits, '\''.'\'', '\''_'\'', '\''-'\''):_default' \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
'--command=[Replace the executable (stdio only)]:COMMAND:_default' \
'*--arg=[Replace all arguments; repeat for several (stdio only)]:ARGS:_default' \
'*--env=[Set an environment variable as KEY=VALUE; repeatable (stdio only)]:ENV:_default' \
'*--unset-env=[Remove an environment variable by name; repeatable (stdio only)]:UNSET_ENV:_default' \
'--url=[Replace the URL (http and sse only)]:URL:_default' \
'*--header=[Set a header as KEY=VALUE; repeatable (http and sse only)]:HEADER:_default' \
'*--unset-header=[Remove a header by name; repeatable (http and sse only)]:UNSET_HEADER:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'(--arg)--clear-args[Remove all arguments (stdio only)]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Name of the AoE-owned server to edit. Its transport cannot change; remove and add instead:_default' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':name -- Name of the AoE-owned server to remove:_default' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__mcp__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-mcp-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(skill)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__skill_commands" \
"*::: :->skill" \
&& ret=0

    case $state in
    (skill)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-skill-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output machine-readable JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(view)
_arguments "${_arguments_options[@]}" : \
'--source=[Source root id, or aoe-managed]:SOURCE:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output metadata and content as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':directory -- Skill directory name:_default' \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
'--description=[Short description used in the generated SKILL.md]:DESCRIPTION:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':directory -- Skill directory name:_default' \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
'--file=[Read replacement SKILL.md from this file. Use - for stdin]:PATH:_files' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':directory -- Managed skill directory name:_default' \
&& ret=0
;;
(adopt)
_arguments "${_arguments_options[@]}" : \
'--as=[Destination directory name in AoE'\''s managed store]:DESTINATION:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':source -- External source root id, such as claude-user or agents-standard:_default' \
':directory -- Source skill directory name:_default' \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':directory -- Managed skill directory name:_default' \
&& ret=0
;;
(sync)
_arguments "${_arguments_options[@]}" : \
'*--root=[Limit the sync to these source roots. Repeatable. Defaults to all of them]:ID:_default' \
'*--replace=[Take over this skill in the agents'\'' directories, overwriting a skill AoE does not manage or a propagated copy that was edited there. Repeatable. Without it a sync never overwrites anything it did not itself write]:DIRECTORY:_default' \
'*--only=[Reconcile only this skill. Repeatable. Defaults to every managed skill]:DIRECTORY:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Output the per-skill outcomes as JSON]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__skill__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-skill-help-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(view)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(adopt)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(sync)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(hooks)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__hooks_commands" \
"*::: :->hooks" \
&& ret=0

    case $state in
    (hooks)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-hooks-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__hooks__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-hooks-help-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(serve)
_arguments "${_arguments_options[@]}" : \
'--port=[Port to listen on (default\: 8080; debug builds default to 8081 so a \`cargo run\` instance does not collide with an installed release \`aoe\`)]:PORT:_default' \
'--host=[Host/IP to bind to (use 0.0.0.0 for LAN/VPN access)]:HOST:_default' \
'(--no-auth)--auth=[Authentication mode\: \`token\` (default, random URL token), \`passphrase\` (no token URL, passphrase login wall only), or \`none\` (no auth at all, loopback-only unless --behind-proxy). Mutually exclusive with --no-auth (which aliases --auth=none)]:AUTH:(token passphrase none)' \
'*--allowed-host=[Extra \`Host\` header value to accept (repeatable). The DNS-rebinding gate trusts loopback, any routable IP literal (LAN/tailnet IPs can'\''t be rebound), and a non-wildcard \`--host\` by default; add a HOSTNAME or mDNS name here when serving behind a reverse proxy, a custom tunnel, or by name when binding \`0.0.0.0\` (access by IP needs no flag). Auto-injected tunnel hosts (\`--remote\`) need no flag]:HOST:_default' \
'*--allowed-origin=[Extra browser \`Origin\` to accept (repeatable, full origin \`scheme\://host\[\:port\]\`, e.g. \`https\://aoe.example.com\:8443\`). Needed only for a reverse proxy on a nonstandard port; standard 80/443 origins for \`--allowed-host\` entries are derived automatically]:ORIGIN:_default' \
'--tunnel-name=[Use a named Cloudflare Tunnel (requires prior \`cloudflared tunnel create\`). Takes precedence over Tailscale auto-detection]:TUNNEL_NAME:_default' \
'--tunnel-url=[Hostname for a named tunnel (e.g., aoe.example.com)]:TUNNEL_URL:_default' \
'--passphrase=[Require a passphrase for login (second-factor auth). Can also be set via AOE_SERVE_PASSPHRASE environment variable]:PASSPHRASE:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--no-auth[Disable authentication (only allowed with localhost binding). Alias for --auth=none]' \
'--behind-proxy[Mark this server as sitting behind a reverse proxy that terminates TLS upstream. Sets cookies as \`; Secure\` and trusts the \`X-Forwarded-For\` / \`cf-connecting-ip\` headers from loopback peers. Does NOT auto-spawn a tunnel (unlike --remote). Required when --auth=passphrase or --auth=none is combined with a non-loopback bind]' \
'--read-only[Read-only mode\: view terminals but cannot send keystrokes]' \
'--cityhall[CityHall client mode\: a locked-down, composer-first dashboard for non-technical users (structured view only; no terminal/diff/project management). Equivalent to \`AOE_CITYHALL_MODE=1\`; the flag is what the daemon replays to its restart child so the mode survives \`aoe update\` and \`aoe serve --restart\`. See #7]' \
'--remote[Expose the daemon over a public HTTPS tunnel. Prefers Tailscale Funnel when \`tailscale\` is installed and logged in (stable \`.ts.net\` URL, installable PWAs survive restarts). Falls back to a Cloudflare quick tunnel otherwise (fresh URL on every restart)]' \
'--no-tailscale[Skip Tailscale Funnel auto-detection and go straight to Cloudflare. Useful if you have Tailscale installed for unrelated reasons]' \
'--daemon[Run as a background daemon (detach from terminal)]' \
'--stop[Stop a running daemon]' \
'(--stop --daemon --remote --restart --no-auth --auth --behind-proxy --read-only --cityhall --passphrase --port --tunnel-name --no-tailscale --tunnel-url --open --allowed-host --allowed-origin)--status[Print the running daemon'\''s PID, mode, URLs, and log path. Exits non-zero when no daemon is running. Useful for shell scripts that want to know whether a daemon is up without parsing \`ps\`]' \
'--open[Open the dashboard URL in the default browser once the server is ready. Ignored in a build with no dashboard bundle, under --daemon or --remote, and whenever no browser the user could see is reachable (see \`tui\:\:open_url\`)\: over SSH without a forwarded display, or on Linux/BSD with no display server. \`BROWSER\` overrides the check on platforms whose launcher reads it, which excludes macOS]' \
'--daemon-child[Internal marker\: this invocation is the detached child spawned by \`--daemon\`. Set automatically by \`start_daemon()\`; never pass by hand. Tells \`main.rs\` to classify the process as \`ServeDaemonChild\` so the sink resolver routes tracing to the configured log file (its stdout/stderr are detached). Hidden from \`--help\`]' \
'(--stop --daemon --remote --no-auth --auth --behind-proxy --read-only --cityhall --passphrase --port --host --tunnel-name --no-tailscale --tunnel-url --open --allowed-host --allowed-origin)--restart[Restart a running \`aoe serve\` daemon, replaying the host, port, mode, and auth it was launched with (read from \`serve.launch\`). The passphrase is recalled from \`serve.passphrase\` or \`AOE_SERVE_PASSPHRASE\` before the old daemon is stopped, so a passphrase-protected daemon is never left down. Incompatible with the flags that would change the daemon'\''s bind config\: that config comes from the persisted launch state]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(url)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--all[Print every labeled URL (Tailscale / LAN / localhost) on its own line. The primary URL is printed first as \`primary\\t<url>\`; alternates use \`<label>\\t<url>\`. The tab-separated format makes the output easy to parse from shell scripts]' \
'(--all)--token-only[Print only the auth token from the primary URL'\''s \`?token=\` query parameter. Useful for scripted login flows or pasting into the PWA. Exits non-zero when the URL has no token (e.g. \`--no-auth\` server)]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(acp)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
":: :_aoe__subcmd__acp_commands" \
"*::: :->acp" \
&& ret=0

    case $state in
    (acp)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-acp-command-$line[1]:"
        case $line[1] in
            (doctor)
_arguments "${_arguments_options[@]}" : \
'*--adapter=[Adapter to install with --fix (repeatable). Defaults to claude-agent-acp]:ADAPTER:(claude-agent-acp codex-acp pi-acp aoe-agent)' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Emit machine-readable JSON instead of a human report]' \
'--fix[Attempt safe remediations\: download the bundled Node runtime if none is present, then install the pinned npm ACP adapter into the data dir with that Node'\''s own npm (no global install, no sudo). Installs claude-agent-acp by default; each adapter is a separate several-hundred-MB tree, so pick others with --adapter]' \
'(--adapter)--all-adapters[Install every pinned adapter with --fix instead of just the default one]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(agents)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(ps)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::args -- Swallow any flags the user typed (e.g. `--json`) so the trap fires instead of clap erroring on an unexpected argument:_default' \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
'--timeout-secs=[Seconds to wait after SIGTERM before escalating to SIGKILL]:TIMEOUT_SECS:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'()--all[Stop every running agent worker]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::session -- Session id to stop. Mutually exclusive with `--all`:_default' \
&& ret=0
;;
(recover)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'(--confirm-worker-stopped)--confirm-prime-stopped[Confirm native processes are stopped for an identifiable missing-route Prime record]' \
'(--confirm-prime-stopped)--confirm-worker-stopped[Confirm the original runner and all host/container native processes are stopped. Accepts malformed, unattested legacy, or externally settled orphan records]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Session whose ownership evidence to retire:_default' \
&& ret=0
;;
(kill)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Session id to kill:_default' \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
'--session=[Session id whose worker logs to tail]:SESSION:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--follow[Follow new lines as they arrive]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Session id whose worker to restart:_default' \
&& ret=0
;;
(history)
_arguments "${_arguments_options[@]}" : \
'--since=[Skip events at or below this seq]:SINCE:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Emit raw frames as JSON (one frame per line)]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
&& ret=0
;;
(status)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--json[Emit machine-readable JSON instead of a human report]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
&& ret=0
;;
(prompt)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
':text -- Prompt text. Pass `-` to read from stdin:_default' \
&& ret=0
;;
(set-option)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
':config_id -- Config option id as advertised by the agent:_default' \
':value -- Value to select:_default' \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
'--option=[Answer with this option id, from the request'\''s option list. An id the request never offered cancels it instead]:ID:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'(--deny --option)--always[Allow this kind of operation for the rest of the session]' \
'(--option)--deny[Refuse the request]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
':nonce -- Approval nonce, as printed in the pending-approval banner:_default' \
&& ret=0
;;
(cancel)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
&& ret=0
;;
(tail)
_arguments "${_arguments_options[@]}" : \
'--since=[Start at this seq (default 0 = full replay then live)]:SINCE:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
&& ret=0
;;
(switch-agent)
_arguments "${_arguments_options[@]}" : \
'--model=[Optional model override forwarded to the new agent]:MODEL:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
':target -- Registry key or configured custom ACP agent name (e.g. `claude`, `codex`, `my-custom-bridge`):_default' \
&& ret=0
;;
(switch-provider)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':session -- Acp session id:_default' \
':provider -- Provider to route through:(api bedrock vertex)' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__acp__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-acp-help-command-$line[1]:"
        case $line[1] in
            (doctor)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(agents)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(ps)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(recover)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(kill)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(history)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prompt)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-option)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cancel)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(tail)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(switch-agent)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(switch-provider)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
;;
(__acp-runner)
_arguments "${_arguments_options[@]}" : \
'--socket=[]:SOCKET:_files' \
'--session-id=[]:SESSION_ID:_default' \
'--agent-name=[]:AGENT_NAME:_default' \
'--agent-key=[Registry key for the agent (e.g. \`claude\`, \`codex\`, \`opencode\`). Persisted on the WorkerRecord so the daemon'\''s attach path resolves the right \`AgentProfile\` after a restart; \`agent_name\` carries the binary command and is not a valid profile key. Defaulted to empty so legacy daemons rolling out the new field don'\''t immediately break runners already in flight]:AGENT_KEY:_default' \
'--cwd=[]:CWD:_files' \
'--model=[]:MODEL:_default' \
'*--additional-dirs=[]:ADDITIONAL_DIRS:_files' \
'*--provider-env-keys=[Comma-separated keys of provider_env passed through at spawn. Recorded in the registry so \`aoe acp ps\` can show what auth-shape the session uses without re-reading the daemon]:PROVIDER_ENV_KEYS:_default' \
'--stored-acp-session-id=[ACP session id supplied when the runner starts. The runner durably replaces this registry field before exposing a newly established id]:STORED_ACP_SESSION_ID:_default' \
'--source-profile=[Profile the session was created under. Persisted on the \`WorkerRecord\` so reattached \`terminal/create\` requests re-resolve sandbox env against the same profile the session originally used. Defaulted to empty so legacy daemons whose runner predates this field still load; an absent value resolves to the global default profile, matching pre-persistence behavior]:SOURCE_PROFILE:_default' \
'--generation=[Lifecycle generation the daemon minted for this runner. Stamped on the registry record and compared against the restart marker]:GENERATION:_default' \
'--prime-runtime=[]:PRIME_RUNTIME:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::agent_argv -- Agent program + args after `--`:_default' \
&& ret=0
;;
(__prime-agent)
_arguments "${_arguments_options[@]}" : \
'--runtime=[]:RUNTIME:_default' \
'--daemon-command=[]:DAEMON_COMMAND:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--rewind-container-env[]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::command:_default' \
&& ret=0
;;
(__extract-session-id)
_arguments "${_arguments_options[@]}" : \
'--field=[]:FIELD:((session-id\:""
conversation-id-or-session-id\:""
hermes-foreground-session-id\:"Hermes'\''s top-level \`session_id\`, accepted only from the CLI or TUI foreground agent. Delegated subagents (\`platform\: subagent\`) and side tasks (\`bg_\`, \`preview_\` ids) fire the same hooks from the same process with their own ids"))' \
'--agent=[Binary of the agent whose hook fired this. Refused when the pane runs a different agent]:AGENT:_default' \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(uninstall)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'--keep-data[Keep data directory (sessions, config, logs)]' \
'--keep-tmux-config[Keep tmux configuration]' \
'--dry-run[Show what would be removed without removing]' \
'-y[Skip confirmation prompts]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-y[Skip confirmation prompt]' \
'--yes[Skip confirmation prompt]' \
'--check[Print update status and exit (no install)]' \
'--dry-run[Detect install method and print what would happen, no download]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(migrate)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(completion)
_arguments "${_arguments_options[@]}" : \
'-p+[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--profile=[Profile to use (separate workspace with its own sessions). Commands that consume or create profile state require an existing profile\: an unknown name is refused, not created (make one with \`aoe profile create\`). Profile-independent commands such as \`list --all\` and \`serve --stop\` ignore it. \`AGENT_OF_EMPIRES_PROFILE\` names one too, and an explicit \`-p\` wins over it]:PROFILE:_default' \
'--daemon-url=[Select a daemon endpoint for read-only CLI commands or the TUI]:DAEMON_URL:_default' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':shell -- Shell to generate completions for:(bash elvish fish powershell zsh)' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help_commands" \
"*::: :->help" \
&& ret=0

    case $state in
    (help)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-command-$line[1]:"
        case $line[1] in
            (add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(agents)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(init)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(ps)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(log-level)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(send)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(killall)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(session)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__session_commands" \
"*::: :->session" \
&& ret=0

    case $state in
    (session)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-session-command-$line[1]:"
        case $line[1] in
            (start)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-worktree-name)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(capture)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(current)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add-project)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-session-id)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-base)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(snooze)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unsnooze)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(favorite)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unfavorite)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(color)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(archive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(unarchive)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restore)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(import)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list-trash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(empty-trash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(group)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__group_commands" \
"*::: :->group" \
&& ret=0

    case $state in
    (group)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-group-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(move)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(plugin)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__plugin_commands" \
"*::: :->plugin" \
&& ret=0

    case $state in
    (plugin)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-plugin-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(install)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(uninstall)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(hash)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(discover)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(outdated)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(profile)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__profile_commands" \
"*::: :->profile" \
&& ret=0

    case $state in
    (profile)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-profile-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(delete)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(rename)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(default)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(show)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(project)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__project_commands" \
"*::: :->project" \
&& ret=0

    case $state in
    (project)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-project-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(sandbox)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__sandbox_commands" \
"*::: :->sandbox" \
&& ret=0

    case $state in
    (sandbox)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-sandbox-command-$line[1]:"
        case $line[1] in
            (reclaim)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(worktree)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__worktree_commands" \
"*::: :->worktree" \
&& ret=0

    case $state in
    (worktree)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-worktree-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cleanup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(tmux)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__tmux_commands" \
"*::: :->tmux" \
&& ret=0

    case $state in
    (tmux)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-tmux-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(sounds)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__sounds_commands" \
"*::: :->sounds" \
&& ret=0

    case $state in
    (sounds)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-sounds-command-$line[1]:"
        case $line[1] in
            (install)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(test)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(theme)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__theme_commands" \
"*::: :->theme" \
&& ret=0

    case $state in
    (theme)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-theme-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(export)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(dir)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(settings)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__settings_commands" \
"*::: :->settings" \
&& ret=0

    case $state in
    (settings)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-settings-command-$line[1]:"
        case $line[1] in
            (explain)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(cityhall)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__cityhall_commands" \
"*::: :->cityhall" \
&& ret=0

    case $state in
    (cityhall)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-cityhall-command-$line[1]:"
        case $line[1] in
            (export)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(apply)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(telemetry)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__telemetry_commands" \
"*::: :->telemetry" \
&& ret=0

    case $state in
    (telemetry)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-telemetry-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(enable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(disable)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset-id)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(mcp)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__mcp_commands" \
"*::: :->mcp" \
&& ret=0

    case $state in
    (mcp)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-mcp-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(skill)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__skill_commands" \
"*::: :->skill" \
&& ret=0

    case $state in
    (skill)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-skill-command-$line[1]:"
        case $line[1] in
            (list)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(view)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(edit)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(adopt)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(remove)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(sync)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(hooks)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__hooks_commands" \
"*::: :->hooks" \
&& ret=0

    case $state in
    (hooks)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-hooks-command-$line[1]:"
        case $line[1] in
            (status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(serve)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(url)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(acp)
_arguments "${_arguments_options[@]}" : \
":: :_aoe__subcmd__help__subcmd__acp_commands" \
"*::: :->acp" \
&& ret=0

    case $state in
    (acp)
        words=($line[1] "${words[@]}")
        (( CURRENT += 1 ))
        curcontext="${curcontext%:*:*}:aoe-help-acp-command-$line[1]:"
        case $line[1] in
            (doctor)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(agents)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(ps)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(stop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(recover)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(kill)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(logs)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(restart)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(history)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(status)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(prompt)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(set-option)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(approve)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(cancel)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(tail)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(attach)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(switch-agent)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(switch-provider)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
(__acp-runner)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(__prime-agent)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(__extract-session-id)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(uninstall)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(update)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(migrate)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(completion)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
        esac
    ;;
esac
;;
        esac
    ;;
esac
}

(( $+functions[_aoe_commands] )) ||
_aoe_commands() {
    local commands; commands=(
'add:Add a new session' \
'agents:List supported agents and their install status' \
'init:Initialize .agent-of-empires/config.toml in a repository' \
'list:List all sessions' \
'ps:Show a substrate-agnostic runtime view of in-flight sessions (tmux agent panes and ACP structured-view workers), one row each' \
'logs:View the configured AoE log file with a pretty viewer' \
'log-level:Get or set the running daemon'\''s log filter at runtime. Pass a bare level (debug/info/...) for the safe expansion, or \`--filter <expr>\` for raw EnvFilter syntax. \`--get\` prints the current filter. Changes are ephemeral and lost on daemon restart' \
'remove:Remove a session' \
'send:Send a message to a running agent session' \
'status:Show session status summary' \
'killall:Force-stop everything aoe is running\: the serve daemon, all agent workers, and all aoe tmux sessions. Destructive and unprompted' \
'stop:Internal\: trap for \`aoe stop\`, which is not a command in aoe (stopping is always scoped to a noun). Redirects users to \`session stop\`, \`acp stop\`, \`serve --stop\`, or \`killall\`. Hidden from help' \
'session:Manage session lifecycle (start, stop, attach, etc.)' \
'group:Manage groups for organizing sessions' \
'plugin:Manage plugins (list, info, enable, disable, install, update, uninstall)' \
'profile:Manage profiles (separate workspaces)' \
'project:Manage the project registry used by multi-repo session pickers' \
'sandbox:Inspect and reclaim per-session sandbox agent stores' \
'worktree:Manage git worktrees for parallel development' \
'tmux:tmux integration utilities' \
'sounds:Manage sound effects for agent state transitions' \
'theme:Manage color themes (list, export, customize)' \
'settings:Inspect resolved settings and their provenance' \
'cityhall:Export and apply the CityHall config bundle (settings + projects)' \
'telemetry:Manage anonymous opt-in usage telemetry' \
'mcp:Inspect the effective MCP server set (provenance, conflicts, drift)' \
'skill:Query and manage agent skills' \
'hooks:Let AoE write agent hooks into each agent'\''s own config, for every agent and every profile' \
'serve:Start the aoe daemon\: REST/WebSocket API, plus the web dashboard in builds that embed it' \
'url:Print the URL of a running \`aoe serve\` daemon' \
'acp:Manage the ACP structured-view workers (doctor, ps, logs, prompt, approve, ...)' \
'__acp-runner:Internal\: per-acp-worker shim spawned by \`aoe serve\`. Owns the agent subprocess and outlives the daemon so workers survive \`aoe serve --stop\`. Hidden from help' \
'__prime-agent:Internal\: own the native Prime daemon and its frontend' \
'__extract-session-id:Internal\: extract Claude'\''s \`session_id\` from a hook stdin payload and write it to the sidecar file. Spawned by the host-side \`SessionStart\`/\`UserPromptSubmit\` hook. Hidden from help' \
'uninstall:Uninstall Agent of Empires' \
'update:Update aoe to the latest release' \
'migrate:Run pending data migrations now, showing progress. A sandboxed session moves its own agent store when it starts; use this to move every eligible store at once instead. Trashed and archived sessions are skipped; each moves when it is started, or restore or unarchive it and run this again. Refuses while the aoe serve daemon runs; stop it with \`aoe serve --stop\` first' \
'completion:Generate shell completions' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe commands' commands "$@"
}
(( $+functions[_aoe__subcmd____acp-runner_commands] )) ||
_aoe__subcmd____acp-runner_commands() {
    local commands; commands=()
    _describe -t commands 'aoe __acp-runner commands' commands "$@"
}
(( $+functions[_aoe__subcmd____extract-session-id_commands] )) ||
_aoe__subcmd____extract-session-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe __extract-session-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd____prime-agent_commands] )) ||
_aoe__subcmd____prime-agent_commands() {
    local commands; commands=()
    _describe -t commands 'aoe __prime-agent commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp_commands] )) ||
_aoe__subcmd__acp_commands() {
    local commands; commands=(
'doctor:Verify the structured view can start\: Node runtime, configured agents, provider auth (claude login)' \
'agents:List configured agents (claude-code, aoe-agent, etc.)' \
'ps:Internal\: trap for \`aoe acp ps\`, removed in favour of the unified \`aoe ps --acp\`. Redirects rather than 404ing on an unknown subcommand. Hidden from help' \
'stop:Stop an agent worker and settle its owned native processes. Unlike \`aoe serve --stop\`, this ends the worker rather than detaching' \
'recover:Retire unprovable worker ownership after external shutdown confirmation' \
'kill:SIGKILL the runner, then settle its native workers' \
'logs:Tail the runner'\''s log file for an agent session' \
'restart:Restart a wedged worker after its runner and native workers have stopped' \
'history:Print the persisted transcript for an agent session' \
'status:Print live status for an agent session\: highest/lowest seq, and whether the on-disk retention window has truncated history' \
'prompt:Send a prompt to an agent session'\''s agent' \
'set-option:Set a config option (model, mode, effort, ...) on a running agent session. The agent'\''s own option id is the config id, e.g. \`reasoning_effort\`. A rejection by the agent is reported in the session'\''s event stream, not here' \
'approve:Resolve a pending approval (default\: allow). Use --always for a session-scoped allow-list entry, --deny to refuse the request, and --option to answer a request that lists choices' \
'cancel:Cancel the in-flight prompt for an agent session' \
'tail:Stream the agent broadcast for a session to stdout as JSON lines (one frame per line). Press Ctrl-C to stop' \
'attach:Open the TUI structured view directly for a known session id. Combine with \`AOE_DAEMON_URL\` (+ \`AOE_DAEMON_TOKEN\`, or \`AOE_DAEMON_PASSPHRASE\` against a \`--auth=passphrase\` daemon) to attach across machines without going through the home session list' \
'switch-agent:Switch an agent session to a different ACP agent, keeping the transcript. Valid targets are built-in registry agents and any custom agent configured in \`\[session.agent_acp_cmd\]\`. The new agent starts fresh; use \`aoe acp agents\` to list built-in targets. Handy for returning to claude after a rate-limit handoff to codex' \
'switch-provider:Re-route a Claude session to a different LLM provider, keeping the transcript. Refused mid-turn; once idle the worker restarts and resumes the same conversation. Credentials are not provisioned by this\: the target provider'\''s own variables must already be set on the host (for example \`ANTHROPIC_VERTEX_PROJECT_ID\` and \`CLOUD_ML_REGION\` for vertex). The model resets to the new provider'\''s default, because model ids differ between providers' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe acp commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__agents_commands] )) ||
_aoe__subcmd__acp__subcmd__agents_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp agents commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__approve_commands] )) ||
_aoe__subcmd__acp__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__attach_commands] )) ||
_aoe__subcmd__acp__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__cancel_commands] )) ||
_aoe__subcmd__acp__subcmd__cancel_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp cancel commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__doctor_commands] )) ||
_aoe__subcmd__acp__subcmd__doctor_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp doctor commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help_commands] )) ||
_aoe__subcmd__acp__subcmd__help_commands() {
    local commands; commands=(
'doctor:Verify the structured view can start\: Node runtime, configured agents, provider auth (claude login)' \
'agents:List configured agents (claude-code, aoe-agent, etc.)' \
'ps:Internal\: trap for \`aoe acp ps\`, removed in favour of the unified \`aoe ps --acp\`. Redirects rather than 404ing on an unknown subcommand. Hidden from help' \
'stop:Stop an agent worker and settle its owned native processes. Unlike \`aoe serve --stop\`, this ends the worker rather than detaching' \
'recover:Retire unprovable worker ownership after external shutdown confirmation' \
'kill:SIGKILL the runner, then settle its native workers' \
'logs:Tail the runner'\''s log file for an agent session' \
'restart:Restart a wedged worker after its runner and native workers have stopped' \
'history:Print the persisted transcript for an agent session' \
'status:Print live status for an agent session\: highest/lowest seq, and whether the on-disk retention window has truncated history' \
'prompt:Send a prompt to an agent session'\''s agent' \
'set-option:Set a config option (model, mode, effort, ...) on a running agent session. The agent'\''s own option id is the config id, e.g. \`reasoning_effort\`. A rejection by the agent is reported in the session'\''s event stream, not here' \
'approve:Resolve a pending approval (default\: allow). Use --always for a session-scoped allow-list entry, --deny to refuse the request, and --option to answer a request that lists choices' \
'cancel:Cancel the in-flight prompt for an agent session' \
'tail:Stream the agent broadcast for a session to stdout as JSON lines (one frame per line). Press Ctrl-C to stop' \
'attach:Open the TUI structured view directly for a known session id. Combine with \`AOE_DAEMON_URL\` (+ \`AOE_DAEMON_TOKEN\`, or \`AOE_DAEMON_PASSPHRASE\` against a \`--auth=passphrase\` daemon) to attach across machines without going through the home session list' \
'switch-agent:Switch an agent session to a different ACP agent, keeping the transcript. Valid targets are built-in registry agents and any custom agent configured in \`\[session.agent_acp_cmd\]\`. The new agent starts fresh; use \`aoe acp agents\` to list built-in targets. Handy for returning to claude after a rate-limit handoff to codex' \
'switch-provider:Re-route a Claude session to a different LLM provider, keeping the transcript. Refused mid-turn; once idle the worker restarts and resumes the same conversation. Credentials are not provisioned by this\: the target provider'\''s own variables must already be set on the host (for example \`ANTHROPIC_VERTEX_PROJECT_ID\` and \`CLOUD_ML_REGION\` for vertex). The model resets to the new provider'\''s default, because model ids differ between providers' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe acp help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__agents_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__agents_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help agents commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__approve_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__attach_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__cancel_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__cancel_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help cancel commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__doctor_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__doctor_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help doctor commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__history_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__history_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help history commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__kill_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__kill_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help kill commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__logs_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__prompt_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__prompt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help prompt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__ps_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__ps_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help ps commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__recover_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__recover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help recover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__restart_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__set-option_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__set-option_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help set-option commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__status_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__stop_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__switch-agent_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__switch-agent_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help switch-agent commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__switch-provider_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__switch-provider_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help switch-provider commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__help__subcmd__tail_commands] )) ||
_aoe__subcmd__acp__subcmd__help__subcmd__tail_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp help tail commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__history_commands] )) ||
_aoe__subcmd__acp__subcmd__history_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp history commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__kill_commands] )) ||
_aoe__subcmd__acp__subcmd__kill_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp kill commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__logs_commands] )) ||
_aoe__subcmd__acp__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__prompt_commands] )) ||
_aoe__subcmd__acp__subcmd__prompt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp prompt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__ps_commands] )) ||
_aoe__subcmd__acp__subcmd__ps_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp ps commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__recover_commands] )) ||
_aoe__subcmd__acp__subcmd__recover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp recover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__restart_commands] )) ||
_aoe__subcmd__acp__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__set-option_commands] )) ||
_aoe__subcmd__acp__subcmd__set-option_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp set-option commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__status_commands] )) ||
_aoe__subcmd__acp__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__stop_commands] )) ||
_aoe__subcmd__acp__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__switch-agent_commands] )) ||
_aoe__subcmd__acp__subcmd__switch-agent_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp switch-agent commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__switch-provider_commands] )) ||
_aoe__subcmd__acp__subcmd__switch-provider_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp switch-provider commands' commands "$@"
}
(( $+functions[_aoe__subcmd__acp__subcmd__tail_commands] )) ||
_aoe__subcmd__acp__subcmd__tail_commands() {
    local commands; commands=()
    _describe -t commands 'aoe acp tail commands' commands "$@"
}
(( $+functions[_aoe__subcmd__add_commands] )) ||
_aoe__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__agents_commands] )) ||
_aoe__subcmd__agents_commands() {
    local commands; commands=()
    _describe -t commands 'aoe agents commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall_commands] )) ||
_aoe__subcmd__cityhall_commands() {
    local commands; commands=(
'export:Write a bundle describing this install'\''s settings and projects' \
'apply:Apply a bundle to this install (merge settings, clone and register projects, install the git identity)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe cityhall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__apply_commands] )) ||
_aoe__subcmd__cityhall__subcmd__apply_commands() {
    local commands; commands=()
    _describe -t commands 'aoe cityhall apply commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__export_commands] )) ||
_aoe__subcmd__cityhall__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe cityhall export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__help_commands] )) ||
_aoe__subcmd__cityhall__subcmd__help_commands() {
    local commands; commands=(
'export:Write a bundle describing this install'\''s settings and projects' \
'apply:Apply a bundle to this install (merge settings, clone and register projects, install the git identity)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe cityhall help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__help__subcmd__apply_commands] )) ||
_aoe__subcmd__cityhall__subcmd__help__subcmd__apply_commands() {
    local commands; commands=()
    _describe -t commands 'aoe cityhall help apply commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__help__subcmd__export_commands] )) ||
_aoe__subcmd__cityhall__subcmd__help__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe cityhall help export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__cityhall__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__cityhall__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe cityhall help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__completion_commands] )) ||
_aoe__subcmd__completion_commands() {
    local commands; commands=()
    _describe -t commands 'aoe completion commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group_commands] )) ||
_aoe__subcmd__group_commands() {
    local commands; commands=(
'list:List all groups' \
'create:Create a new group' \
'delete:Delete a group' \
'move:Move session to group' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe group commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__create_commands] )) ||
_aoe__subcmd__group__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__delete_commands] )) ||
_aoe__subcmd__group__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help_commands] )) ||
_aoe__subcmd__group__subcmd__help_commands() {
    local commands; commands=(
'list:List all groups' \
'create:Create a new group' \
'delete:Delete a group' \
'move:Move session to group' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe group help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help__subcmd__create_commands] )) ||
_aoe__subcmd__group__subcmd__help__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group help create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help__subcmd__delete_commands] )) ||
_aoe__subcmd__group__subcmd__help__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group help delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__group__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__group__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__help__subcmd__move_commands] )) ||
_aoe__subcmd__group__subcmd__help__subcmd__move_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group help move commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__list_commands] )) ||
_aoe__subcmd__group__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__group__subcmd__move_commands] )) ||
_aoe__subcmd__group__subcmd__move_commands() {
    local commands; commands=()
    _describe -t commands 'aoe group move commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help_commands] )) ||
_aoe__subcmd__help_commands() {
    local commands; commands=(
'add:Add a new session' \
'agents:List supported agents and their install status' \
'init:Initialize .agent-of-empires/config.toml in a repository' \
'list:List all sessions' \
'ps:Show a substrate-agnostic runtime view of in-flight sessions (tmux agent panes and ACP structured-view workers), one row each' \
'logs:View the configured AoE log file with a pretty viewer' \
'log-level:Get or set the running daemon'\''s log filter at runtime. Pass a bare level (debug/info/...) for the safe expansion, or \`--filter <expr>\` for raw EnvFilter syntax. \`--get\` prints the current filter. Changes are ephemeral and lost on daemon restart' \
'remove:Remove a session' \
'send:Send a message to a running agent session' \
'status:Show session status summary' \
'killall:Force-stop everything aoe is running\: the serve daemon, all agent workers, and all aoe tmux sessions. Destructive and unprompted' \
'stop:Internal\: trap for \`aoe stop\`, which is not a command in aoe (stopping is always scoped to a noun). Redirects users to \`session stop\`, \`acp stop\`, \`serve --stop\`, or \`killall\`. Hidden from help' \
'session:Manage session lifecycle (start, stop, attach, etc.)' \
'group:Manage groups for organizing sessions' \
'plugin:Manage plugins (list, info, enable, disable, install, update, uninstall)' \
'profile:Manage profiles (separate workspaces)' \
'project:Manage the project registry used by multi-repo session pickers' \
'sandbox:Inspect and reclaim per-session sandbox agent stores' \
'worktree:Manage git worktrees for parallel development' \
'tmux:tmux integration utilities' \
'sounds:Manage sound effects for agent state transitions' \
'theme:Manage color themes (list, export, customize)' \
'settings:Inspect resolved settings and their provenance' \
'cityhall:Export and apply the CityHall config bundle (settings + projects)' \
'telemetry:Manage anonymous opt-in usage telemetry' \
'mcp:Inspect the effective MCP server set (provenance, conflicts, drift)' \
'skill:Query and manage agent skills' \
'hooks:Let AoE write agent hooks into each agent'\''s own config, for every agent and every profile' \
'serve:Start the aoe daemon\: REST/WebSocket API, plus the web dashboard in builds that embed it' \
'url:Print the URL of a running \`aoe serve\` daemon' \
'acp:Manage the ACP structured-view workers (doctor, ps, logs, prompt, approve, ...)' \
'__acp-runner:Internal\: per-acp-worker shim spawned by \`aoe serve\`. Owns the agent subprocess and outlives the daemon so workers survive \`aoe serve --stop\`. Hidden from help' \
'__prime-agent:Internal\: own the native Prime daemon and its frontend' \
'__extract-session-id:Internal\: extract Claude'\''s \`session_id\` from a hook stdin payload and write it to the sidecar file. Spawned by the host-side \`SessionStart\`/\`UserPromptSubmit\` hook. Hidden from help' \
'uninstall:Uninstall Agent of Empires' \
'update:Update aoe to the latest release' \
'migrate:Run pending data migrations now, showing progress. A sandboxed session moves its own agent store when it starts; use this to move every eligible store at once instead. Trashed and archived sessions are skipped; each moves when it is started, or restore or unarchive it and run this again. Refuses while the aoe serve daemon runs; stop it with \`aoe serve --stop\` first' \
'completion:Generate shell completions' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd____acp-runner_commands] )) ||
_aoe__subcmd__help__subcmd____acp-runner_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help __acp-runner commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd____extract-session-id_commands] )) ||
_aoe__subcmd__help__subcmd____extract-session-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help __extract-session-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd____prime-agent_commands] )) ||
_aoe__subcmd__help__subcmd____prime-agent_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help __prime-agent commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp_commands] )) ||
_aoe__subcmd__help__subcmd__acp_commands() {
    local commands; commands=(
'doctor:Verify the structured view can start\: Node runtime, configured agents, provider auth (claude login)' \
'agents:List configured agents (claude-code, aoe-agent, etc.)' \
'ps:Internal\: trap for \`aoe acp ps\`, removed in favour of the unified \`aoe ps --acp\`. Redirects rather than 404ing on an unknown subcommand. Hidden from help' \
'stop:Stop an agent worker and settle its owned native processes. Unlike \`aoe serve --stop\`, this ends the worker rather than detaching' \
'recover:Retire unprovable worker ownership after external shutdown confirmation' \
'kill:SIGKILL the runner, then settle its native workers' \
'logs:Tail the runner'\''s log file for an agent session' \
'restart:Restart a wedged worker after its runner and native workers have stopped' \
'history:Print the persisted transcript for an agent session' \
'status:Print live status for an agent session\: highest/lowest seq, and whether the on-disk retention window has truncated history' \
'prompt:Send a prompt to an agent session'\''s agent' \
'set-option:Set a config option (model, mode, effort, ...) on a running agent session. The agent'\''s own option id is the config id, e.g. \`reasoning_effort\`. A rejection by the agent is reported in the session'\''s event stream, not here' \
'approve:Resolve a pending approval (default\: allow). Use --always for a session-scoped allow-list entry, --deny to refuse the request, and --option to answer a request that lists choices' \
'cancel:Cancel the in-flight prompt for an agent session' \
'tail:Stream the agent broadcast for a session to stdout as JSON lines (one frame per line). Press Ctrl-C to stop' \
'attach:Open the TUI structured view directly for a known session id. Combine with \`AOE_DAEMON_URL\` (+ \`AOE_DAEMON_TOKEN\`, or \`AOE_DAEMON_PASSPHRASE\` against a \`--auth=passphrase\` daemon) to attach across machines without going through the home session list' \
'switch-agent:Switch an agent session to a different ACP agent, keeping the transcript. Valid targets are built-in registry agents and any custom agent configured in \`\[session.agent_acp_cmd\]\`. The new agent starts fresh; use \`aoe acp agents\` to list built-in targets. Handy for returning to claude after a rate-limit handoff to codex' \
'switch-provider:Re-route a Claude session to a different LLM provider, keeping the transcript. Refused mid-turn; once idle the worker restarts and resumes the same conversation. Credentials are not provisioned by this\: the target provider'\''s own variables must already be set on the host (for example \`ANTHROPIC_VERTEX_PROJECT_ID\` and \`CLOUD_ML_REGION\` for vertex). The model resets to the new provider'\''s default, because model ids differ between providers' \
    )
    _describe -t commands 'aoe help acp commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__agents_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__agents_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp agents commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__approve_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__attach_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__cancel_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__cancel_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp cancel commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__doctor_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__doctor_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp doctor commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__history_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__history_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp history commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__kill_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__kill_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp kill commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__logs_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__prompt_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__prompt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp prompt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__ps_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__ps_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp ps commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__recover_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__recover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp recover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__restart_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__set-option_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__set-option_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp set-option commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__status_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__stop_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__switch-agent_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__switch-agent_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp switch-agent commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__switch-provider_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__switch-provider_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp switch-provider commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__acp__subcmd__tail_commands] )) ||
_aoe__subcmd__help__subcmd__acp__subcmd__tail_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help acp tail commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__add_commands] )) ||
_aoe__subcmd__help__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__agents_commands] )) ||
_aoe__subcmd__help__subcmd__agents_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help agents commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__cityhall_commands] )) ||
_aoe__subcmd__help__subcmd__cityhall_commands() {
    local commands; commands=(
'export:Write a bundle describing this install'\''s settings and projects' \
'apply:Apply a bundle to this install (merge settings, clone and register projects, install the git identity)' \
    )
    _describe -t commands 'aoe help cityhall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__cityhall__subcmd__apply_commands] )) ||
_aoe__subcmd__help__subcmd__cityhall__subcmd__apply_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help cityhall apply commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__cityhall__subcmd__export_commands] )) ||
_aoe__subcmd__help__subcmd__cityhall__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help cityhall export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__completion_commands] )) ||
_aoe__subcmd__help__subcmd__completion_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help completion commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__group_commands] )) ||
_aoe__subcmd__help__subcmd__group_commands() {
    local commands; commands=(
'list:List all groups' \
'create:Create a new group' \
'delete:Delete a group' \
'move:Move session to group' \
    )
    _describe -t commands 'aoe help group commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__group__subcmd__create_commands] )) ||
_aoe__subcmd__help__subcmd__group__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help group create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__group__subcmd__delete_commands] )) ||
_aoe__subcmd__help__subcmd__group__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help group delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__group__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__group__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help group list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__group__subcmd__move_commands] )) ||
_aoe__subcmd__help__subcmd__group__subcmd__move_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help group move commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__hooks_commands] )) ||
_aoe__subcmd__help__subcmd__hooks_commands() {
    local commands; commands=(
'status:Show whether AoE may write agent hooks, and what they resolve for a profile' \
'approve:Let AoE write agent hooks for every agent, on every profile' \
    )
    _describe -t commands 'aoe help hooks commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__hooks__subcmd__approve_commands] )) ||
_aoe__subcmd__help__subcmd__hooks__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help hooks approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__hooks__subcmd__status_commands] )) ||
_aoe__subcmd__help__subcmd__hooks__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help hooks status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__init_commands] )) ||
_aoe__subcmd__help__subcmd__init_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help init commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__killall_commands] )) ||
_aoe__subcmd__help__subcmd__killall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help killall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__log-level_commands] )) ||
_aoe__subcmd__help__subcmd__log-level_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help log-level commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__logs_commands] )) ||
_aoe__subcmd__help__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__mcp_commands] )) ||
_aoe__subcmd__help__subcmd__mcp_commands() {
    local commands; commands=(
'list:List the merged effective MCP server set with provenance, plus any conflicts and servers kept after removal from a native config' \
'add:Add an AoE-owned MCP server to the global mcp.json' \
'edit:Edit an AoE-owned MCP server. Secrets you do not mention keep their stored value' \
'remove:Remove an AoE-owned MCP server' \
    )
    _describe -t commands 'aoe help mcp commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__mcp__subcmd__add_commands] )) ||
_aoe__subcmd__help__subcmd__mcp__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help mcp add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__mcp__subcmd__edit_commands] )) ||
_aoe__subcmd__help__subcmd__mcp__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help mcp edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__mcp__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__mcp__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help mcp list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__mcp__subcmd__remove_commands] )) ||
_aoe__subcmd__help__subcmd__mcp__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help mcp remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__migrate_commands] )) ||
_aoe__subcmd__help__subcmd__migrate_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help migrate commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin_commands] )) ||
_aoe__subcmd__help__subcmd__plugin_commands() {
    local commands; commands=(
'list:List every known plugin with version, validation, and state' \
'info:Show one plugin'\''s manifest details' \
'logs:Print the path of a plugin worker'\''s most recent log' \
'enable:Enable a plugin'\''s contributions' \
'disable:Disable a plugin; its settings stay on disk for re-enabling' \
'install:Install an external plugin from a \`gh\:owner/repo\[@ref\]\` slug or a local directory. With no \`@ref\`, installs the repo'\''s latest release; an explicit \`@ref\` installs unverified, un-audited code. Community plugins run at your own risk' \
'update:Update an installed external plugin from its recorded source and restart its worker in a running daemon. Prompts to re-approve capabilities if the update changes the capability set' \
'uninstall:Uninstall an external plugin, removing its files and capability grant' \
'hash:Print the deterministic source tree hash for a plugin directory, the value a maintainer pins in the featured index' \
'discover:Search GitHub'\''s \`aoe-plugin\` topic for installable plugins' \
'outdated:List installed external plugins that have an update available' \
    )
    _describe -t commands 'aoe help plugin commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__disable_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__discover_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__discover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin discover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__enable_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__hash_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__hash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin hash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__info_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__install_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__logs_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__outdated_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__outdated_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin outdated commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__uninstall_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__uninstall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin uninstall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__plugin__subcmd__update_commands] )) ||
_aoe__subcmd__help__subcmd__plugin__subcmd__update_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help plugin update commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile_commands] )) ||
_aoe__subcmd__help__subcmd__profile_commands() {
    local commands; commands=(
'list:List all profiles' \
'create:Create a new profile' \
'delete:Delete a profile' \
'rename:Rename a profile' \
'default:Show or set default profile' \
'show:Show profile-derived values for scripts' \
    )
    _describe -t commands 'aoe help profile commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__create_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__default_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__default_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile default commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__delete_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__rename_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__profile__subcmd__show_commands] )) ||
_aoe__subcmd__help__subcmd__profile__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help profile show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__project_commands] )) ||
_aoe__subcmd__help__subcmd__project_commands() {
    local commands; commands=(
'list:List registered projects' \
'add:Add a project to the registry' \
'remove:Remove a project from the registry' \
    )
    _describe -t commands 'aoe help project commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__project__subcmd__add_commands] )) ||
_aoe__subcmd__help__subcmd__project__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help project add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__project__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__project__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help project list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__project__subcmd__remove_commands] )) ||
_aoe__subcmd__help__subcmd__project__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help project remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__ps_commands] )) ||
_aoe__subcmd__help__subcmd__ps_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help ps commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__remove_commands] )) ||
_aoe__subcmd__help__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sandbox_commands] )) ||
_aoe__subcmd__help__subcmd__sandbox_commands() {
    local commands; commands=(
'reclaim:Report per-session agent stores whose session no longer exists in any profile, and how much disk they hold. Reports only unless \`--delete\` is given\: a store can hold a copy of that agent'\''s credentials' \
    )
    _describe -t commands 'aoe help sandbox commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sandbox__subcmd__reclaim_commands] )) ||
_aoe__subcmd__help__subcmd__sandbox__subcmd__reclaim_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help sandbox reclaim commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__send_commands] )) ||
_aoe__subcmd__help__subcmd__send_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help send commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__serve_commands] )) ||
_aoe__subcmd__help__subcmd__serve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help serve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session_commands] )) ||
_aoe__subcmd__help__subcmd__session_commands() {
    local commands; commands=(
'start:Start a session'\''s tmux process' \
'stop:Stop session process' \
'restart:Restart session (or all sessions with \`--all\`)' \
'attach:Attach to session interactively' \
'show:Show session details' \
'rename:Rename a session' \
'set-worktree-name:Edit a managed worktree session'\''s workdir directory name (and, optionally, its git branch). Moves the worktree directory in place; the session must not be running. See #1723' \
'capture:Capture tmux pane output' \
'current:Auto-detect current session' \
'add-project:Attach another repo to an existing session, creating a worktree for it and restarting the agent. Moving the session'\''s working directory is refused while its resume target is a known conversation bound to that directory. Explicitly clear the resume target to start a new conversation after attaching. An implicitly preallocated ID is re-linked. See #3103' \
'set-session-id:Set the resume target for a session; an agent whose exact native resume AoE cannot resolve is refused' \
'set-base:Set or clear the per-session diff base branch. The diff view compares the worktree against this ref instead of the auto-detected default. Useful when the PR target differs from the project default (stacked PRs, hotfix off \`release/*\`, renamed default branch). See #970' \
'snooze:Snooze a session for a duration (temporary archive, auto wakes)' \
'unsnooze:Wake a snoozed session immediately' \
'favorite:Mark a session as a favorite. With \`session.favorites_first\` on (the default), favorited rows pin to the top of their sibling scope in every sort order; with it off, they pin within their status tier in the Attention sort only. Either way the row shows a \`✦\` in the session list gutter wherever the pin applies. Snoozing a favorite suspends the pin until it wakes' \
'unfavorite:Clear the favorite flag on a session' \
'color:Set (or clear) a per-session color label, rendered as a colored dot in the web sidebar for at-a-glance status signaling. Intended for a running agent to flag its own state, e.g. \`aoe session color \$(aoe session current -q) red\`. Colors\: \`red\` (needs attention), \`amber\` (working), \`green\` (done); \`none\` clears it' \
'archive:Archive a session\: sink it in the Attention sort and tear down its tmux sessions. Worktree, branch, container preserved. \`--no-kill\` skips tmux teardown. See #1868' \
'unarchive:Unarchive a session (restores it to its tier in the Attention sort)' \
'restore:Restore a trashed session, returning it to its prior bucket with its transcript and metadata intact. See #2489' \
'import:Import existing Claude Code sessions from disk. Scans the given path(s) (default\: current directory) for Claude Code conversations whose working directory is at or under a path, and creates an AoE session for each\: a terminal/tmux session that resumes the conversation with \`claude --resume <id>\` (default), or a structured-view session with \`--structured\`' \
'list-trash:List the sessions currently in the trash' \
'empty-trash:Permanently purge every trashed session in the profile (irreversible)' \
    )
    _describe -t commands 'aoe help session commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__add-project_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__add-project_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session add-project commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__archive_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__archive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session archive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__attach_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__capture_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__capture_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session capture commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__color_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__color_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session color commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__current_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__current_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session current commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__empty-trash_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__empty-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session empty-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__favorite_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__favorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session favorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__import_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__import_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session import commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__list-trash_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__list-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session list-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__rename_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__restart_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__restore_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__restore_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session restore commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__set-base_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__set-base_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session set-base commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__set-session-id_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__set-session-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session set-session-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__set-worktree-name_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__set-worktree-name_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session set-worktree-name commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__show_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__snooze_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__snooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session snooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__start_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__start_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session start commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__stop_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__unarchive_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__unarchive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session unarchive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__unfavorite_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__unfavorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session unfavorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__session__subcmd__unsnooze_commands] )) ||
_aoe__subcmd__help__subcmd__session__subcmd__unsnooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help session unsnooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__settings_commands] )) ||
_aoe__subcmd__help__subcmd__settings_commands() {
    local commands; commands=(
'explain:Explain where a setting'\''s effective value comes from. KEY is a core \`section.field\` (e.g. \`acp.default_agent\`) or a plugin \`plugin\:<id>.<field>\` (e.g. \`plugin\:acme.kit.retries\`)' \
    )
    _describe -t commands 'aoe help settings commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__settings__subcmd__explain_commands] )) ||
_aoe__subcmd__help__subcmd__settings__subcmd__explain_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help settings explain commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill_commands] )) ||
_aoe__subcmd__help__subcmd__skill_commands() {
    local commands; commands=(
'list:List discovered skills and their source roots' \
'view:Print one skill'\''s SKILL.md' \
'add:Create a new AoE-managed skill' \
'edit:Edit an AoE-managed skill' \
'adopt:Copy an external skill into AoE'\''s managed store' \
'remove:Delete an AoE-managed skill' \
'sync:Copy AoE-managed skills into the agents'\'' own skills directories' \
    )
    _describe -t commands 'aoe help skill commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__add_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__adopt_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill adopt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__edit_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__remove_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__sync_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__sync_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill sync commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__skill__subcmd__view_commands] )) ||
_aoe__subcmd__help__subcmd__skill__subcmd__view_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help skill view commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sounds_commands] )) ||
_aoe__subcmd__help__subcmd__sounds_commands() {
    local commands; commands=(
'install:Install bundled sound effects' \
'list:List currently installed sounds' \
'test:Test a sound by playing it' \
    )
    _describe -t commands 'aoe help sounds commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sounds__subcmd__install_commands] )) ||
_aoe__subcmd__help__subcmd__sounds__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help sounds install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sounds__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__sounds__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help sounds list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__sounds__subcmd__test_commands] )) ||
_aoe__subcmd__help__subcmd__sounds__subcmd__test_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help sounds test commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__status_commands] )) ||
_aoe__subcmd__help__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__stop_commands] )) ||
_aoe__subcmd__help__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__telemetry_commands] )) ||
_aoe__subcmd__help__subcmd__telemetry_commands() {
    local commands; commands=(
'status:Show the current telemetry opt-in state and install id' \
'enable:Opt in to anonymous usage telemetry' \
'disable:Opt out of telemetry (deletes the local install id)' \
'reset-id:Generate a fresh anonymous install id (only while opted in)' \
    )
    _describe -t commands 'aoe help telemetry commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__telemetry__subcmd__disable_commands] )) ||
_aoe__subcmd__help__subcmd__telemetry__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help telemetry disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__telemetry__subcmd__enable_commands] )) ||
_aoe__subcmd__help__subcmd__telemetry__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help telemetry enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__telemetry__subcmd__reset-id_commands] )) ||
_aoe__subcmd__help__subcmd__telemetry__subcmd__reset-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help telemetry reset-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__telemetry__subcmd__status_commands] )) ||
_aoe__subcmd__help__subcmd__telemetry__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help telemetry status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__theme_commands] )) ||
_aoe__subcmd__help__subcmd__theme_commands() {
    local commands; commands=(
'list:List all available themes (built-in and custom)' \
'export:Export a built-in theme as a TOML file for customization' \
'dir:Show the custom themes directory path' \
    )
    _describe -t commands 'aoe help theme commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__theme__subcmd__dir_commands] )) ||
_aoe__subcmd__help__subcmd__theme__subcmd__dir_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help theme dir commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__theme__subcmd__export_commands] )) ||
_aoe__subcmd__help__subcmd__theme__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help theme export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__theme__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__theme__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help theme list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__tmux_commands] )) ||
_aoe__subcmd__help__subcmd__tmux_commands() {
    local commands; commands=(
'status:Output session info for use in custom tmux status bar' \
    )
    _describe -t commands 'aoe help tmux commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__tmux__subcmd__status_commands] )) ||
_aoe__subcmd__help__subcmd__tmux__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help tmux status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__uninstall_commands] )) ||
_aoe__subcmd__help__subcmd__uninstall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help uninstall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__update_commands] )) ||
_aoe__subcmd__help__subcmd__update_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help update commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__url_commands] )) ||
_aoe__subcmd__help__subcmd__url_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help url commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__worktree_commands] )) ||
_aoe__subcmd__help__subcmd__worktree_commands() {
    local commands; commands=(
'list:List all worktrees in current repository' \
'info:Show worktree information for a session' \
'cleanup:Cleanup orphaned worktrees' \
    )
    _describe -t commands 'aoe help worktree commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__worktree__subcmd__cleanup_commands] )) ||
_aoe__subcmd__help__subcmd__worktree__subcmd__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help worktree cleanup commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__worktree__subcmd__info_commands] )) ||
_aoe__subcmd__help__subcmd__worktree__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help worktree info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__help__subcmd__worktree__subcmd__list_commands] )) ||
_aoe__subcmd__help__subcmd__worktree__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe help worktree list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks_commands] )) ||
_aoe__subcmd__hooks_commands() {
    local commands; commands=(
'status:Show whether AoE may write agent hooks, and what they resolve for a profile' \
'approve:Let AoE write agent hooks for every agent, on every profile' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe hooks commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__approve_commands] )) ||
_aoe__subcmd__hooks__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe hooks approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__help_commands] )) ||
_aoe__subcmd__hooks__subcmd__help_commands() {
    local commands; commands=(
'status:Show whether AoE may write agent hooks, and what they resolve for a profile' \
'approve:Let AoE write agent hooks for every agent, on every profile' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe hooks help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__help__subcmd__approve_commands] )) ||
_aoe__subcmd__hooks__subcmd__help__subcmd__approve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe hooks help approve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__hooks__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe hooks help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__help__subcmd__status_commands] )) ||
_aoe__subcmd__hooks__subcmd__help__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe hooks help status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__hooks__subcmd__status_commands] )) ||
_aoe__subcmd__hooks__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe hooks status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__init_commands] )) ||
_aoe__subcmd__init_commands() {
    local commands; commands=()
    _describe -t commands 'aoe init commands' commands "$@"
}
(( $+functions[_aoe__subcmd__killall_commands] )) ||
_aoe__subcmd__killall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe killall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__list_commands] )) ||
_aoe__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__log-level_commands] )) ||
_aoe__subcmd__log-level_commands() {
    local commands; commands=()
    _describe -t commands 'aoe log-level commands' commands "$@"
}
(( $+functions[_aoe__subcmd__logs_commands] )) ||
_aoe__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp_commands] )) ||
_aoe__subcmd__mcp_commands() {
    local commands; commands=(
'list:List the merged effective MCP server set with provenance, plus any conflicts and servers kept after removal from a native config' \
'add:Add an AoE-owned MCP server to the global mcp.json' \
'edit:Edit an AoE-owned MCP server. Secrets you do not mention keep their stored value' \
'remove:Remove an AoE-owned MCP server' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe mcp commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__add_commands] )) ||
_aoe__subcmd__mcp__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__edit_commands] )) ||
_aoe__subcmd__mcp__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help_commands] )) ||
_aoe__subcmd__mcp__subcmd__help_commands() {
    local commands; commands=(
'list:List the merged effective MCP server set with provenance, plus any conflicts and servers kept after removal from a native config' \
'add:Add an AoE-owned MCP server to the global mcp.json' \
'edit:Edit an AoE-owned MCP server. Secrets you do not mention keep their stored value' \
'remove:Remove an AoE-owned MCP server' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe mcp help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help__subcmd__add_commands] )) ||
_aoe__subcmd__mcp__subcmd__help__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp help add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help__subcmd__edit_commands] )) ||
_aoe__subcmd__mcp__subcmd__help__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp help edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__mcp__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__mcp__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__help__subcmd__remove_commands] )) ||
_aoe__subcmd__mcp__subcmd__help__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp help remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__list_commands] )) ||
_aoe__subcmd__mcp__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__mcp__subcmd__remove_commands] )) ||
_aoe__subcmd__mcp__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe mcp remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__migrate_commands] )) ||
_aoe__subcmd__migrate_commands() {
    local commands; commands=()
    _describe -t commands 'aoe migrate commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin_commands] )) ||
_aoe__subcmd__plugin_commands() {
    local commands; commands=(
'list:List every known plugin with version, validation, and state' \
'info:Show one plugin'\''s manifest details' \
'logs:Print the path of a plugin worker'\''s most recent log' \
'enable:Enable a plugin'\''s contributions' \
'disable:Disable a plugin; its settings stay on disk for re-enabling' \
'install:Install an external plugin from a \`gh\:owner/repo\[@ref\]\` slug or a local directory. With no \`@ref\`, installs the repo'\''s latest release; an explicit \`@ref\` installs unverified, un-audited code. Community plugins run at your own risk' \
'update:Update an installed external plugin from its recorded source and restart its worker in a running daemon. Prompts to re-approve capabilities if the update changes the capability set' \
'uninstall:Uninstall an external plugin, removing its files and capability grant' \
'hash:Print the deterministic source tree hash for a plugin directory, the value a maintainer pins in the featured index' \
'discover:Search GitHub'\''s \`aoe-plugin\` topic for installable plugins' \
'outdated:List installed external plugins that have an update available' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe plugin commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__disable_commands] )) ||
_aoe__subcmd__plugin__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__discover_commands] )) ||
_aoe__subcmd__plugin__subcmd__discover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin discover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__enable_commands] )) ||
_aoe__subcmd__plugin__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__hash_commands] )) ||
_aoe__subcmd__plugin__subcmd__hash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin hash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help_commands] )) ||
_aoe__subcmd__plugin__subcmd__help_commands() {
    local commands; commands=(
'list:List every known plugin with version, validation, and state' \
'info:Show one plugin'\''s manifest details' \
'logs:Print the path of a plugin worker'\''s most recent log' \
'enable:Enable a plugin'\''s contributions' \
'disable:Disable a plugin; its settings stay on disk for re-enabling' \
'install:Install an external plugin from a \`gh\:owner/repo\[@ref\]\` slug or a local directory. With no \`@ref\`, installs the repo'\''s latest release; an explicit \`@ref\` installs unverified, un-audited code. Community plugins run at your own risk' \
'update:Update an installed external plugin from its recorded source and restart its worker in a running daemon. Prompts to re-approve capabilities if the update changes the capability set' \
'uninstall:Uninstall an external plugin, removing its files and capability grant' \
'hash:Print the deterministic source tree hash for a plugin directory, the value a maintainer pins in the featured index' \
'discover:Search GitHub'\''s \`aoe-plugin\` topic for installable plugins' \
'outdated:List installed external plugins that have an update available' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe plugin help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__disable_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__discover_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__discover_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help discover commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__enable_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__hash_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__hash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help hash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__info_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__install_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__logs_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__outdated_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__outdated_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help outdated commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__uninstall_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__uninstall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help uninstall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__help__subcmd__update_commands] )) ||
_aoe__subcmd__plugin__subcmd__help__subcmd__update_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin help update commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__info_commands] )) ||
_aoe__subcmd__plugin__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__install_commands] )) ||
_aoe__subcmd__plugin__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__list_commands] )) ||
_aoe__subcmd__plugin__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__logs_commands] )) ||
_aoe__subcmd__plugin__subcmd__logs_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin logs commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__outdated_commands] )) ||
_aoe__subcmd__plugin__subcmd__outdated_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin outdated commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__uninstall_commands] )) ||
_aoe__subcmd__plugin__subcmd__uninstall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin uninstall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__plugin__subcmd__update_commands] )) ||
_aoe__subcmd__plugin__subcmd__update_commands() {
    local commands; commands=()
    _describe -t commands 'aoe plugin update commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile_commands] )) ||
_aoe__subcmd__profile_commands() {
    local commands; commands=(
'list:List all profiles' \
'create:Create a new profile' \
'delete:Delete a profile' \
'rename:Rename a profile' \
'default:Show or set default profile' \
'show:Show profile-derived values for scripts' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe profile commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__create_commands] )) ||
_aoe__subcmd__profile__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__default_commands] )) ||
_aoe__subcmd__profile__subcmd__default_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile default commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__delete_commands] )) ||
_aoe__subcmd__profile__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help_commands] )) ||
_aoe__subcmd__profile__subcmd__help_commands() {
    local commands; commands=(
'list:List all profiles' \
'create:Create a new profile' \
'delete:Delete a profile' \
'rename:Rename a profile' \
'default:Show or set default profile' \
'show:Show profile-derived values for scripts' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe profile help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__create_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__create_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help create commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__default_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__default_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help default commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__delete_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__delete_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help delete commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__rename_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__help__subcmd__show_commands] )) ||
_aoe__subcmd__profile__subcmd__help__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile help show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__list_commands] )) ||
_aoe__subcmd__profile__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__rename_commands] )) ||
_aoe__subcmd__profile__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__profile__subcmd__show_commands] )) ||
_aoe__subcmd__profile__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe profile show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project_commands] )) ||
_aoe__subcmd__project_commands() {
    local commands; commands=(
'list:List registered projects' \
'add:Add a project to the registry' \
'remove:Remove a project from the registry' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe project commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__add_commands] )) ||
_aoe__subcmd__project__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__help_commands] )) ||
_aoe__subcmd__project__subcmd__help_commands() {
    local commands; commands=(
'list:List registered projects' \
'add:Add a project to the registry' \
'remove:Remove a project from the registry' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe project help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__help__subcmd__add_commands] )) ||
_aoe__subcmd__project__subcmd__help__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project help add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__project__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__project__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__help__subcmd__remove_commands] )) ||
_aoe__subcmd__project__subcmd__help__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project help remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__list_commands] )) ||
_aoe__subcmd__project__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__project__subcmd__remove_commands] )) ||
_aoe__subcmd__project__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe project remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__ps_commands] )) ||
_aoe__subcmd__ps_commands() {
    local commands; commands=()
    _describe -t commands 'aoe ps commands' commands "$@"
}
(( $+functions[_aoe__subcmd__remove_commands] )) ||
_aoe__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sandbox_commands] )) ||
_aoe__subcmd__sandbox_commands() {
    local commands; commands=(
'reclaim:Report per-session agent stores whose session no longer exists in any profile, and how much disk they hold. Reports only unless \`--delete\` is given\: a store can hold a copy of that agent'\''s credentials' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe sandbox commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sandbox__subcmd__help_commands] )) ||
_aoe__subcmd__sandbox__subcmd__help_commands() {
    local commands; commands=(
'reclaim:Report per-session agent stores whose session no longer exists in any profile, and how much disk they hold. Reports only unless \`--delete\` is given\: a store can hold a copy of that agent'\''s credentials' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe sandbox help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sandbox__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__sandbox__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sandbox help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sandbox__subcmd__help__subcmd__reclaim_commands] )) ||
_aoe__subcmd__sandbox__subcmd__help__subcmd__reclaim_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sandbox help reclaim commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sandbox__subcmd__reclaim_commands] )) ||
_aoe__subcmd__sandbox__subcmd__reclaim_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sandbox reclaim commands' commands "$@"
}
(( $+functions[_aoe__subcmd__send_commands] )) ||
_aoe__subcmd__send_commands() {
    local commands; commands=()
    _describe -t commands 'aoe send commands' commands "$@"
}
(( $+functions[_aoe__subcmd__serve_commands] )) ||
_aoe__subcmd__serve_commands() {
    local commands; commands=()
    _describe -t commands 'aoe serve commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session_commands] )) ||
_aoe__subcmd__session_commands() {
    local commands; commands=(
'start:Start a session'\''s tmux process' \
'stop:Stop session process' \
'restart:Restart session (or all sessions with \`--all\`)' \
'attach:Attach to session interactively' \
'show:Show session details' \
'rename:Rename a session' \
'set-worktree-name:Edit a managed worktree session'\''s workdir directory name (and, optionally, its git branch). Moves the worktree directory in place; the session must not be running. See #1723' \
'capture:Capture tmux pane output' \
'current:Auto-detect current session' \
'add-project:Attach another repo to an existing session, creating a worktree for it and restarting the agent. Moving the session'\''s working directory is refused while its resume target is a known conversation bound to that directory. Explicitly clear the resume target to start a new conversation after attaching. An implicitly preallocated ID is re-linked. See #3103' \
'set-session-id:Set the resume target for a session; an agent whose exact native resume AoE cannot resolve is refused' \
'set-base:Set or clear the per-session diff base branch. The diff view compares the worktree against this ref instead of the auto-detected default. Useful when the PR target differs from the project default (stacked PRs, hotfix off \`release/*\`, renamed default branch). See #970' \
'snooze:Snooze a session for a duration (temporary archive, auto wakes)' \
'unsnooze:Wake a snoozed session immediately' \
'favorite:Mark a session as a favorite. With \`session.favorites_first\` on (the default), favorited rows pin to the top of their sibling scope in every sort order; with it off, they pin within their status tier in the Attention sort only. Either way the row shows a \`✦\` in the session list gutter wherever the pin applies. Snoozing a favorite suspends the pin until it wakes' \
'unfavorite:Clear the favorite flag on a session' \
'color:Set (or clear) a per-session color label, rendered as a colored dot in the web sidebar for at-a-glance status signaling. Intended for a running agent to flag its own state, e.g. \`aoe session color \$(aoe session current -q) red\`. Colors\: \`red\` (needs attention), \`amber\` (working), \`green\` (done); \`none\` clears it' \
'archive:Archive a session\: sink it in the Attention sort and tear down its tmux sessions. Worktree, branch, container preserved. \`--no-kill\` skips tmux teardown. See #1868' \
'unarchive:Unarchive a session (restores it to its tier in the Attention sort)' \
'restore:Restore a trashed session, returning it to its prior bucket with its transcript and metadata intact. See #2489' \
'import:Import existing Claude Code sessions from disk. Scans the given path(s) (default\: current directory) for Claude Code conversations whose working directory is at or under a path, and creates an AoE session for each\: a terminal/tmux session that resumes the conversation with \`claude --resume <id>\` (default), or a structured-view session with \`--structured\`' \
'list-trash:List the sessions currently in the trash' \
'empty-trash:Permanently purge every trashed session in the profile (irreversible)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe session commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__add-project_commands] )) ||
_aoe__subcmd__session__subcmd__add-project_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session add-project commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__archive_commands] )) ||
_aoe__subcmd__session__subcmd__archive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session archive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__attach_commands] )) ||
_aoe__subcmd__session__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__capture_commands] )) ||
_aoe__subcmd__session__subcmd__capture_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session capture commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__color_commands] )) ||
_aoe__subcmd__session__subcmd__color_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session color commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__current_commands] )) ||
_aoe__subcmd__session__subcmd__current_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session current commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__empty-trash_commands] )) ||
_aoe__subcmd__session__subcmd__empty-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session empty-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__favorite_commands] )) ||
_aoe__subcmd__session__subcmd__favorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session favorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help_commands] )) ||
_aoe__subcmd__session__subcmd__help_commands() {
    local commands; commands=(
'start:Start a session'\''s tmux process' \
'stop:Stop session process' \
'restart:Restart session (or all sessions with \`--all\`)' \
'attach:Attach to session interactively' \
'show:Show session details' \
'rename:Rename a session' \
'set-worktree-name:Edit a managed worktree session'\''s workdir directory name (and, optionally, its git branch). Moves the worktree directory in place; the session must not be running. See #1723' \
'capture:Capture tmux pane output' \
'current:Auto-detect current session' \
'add-project:Attach another repo to an existing session, creating a worktree for it and restarting the agent. Moving the session'\''s working directory is refused while its resume target is a known conversation bound to that directory. Explicitly clear the resume target to start a new conversation after attaching. An implicitly preallocated ID is re-linked. See #3103' \
'set-session-id:Set the resume target for a session; an agent whose exact native resume AoE cannot resolve is refused' \
'set-base:Set or clear the per-session diff base branch. The diff view compares the worktree against this ref instead of the auto-detected default. Useful when the PR target differs from the project default (stacked PRs, hotfix off \`release/*\`, renamed default branch). See #970' \
'snooze:Snooze a session for a duration (temporary archive, auto wakes)' \
'unsnooze:Wake a snoozed session immediately' \
'favorite:Mark a session as a favorite. With \`session.favorites_first\` on (the default), favorited rows pin to the top of their sibling scope in every sort order; with it off, they pin within their status tier in the Attention sort only. Either way the row shows a \`✦\` in the session list gutter wherever the pin applies. Snoozing a favorite suspends the pin until it wakes' \
'unfavorite:Clear the favorite flag on a session' \
'color:Set (or clear) a per-session color label, rendered as a colored dot in the web sidebar for at-a-glance status signaling. Intended for a running agent to flag its own state, e.g. \`aoe session color \$(aoe session current -q) red\`. Colors\: \`red\` (needs attention), \`amber\` (working), \`green\` (done); \`none\` clears it' \
'archive:Archive a session\: sink it in the Attention sort and tear down its tmux sessions. Worktree, branch, container preserved. \`--no-kill\` skips tmux teardown. See #1868' \
'unarchive:Unarchive a session (restores it to its tier in the Attention sort)' \
'restore:Restore a trashed session, returning it to its prior bucket with its transcript and metadata intact. See #2489' \
'import:Import existing Claude Code sessions from disk. Scans the given path(s) (default\: current directory) for Claude Code conversations whose working directory is at or under a path, and creates an AoE session for each\: a terminal/tmux session that resumes the conversation with \`claude --resume <id>\` (default), or a structured-view session with \`--structured\`' \
'list-trash:List the sessions currently in the trash' \
'empty-trash:Permanently purge every trashed session in the profile (irreversible)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe session help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__add-project_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__add-project_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help add-project commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__archive_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__archive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help archive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__attach_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__attach_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help attach commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__capture_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__capture_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help capture commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__color_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__color_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help color commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__current_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__current_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help current commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__empty-trash_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__empty-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help empty-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__favorite_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__favorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help favorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__import_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__import_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help import commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__list-trash_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__list-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help list-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__rename_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__restart_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__restore_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__restore_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help restore commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__set-base_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__set-base_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help set-base commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__set-session-id_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__set-session-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help set-session-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__set-worktree-name_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__set-worktree-name_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help set-worktree-name commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__show_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__snooze_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__snooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help snooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__start_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__start_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help start commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__stop_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__unarchive_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__unarchive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help unarchive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__unfavorite_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__unfavorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help unfavorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__help__subcmd__unsnooze_commands] )) ||
_aoe__subcmd__session__subcmd__help__subcmd__unsnooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session help unsnooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__import_commands] )) ||
_aoe__subcmd__session__subcmd__import_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session import commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__list-trash_commands] )) ||
_aoe__subcmd__session__subcmd__list-trash_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session list-trash commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__rename_commands] )) ||
_aoe__subcmd__session__subcmd__rename_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session rename commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__restart_commands] )) ||
_aoe__subcmd__session__subcmd__restart_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session restart commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__restore_commands] )) ||
_aoe__subcmd__session__subcmd__restore_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session restore commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__set-base_commands] )) ||
_aoe__subcmd__session__subcmd__set-base_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session set-base commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__set-session-id_commands] )) ||
_aoe__subcmd__session__subcmd__set-session-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session set-session-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__set-worktree-name_commands] )) ||
_aoe__subcmd__session__subcmd__set-worktree-name_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session set-worktree-name commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__show_commands] )) ||
_aoe__subcmd__session__subcmd__show_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session show commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__snooze_commands] )) ||
_aoe__subcmd__session__subcmd__snooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session snooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__start_commands] )) ||
_aoe__subcmd__session__subcmd__start_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session start commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__stop_commands] )) ||
_aoe__subcmd__session__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__unarchive_commands] )) ||
_aoe__subcmd__session__subcmd__unarchive_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session unarchive commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__unfavorite_commands] )) ||
_aoe__subcmd__session__subcmd__unfavorite_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session unfavorite commands' commands "$@"
}
(( $+functions[_aoe__subcmd__session__subcmd__unsnooze_commands] )) ||
_aoe__subcmd__session__subcmd__unsnooze_commands() {
    local commands; commands=()
    _describe -t commands 'aoe session unsnooze commands' commands "$@"
}
(( $+functions[_aoe__subcmd__settings_commands] )) ||
_aoe__subcmd__settings_commands() {
    local commands; commands=(
'explain:Explain where a setting'\''s effective value comes from. KEY is a core \`section.field\` (e.g. \`acp.default_agent\`) or a plugin \`plugin\:<id>.<field>\` (e.g. \`plugin\:acme.kit.retries\`)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe settings commands' commands "$@"
}
(( $+functions[_aoe__subcmd__settings__subcmd__explain_commands] )) ||
_aoe__subcmd__settings__subcmd__explain_commands() {
    local commands; commands=()
    _describe -t commands 'aoe settings explain commands' commands "$@"
}
(( $+functions[_aoe__subcmd__settings__subcmd__help_commands] )) ||
_aoe__subcmd__settings__subcmd__help_commands() {
    local commands; commands=(
'explain:Explain where a setting'\''s effective value comes from. KEY is a core \`section.field\` (e.g. \`acp.default_agent\`) or a plugin \`plugin\:<id>.<field>\` (e.g. \`plugin\:acme.kit.retries\`)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe settings help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__settings__subcmd__help__subcmd__explain_commands] )) ||
_aoe__subcmd__settings__subcmd__help__subcmd__explain_commands() {
    local commands; commands=()
    _describe -t commands 'aoe settings help explain commands' commands "$@"
}
(( $+functions[_aoe__subcmd__settings__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__settings__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe settings help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill_commands] )) ||
_aoe__subcmd__skill_commands() {
    local commands; commands=(
'list:List discovered skills and their source roots' \
'view:Print one skill'\''s SKILL.md' \
'add:Create a new AoE-managed skill' \
'edit:Edit an AoE-managed skill' \
'adopt:Copy an external skill into AoE'\''s managed store' \
'remove:Delete an AoE-managed skill' \
'sync:Copy AoE-managed skills into the agents'\'' own skills directories' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe skill commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__add_commands] )) ||
_aoe__subcmd__skill__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__adopt_commands] )) ||
_aoe__subcmd__skill__subcmd__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill adopt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__edit_commands] )) ||
_aoe__subcmd__skill__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help_commands] )) ||
_aoe__subcmd__skill__subcmd__help_commands() {
    local commands; commands=(
'list:List discovered skills and their source roots' \
'view:Print one skill'\''s SKILL.md' \
'add:Create a new AoE-managed skill' \
'edit:Edit an AoE-managed skill' \
'adopt:Copy an external skill into AoE'\''s managed store' \
'remove:Delete an AoE-managed skill' \
'sync:Copy AoE-managed skills into the agents'\'' own skills directories' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe skill help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__add_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__add_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help add commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__adopt_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__adopt_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help adopt commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__edit_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__edit_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help edit commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__remove_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__sync_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__sync_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help sync commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__help__subcmd__view_commands] )) ||
_aoe__subcmd__skill__subcmd__help__subcmd__view_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill help view commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__list_commands] )) ||
_aoe__subcmd__skill__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__remove_commands] )) ||
_aoe__subcmd__skill__subcmd__remove_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill remove commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__sync_commands] )) ||
_aoe__subcmd__skill__subcmd__sync_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill sync commands' commands "$@"
}
(( $+functions[_aoe__subcmd__skill__subcmd__view_commands] )) ||
_aoe__subcmd__skill__subcmd__view_commands() {
    local commands; commands=()
    _describe -t commands 'aoe skill view commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds_commands] )) ||
_aoe__subcmd__sounds_commands() {
    local commands; commands=(
'install:Install bundled sound effects' \
'list:List currently installed sounds' \
'test:Test a sound by playing it' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe sounds commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__help_commands] )) ||
_aoe__subcmd__sounds__subcmd__help_commands() {
    local commands; commands=(
'install:Install bundled sound effects' \
'list:List currently installed sounds' \
'test:Test a sound by playing it' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe sounds help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__sounds__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__help__subcmd__install_commands] )) ||
_aoe__subcmd__sounds__subcmd__help__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds help install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__sounds__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__help__subcmd__test_commands] )) ||
_aoe__subcmd__sounds__subcmd__help__subcmd__test_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds help test commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__install_commands] )) ||
_aoe__subcmd__sounds__subcmd__install_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds install commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__list_commands] )) ||
_aoe__subcmd__sounds__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__sounds__subcmd__test_commands] )) ||
_aoe__subcmd__sounds__subcmd__test_commands() {
    local commands; commands=()
    _describe -t commands 'aoe sounds test commands' commands "$@"
}
(( $+functions[_aoe__subcmd__status_commands] )) ||
_aoe__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__stop_commands] )) ||
_aoe__subcmd__stop_commands() {
    local commands; commands=()
    _describe -t commands 'aoe stop commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry_commands] )) ||
_aoe__subcmd__telemetry_commands() {
    local commands; commands=(
'status:Show the current telemetry opt-in state and install id' \
'enable:Opt in to anonymous usage telemetry' \
'disable:Opt out of telemetry (deletes the local install id)' \
'reset-id:Generate a fresh anonymous install id (only while opted in)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe telemetry commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__disable_commands] )) ||
_aoe__subcmd__telemetry__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__enable_commands] )) ||
_aoe__subcmd__telemetry__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help_commands() {
    local commands; commands=(
'status:Show the current telemetry opt-in state and install id' \
'enable:Opt in to anonymous usage telemetry' \
'disable:Opt out of telemetry (deletes the local install id)' \
'reset-id:Generate a fresh anonymous install id (only while opted in)' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe telemetry help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help__subcmd__disable_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help__subcmd__disable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry help disable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help__subcmd__enable_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help__subcmd__enable_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry help enable commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help__subcmd__reset-id_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help__subcmd__reset-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry help reset-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__help__subcmd__status_commands] )) ||
_aoe__subcmd__telemetry__subcmd__help__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry help status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__reset-id_commands] )) ||
_aoe__subcmd__telemetry__subcmd__reset-id_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry reset-id commands' commands "$@"
}
(( $+functions[_aoe__subcmd__telemetry__subcmd__status_commands] )) ||
_aoe__subcmd__telemetry__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe telemetry status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme_commands] )) ||
_aoe__subcmd__theme_commands() {
    local commands; commands=(
'list:List all available themes (built-in and custom)' \
'export:Export a built-in theme as a TOML file for customization' \
'dir:Show the custom themes directory path' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe theme commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__dir_commands] )) ||
_aoe__subcmd__theme__subcmd__dir_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme dir commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__export_commands] )) ||
_aoe__subcmd__theme__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__help_commands] )) ||
_aoe__subcmd__theme__subcmd__help_commands() {
    local commands; commands=(
'list:List all available themes (built-in and custom)' \
'export:Export a built-in theme as a TOML file for customization' \
'dir:Show the custom themes directory path' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe theme help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__help__subcmd__dir_commands] )) ||
_aoe__subcmd__theme__subcmd__help__subcmd__dir_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme help dir commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__help__subcmd__export_commands] )) ||
_aoe__subcmd__theme__subcmd__help__subcmd__export_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme help export commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__theme__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__theme__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__theme__subcmd__list_commands] )) ||
_aoe__subcmd__theme__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe theme list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__tmux_commands] )) ||
_aoe__subcmd__tmux_commands() {
    local commands; commands=(
'status:Output session info for use in custom tmux status bar' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe tmux commands' commands "$@"
}
(( $+functions[_aoe__subcmd__tmux__subcmd__help_commands] )) ||
_aoe__subcmd__tmux__subcmd__help_commands() {
    local commands; commands=(
'status:Output session info for use in custom tmux status bar' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe tmux help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__tmux__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__tmux__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe tmux help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__tmux__subcmd__help__subcmd__status_commands] )) ||
_aoe__subcmd__tmux__subcmd__help__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe tmux help status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__tmux__subcmd__status_commands] )) ||
_aoe__subcmd__tmux__subcmd__status_commands() {
    local commands; commands=()
    _describe -t commands 'aoe tmux status commands' commands "$@"
}
(( $+functions[_aoe__subcmd__uninstall_commands] )) ||
_aoe__subcmd__uninstall_commands() {
    local commands; commands=()
    _describe -t commands 'aoe uninstall commands' commands "$@"
}
(( $+functions[_aoe__subcmd__update_commands] )) ||
_aoe__subcmd__update_commands() {
    local commands; commands=()
    _describe -t commands 'aoe update commands' commands "$@"
}
(( $+functions[_aoe__subcmd__url_commands] )) ||
_aoe__subcmd__url_commands() {
    local commands; commands=()
    _describe -t commands 'aoe url commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree_commands] )) ||
_aoe__subcmd__worktree_commands() {
    local commands; commands=(
'list:List all worktrees in current repository' \
'info:Show worktree information for a session' \
'cleanup:Cleanup orphaned worktrees' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe worktree commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__cleanup_commands] )) ||
_aoe__subcmd__worktree__subcmd__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree cleanup commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__help_commands] )) ||
_aoe__subcmd__worktree__subcmd__help_commands() {
    local commands; commands=(
'list:List all worktrees in current repository' \
'info:Show worktree information for a session' \
'cleanup:Cleanup orphaned worktrees' \
'help:Print this message or the help of the given subcommand(s)' \
    )
    _describe -t commands 'aoe worktree help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__help__subcmd__cleanup_commands] )) ||
_aoe__subcmd__worktree__subcmd__help__subcmd__cleanup_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree help cleanup commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__help__subcmd__help_commands] )) ||
_aoe__subcmd__worktree__subcmd__help__subcmd__help_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree help help commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__help__subcmd__info_commands] )) ||
_aoe__subcmd__worktree__subcmd__help__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree help info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__help__subcmd__list_commands] )) ||
_aoe__subcmd__worktree__subcmd__help__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree help list commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__info_commands] )) ||
_aoe__subcmd__worktree__subcmd__info_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree info commands' commands "$@"
}
(( $+functions[_aoe__subcmd__worktree__subcmd__list_commands] )) ||
_aoe__subcmd__worktree__subcmd__list_commands() {
    local commands; commands=()
    _describe -t commands 'aoe worktree list commands' commands "$@"
}

if [ "$funcstack[1]" = "_aoe" ]; then
    _aoe "$@"
else
    compdef _aoe aoe
fi
