{
  "id": "grok",
  "name": "Grok Build",
  "homepage": "https://github.com/xai-org/grok-build",
  "description": "xAI's coding agent for the terminal.",
  "icon": "theSVG:grok/light",
  "executables": [
    "grok"
  ],
  "dotfiles": {
    "paths": [
      "~/.grok/config.toml"
    ],
    "exclude": [
      "~/.grok/sessions/",
      "~/.grok/logs/",
      "~/.grok/bin/",
      "~/.grok/bundled/",
      "~/.grok/docs/",
      "~/.grok/downloads/",
      "~/.grok/completions/",
      "~/.grok/relocations/",
      "~/.grok/memtrace/",
      "~/.grok/marketplace-cache/",
      "~/.grok/hooks/",
      "~/.grok/trusted_folders.toml",
      "~/.grok/active_sessions.json",
      "~/.grok/models_cache.json",
      "~/.grok/worktrees.db",
      "~/.grok/agent_id",
      "~/.grok/version.json",
      "~/.grok/tip_cursor.json",
      "~/.grok/CHANGELOG.json",
      "~/.grok/CHANGELOG.md",
      "~/.grok/README.md",
      "~/.grok/*.lock",
      "~/.grok/.metadata_version"
    ],
    "secret": [
      "~/.grok/auth.json"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Run Grok",
    "description": "Start the Grok Build TUI with an initial prompt, or run a single headless prompt. Sub-commands (login, mcp, plugin, sessions ...), resume/worktree options and rule lists are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "help",
        "kind": "help",
        "revision": "grok --help (local install) 2026-10-27",
        "evidence": "Usage: grok [OPTIONS] [PROMPT] [COMMAND]\n  [PROMPT]\n          Initial prompt for the interactive session, e.g. `grok \"fix the bug\"` or `grok --worktree=feat \"create this feature\"`\n      --always-approve\n          Auto-approve all tool executions\n  -c, --continue\n          Continue the most recent session for the current working directory\n      --cwd <CWD>\n          Working directory\n  -m, --model <MODEL>\n          Model ID to use\n      --max-turns <N>\n          Maximum number of agent turns\n      --no-alt-screen\n          Run inline instead of using the terminal alternate screen\n      --output-format <OUTPUT_FORMAT>\n          Output format for headless mode\n          Possible values:\n          - plain\n          - json\n          - streaming-json:          NDJSON: one ACP session update per line, the agent's native format\n          - streaming-messages-json: NDJSON in the Anthropic Messages API wire format\n  -p, --single <PROMPT>\n          Single-turn prompt. Prints the response to stdout and exits\n      --permission-mode <MODE>\n          Permission mode\n          [possible values: default, acceptEdits, auto, dontAsk, bypassPermissions, plan]\n      --prompt-file <PATH>\n          Single-turn prompt from a file\n      --reasoning-effort <EFFORT>\n          Reasoning effort for reasoning models\n          [aliases: --effort]\n      --rules <RULES>\n          Extra rules to append to the system prompt\n      --disable-web-search\n          Disable web search and web fetch tools\n"
      }
    ],
    "field": [
      {
        "id": "prompt",
        "label": "Initial prompt",
        "description": "Opens the interactive session with this prompt.",
        "type": "string",
        "position": 0,
        "sources": [
          "help"
        ]
      },
      {
        "id": "single",
        "label": "Single-turn prompt (headless)",
        "description": "Print the response to stdout and exit instead of opening the TUI.",
        "type": "string",
        "option": [
          "--single",
          "-p"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "prompt_file",
        "label": "Prompt from file (headless)",
        "type": "path",
        "option": [
          "--prompt-file"
        ],
        "path": {
          "kind": "file",
          "role": "input",
          "must_exist": true
        },
        "sources": [
          "help"
        ]
      },
      {
        "id": "model",
        "label": "Model",
        "type": "string",
        "option": [
          "--model",
          "-m"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "continue",
        "label": "Continue most recent session",
        "type": "boolean",
        "option": [
          "--continue",
          "-c"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "cwd",
        "label": "Working directory",
        "type": "path",
        "option": [
          "--cwd"
        ],
        "path": {
          "kind": "directory",
          "role": "input",
          "must_exist": true
        },
        "sources": [
          "help"
        ]
      },
      {
        "id": "output_format",
        "label": "Output format (headless)",
        "type": "enum",
        "option": [
          "--output-format"
        ],
        "choices": [
          {
            "value": "plain",
            "label": "Plain"
          },
          {
            "value": "json",
            "label": "JSON"
          },
          {
            "value": "streaming-json",
            "label": "Streaming JSON (ACP)"
          },
          {
            "value": "streaming-messages-json",
            "label": "Streaming JSON (Messages API)"
          }
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "permission_mode",
        "label": "Permission mode",
        "type": "enum",
        "option": [
          "--permission-mode"
        ],
        "choices": [
          {
            "value": "default",
            "label": "Default"
          },
          {
            "value": "acceptEdits",
            "label": "Accept edits"
          },
          {
            "value": "auto",
            "label": "Auto"
          },
          {
            "value": "dontAsk",
            "label": "Don't ask"
          },
          {
            "value": "bypassPermissions",
            "label": "Bypass permissions"
          },
          {
            "value": "plan",
            "label": "Plan"
          }
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "always_approve",
        "label": "Auto-approve all tool executions",
        "type": "boolean",
        "option": [
          "--always-approve"
        ],
        "effect": "exec",
        "sources": [
          "help"
        ]
      },
      {
        "id": "max_turns",
        "label": "Maximum agent turns",
        "type": "integer",
        "option": [
          "--max-turns"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "reasoning_effort",
        "label": "Reasoning effort",
        "type": "string",
        "option": [
          "--reasoning-effort",
          "--effort"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "rules",
        "label": "Extra rules",
        "description": "Appended to the system prompt.",
        "type": "string",
        "option": [
          "--rules"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "no_alt_screen",
        "label": "Run inline (no alternate screen)",
        "type": "boolean",
        "option": [
          "--no-alt-screen"
        ],
        "sources": [
          "help"
        ]
      },
      {
        "id": "disable_web_search",
        "label": "Disable web search",
        "type": "boolean",
        "option": [
          "--disable-web-search"
        ],
        "sources": [
          "help"
        ]
      }
    ],
    "task": [
      {
        "id": "chat",
        "label": "Interactive session",
        "fields": [
          "prompt",
          "model",
          "cwd",
          "continue",
          "permission_mode"
        ],
        "required": []
      },
      {
        "id": "headless",
        "label": "One-shot headless prompt",
        "fields": [
          "single",
          "model",
          "cwd",
          "output_format",
          "max_turns",
          "permission_mode"
        ],
        "required": [
          "single"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "prompt",
          "single",
          "model",
          "continue",
          "cwd",
          "permission_mode"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "prompt_file",
          "output_format",
          "always_approve",
          "max_turns",
          "reasoning_effort",
          "rules",
          "no_alt_screen",
          "disable_web_search"
        ]
      }
    ]
  }
}
