{
  "schemaVersion": 1,
  "cliVersion": "0.32.2",
  "command": {
    "name": "axm",
    "aliases": [],
    "description": "Open extension manager for AI coding agents.\n  Manage skills, MCP servers, subagents, rules, hooks, knowledge, and packs across your AI coding agents from a single CLI.",
    "arguments": [],
    "options": [],
    "globalOptions": [
      {
        "name": "non-interactive",
        "aliases": [],
        "type": "boolean",
        "required": false,
        "description": "Never prompt; fail with guidance when input is required"
      },
      {
        "name": "verbose",
        "aliases": ["-v"],
        "type": "boolean",
        "required": false,
        "description": "Show additional redacted diagnostic details for errors"
      },
      {
        "name": "debug",
        "aliases": [],
        "type": "boolean",
        "required": false,
        "description": "Show redacted cause and stack details (implies --verbose)"
      },
      {
        "name": "quiet",
        "aliases": ["-q"],
        "type": "boolean",
        "required": false,
        "description": "Show only final outcomes, errors, and required actions"
      },
      {
        "name": "json",
        "aliases": ["-j"],
        "type": "boolean",
        "required": false,
        "description": "Output machine-readable JSON"
      },
      {
        "name": "directory",
        "aliases": ["-C"],
        "type": "path",
        "required": false,
        "description": "Run as if AXM was started in this directory (relative paths resolve from there)",
        "valueName": "directory"
      }
    ],
    "examples": [
      { "command": "axm setup", "description": "Start managing extensions in your project" },
      {
        "command": "axm install @acme/skills/code-review",
        "description": "Add a code review skill to your agents"
      },
      {
        "command": "axm uninstall @acme/skills/code-review",
        "description": "Remove an installed extension by registry FQN"
      },
      { "command": "axm discover", "description": "See what's available for your project" },
      { "command": "axm whoami", "description": "Check who you're authenticated as" }
    ],
    "subcommands": [
      {
        "name": "skills",
        "aliases": [],
        "description": "Manage skills",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm skills install @acme/skills/code-review",
            "description": "Add a code review skill to your agents"
          },
          {
            "command": "axm skills install @acme/skills/code-review@^1.0.0",
            "description": "Pin to a specific version range"
          },
          {
            "command": "axm skills install owner/repo",
            "description": "Install from a GitHub repository"
          },
          { "command": "axm skills list", "description": "See what skills are installed" }
        ],
        "subcommands": [
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured skills from their sources, or install skills from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "skill source (Registry FQN @owner/skills/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "skill",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a skill by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "bundled",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install the embedded official AXM skill without Registry access"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills install ./extensions --skill example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm skills install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a skill from agents",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the skill to uninstall"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills uninstall my-skill",
                "description": "Remove a skill you no longer need"
              },
              {
                "command": "axm skills uninstall my-skill --preview",
                "description": "Check what would be removed first"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List detected skills and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List skills from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "agent",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Show only skills detected for specific agents",
                "variadic": { "min": 0 },
                "choices": [
                  { "value": "adal" },
                  { "value": "aider-desk" },
                  { "value": "amp" },
                  { "value": "antigravity" },
                  { "value": "antigravity-cli" },
                  { "value": "augment" },
                  { "value": "claude-code" },
                  { "value": "cline" },
                  { "value": "codearts-agent" },
                  { "value": "codebuddy" },
                  { "value": "codemaker" },
                  { "value": "codestudio" },
                  { "value": "codex" },
                  { "value": "command-code" },
                  { "value": "continue" },
                  { "value": "cortex" },
                  { "value": "crush" },
                  { "value": "cursor" },
                  { "value": "deepagents" },
                  { "value": "devin" },
                  { "value": "dexto" },
                  { "value": "droid" },
                  { "value": "firebender" },
                  { "value": "forgecode" },
                  { "value": "gemini-cli" },
                  { "value": "github-copilot-cli" },
                  { "value": "goose" },
                  { "value": "grok-cli" },
                  { "value": "hermes" },
                  { "value": "ibm-bob" },
                  { "value": "iflow-cli" },
                  { "value": "junie" },
                  { "value": "lingma" },
                  { "value": "kilo" },
                  { "value": "kimi-cli" },
                  { "value": "kiro-cli" },
                  { "value": "kode" },
                  { "value": "mcpjam" },
                  { "value": "minimax-code" },
                  { "value": "mistral-vibe" },
                  { "value": "mux" },
                  { "value": "neovate" },
                  { "value": "openclaw" },
                  { "value": "opencode" },
                  { "value": "openhands" },
                  { "value": "ona" },
                  { "value": "pi" },
                  { "value": "pochi" },
                  { "value": "qoder" },
                  { "value": "qoder-cn" },
                  { "value": "qwen-code" },
                  { "value": "replit" },
                  { "value": "roo" },
                  { "value": "rovodev" },
                  { "value": "tabnine-cli" },
                  { "value": "trae-cn" },
                  { "value": "trae" },
                  { "value": "warp" },
                  { "value": "windsurf" },
                  { "value": "zencoder" },
                  { "value": "zed" },
                  { "value": "zenflow" }
                ]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm skills list", "description": "Inventory detected skills" },
              {
                "command": "axm skills list --scope user",
                "description": "Check user-level skills"
              },
              {
                "command": "axm skills list --agent claude-code",
                "description": "See skills for a specific agent"
              }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed skill",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the skill to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills show code-review",
                "description": "Inspect one installed skill"
              },
              {
                "command": "axm skills show code-review --scope user",
                "description": "Inspect a user-level skill"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update installed skills to latest versions",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter to skills from a specific source (owner/repo, path, or URL)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update skills in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific skills by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "ignore-version-constraints",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Update even when the configured version constraint excludes the result"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show available updates without applying them"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills update",
                "description": "Update all skills to their latest versions"
              },
              {
                "command": "axm skills update --name code-review",
                "description": "Update a specific skill"
              },
              {
                "command": "axm skills update owner/repo",
                "description": "Update only skills from a specific source"
              },
              {
                "command": "axm skills update --preview",
                "description": "Preview available updates"
              }
            ],
            "subcommands": []
          },
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new skill in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the skill (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what files would be created without creating them"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm skills new my-skill", "description": "Scaffold a new skill" },
              {
                "command": "axm skills new my-skill --owner @acme",
                "description": "Create under a specific owner"
              }
            ],
            "subcommands": []
          },
          {
            "name": "import",
            "aliases": [],
            "description": "Convert a native skill into a project-workspace AXM skill package",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Local or Git native extension source"
              },
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "New managed target FQN"
              }
            ],
            "options": [
              {
                "name": "enable",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Enable and materialize a newly imported extension"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills import ./review-skill @me/skills/review --enable",
                "description": "Import a native skill without modifying the original source"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a previously disabled skill",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the skill to enable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without enabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills enable code-review",
                "description": "Re-enable a skill you previously disabled"
              },
              {
                "command": "axm skills enable code-review --preview",
                "description": "Preview the change before enabling"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable a skill without uninstalling it",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the skill to disable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without disabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills disable code-review",
                "description": "Temporarily disable a skill without removing it"
              },
              {
                "command": "axm skills disable code-review --scope user",
                "description": "Disable for user-scope configuration"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace skills to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm skills publish",
                "description": "Publish every workspace-sourced skills package"
              },
              {
                "command": "axm skills publish example-* --on-existing verify",
                "description": "Publish matching skills packages"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "mcps",
        "aliases": [],
        "description": "Manage MCP servers",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm mcps install @acme/mcps/my-server",
            "description": "Add an MCP server from the registry"
          },
          { "command": "axm mcps uninstall my-server", "description": "Remove an MCP server" }
        ],
        "subcommands": [
          {
            "name": "add",
            "aliases": [],
            "description": "Add an inline MCP server",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Inline MCP server name"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Add to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "command",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Inline stdio command, such as \"npx -y linear-mcp-server\""
              },
              {
                "name": "url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Inline remote MCP server URL"
              },
              {
                "name": "env",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Environment variable name or KEY=VALUE; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "header",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Remote header as Name:Value; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps add linear --command \"npx -y linear-mcp-server\" --env LINEAR_API_KEY",
                "description": "Add an inline stdio MCP server"
              },
              {
                "command": "axm mcps add sentry --url https://mcp.sentry.dev/sse --header \"Authorization:Bearer ${SENTRY_TOKEN}\"",
                "description": "Add an inline remote MCP server"
              }
            ],
            "subcommands": []
          },
          {
            "name": "import",
            "aliases": [],
            "description": "Import unmanaged MCP servers as inline settings entries",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Import to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              },
              {
                "name": "as",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Create one managed MCP package at the target FQN"
              },
              {
                "name": "enable",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Enable a package created with --as"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps import",
                "description": "Adopt unmanaged MCP servers from workspace and configured agent MCP configs"
              },
              {
                "command": "axm mcps import --preview",
                "description": "Preview unmanaged MCP server adoption"
              },
              {
                "command": "axm mcps import --as @me/mcps/context",
                "description": "Convert one losslessly representable native server into an authored package"
              }
            ],
            "subcommands": []
          },
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured mcps from their sources, or install mcps from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "MCP server source (Registry FQN @owner/mcps/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "mcp",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a mcp server by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "env",
                "aliases": ["-e"],
                "type": "string",
                "required": false,
                "description": "Provide an MCP input value as KEY=VALUE; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "as",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Install one MCP server using this local name"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps install ./extensions --mcp example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm mcps install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall an MCP server",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the MCP server to uninstall"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps uninstall my-server",
                "description": "Remove an MCP server you no longer need"
              },
              {
                "command": "axm mcps uninstall my-server --preview",
                "description": "Check what would be removed first"
              }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed MCP server",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the MCP server to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps show linear",
                "description": "Inspect one installed MCP server"
              },
              {
                "command": "axm mcps show linear --scope user",
                "description": "Inspect a user-level MCP server"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List detected MCP servers and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List MCP servers from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm mcps list", "description": "Inventory detected MCP servers" },
              {
                "command": "axm mcps list --scope user",
                "description": "Check user-level MCP servers"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a disabled MCP server",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the MCP server to enable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm mcps enable context", "description": "Enable an MCP server" },
              {
                "command": "axm mcps enable context --preview",
                "description": "Preview enabling an MCP server"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable an MCP server",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the MCP server to disable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm mcps disable context", "description": "Disable an MCP server" },
              {
                "command": "axm mcps disable context --preview",
                "description": "Preview disabling an MCP server"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update MCP servers",
            "arguments": [],
            "options": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update every local connection from this exact MCP source"
              },
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific MCP servers by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "refresh",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Run update even when the installed version is already current"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm mcps update", "description": "Update configured MCP servers" },
              {
                "command": "axm mcps update --source @acme/mcps/context",
                "description": "Update every local connection from one registry source"
              },
              {
                "command": "axm mcps update --name context-*",
                "description": "Update only MCP servers matching a glob"
              },
              {
                "command": "axm mcps update --preview",
                "description": "Preview MCP server updates"
              }
            ],
            "subcommands": []
          },
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new MCP server in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the MCP server"
              }
            ],
            "options": [
              {
                "name": "description",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Description for the MCP server"
              },
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps new context",
                "description": "Create a new MCP server manifest"
              },
              {
                "command": "axm mcps new context --owner @acme",
                "description": "Create under a specific owner"
              },
              {
                "command": "axm mcps new context --preview",
                "description": "Preview the files that would be created"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace mcps to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm mcps publish",
                "description": "Publish every workspace-sourced mcps package"
              },
              {
                "command": "axm mcps publish example-* --on-existing verify",
                "description": "Publish matching mcps packages"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "subagents",
        "aliases": [],
        "description": "Manage subagents",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm subagents install @acme/subagents/researcher",
            "description": "Add a subagent from the registry"
          },
          { "command": "axm subagents list", "description": "See what subagents are installed" }
        ],
        "subcommands": [
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured subagents from their sources, or install subagents from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "subagent source (Registry FQN @owner/subagents/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "subagent",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a subagent by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents install ./extensions --subagent example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm subagents install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a subagent from agents",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the subagent to uninstall"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents uninstall my-subagent",
                "description": "Remove a subagent you no longer need"
              },
              {
                "command": "axm subagents uninstall my-subagent --preview",
                "description": "Check what would be removed first"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List detected subagents and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List subagents from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "agent",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Show only subagents detected for specific agents",
                "variadic": { "min": 0 },
                "choices": [
                  { "value": "adal" },
                  { "value": "aider-desk" },
                  { "value": "amp" },
                  { "value": "antigravity" },
                  { "value": "antigravity-cli" },
                  { "value": "augment" },
                  { "value": "claude-code" },
                  { "value": "cline" },
                  { "value": "codearts-agent" },
                  { "value": "codebuddy" },
                  { "value": "codemaker" },
                  { "value": "codestudio" },
                  { "value": "codex" },
                  { "value": "command-code" },
                  { "value": "continue" },
                  { "value": "cortex" },
                  { "value": "crush" },
                  { "value": "cursor" },
                  { "value": "deepagents" },
                  { "value": "devin" },
                  { "value": "dexto" },
                  { "value": "droid" },
                  { "value": "firebender" },
                  { "value": "forgecode" },
                  { "value": "gemini-cli" },
                  { "value": "github-copilot-cli" },
                  { "value": "goose" },
                  { "value": "grok-cli" },
                  { "value": "hermes" },
                  { "value": "ibm-bob" },
                  { "value": "iflow-cli" },
                  { "value": "junie" },
                  { "value": "lingma" },
                  { "value": "kilo" },
                  { "value": "kimi-cli" },
                  { "value": "kiro-cli" },
                  { "value": "kode" },
                  { "value": "mcpjam" },
                  { "value": "minimax-code" },
                  { "value": "mistral-vibe" },
                  { "value": "mux" },
                  { "value": "neovate" },
                  { "value": "openclaw" },
                  { "value": "opencode" },
                  { "value": "openhands" },
                  { "value": "ona" },
                  { "value": "pi" },
                  { "value": "pochi" },
                  { "value": "qoder" },
                  { "value": "qoder-cn" },
                  { "value": "qwen-code" },
                  { "value": "replit" },
                  { "value": "roo" },
                  { "value": "rovodev" },
                  { "value": "tabnine-cli" },
                  { "value": "trae-cn" },
                  { "value": "trae" },
                  { "value": "warp" },
                  { "value": "windsurf" },
                  { "value": "zencoder" },
                  { "value": "zed" },
                  { "value": "zenflow" }
                ]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm subagents list", "description": "Inventory detected subagents" },
              {
                "command": "axm subagents list --scope user",
                "description": "Check user-level subagents"
              },
              {
                "command": "axm subagents list --agent claude-code",
                "description": "See subagents for a specific agent"
              }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed subagent",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the subagent to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents show researcher",
                "description": "Inspect one installed subagent"
              },
              {
                "command": "axm subagents show researcher --scope user",
                "description": "Inspect a user-level subagent"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update installed subagents to latest versions",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter to subagents from a specific source (owner/repo, path, or URL)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update subagents in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific subagents by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "ignore-version-constraints",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Update even when the configured version constraint excludes the result"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show available updates without applying them"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents update",
                "description": "Update all subagents to their latest versions"
              },
              {
                "command": "axm subagents update --name researcher",
                "description": "Update a specific subagent"
              },
              {
                "command": "axm subagents update owner/repo",
                "description": "Update only subagents from a specific source"
              },
              {
                "command": "axm subagents update --preview",
                "description": "Preview available updates"
              }
            ],
            "subcommands": []
          },
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new subagent in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the subagent (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what files would be created without creating them"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents new my-subagent",
                "description": "Scaffold a new subagent"
              },
              {
                "command": "axm subagents new my-subagent --owner @acme",
                "description": "Create under a specific owner"
              }
            ],
            "subcommands": []
          },
          {
            "name": "import",
            "aliases": [],
            "description": "Convert a native subagent into a project-workspace AXM subagent package",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Local or Git native extension source"
              },
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "New managed target FQN"
              }
            ],
            "options": [
              {
                "name": "enable",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Enable and materialize a newly imported extension"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents import .claude/agents/reviewer.md @me/subagents/reviewer",
                "description": "Import a native subagent without modifying the original source"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace subagents to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents publish",
                "description": "Publish every workspace-sourced subagents package"
              },
              {
                "command": "axm subagents publish example-* --on-existing verify",
                "description": "Publish matching subagents packages"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a previously disabled subagent",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the subagent to enable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without enabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents enable researcher",
                "description": "Re-enable a subagent you previously disabled"
              },
              {
                "command": "axm subagents enable researcher --preview",
                "description": "Preview the change before enabling"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable an installed subagent without removing it",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the subagent to disable"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without disabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm subagents disable researcher",
                "description": "Temporarily disable a subagent without removing it"
              },
              {
                "command": "axm subagents disable researcher --scope user",
                "description": "Disable for user-scope configuration"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "hooks",
        "aliases": [],
        "description": "Manage hook extensions",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm hooks install @acme/hooks/workspace-baseline",
            "description": "Install a hook extension"
          }
        ],
        "subcommands": [
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new hook in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the hook (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "runtime",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Interpreter family for the entrypoint",
                "choices": [{ "value": "bash" }, { "value": "node" }, { "value": "python" }]
              },
              {
                "name": "event",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Canonical hook event to bind to",
                "choices": [
                  { "value": "tool.pre" },
                  { "value": "tool.post" },
                  { "value": "prompt.submit" },
                  { "value": "session.start" },
                  { "value": "turn.end" },
                  { "value": "subagent.stop" },
                  { "value": "compaction.pre" }
                ]
              },
              {
                "name": "matcher",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Raw native matcher for tool.pre/tool.post (e.g., Write|Edit)"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what files would be created without creating them"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm hooks new tool-audit", "description": "Scaffold a new hook" },
              {
                "command": "axm hooks new tool-audit --event tool.post --matcher Bash",
                "description": "Bind to a specific event and tool matcher"
              },
              {
                "command": "axm hooks new tool-audit --owner @acme --runtime python",
                "description": "Create under a specific owner with a Python entrypoint"
              }
            ],
            "subcommands": []
          },
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured hooks from their sources, or install hooks from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "hook source (Registry FQN @owner/hooks/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "hook",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a hook by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks install ./extensions --hook example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm hooks install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a hooks package",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the hooks package"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks uninstall workspace-baseline",
                "description": "Uninstall a hooks package by name"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List detected hooks packages and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List hooks packages from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm hooks list", "description": "Inventory detected hooks packages" }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed hook",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the hook to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks show workspace-baseline",
                "description": "Inspect one installed hook"
              },
              {
                "command": "axm hooks show workspace-baseline --scope user",
                "description": "Inspect a user-level hook"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a hooks package",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the hooks package"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without enabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks enable workspace-baseline",
                "description": "Enable a configured hooks package"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable a hooks package without removing sync-once targets",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the hooks package"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without disabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks disable workspace-baseline",
                "description": "Disable a hooks package"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update configured hooks packages",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter to hooks packages matching a name or source"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific hooks packages by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without updating"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm hooks update", "description": "Update configured hooks packages" },
              {
                "command": "axm hooks update --name workspace-*",
                "description": "Update only hooks packages matching a glob"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace hooks to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm hooks publish",
                "description": "Publish every workspace-sourced hooks package"
              },
              {
                "command": "axm hooks publish example-* --on-existing verify",
                "description": "Publish matching hooks packages"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "knowledge",
        "aliases": [],
        "description": "Browse and validate Open Knowledge Format bundles",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          { "command": "axm knowledge list", "description": "List installed knowledge bundles" },
          {
            "command": "axm knowledge concepts search \"authentication\"",
            "description": "Search installed knowledge concepts"
          }
        ],
        "subcommands": [
          {
            "name": "new",
            "aliases": [],
            "description": "Create an Open Knowledge Format bundle in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the knowledge bundle (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "description",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Concise bundle-level discovery summary"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be created without writing files"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge new platform",
                "description": "Create a new OKF knowledge bundle"
              },
              {
                "command": "axm knowledge new platform --owner @acme",
                "description": "Create a bundle under a specific owner"
              }
            ],
            "subcommands": []
          },
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured knowledge from their sources, or install knowledge from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "knowledge bundle source (Registry FQN @owner/knowledge/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "knowledge",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a knowledge bundle by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge install ./extensions --knowledge example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm knowledge install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update configured Knowledge bundles",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter to Knowledge bundles matching a name or source"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific Knowledge bundles by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge update --preview",
                "description": "Preview Knowledge bundle updates"
              },
              {
                "command": "axm knowledge update --name platform",
                "description": "Update one Knowledge bundle"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a Knowledge bundle",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured Knowledge bundle name"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge uninstall platform --preview",
                "description": "Preview removing one Knowledge bundle"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List installed knowledge bundles",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm knowledge list", "description": "List installed knowledge bundles" }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed knowledge bundle",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the knowledge bundle to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge show platform",
                "description": "Inspect one installed knowledge bundle"
              },
              {
                "command": "axm knowledge show platform --scope user",
                "description": "Inspect a user-level knowledge bundle"
              }
            ],
            "subcommands": []
          },
          {
            "name": "concepts",
            "aliases": [],
            "description": "Discover installed knowledge concepts through versioned identities",
            "arguments": [],
            "options": [],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge concepts search \"authentication\"",
                "description": "Search the selected installed knowledge corpus"
              }
            ],
            "subcommands": [
              {
                "name": "resolve",
                "aliases": [],
                "description": "Resolve a concept identity or return bounded candidates",
                "arguments": [
                  {
                    "name": "input",
                    "aliases": [],
                    "type": "string",
                    "required": true,
                    "description": "Compact or canonical HTTPS concept reference"
                  }
                ],
                "options": [
                  {
                    "name": "fuzzy",
                    "aliases": [],
                    "type": "boolean",
                    "required": false,
                    "description": "Opt into bounded concept ID and title candidate matching"
                  },
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts resolve '@agentxm/knowledge/platform#auth/session-management'",
                    "description": "Resolve an exact logical identity to its installed version and revision"
                  }
                ],
                "subcommands": []
              },
              {
                "name": "search",
                "aliases": [],
                "description": "Search installed knowledge concepts",
                "arguments": [
                  {
                    "name": "query",
                    "aliases": [],
                    "type": "string",
                    "required": true,
                    "description": "All terms to find; use \"phrase\" for contiguous tokens or literal:\"text\" for exact punctuation"
                  }
                ],
                "options": [
                  {
                    "name": "limit",
                    "aliases": [],
                    "type": "integer",
                    "required": false,
                    "description": "Maximum concepts to return (1-100; default 25)"
                  },
                  {
                    "name": "cursor",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Continue from an opaque cursor returned by the previous page"
                  },
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts search \"authentication\"",
                    "description": "Match normalized terms across installed concept metadata and content"
                  },
                  {
                    "command": "axm knowledge concepts search '\"source of truth\"'",
                    "description": "Match a contiguous normalized phrase"
                  }
                ],
                "subcommands": []
              },
              {
                "name": "query",
                "aliases": [],
                "description": "Run a structured query over installed knowledge concepts",
                "arguments": [
                  {
                    "name": "expression",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Optional text expression using terms, phrases, and literals"
                  }
                ],
                "options": [
                  {
                    "name": "field",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Search one field with FIELD=QUERY; repeatable",
                    "variadic": { "min": 0 }
                  },
                  {
                    "name": "property",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Filter frontmatter with /pointer{=|!=|~=}VALUE; repeatable",
                    "variadic": { "min": 0 }
                  },
                  {
                    "name": "metadata",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Filter typed metadata with FIELD{=|!=|~=}VALUE; repeatable",
                    "variadic": { "min": 0 }
                  },
                  {
                    "name": "lifecycle",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Filter lifecycle evidence with FIELD{=|!=}VALUE; repeatable",
                    "variadic": { "min": 0 }
                  },
                  {
                    "name": "tag",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Require an exact tag; repeatable",
                    "variadic": { "min": 0 }
                  },
                  {
                    "name": "bundle",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Require an exact Knowledge bundle FQN"
                  },
                  {
                    "name": "kind",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Select ordinary, index, or log documents",
                    "choices": [{ "value": "concept" }, { "value": "index" }, { "value": "log" }]
                  },
                  {
                    "name": "status",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Require an exact lifecycle status"
                  },
                  {
                    "name": "limit",
                    "aliases": [],
                    "type": "integer",
                    "required": false,
                    "description": "Maximum concepts to return (1-100; default 25)"
                  },
                  {
                    "name": "passages",
                    "aliases": [],
                    "type": "integer",
                    "required": false,
                    "description": "Maximum evidence passages per result (0-10)"
                  },
                  {
                    "name": "passage-length",
                    "aliases": [],
                    "type": "integer",
                    "required": false,
                    "description": "Maximum characters per evidence passage (1-2000)"
                  },
                  {
                    "name": "cursor",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Continue from a previous opaque cursor"
                  },
                  {
                    "name": "explain",
                    "aliases": [],
                    "type": "boolean",
                    "required": false,
                    "description": "Include deterministic ranking rules in machine output"
                  },
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts query authentication --tag source-of-truth --status stable",
                    "description": "Combine text, metadata, and lifecycle clauses"
                  },
                  {
                    "command": "axm knowledge concepts query --field title=authentication --property /audience=agents",
                    "description": "Search a field and filter preserved frontmatter"
                  }
                ],
                "subcommands": []
              },
              {
                "name": "get",
                "aliases": [],
                "description": "Get one installed knowledge concept by exact identity",
                "arguments": [
                  {
                    "name": "reference",
                    "aliases": [],
                    "type": "string",
                    "required": true,
                    "description": "Concept reference: @owner/knowledge/name#concept-id"
                  }
                ],
                "options": [
                  {
                    "name": "if-revision",
                    "aliases": [],
                    "type": "string",
                    "required": false,
                    "description": "Fail if the current content revision differs"
                  },
                  {
                    "name": "raw",
                    "aliases": [],
                    "type": "boolean",
                    "required": false,
                    "description": "Include the exact source document in machine output"
                  },
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts get '@agentxm/knowledge/platform#auth/session-management'",
                    "description": "Read one concept and its resolved revision identity"
                  }
                ],
                "subcommands": []
              },
              {
                "name": "related",
                "aliases": [],
                "description": "Traverse authored links and derived backlinks",
                "arguments": [
                  {
                    "name": "reference",
                    "aliases": [],
                    "type": "string",
                    "required": true,
                    "description": "Concept reference: @owner/knowledge/name#concept-id"
                  }
                ],
                "options": [
                  {
                    "name": "depth",
                    "aliases": [],
                    "type": "integer",
                    "required": false,
                    "description": "Maximum traversal depth (1-3; default 1)"
                  },
                  {
                    "name": "include-index-backlinks",
                    "aliases": [],
                    "type": "boolean",
                    "required": false,
                    "description": "Include backlinks authored by reserved index documents"
                  },
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts related '@agentxm/knowledge/platform#auth/session-management' --depth 2",
                    "description": "Traverse related concepts with cycle suppression"
                  }
                ],
                "subcommands": []
              },
              {
                "name": "status",
                "aliases": [],
                "description": "Report discovery capabilities and selected corpus identity",
                "arguments": [],
                "options": [
                  {
                    "name": "scope",
                    "aliases": [],
                    "type": "choice",
                    "required": false,
                    "description": "Use project (default) or user knowledge state",
                    "choices": [{ "value": "project" }, { "value": "user" }]
                  }
                ],
                "globalOptions": [],
                "examples": [
                  {
                    "command": "axm knowledge concepts status",
                    "description": "Inspect the discovery contract and selected corpus fingerprint"
                  }
                ],
                "subcommands": []
              }
            ]
          },
          {
            "name": "lint",
            "aliases": [],
            "description": "Validate installed or locally authored Open Knowledge Format bundles",
            "arguments": [
              {
                "name": "bundle",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Optional installed bundle name"
              }
            ],
            "options": [
              {
                "name": "path",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Validate a locally authored Knowledge package directory"
              },
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge lint",
                "description": "Validate all installed knowledge bundles"
              },
              {
                "command": "axm knowledge lint platform",
                "description": "Validate one installed knowledge bundle"
              },
              {
                "command": "axm knowledge lint --path ./knowledge/platform",
                "description": "Validate a locally authored Knowledge package"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Include a knowledge bundle in discovery",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured knowledge bundle name"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge enable platform",
                "description": "Restore a bundle to discovery and search"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Exclude a knowledge bundle from discovery while keeping it installed",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured knowledge bundle name"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user knowledge state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Display plan without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge disable platform",
                "description": "Keep a bundle installed but exclude it from discovery"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace knowledge to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm knowledge publish",
                "description": "Publish every workspace-sourced knowledge package"
              },
              {
                "command": "axm knowledge publish example-* --on-existing verify",
                "description": "Publish matching knowledge packages"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "packs",
        "aliases": [],
        "description": "Manage packs",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm packs install @acme/packs/frontend-tools",
            "description": "Add a curated set of extensions to your agents"
          },
          {
            "command": "axm packs new my-pack",
            "description": "Create a new pack to bundle your extensions"
          },
          {
            "command": "axm packs add my-pack @acme/skills/code-review",
            "description": "Add extensions to your pack"
          },
          {
            "command": "axm packs publish @acme/packs/frontend-tools",
            "description": "Share your pack on the registry"
          }
        ],
        "subcommands": [
          {
            "name": "list",
            "aliases": [],
            "description": "List detected packs and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List packs from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm packs list", "description": "Inventory detected packs" },
              { "command": "axm packs list --scope user", "description": "Check user-level packs" }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a pack without changing locked versions",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the pack"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs enable frontend-tools --preview",
                "description": "Preview enable effects and dependency provenance"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable a pack without changing locked versions",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the pack"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Use project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs disable frontend-tools --preview",
                "description": "Preview disable effects and dependency provenance"
              }
            ],
            "subcommands": []
          },
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured packs from their sources, or install packs from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "pack source (Registry FQN @owner/packs/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "pack",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a pack by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs install ./extensions --pack example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm packs install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a pack",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name or glob pattern of the pack to uninstall"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs uninstall my-pack",
                "description": "Remove a pack and its orphaned extensions"
              },
              {
                "command": "axm packs uninstall my-pack --preview",
                "description": "Check what would be removed first"
              },
              {
                "command": "axm packs uninstall acme-*",
                "description": "Remove all packs matching a pattern"
              }
            ],
            "subcommands": []
          },
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new empty pack in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the pack (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what files would be created without creating them"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs new frontend-tools",
                "description": "Create an empty pack to bundle extensions"
              },
              {
                "command": "axm packs new frontend-tools --owner @co",
                "description": "Create under a specific owner"
              }
            ],
            "subcommands": []
          },
          {
            "name": "add",
            "aliases": [],
            "description": "Add an extension to a project-workspace pack manifest",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured pack name or unique configured pack FQN"
              },
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Extension name or glob pattern"
              }
            ],
            "options": [
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change in the manifest without modifying it"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs add frontend-tools @acme/skills/code-review",
                "description": "Bundle a skill into your pack"
              },
              {
                "command": "axm packs add my-pack \"effect-*\"",
                "description": "Add multiple extensions by pattern"
              }
            ],
            "subcommands": []
          },
          {
            "name": "remove",
            "aliases": [],
            "description": "Remove an extension from a project-workspace pack manifest",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured pack name or unique configured pack FQN"
              },
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Extension name or glob pattern"
              }
            ],
            "options": [
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change in the manifest without modifying it"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs remove frontend-tools @acme/skills/code-review",
                "description": "Remove an extension from a pack"
              },
              {
                "command": "axm packs remove my-pack \"@acme/effect-*\"",
                "description": "Remove by pattern"
              }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect desired, accepted, and canonical pack state",
            "arguments": [
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured pack name or fully qualified identity"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level pack state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs show my-pack",
                "description": "Inspect a configured pack by name"
              },
              {
                "command": "axm packs show @acme/packs/my-pack --json",
                "description": "Emit structured pack state"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace packs to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              },
              {
                "name": "include-dependencies",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Include workspace-sourced dependencies of selected packs"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs publish",
                "description": "Publish every workspace-sourced packs package"
              },
              {
                "command": "axm packs publish example-* --on-existing verify",
                "description": "Publish matching packs packages"
              }
            ],
            "subcommands": []
          },
          {
            "name": "unpack",
            "aliases": [],
            "description": "Eject pack into individual entries",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Pack name to unpack"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Unpack project (default) or user-level pack state",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change in settings without modifying them"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs unpack @acme/frontend-tools",
                "description": "Stop using a pack and manage extensions individually"
              },
              {
                "command": "axm packs unpack @acme/frontend-tools --preview",
                "description": "See what settings would change first"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update enabled packs and reconcile their dependencies",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update project (default) or user-level packs",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without updating"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm packs update --preview",
                "description": "Preview available pack updates"
              },
              { "command": "axm packs update", "description": "Update all enabled packs" }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "publish",
        "aliases": [],
        "description": "Publish project-workspace extensions to a registry (archive policy: axm help publish)",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "FQNs or type-qualified extension selectors",
            "variadic": { "min": 0 }
          }
        ],
        "options": [
          {
            "name": "owner",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Filter by owner",
            "variadic": { "min": 0 }
          },
          {
            "name": "type",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Filter by extension type",
            "variadic": { "min": 0 },
            "choices": [
              { "value": "skill" },
              { "value": "mcp-server" },
              { "value": "subagent" },
              { "value": "rule" },
              { "value": "hook" },
              { "value": "knowledge" },
              { "value": "pack" }
            ]
          },
          {
            "name": "exclude",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Exclude a matching selector",
            "variadic": { "min": 0 }
          },
          {
            "name": "registry",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Target a specific named registry"
          },
          {
            "name": "registry-url",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Override the target registry URL for automation"
          },
          {
            "name": "on-existing",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
            "choices": [{ "value": "error" }, { "value": "verify" }]
          },
          {
            "name": "backfill",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Publish an unpublished version lower than the highest published version"
          },
          {
            "name": "accept-warnings",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Apply the plan even when preflight reports unresolved warnings"
          },
          {
            "name": "visibility",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Initial visibility for every new extension in the selection",
            "choices": [{ "value": "public" }, { "value": "private" }]
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Preflight without uploading"
          },
          {
            "name": "include-dependencies",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Include workspace-sourced dependencies of selected packs"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm publish", "description": "Publish every workspace-sourced extension" },
          {
            "command": "axm publish --owner @acme --on-existing verify",
            "description": "Idempotently publish an authored catalog"
          },
          {
            "command": "axm publish @acme/skills/code-review",
            "description": "Publish one workspace-authored extension explicitly"
          }
        ],
        "subcommands": []
      },
      {
        "name": "share",
        "aliases": [],
        "description": "Print a Git locator install command for distributable authored extensions; opt-out is not confidentiality",
        "arguments": [],
        "options": [
          {
            "name": "bazel",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable bazel package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "cargo",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable cargo package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "cocoapods",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable cocoapods package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "composer",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable composer package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "conan",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable conan package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "conda",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable conda package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "cpan",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable cpan package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "cran",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable cran package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "docker",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable docker package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "gem",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable gem package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "golang",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable golang package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "hackage",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable hackage package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "hex",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable hex package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "huggingface",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable huggingface package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "jsr",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable jsr package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "julia",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable julia package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "luarocks",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable luarocks package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "maven",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable maven package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "mojo",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable mojo package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "npm",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable npm package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "nuget",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable nuget package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "opam",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable opam package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "pub",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable pub package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "pypi",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable pypi package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "swift",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable swift package metadata with the Git source locator for the tag at HEAD"
          },
          {
            "name": "zig",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Emit portable zig package metadata with the Git source locator for the tag at HEAD"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm share",
            "description": "Print a live-checked install command with origin's self-describing locator"
          },
          {
            "command": "axm share --npm",
            "description": "Emit package.json metadata for the tag at HEAD"
          },
          {
            "command": "axm share --json",
            "description": "Emit the share result as structured data"
          }
        ],
        "subcommands": []
      },
      {
        "name": "fork",
        "aliases": [],
        "description": "Fork a managed AXM package into project-workspace authorship",
        "arguments": [
          {
            "name": "source",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Registry, workspace, local, or Git AXM package source"
          },
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "New target FQN"
          }
        ],
        "options": [
          {
            "name": "from",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Source package FQN when the source contains multiple packages"
          },
          {
            "name": "enable",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Enable and materialize a newly forked extension"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Display plan without applying"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm fork @acme/skills/review @me/skills/review-custom",
            "description": "Fork a Registry skill as a disabled workspace-authored package"
          },
          {
            "command": "axm fork ./extensions @me/hooks/check-policy --from @acme/hooks/check-policy --enable",
            "description": "Fork one package from a local collection and enable it"
          }
        ],
        "subcommands": []
      },
      {
        "name": "adopt",
        "aliases": [],
        "description": "Adopt a canonical package into project-workspace authorship, or declare an undeclared authored package in place",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Canonical extension FQN (@owner/<plural-type>/name)"
          }
        ],
        "options": [
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Display plan without applying"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm adopt @acme/skills/code-review",
            "description": "Adopt an installed package for authoring, or declare authored skills/code-review"
          }
        ],
        "subcommands": []
      },
      {
        "name": "demote",
        "aliases": [],
        "description": "Explicitly remove project-workspace source authority",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Workspace extension FQN (@owner/<plural-type>/name)"
          },
          {
            "name": "source",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Replacement registry, git, or local source"
          }
        ],
        "options": [
          {
            "name": "yes",
            "aliases": ["-y"],
            "type": "boolean",
            "required": false,
            "description": "Approve replacing workspace source authority with the externally sourced package in advance"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Display plan without applying"
          },
          {
            "name": "ignore-release-age",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Take a release younger than the configured minimum release age, for this run only"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm demote @acme/skills/code-review @acme/skills/code-review",
            "description": "Return a workspace skill to registry management"
          }
        ],
        "subcommands": []
      },
      {
        "name": "install",
        "aliases": [],
        "description": "Install extensions from Registry, Git, or path sources, or reinstall configured sources",
        "arguments": [
          {
            "name": "source",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Registry FQN (@owner/<plural-type>/<name>[@version]), self-describing Git locator, or path locator; hosted shorthand uses a final @revision, and shorthand revisions cannot contain \"/\""
          }
        ],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Install to project (default) or user-level configuration",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "all",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Install every matching extension without prompting"
          },
          {
            "name": "reinstall",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Reinstall extensions that already exist"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Show what would be installed without making changes"
          },
          {
            "name": "ignore-release-age",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Take a release younger than the configured minimum release age, for this run only"
          },
          {
            "name": "skill",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a skill by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "subagent",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a subagent by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "rule",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a rule by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "hook",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a hook by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "knowledge",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a knowledge bundle by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "mcp",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a mcp server by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "pack",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Select a pack by name or glob; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "env",
            "aliases": ["-e"],
            "type": "string",
            "required": false,
            "description": "Provide an MCP input value as KEY=VALUE; repeatable",
            "variadic": { "min": 0 }
          },
          {
            "name": "as",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Install one MCP server using this local name"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm install", "description": "Reinstall all configured extensions" },
          {
            "command": "axm install @acme/skills/code-review",
            "description": "Install a skill by fully qualified registry name"
          },
          {
            "command": "axm install github:acme/agent-extensions//tools@v1.0.0",
            "description": "Discover and install from a hosted Git locator"
          },
          {
            "command": "axm install ./extensions --skill review --rule safe-shell",
            "description": "Install explicit per-type selections from a source"
          },
          {
            "command": "axm install ./extensions --all",
            "description": "Install every extension in a source without prompting"
          }
        ],
        "subcommands": []
      },
      {
        "name": "update",
        "aliases": [],
        "description": "Advance accepted resolutions within each source's selection intent",
        "arguments": [
          {
            "name": "extension[@version]",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Installed extension FQN; optional @version constrains Registry sources only"
          }
        ],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Update in project (default) or user-level configuration",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "refresh",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Run update even when the installed version is already current"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Show what would be updated without making changes"
          },
          {
            "name": "ignore-release-age",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Take a release younger than the configured minimum release age, for this run only"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm update",
            "description": "Update all configured extensions in the current workspace"
          },
          {
            "command": "axm update @acme/skills/code-review",
            "description": "Update an installed extension by FQN, regardless of source family"
          },
          {
            "command": "axm update @acme/hooks/session-audit@^1.2.0",
            "description": "Update a Registry extension within a version constraint"
          },
          {
            "command": "axm update @acme/skills/code-review --ignore-release-age",
            "description": "Review and bypass minimum release age for one targeted update"
          },
          {
            "command": "axm update --preview",
            "description": "Preview updates without applying them"
          }
        ],
        "subcommands": []
      },
      {
        "name": "uninstall",
        "aliases": [],
        "description": "Remove an extension from the workspace",
        "arguments": [
          {
            "name": "extension[@version]",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Registry FQN (@owner/<plural-type>/<name>[@version])"
          }
        ],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Uninstall from project (default) or user-level configuration",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Show what would be removed without making changes"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm uninstall @acme/skills/code-review",
            "description": "Remove an installed skill by fully qualified registry name"
          },
          {
            "command": "axm uninstall @acme/hooks/session-audit@^1.2.0 --preview",
            "description": "Preview uninstalling a hook; version is ignored for uninstall routing"
          },
          {
            "command": "axm uninstall @acme/packs/frontend-tools --json",
            "description": "Remove a pack and emit the result as JSON for scripts or CI"
          }
        ],
        "subcommands": []
      },
      {
        "name": "list",
        "aliases": [],
        "description": "List extensions across all types",
        "arguments": [],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "List project (default) or user-level extensions",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "type",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Only list a specific extension type",
            "choices": [
              { "value": "skill" },
              { "value": "mcp-server" },
              { "value": "subagent" },
              { "value": "rule" },
              { "value": "hook" },
              { "value": "knowledge" },
              { "value": "pack" }
            ]
          },
          {
            "name": "outdated",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Only list installed extensions with available updates"
          },
          {
            "name": "deprecated",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Only list installed extensions deprecated by their registry"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm list", "description": "List the local project inventory" },
          { "command": "axm list --type skill", "description": "List only skills" },
          {
            "command": "axm list --outdated",
            "description": "Check installed extensions for updates"
          },
          { "command": "axm list --deprecated", "description": "Check for deprecated extensions" },
          { "command": "axm list --scope user", "description": "List user-level extensions" }
        ],
        "subcommands": []
      },
      {
        "name": "view",
        "aliases": [],
        "description": "View published extension metadata",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Fully-qualified extension handle (@owner/skills/name)"
          },
          {
            "name": "field",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Optional field: version, versions, latest, description, owner, type, visibility, lifecycle-state, archival, deprecation"
          }
        ],
        "options": [
          {
            "name": "registry",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Target a specific named registry instead of the default"
          },
          {
            "name": "type",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Extension type for bare-name lookup",
            "choices": [
              { "value": "skill" },
              { "value": "mcp-server" },
              { "value": "subagent" },
              { "value": "rule" },
              { "value": "hook" },
              { "value": "knowledge" },
              { "value": "pack" }
            ]
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm view @acme/skills/code-review",
            "description": "Show published metadata for an extension"
          },
          {
            "command": "axm view @acme/subagents/reviewer version",
            "description": "Print the latest published version"
          },
          {
            "command": "axm view @acme/skills/code-review versions --json",
            "description": "Emit published versions as JSON"
          }
        ],
        "subcommands": []
      },
      {
        "name": "visibility",
        "aliases": [],
        "description": "Inspect and manage whole-Extension Registry visibility",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm visibility status @acme/skills/review",
            "description": "Inspect visibility"
          }
        ],
        "subcommands": [
          {
            "name": "status",
            "aliases": [],
            "description": "Compare source intent with Registry visibility",
            "arguments": [
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Exact extension FQN (@owner/<plural-type>/name)"
              }
            ],
            "options": [],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm visibility status @acme/skills/review",
                "description": "Compare source and Registry visibility"
              }
            ],
            "subcommands": []
          },
          {
            "name": "set",
            "aliases": [],
            "description": "Set established Registry visibility",
            "arguments": [
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Exact extension FQN (@owner/<plural-type>/name)"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": true,
                "choices": [{ "value": "public" }, { "value": "private" }]
              }
            ],
            "options": [
              {
                "name": "step-up-request",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Resume this write using its step-up request URL and unchanged inputs"
              },
              {
                "name": "wait-for-human",
                "aliases": [],
                "type": "integer",
                "required": false,
                "description": "Wait at most this many seconds for a person to approve in a browser"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm visibility set @acme/skills/review private",
                "description": "Make an extension private"
              }
            ],
            "subcommands": []
          },
          {
            "name": "reconcile",
            "aliases": [],
            "description": "Apply repository visibility intent to the Registry",
            "arguments": [
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Exact extension FQN (@owner/<plural-type>/name)"
              }
            ],
            "options": [
              {
                "name": "step-up-request",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Resume this write using its step-up request URL and unchanged inputs"
              },
              {
                "name": "wait-for-human",
                "aliases": [],
                "type": "integer",
                "required": false,
                "description": "Wait at most this many seconds for a person to approve in a browser"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm visibility reconcile @acme/skills/review",
                "description": "Apply declared visibility"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "version",
        "aliases": [],
        "description": "Bump a project-workspace extension manifest version",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Fully-qualified extension handle (@owner/<skills|subagents|mcps|rules|hooks|knowledge|packs>/name)"
          },
          {
            "name": "bump",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Version bump rule or set"
          },
          {
            "name": "version",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Exact semver version for set"
          }
        ],
        "options": [
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Print the bump without writing"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm version @acme/hooks/block-secrets patch",
            "description": "Bump a hook's patch version"
          },
          {
            "command": "axm version @acme/skills/code-review minor",
            "description": "Bump a skill's minor version"
          },
          {
            "command": "axm version @acme/subagents/researcher patch",
            "description": "Bump a subagent's patch version"
          },
          {
            "command": "axm version @acme/mcps/my-server minor",
            "description": "Bump an MCP server's minor version"
          },
          {
            "command": "axm version @acme/packs/frontend-tools set 1.2.3",
            "description": "Set an exact pack version"
          }
        ],
        "subcommands": []
      },
      {
        "name": "yank",
        "aliases": [],
        "description": "Exclude extension versions from fresh resolution",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Exact version ref, or an extension FQN with --all-versions"
          }
        ],
        "options": [
          {
            "name": "all-versions",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Atomically yank all versions currently available"
          },
          {
            "name": "category",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Public yank category",
            "choices": [
              { "value": "broken" },
              { "value": "security" },
              { "value": "accidental" },
              { "value": "other" }
            ]
          },
          {
            "name": "notice",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Safe public yank notice (maximum 500 characters)"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm yank @acme/skills/code-review@1.2.3",
            "description": "Yank one version"
          },
          {
            "command": "axm yank @acme/skills/code-review --all-versions",
            "description": "Atomically yank the current available-version snapshot"
          }
        ],
        "subcommands": []
      },
      {
        "name": "unyank",
        "aliases": [],
        "description": "Restore one exact version to fresh resolution",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Exact extension version ref (@owner/<plural-type>/name@1.2.3)"
          }
        ],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm unyank @acme/skills/code-review@1.2.3",
            "description": "Restore one yanked version"
          }
        ],
        "subcommands": []
      },
      {
        "name": "deprecate",
        "aliases": [],
        "description": "Create or edit warning-only extension deprecation guidance",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Extension FQN (@owner/<plural-type>/name)"
          }
        ],
        "options": [
          {
            "name": "message",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Concise publisher migration guidance (maximum 500 characters)"
          },
          {
            "name": "replacement",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Replacement extension FQN"
          },
          {
            "name": "clear-message",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Remove the current publisher message"
          },
          {
            "name": "clear-replacement",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Remove the current replacement relationship"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm deprecate @acme/skills/code-review --replacement @acme/skills/reviewer --message \"Move review workflows\"",
            "description": "Deprecate with structured replacement guidance"
          }
        ],
        "subcommands": []
      },
      {
        "name": "undeprecate",
        "aliases": [],
        "description": "Restore a deprecated extension identity",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Extension FQN (@owner/<plural-type>/name)"
          }
        ],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm undeprecate @acme/skills/code-review",
            "description": "Restore the identity to active lifecycle state"
          }
        ],
        "subcommands": []
      },
      {
        "name": "archive",
        "aliases": [],
        "description": "Block new releases while retaining historical resolution",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Extension FQN (@owner/<plural-type>/name)"
          }
        ],
        "options": [
          {
            "name": "reason",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Concise public archival reason (maximum 500 characters)"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm archive @acme/skills/code-review --reason \"No longer maintained\"",
            "description": "Archive an extension identity"
          }
        ],
        "subcommands": []
      },
      {
        "name": "unarchive",
        "aliases": [],
        "description": "Restore publication for an archived extension identity",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": true,
            "description": "Extension FQN (@owner/<plural-type>/name)"
          }
        ],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm unarchive @acme/skills/code-review",
            "description": "Restore an archived extension identity"
          }
        ],
        "subcommands": []
      },
      {
        "name": "sync",
        "aliases": [],
        "description": "Materialize configured workspace files",
        "arguments": [
          {
            "name": "extension",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Optional extension or pack root to reconcile"
          }
        ],
        "options": [
          {
            "name": "type",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Reconcile only one directly materialized extension type",
            "choices": [
              { "value": "skill" },
              { "value": "mcp-server" },
              { "value": "subagent" },
              { "value": "rule" },
              { "value": "hook" },
              { "value": "knowledge" }
            ]
          },
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Sync project (default) or user-level configuration",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Preview the materialization plan without applying it"
          },
          {
            "name": "fail-on-change",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Exit 1 when preview finds reconciliation work"
          },
          {
            "name": "ignore-release-age",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Take a release younger than the configured minimum release age, for this run only"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm sync", "description": "Rebuild managed workspace files" },
          {
            "command": "axm sync --preview",
            "description": "Preview what would be materialized without writing files"
          },
          {
            "command": "axm sync --preview --fail-on-change",
            "description": "Fail CI when reconciliation would change managed state"
          },
          {
            "command": "axm sync @acme/packs/frontend-tools --preview",
            "description": "Preview reconciliation for one pack and its members"
          },
          { "command": "axm sync --type skill", "description": "Reconcile only configured skills" },
          { "command": "axm sync --scope user", "description": "Sync the user-scope workspace" },
          { "command": "axm sync --json", "description": "Emit the sync result as JSON" }
        ],
        "subcommands": []
      },
      {
        "name": "agents",
        "aliases": [],
        "description": "Manage coding-agent harnesses configured for AXM",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm agents list",
            "description": "Show configured and detected coding agents"
          },
          {
            "command": "axm agents add cursor",
            "description": "Add Cursor to a configured workspace"
          },
          { "command": "axm agents remove cursor", "description": "Stop syncing into Cursor" }
        ],
        "subcommands": [
          {
            "name": "list",
            "aliases": [],
            "description": "List coding-agent harnesses configured for AXM",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List agents from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "detected",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show detected agents only"
              },
              {
                "name": "available",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show all supported agent IDs"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm agents list",
                "description": "Show configured and detected coding agents"
              },
              {
                "command": "axm agents list --available",
                "description": "Show every supported agent ID"
              },
              {
                "command": "axm agents list --detected",
                "description": "Show detected coding agents"
              }
            ],
            "subcommands": []
          },
          {
            "name": "add",
            "aliases": [],
            "description": "Configure coding-agent harnesses and materialize installed extensions",
            "arguments": [
              {
                "name": "id",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Coding-agent IDs to configure, such as claude-code or cursor",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Add agents to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "detected",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Add detected agents"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm agents add cursor", "description": "Add Cursor to this workspace" },
              {
                "command": "axm agents add cursor codex --preview",
                "description": "Preview configuring multiple agents"
              },
              {
                "command": "axm agents add --detected",
                "description": "Configure all detected agents"
              }
            ],
            "subcommands": []
          },
          {
            "name": "remove",
            "aliases": [],
            "description": "Remove coding-agent harnesses and clean up AXM-managed artifacts",
            "arguments": [
              {
                "name": "id",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Configured coding-agent IDs to remove",
                "variadic": { "min": 1 }
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Remove agents from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without applying"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm agents remove cursor",
                "description": "Remove Cursor from this workspace"
              },
              {
                "command": "axm agents remove cursor --preview",
                "description": "Preview managed artifact cleanup"
              }
            ],
            "subcommands": []
          },
          {
            "name": "capabilities",
            "aliases": [],
            "description": "Show what one coding agent supports, and how far AXM integrates with it",
            "arguments": [
              {
                "name": "id",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Coding-agent ID, such as claude-code or cursor"
              }
            ],
            "options": [],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm agents capabilities claude-code",
                "description": "Show Claude Code's modeled extension capabilities"
              },
              {
                "command": "axm agents capabilities cursor --json",
                "description": "Emit one agent's capability matrix as JSON"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "instructions",
        "aliases": [],
        "description": "Inspect and manage workspace instruction files",
        "arguments": [],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Inspect project (default) or user-level configuration",
            "choices": [{ "value": "project" }, { "value": "user" }]
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm instructions", "description": "Inspect instruction files" },
          {
            "command": "axm sync --preview",
            "description": "Preview instruction-file reconciliation"
          }
        ],
        "subcommands": [
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable instruction-file management",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "file",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Source-of-truth instruction file"
              },
              {
                "name": "gitignore",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Manage propagated alias files in .gitignore"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without enabling"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm instructions enable", "description": "Enable instruction files" },
              {
                "command": "axm instructions enable --no-gitignore",
                "description": "Enable without writing alias gitignore entries"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable instruction-file management",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without disabling"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm instructions disable", "description": "Disable instruction files" }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "rules",
        "aliases": [],
        "description": "Manage rules capabilities for configured agents",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [{ "command": "axm rules list", "description": "Inventory detected rules" }],
        "subcommands": [
          {
            "name": "new",
            "aliases": [],
            "description": "Create a new rule in the project-workspace authoring root",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the rule (without owner)"
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner to create under; recorded as the workspace owner when none is set (e.g., @acme)"
              },
              {
                "name": "title",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Display title for the rule"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be created without writing files"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm rules new commit-style", "description": "Scaffold a new rule" },
              {
                "command": "axm rules new commit-style --owner @acme",
                "description": "Create a rule under a specific owner"
              }
            ],
            "subcommands": []
          },
          {
            "name": "install",
            "aliases": [],
            "description": "Reinstall all configured rules from their sources, or install rules from a source",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "rule source (Registry FQN @owner/rules/name[@version], self-describing Git locator, or path locator)"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Install to project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "rule",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Select a rule by name or glob; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "all",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Install every matching extension without prompting"
              },
              {
                "name": "reinstall",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Reinstall extensions that already exist"
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be installed without making changes"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules install ./extensions --rule example",
                "description": "Install an explicit selection from one source locator"
              },
              {
                "command": "axm rules install ./extensions --all",
                "description": "Install every matching extension without prompting"
              }
            ],
            "subcommands": []
          },
          {
            "name": "uninstall",
            "aliases": [],
            "description": "Uninstall a rule",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the rule"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Uninstall from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would be removed without making changes"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules uninstall commit-style",
                "description": "Uninstall a rule by name"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List detected rules and their lifecycle classification",
            "arguments": [],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "List rules from project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm rules list", "description": "Inventory detected rules" }
            ],
            "subcommands": []
          },
          {
            "name": "show",
            "aliases": [],
            "description": "Inspect one installed rule",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the rule to inspect"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Inspect project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules show commit-style",
                "description": "Inspect one installed rule"
              },
              {
                "command": "axm rules show commit-style --scope user",
                "description": "Inspect a user-level rule"
              }
            ],
            "subcommands": []
          },
          {
            "name": "enable",
            "aliases": [],
            "description": "Enable a rule",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the rule"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Enable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without enabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules enable commit-style",
                "description": "Enable a configured rule"
              }
            ],
            "subcommands": []
          },
          {
            "name": "disable",
            "aliases": [],
            "description": "Disable a rule without uninstalling it",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Name of the rule"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Disable in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without disabling"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules disable commit-style",
                "description": "Disable a configured rule"
              }
            ],
            "subcommands": []
          },
          {
            "name": "update",
            "aliases": [],
            "description": "Update configured rules",
            "arguments": [
              {
                "name": "source",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter to rules matching a name or source"
              }
            ],
            "options": [
              {
                "name": "scope",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Update in project (default) or user-level configuration",
                "choices": [{ "value": "project" }, { "value": "user" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Update only specific rules by name or glob pattern",
                "variadic": { "min": 0 }
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Show what would change without updating"
              },
              {
                "name": "ignore-release-age",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Take a release younger than the configured minimum release age, for this run only"
              }
            ],
            "globalOptions": [],
            "examples": [
              { "command": "axm rules update", "description": "Update configured rules" },
              {
                "command": "axm rules update --name commit-*",
                "description": "Update only rules matching a glob"
              }
            ],
            "subcommands": []
          },
          {
            "name": "publish",
            "aliases": [],
            "description": "Publish project-workspace rules to a registry",
            "arguments": [
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Bare names, globs, or fully-qualified extension names",
                "variadic": { "min": 0 }
              }
            ],
            "options": [
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Filter by owner",
                "variadic": { "min": 0 }
              },
              {
                "name": "exclude",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Exclude a matching name, glob, or FQN",
                "variadic": { "min": 0 }
              },
              {
                "name": "registry",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Target a specific named registry"
              },
              {
                "name": "registry-url",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Override the target registry URL for automation"
              },
              {
                "name": "on-existing",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Override existing-version policy (verify rebuilds the authored archive and requires its SHA-512 digest to match)",
                "choices": [{ "value": "error" }, { "value": "verify" }]
              },
              {
                "name": "backfill",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Publish an unpublished version lower than the highest published version"
              },
              {
                "name": "accept-warnings",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Apply the plan even when preflight reports unresolved warnings"
              },
              {
                "name": "visibility",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Initial visibility for every new extension in the selection",
                "choices": [{ "value": "public" }, { "value": "private" }]
              },
              {
                "name": "preview",
                "aliases": [],
                "type": "boolean",
                "required": false,
                "description": "Preflight without uploading"
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm rules publish",
                "description": "Publish every workspace-sourced rules package"
              },
              {
                "command": "axm rules publish example-* --on-existing verify",
                "description": "Publish matching rules packages"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "lint",
        "aliases": [],
        "description": "Check workspace configuration",
        "arguments": [
          {
            "name": "path",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Workspace directory to lint (defaults to the current working directory)."
          }
        ],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Scope of the lint run: project (default) or user (lints the .axm/workspace workspace under the selected home).",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "strict",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Treat warnings as failing for exit code."
          },
          {
            "name": "fix",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Apply repairs whose desired state is already determined, then report what remains."
          },
          {
            "name": "view",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Filesystem view to lint: workspace (default) or the complete Git index.",
            "choices": [{ "value": "workspace" }, { "value": "git-index" }]
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm lint", "description": "Lint the current project workspace" },
          {
            "command": "axm lint --scope user",
            "description": "Lint the user workspace under $HOME/.axm/workspace"
          },
          {
            "command": "axm lint --strict",
            "description": "Treat warnings as failing for exit code"
          },
          {
            "command": "axm lint --verbose",
            "description": "List every finding with its full detail"
          },
          {
            "command": "axm lint --fix",
            "description": "Restore determined state, such as missing agent instruction files"
          },
          {
            "command": "axm lint --view git-index",
            "description": "Lint the complete workspace represented by the Git index"
          },
          {
            "command": "axm lint --json",
            "description": "Emit findings as a structured JSON document"
          }
        ],
        "subcommands": []
      },
      {
        "name": "cache",
        "aliases": [],
        "description": "Inspect and maintain the verified registry archive cache",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          { "command": "axm cache status", "description": "Show archive cache usage" },
          { "command": "axm cache verify", "description": "Verify cached archive integrity" },
          { "command": "axm cache prune", "description": "Remove expired and excess entries" }
        ],
        "subcommands": [
          {
            "name": "status",
            "aliases": [],
            "description": "Show verified registry archive cache usage and limits",
            "arguments": [],
            "options": [],
            "globalOptions": [],
            "examples": [
              { "command": "axm cache status", "description": "Show archive cache usage" },
              { "command": "axm cache status --json", "description": "Emit cache status as JSON" }
            ],
            "subcommands": []
          },
          {
            "name": "verify",
            "aliases": [],
            "description": "Verify every cached archive and remove corrupt entries",
            "arguments": [],
            "options": [],
            "globalOptions": [],
            "examples": [
              { "command": "axm cache verify", "description": "Verify cached archive integrity" },
              {
                "command": "axm cache verify --json",
                "description": "Emit verification results as JSON"
              }
            ],
            "subcommands": []
          },
          {
            "name": "prune",
            "aliases": [],
            "description": "Remove expired archives and enforce the 2 GiB cache limit",
            "arguments": [],
            "options": [],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm cache prune",
                "description": "Prune expired and excess cache entries"
              },
              { "command": "axm cache prune --json", "description": "Emit pruning results as JSON" }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "upgrade",
        "aliases": [],
        "description": "Update axm to the promoted stable or an exact version",
        "arguments": [
          {
            "name": "version",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Exact stable version; omit to use GitHub's latest release"
          }
        ],
        "options": [
          {
            "name": "reinstall",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Reinstall an equal version; never permits a downgrade"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Report the resolved install method, target, and command without running it"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm upgrade", "description": "Download and install the latest version" },
          {
            "command": "axm upgrade 1.2.3",
            "description": "Install an exact stable version without release discovery"
          },
          {
            "command": "axm upgrade --reinstall",
            "description": "Reinstall an equal version without permitting a downgrade"
          },
          {
            "command": "axm upgrade --preview",
            "description": "Show the detected installer and the command it would run, changing nothing"
          }
        ],
        "subcommands": []
      },
      {
        "name": "login",
        "aliases": [],
        "description": "Sign in to a registry",
        "arguments": [],
        "options": [
          {
            "name": "yes",
            "aliases": ["-y"],
            "type": "boolean",
            "required": false,
            "description": "Start a new sign-in without prompting when a valid session already exists"
          },
          {
            "name": "device-code",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Use OAuth device-code sign-in; recommended for SSH and headless environments"
          },
          {
            "name": "wait-for-human",
            "aliases": [],
            "type": "integer",
            "required": false,
            "description": "Wait at most this many seconds for a person to approve in a browser"
          },
          {
            "name": "restart",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Replace an existing pending device sign-in intentionally"
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm login", "description": "Sign in with a local browser" },
          {
            "command": "axm login --device-code",
            "description": "Sign in from SSH or a headless machine"
          },
          {
            "command": "axm login --device-code --wait-for-human 300 --json",
            "description": "Start or resume device sign-in and wait up to 300 seconds"
          }
        ],
        "subcommands": []
      },
      {
        "name": "logout",
        "aliases": [],
        "description": "Sign out of a registry",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          { "command": "axm logout", "description": "Sign out of the current registry" },
          { "command": "axm logout --json", "description": "Report the sign-out result as JSON" }
        ],
        "subcommands": []
      },
      {
        "name": "whoami",
        "aliases": [],
        "description": "Show current authenticated identity",
        "arguments": [],
        "options": [],
        "globalOptions": [],
        "examples": [
          { "command": "axm whoami", "description": "Check who you're authenticated as" },
          { "command": "axm whoami --json", "description": "Get identity as JSON for scripts" }
        ],
        "subcommands": []
      },
      {
        "name": "token",
        "aliases": [],
        "description": "Output current auth token to stdout",
        "arguments": [],
        "options": [
          {
            "name": "output",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Credential destination: \"token\" writes only the token to stdout; \"human\" shows the interactive one-time view",
            "choices": [{ "value": "token" }, { "value": "human" }]
          }
        ],
        "globalOptions": [],
        "examples": [
          { "command": "axm token", "description": "Show your auth token in a terminal" },
          {
            "command": "axm token --output token",
            "description": "Write only your auth token to stdout for another tool"
          }
        ],
        "subcommands": [
          {
            "name": "create",
            "aliases": [],
            "description": "Create a granular access token",
            "arguments": [],
            "options": [
              {
                "name": "step-up-request",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Resume this write using its step-up request URL and unchanged inputs"
              },
              {
                "name": "wait-for-human",
                "aliases": [],
                "type": "integer",
                "required": false,
                "description": "Wait at most this many seconds for a person to approve in a browser"
              },
              {
                "name": "output",
                "aliases": [],
                "type": "choice",
                "required": false,
                "description": "Credential destination: \"token\" writes only the token to stdout; \"human\" shows the interactive one-time view",
                "choices": [{ "value": "token" }, { "value": "human" }]
              },
              {
                "name": "name",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Human-readable token name"
              },
              {
                "name": "expires",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Token lifetime: 7d, 30d, 1y, or an ISO timestamp. At most 90d for a publish or admin token, 1y for a read token."
              },
              {
                "name": "owner",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Owner selector; repeatable. Use \"all\" for full surface.",
                "variadic": { "min": 0 }
              },
              {
                "name": "extension",
                "aliases": [],
                "type": "string",
                "required": false,
                "description": "Extension selector in @handle/<type>/<name> form; repeatable",
                "variadic": { "min": 0 }
              },
              {
                "name": "permission",
                "aliases": [],
                "type": "choice",
                "required": true,
                "description": "What the token may do: read, publish, or admin. A token can do less than you, never more.",
                "choices": [{ "value": "read" }, { "value": "publish" }, { "value": "admin" }]
              }
            ],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm token create --name ci --owner @foo --permission publish",
                "description": "Create a publish token scoped to @foo and show it once"
              },
              {
                "command": "axm token create --name ci --extension @foo/skills/review --permission publish --wait-for-human 300 --output token",
                "description": "Write only the new token to stdout for a pipe, waiting up to 300s for approval"
              }
            ],
            "subcommands": []
          },
          {
            "name": "list",
            "aliases": [],
            "description": "List granular access tokens",
            "arguments": [],
            "options": [],
            "globalOptions": [],
            "examples": [
              { "command": "axm token list", "description": "List your granular access tokens" }
            ],
            "subcommands": []
          },
          {
            "name": "revoke",
            "aliases": [],
            "description": "Revoke a granular access token",
            "arguments": [
              {
                "name": "id",
                "aliases": [],
                "type": "string",
                "required": true,
                "description": "Token id to revoke"
              }
            ],
            "options": [],
            "globalOptions": [],
            "examples": [
              {
                "command": "axm token revoke token_123",
                "description": "Revoke a granular access token"
              }
            ],
            "subcommands": []
          }
        ]
      },
      {
        "name": "setup",
        "aliases": [],
        "description": "Set up AXM in the current project",
        "arguments": [],
        "options": [
          {
            "name": "scope",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Configuration scope: project or user (required for unattended apply)",
            "choices": [{ "value": "project" }, { "value": "user" }]
          },
          {
            "name": "agent",
            "aliases": [],
            "type": "choice",
            "required": false,
            "description": "Specify agents to configure (skips auto-detection)",
            "variadic": { "min": 0 },
            "choices": [
              { "value": "adal" },
              { "value": "aider-desk" },
              { "value": "amp" },
              { "value": "antigravity" },
              { "value": "antigravity-cli" },
              { "value": "augment" },
              { "value": "claude-code" },
              { "value": "cline" },
              { "value": "codearts-agent" },
              { "value": "codebuddy" },
              { "value": "codemaker" },
              { "value": "codestudio" },
              { "value": "codex" },
              { "value": "command-code" },
              { "value": "continue" },
              { "value": "cortex" },
              { "value": "crush" },
              { "value": "cursor" },
              { "value": "deepagents" },
              { "value": "devin" },
              { "value": "dexto" },
              { "value": "droid" },
              { "value": "firebender" },
              { "value": "forgecode" },
              { "value": "gemini-cli" },
              { "value": "github-copilot-cli" },
              { "value": "goose" },
              { "value": "grok-cli" },
              { "value": "hermes" },
              { "value": "ibm-bob" },
              { "value": "iflow-cli" },
              { "value": "junie" },
              { "value": "lingma" },
              { "value": "kilo" },
              { "value": "kimi-cli" },
              { "value": "kiro-cli" },
              { "value": "kode" },
              { "value": "mcpjam" },
              { "value": "minimax-code" },
              { "value": "mistral-vibe" },
              { "value": "mux" },
              { "value": "neovate" },
              { "value": "openclaw" },
              { "value": "opencode" },
              { "value": "openhands" },
              { "value": "ona" },
              { "value": "pi" },
              { "value": "pochi" },
              { "value": "qoder" },
              { "value": "qoder-cn" },
              { "value": "qwen-code" },
              { "value": "replit" },
              { "value": "roo" },
              { "value": "rovodev" },
              { "value": "tabnine-cli" },
              { "value": "trae-cn" },
              { "value": "trae" },
              { "value": "warp" },
              { "value": "windsurf" },
              { "value": "zencoder" },
              { "value": "zed" },
              { "value": "zenflow" }
            ]
          },
          {
            "name": "yes",
            "aliases": ["-y"],
            "type": "boolean",
            "required": false,
            "description": "Apply the documented unattended setup defaults with an explicit scope and explicit agents"
          },
          {
            "name": "preview",
            "aliases": [],
            "type": "boolean",
            "required": false,
            "description": "Display plan without applying"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm setup",
            "description": "Preview, confirm, and initialize project setup"
          },
          {
            "command": "axm setup --preview --scope project --json --non-interactive",
            "description": "Preview the exact unattended setup candidate without writing"
          },
          {
            "command": "axm setup --scope user",
            "description": "Initialize the user workspace in ~/.axm/workspace/"
          },
          {
            "command": "axm setup --agent claude-code --agent cursor",
            "description": "Initialize with specific agents"
          }
        ],
        "subcommands": []
      },
      {
        "name": "discover",
        "aliases": [],
        "description": "Find extensions for your project",
        "arguments": [],
        "options": [
          {
            "name": "path",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Scan a different directory instead of the current working directory"
          }
        ],
        "globalOptions": [],
        "examples": [
          {
            "command": "axm discover",
            "description": "Discover extensions for the current project"
          },
          {
            "command": "axm discover --path ./my-project",
            "description": "Discover extensions for a specific directory"
          },
          {
            "command": "axm discover --json",
            "description": "Emit { command, items, count, totalDetected, registryAvailable }"
          }
        ],
        "subcommands": []
      },
      {
        "name": "help",
        "aliases": [],
        "description": "Show general help, a topic page, raw schema, or command help",
        "arguments": [
          {
            "name": "topic-or-command",
            "aliases": [],
            "type": "string",
            "required": false,
            "description": "Help topic or command path, such as basic-usage, skills install, or agents add",
            "variadic": {}
          }
        ],
        "options": [],
        "globalOptions": [],
        "examples": [
          { "command": "axm help", "description": "View help topics" },
          { "command": "axm help basic-usage", "description": "How to use AXM" },
          { "command": "axm help skills install", "description": "Show nested command help" },
          {
            "command": "axm help getting-started",
            "description": "How to set up and configure AXM"
          },
          { "command": "axm help skills", "description": "Managing agent skills with AXM" },
          { "command": "axm help subagents", "description": "Managing subagents with AXM" },
          {
            "command": "axm help skill-schema",
            "description": "Print the skill manifest JSON Schema"
          },
          { "command": "axm help exit-codes", "description": "Exit code conventions" }
        ],
        "subcommands": []
      }
    ]
  }
}
