{
  "schema_version": "1.0",
  "name": "X Stack playbooks",
  "generated_at": "2026-08-29T21:33:04+00:00",
  "published_at": "2026-08-29T21:34:43+00:00",
  "note": "Composition recipes only. Every product_id and feature_id must already exist in catalog/catalog.json. Do not invent capabilities, versions, or changelog rows. Scheduled scrape automations must not add playbooks.",
  "playbooks": [
    {
      "id": "grok-bot-operator",
      "title": "Grok Bot: read the live catalog before acting",
      "summary": "If you are a Grok Bot (or any agent) starting from xstack.grok.me or this JSON host, load the live Origin-published files first. Do not invent product features, versions, or changelog rows. Route the user's task through the matching playbook and the official URLs on each product.",
      "when": "Any agent session that needs current SpaceXAI, Cursor, or X capability facts — especially a Grok Bot that landed on the human UI.",
      "products": [
        "grok-bot"
      ],
      "features": [
        "grok-bot-computer",
        "grok-bot-connectors",
        "grok-bot-always-on"
      ],
      "steps": [
        {
          "title": "Fetch the agent contract from the JSON host",
          "detail": "GET https://x-stacks.vercel.app/llms.txt (also at https://x-stacks.vercel.app/.well-known/llms.txt). If you found a /llms.txt on https://xstack.grok.me, treat that host as the human UI. Same-origin /catalog.json must 404 or 301 to this host — do not use a UI seed. Always load JSON from https://x-stacks.vercel.app.",
          "url": "https://x-stacks.vercel.app/llms.txt"
        },
        {
          "title": "First hop: index + status, then catalog/playbooks as needed",
          "detail": "GET https://x-stacks.vercel.app/index.json (slim product + playbook router) and https://x-stacks.vercel.app/status.json (scrape health). Then GET catalog.json and playbooks.json. generated_at is last successful scrape; published_at is a deploy. If last_run_failed, or now is after last_run_fresh_until, say the scrape failed or is overdue. If status.json marks a source 403 or skipped, or a product has freshness=stale / blocked_pages, do not reconstruct that page from memory.",
          "url": "https://x-stacks.vercel.app/index.json"
        },
        {
          "title": "Do not invent",
          "detail": "Answer only from products[], features[], channels[], changelog[], playbooks[], index.json, status.json, and updates.json. Every changelog row has sources[] with a URL. Confidence high is official changelog/announcement mapping; medium needs a human look. Return the answer contract from llms.txt."
        },
        {
          "title": "Route by task",
          "detail": "Pick the playbook whose `when` matches. Grok Bot itself is an always-on teammate with its own cloud computer and connectors — including tools with no clean API or MCP — not a substitute for this catalog.",
          "product_id": "grok-bot",
          "feature_id": "grok-bot-computer",
          "url": "https://docs.x.ai/grok-bot/overview"
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/news/introducing-grok-bot",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Introducing Grok Bot"
        },
        {
          "url": "https://docs.x.ai/grok-bot/overview",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Bot overview"
        }
      ],
      "confidence": "high",
      "tags": [
        "agents",
        "always-on",
        "computer-use"
      ]
    },
    {
      "id": "grok-bot-watch-catalog",
      "title": "Grok Bot routine: watch X Stack and brief on changes",
      "summary": "Grok Bot can save a workflow as a routine, message like a colleague, and only pull you in for approvals. Use that to poll X Stack: compare generated_at, read updates.json, brief new changelog ids, and escalate medium-confidence rows.",
      "when": "The user wants a Grok Bot to keep watching the catalog and message them when something changes — not a one-shot fetch.",
      "products": [
        "grok-bot"
      ],
      "features": [
        "grok-bot-routines",
        "grok-bot-messaging",
        "grok-bot-approvals",
        "grok-bot-always-on"
      ],
      "steps": [
        {
          "title": "Remember the last generated_at",
          "detail": "Store the last seen generated_at from https://x-stacks.vercel.app/index.json (or catalog.json). That field is the scrape clock. Ignore published_at moving alone. Do not scrape vendor HTML for this loop.",
          "url": "https://x-stacks.vercel.app/index.json"
        },
        {
          "title": "Poll on a routine",
          "detail": "Grok Bot can follow a job, save the workflow as a routine, and run it on its own after the client is closed. On each run, GET index.json and status.json. If last_run_failed, say the scrape failed or is overdue. If generated_at is unchanged, stop (a UI or flatten publish is not news). If it changed, continue.",
          "product_id": "grok-bot",
          "feature_id": "grok-bot-routines",
          "url": "https://docs.x.ai/grok-bot/overview"
        },
        {
          "title": "Read the delta, not the whole catalog",
          "detail": "GET https://x-stacks.vercel.app/watch.json and pick the user's subscribe slices (imagine, bot, build-alpha, voice, cursor, x-api). Then GET updates.json or /updates/{filter}.json. Each row has breaking, can (the verb, e.g. alpha pointer is 1.0.8), and url. changelog.json has the same fields on every historical row. count 0 means this scrape added no changelog rows — say that; do not invent news. Do not treat the grok.me homepage “this week” HTML as the feed.",
          "url": "https://x-stacks.vercel.app/watch.json"
        },
        {
          "title": "Check scrape health and product freshness",
          "detail": "GET status.json and index.json. If last_run_failed, or now is after last_run_fresh_until, cite last_run_error and say overdue. If a source is 403/skipped, or a product has freshness=stale (403 keep-prior is stale, not freshly scraped), say that. Do not fetch x.ai/news or x.ai/build until a docs/RSS URL returns 200. Grok Build versions come from x.ai/cli/*.",
          "url": "https://x-stacks.vercel.app/status.json"
        },
        {
          "title": "Message a short briefing; approve only medium/low",
          "detail": "Message like a colleague with the answer contract (playbook_id, product_ids, answer, sources, confidence, missing). High-confidence rows can be a briefing. Medium or low rows: pull the human in for a judgment call (approvals). Do not treat Ads video_total_views as an Activity API feature.",
          "product_id": "grok-bot",
          "feature_id": "grok-bot-approvals",
          "url": "https://x.ai/news/introducing-grok-bot"
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/news/introducing-grok-bot",
          "fetched_at": "2026-08-21T02:44:27+00:00",
          "title": "Introducing Grok Bot"
        },
        {
          "url": "https://docs.x.ai/grok-bot/overview",
          "fetched_at": "2026-08-21T02:44:27+00:00",
          "title": "Grok Bot overview"
        }
      ],
      "confidence": "medium",
      "tags": [
        "agents",
        "always-on",
        "automation"
      ]
    },
    {
      "id": "always-on-route",
      "title": "Always-on: Grok Bot vs Cursor Cloud Agents",
      "summary": "Both products are always-on agents. The catalog records different jobs: Grok Bot is a teammate with its own cloud computer and connectors (including apps with no clean API or MCP). Cursor Cloud Agents run in Cursor's harness — PR/Slack/schedule subscriptions, /goal, isolated-VM subagents, and Origin repos.",
      "when": "The user wants something that keeps working after they close the laptop, and you must choose Grok Bot, Cursor Cloud Agents, or say both apply to different parts of the job.",
      "products": [
        "grok-bot",
        "cursor-cloud-agents"
      ],
      "features": [
        "grok-bot-computer",
        "grok-bot-always-on",
        "grok-bot-connectors",
        "grok-bot-routines",
        "grok-bot-approvals",
        "cursor-ca-subscriptions",
        "cursor-ca-goal",
        "cursor-ca-subagents",
        "cursor-ca-builds"
      ],
      "steps": [
        {
          "title": "Choose Grok Bot when the work is a teammate on a cloud computer",
          "detail": "Grok Bot (early beta): each bot has a cloud computer, can sign into apps and websites including tools with no clean API or MCP, messages like a colleague, saves routines, and only pulls you in for approvals. Availability recorded as desktop and iOS for SuperGrok Heavy, Cursor Ultra, and Cursor Teams Premium.",
          "product_id": "grok-bot",
          "feature_id": "grok-bot-connectors",
          "url": "https://x.ai/news/introducing-grok-bot"
        },
        {
          "title": "Choose Cursor Cloud Agents when the work is repo/event-driven in Cursor",
          "detail": "Cloud Agents subscribe to PRs, a Slack thread, or a schedule; hold a /goal until it is met (pair with /loop); spawn subagents on isolated VMs; accept steering without interrupting the current turn. Builds pre-warm the environment.",
          "product_id": "cursor-cloud-agents",
          "feature_id": "cursor-ca-subscriptions",
          "url": "https://cursor.com/changelog/08-19-26"
        },
        {
          "title": "Do not collapse the two products",
          "detail": "The catalog does not describe Grok Bot and Cursor Cloud Agents as one system. If the job needs both a signed-in cloud computer and PR/Slack subscriptions, say so and keep the product_ids separate."
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/news/introducing-grok-bot",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Introducing Grok Bot"
        },
        {
          "url": "https://docs.x.ai/grok-bot/overview",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Bot overview"
        },
        {
          "url": "https://cursor.com/changelog/08-19-26",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Cloud Agents and Cursor Harness Improvements"
        }
      ],
      "confidence": "medium",
      "tags": [
        "agents",
        "always-on",
        "computer-use"
      ]
    },
    {
      "id": "long-running-code",
      "title": "Long-running code work on Grok 4.6",
      "summary": "Grok 4.6 is documented for staying with multi-step research, analysis, and codebase work, with self-testing on longer trajectories. The catalog records it in Grok Build, Cursor, and the xAI API the same day it shipped.",
      "when": "The user wants a long coding or product-building trajectory — plan, edit, test — using Grok 4.6 rather than a different model.",
      "products": [
        "grok-4-6",
        "grok-build",
        "cursor-desktop",
        "grok-api"
      ],
      "features": [
        "grok-4-6-long-running-agents",
        "grok-4-6-self-testing",
        "grok-4-6-visual-interactive",
        "grok-4-6-availability",
        "grok-build-plan-mode",
        "grok-build-subagents",
        "cursor-desktop-grok-4-6"
      ],
      "steps": [
        {
          "title": "Use Grok 4.6 for long trajectories",
          "detail": "Documented focus: stay with complex tasks across many steps — research, analysis, codebase work, and turning an idea into a polished application. 500k context, text and image in, text-only out, no text output limit. On longer trajectories it checks its own work before moving on.",
          "product_id": "grok-4-6",
          "feature_id": "grok-4-6-long-running-agents",
          "url": "https://x.ai/news/grok-4-6"
        },
        {
          "title": "Grok Build for plan-then-build in the SpaceXAI coding agent",
          "detail": "Grok Build is powered by Grok 4.6. Plan mode blocks edits until the plan is approved. Subagents run in parallel with their own context windows and worktrees. Skills, hooks, MCP, and AGENTS.md adapt it to a repo.",
          "product_id": "grok-build",
          "feature_id": "grok-build-plan-mode",
          "url": "https://docs.x.ai/build/overview"
        },
        {
          "title": "Cursor desktop/CLI as the local control plane",
          "detail": "Grok 4.6 is available in Cursor (recorded 2026-08-12). Cursor desktop/CLI is documented as the local control plane for Cloud Agents, Origin, and Grok 4.6.",
          "product_id": "cursor-desktop",
          "feature_id": "cursor-desktop-grok-4-6",
          "url": "https://x.ai/news/grok-4-6"
        },
        {
          "title": "API when you need the model without those agents",
          "detail": "Same flagship via the xAI API / console.x.ai: 500k context, reasoning effort low/medium/high/xhigh. See playbook grok-4-6-surfaces for partner hosts.",
          "product_id": "grok-api",
          "feature_id": "grok-api-models",
          "url": "https://docs.x.ai/developers/grok-4-6"
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/news/grok-4-6",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Introducing Grok 4.6"
        },
        {
          "url": "https://docs.x.ai/developers/grok-4-6",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok 4.6 docs"
        },
        {
          "url": "https://docs.x.ai/build/overview",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Build overview"
        }
      ],
      "confidence": "high",
      "tags": [
        "coding",
        "agents",
        "model"
      ]
    },
    {
      "id": "install-grok-build-channels",
      "title": "Install Grok Build (stable / alpha / enterprise)",
      "summary": "Grok Build ships three installer channels via GROK_CHANNEL. Read live versions from Product.channels on grok-build (or the x.ai/cli pointer pages). Do not invent a version number.",
      "when": "The user wants to install or switch Grok Build channels.",
      "products": [
        "grok-build"
      ],
      "features": [
        "grok-build-channels"
      ],
      "steps": [
        {
          "title": "Read the live channel versions from the catalog",
          "detail": "Open products[id=grok-build].channels[]. Each row has id, version, updated, install, notes. Official pointers are plain version strings at https://x.ai/cli/stable, https://x.ai/cli/alpha, and https://x.ai/cli/enterprise.",
          "product_id": "grok-build",
          "feature_id": "grok-build-channels",
          "url": "https://x.ai/cli/stable"
        },
        {
          "title": "Stable (default)",
          "detail": "curl -fsSL https://x.ai/cli/install.sh | bash",
          "product_id": "grok-build",
          "url": "https://x.ai/cli/stable"
        },
        {
          "title": "Alpha",
          "detail": "curl -fsSL https://x.ai/cli/install.sh | GROK_CHANNEL=alpha bash. Persist in ~/.grok/config.toml under [cli] channel. The welcome screen shows the active channel.",
          "product_id": "grok-build",
          "url": "https://x.ai/cli/alpha"
        },
        {
          "title": "Enterprise",
          "detail": "curl -fsSL https://x.ai/cli/install.sh | GROK_CHANNEL=enterprise bash",
          "product_id": "grok-build",
          "url": "https://x.ai/cli/enterprise"
        },
        {
          "title": "Do not invent versions",
          "detail": "If the catalog and the pointer page disagree, cite both and prefer the pointer body. Feature notes for a new pointer may not have landed on https://x.ai/build/changelog yet."
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/cli/stable",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Build stable pointer"
        },
        {
          "url": "https://x.ai/cli/alpha",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Build alpha pointer"
        },
        {
          "url": "https://x.ai/cli/enterprise",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Build enterprise pointer"
        },
        {
          "url": "https://x.ai/build/changelog",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok Build changelog"
        }
      ],
      "confidence": "high",
      "tags": [
        "cli",
        "alpha",
        "coding"
      ]
    },
    {
      "id": "cursor-desktop-tracks",
      "title": "Cursor desktop: Latest vs Early Access vs Nightly",
      "summary": "cursor.com/download is Latest (stable) only. Early Access and Nightly are in-app: Settings → Beta → Update Access. The catalog must not invent a nightly version number; keep version as pre-release / nightly and put the fact in notes.",
      "when": "The user asks which Cursor desktop build to run, or how to get a pre-release.",
      "products": [
        "cursor-desktop"
      ],
      "features": [
        "cursor-desktop-prerelease"
      ],
      "steps": [
        {
          "title": "Latest (stable)",
          "detail": "https://cursor.com/download — macOS, Windows, and Linux. Read the live version from products[id=cursor-desktop].channels[id=stable]. Feature write-ups on the changelog are per minor, not per patch build.",
          "product_id": "cursor-desktop",
          "url": "https://cursor.com/download"
        },
        {
          "title": "Early Access",
          "detail": "Settings → Beta → Update Access. Desktop minors often land on Early Access before the default track. Channel version in the catalog is \"pre-release\" when no public pointer exists.",
          "product_id": "cursor-desktop",
          "feature_id": "cursor-desktop-prerelease"
        },
        {
          "title": "Nightly",
          "detail": "Settings → Beta → Update Access → Nightly. Cursor does not publish a separate nightly changelog or public version pointer. Do not invent a nightly number.",
          "product_id": "cursor-desktop",
          "feature_id": "cursor-desktop-prerelease"
        }
      ],
      "sources": [
        {
          "url": "https://cursor.com/download",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Cursor download"
        },
        {
          "url": "https://cursor.com/changelog",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Cursor changelog"
        }
      ],
      "confidence": "high",
      "tags": [
        "ide",
        "alpha"
      ]
    },
    {
      "id": "origin-plus-cloud-agents",
      "title": "Origin repos with Cursor Cloud Agents",
      "summary": "Cursor desktop/CLI is documented as the local control plane for Cloud Agents and Origin. Origin hosts repos (early beta, paid plans) and records that agents can query code, change files, update PRs, and push branches. Cloud Agents subscribe to PRs, hold a /goal, and boot faster from Builds.",
      "when": "The user wants hosted Cursor repos plus always-on agents that wake on PRs or a goal — not a Grok Bot cloud-computer teammate.",
      "products": [
        "cursor-origin",
        "cursor-cloud-agents",
        "cursor-desktop"
      ],
      "features": [
        "cursor-origin-repos",
        "cursor-origin-agents",
        "cursor-origin-prs",
        "cursor-origin-github",
        "cursor-ca-subscriptions",
        "cursor-ca-goal",
        "cursor-ca-builds",
        "cursor-desktop-cli"
      ],
      "steps": [
        {
          "title": "Host the repo on Origin",
          "detail": "Create and host from the Codebase tab. URL form cursor.com/codebase/{name}. Clone and push with the CLI. GitHub sync is bidirectional and can be disconnected. Early beta on paid plans.",
          "product_id": "cursor-origin",
          "feature_id": "cursor-origin-repos",
          "url": "https://cursor.com/changelog/origin-code-hosting"
        },
        {
          "title": "Agents on hosted repos",
          "detail": "Origin records that agents can query code, make changes, update PRs, and push branches from every hosted repo. App extensions include Vercel PR previews and Depot/Buildkite CI.",
          "product_id": "cursor-origin",
          "feature_id": "cursor-origin-agents",
          "url": "https://cursor.com/changelog/origin-code-hosting"
        },
        {
          "title": "Cloud Agents for events and goals",
          "detail": "Subscribe to PRs (agents can auto-subscribe to PRs they create), watch a Slack thread, or run a schedule. Assign /goal for a long-lived objective; pair with /loop. Builds are included with Cloud Agents.",
          "product_id": "cursor-cloud-agents",
          "feature_id": "cursor-ca-goal",
          "url": "https://cursor.com/changelog/08-19-26"
        },
        {
          "title": "Drive it from desktop or CLI",
          "detail": "Cursor IDE/CLI clones and pushes Origin repos and drives agents. That is the documented local control plane — not a second hosting product.",
          "product_id": "cursor-desktop",
          "feature_id": "cursor-desktop-cli",
          "url": "https://cursor.com/download"
        }
      ],
      "sources": [
        {
          "url": "https://cursor.com/changelog/origin-code-hosting",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Origin Code Hosting"
        },
        {
          "url": "https://cursor.com/changelog/08-19-26",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Cloud Agents and Cursor Harness Improvements"
        },
        {
          "url": "https://cursor.com/changelog/08-13-26",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Cloud Agents Start 3x Faster with Builds"
        }
      ],
      "confidence": "high",
      "tags": [
        "git",
        "agents",
        "always-on"
      ]
    },
    {
      "id": "x-activity-api",
      "title": "X Activity API: mute/block and post events",
      "summary": "X API v2 is pay-per-usage. The X Activity API delivers realtime user-activity webhooks (successor path from the legacy Account Activity API). Documented event additions include mute/block (2026-07-21) and post create/delete (2026-06-04). Inbound webhook events are billed per delivery with 24-hour UTC dedup.",
      "when": "The user wants realtime X user-activity webhooks — mutes, blocks, or post create/delete — not Ads analytics metrics.",
      "products": [
        "x-api"
      ],
      "features": [
        "x-api-activity",
        "x-api-mute-block",
        "x-api-webhooks-billing",
        "x-api-ppu"
      ],
      "steps": [
        {
          "title": "Start at Activity API + pricing",
          "detail": "Docs: https://docs.x.com/x-api/activity/introduction. Pricing is pay-per-usage credits (no subscription SKUs). Owned reads vs public lookup are priced separately.",
          "product_id": "x-api",
          "feature_id": "x-api-activity",
          "url": "https://docs.x.com/x-api/activity/introduction"
        },
        {
          "title": "Mute and block events",
          "detail": "mute.mute / mute.unmute / block.block / block.unblock. Private events; OAuth 2.0 user-context with mute.read or block.read. Subscribe by user id.",
          "product_id": "x-api",
          "feature_id": "x-api-mute-block",
          "url": "https://docs.x.com/changelog"
        },
        {
          "title": "Post create and delete",
          "detail": "post.create and post.delete on the Activity API. For keyword filtering, the changelog says continue to use Filtered Stream.",
          "product_id": "x-api",
          "url": "https://docs.x.com/changelog"
        },
        {
          "title": "Billing and filters already in the catalog",
          "detail": "Inbound Activity API events cost per delivery, same 24h UTC dedup window; many outbound actions do not. Optional direction filter on subscriptions is recorded (2026-03-18). Do not treat Ads API Analytics metrics (including video_total_views) as Activity API features.",
          "product_id": "x-api",
          "feature_id": "x-api-webhooks-billing"
        }
      ],
      "sources": [
        {
          "url": "https://docs.x.com/x-api/activity/introduction",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "X Activity API introduction"
        },
        {
          "url": "https://docs.x.com/changelog",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "X API changelog"
        },
        {
          "url": "https://docs.x.com/x-api/getting-started/pricing",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "X API pricing"
        }
      ],
      "confidence": "high",
      "tags": [
        "api",
        "activity"
      ]
    },
    {
      "id": "imagine-voice-api",
      "title": "Imagine + Voice on the xAI API",
      "summary": "The xAI API and console.x.ai expose Grok models, Imagine, and Voice on one API. Imagine covers Image 2.0 and Video 1.5 (generate and edit). Voice covers speech-to-speech, TTS, and STT (Voice Think Fast 2.0).",
      "when": "The user wants image/video generation or realtime voice through the xAI API rather than only grok.com UI surfaces.",
      "products": [
        "grok-imagine",
        "grok-voice",
        "grok-api"
      ],
      "features": [
        "grok-imagine-image-2",
        "grok-imagine-video-1-5",
        "grok-imagine-api",
        "grok-voice-s2s",
        "grok-voice-tts",
        "grok-voice-stt",
        "grok-voice-think-fast-2",
        "grok-api-media-voice",
        "grok-api-console"
      ],
      "steps": [
        {
          "title": "One API / console",
          "detail": "Keys, playground, usage: https://console.x.ai. Media and voice are recorded as the same API as flagship text models.",
          "product_id": "grok-api",
          "feature_id": "grok-api-media-voice",
          "url": "https://console.x.ai"
        },
        {
          "title": "Imagine images and video",
          "detail": "Image 2.0 Quality Mode on grok.com/imagine and apps; API id grok-imagine-image-2.0. Video 1.5: text-to-video, image-to-video, reference-to-video; native 1080p for T2V/I2V. Editing: magic wand, segmentation, background removal, up to 5 reference images. Image input billed separately from output.",
          "product_id": "grok-imagine",
          "feature_id": "grok-imagine-api",
          "url": "https://docs.x.ai/developers/model-capabilities/imagine"
        },
        {
          "title": "Voice realtime, TTS, STT",
          "detail": "Speech-to-speech starts at $0.05 / min; TTS is $15.00 / 1M characters; STT has adjustable vad_threshold (0 disables the gate). Current Voice Think Fast generation recorded as 2.0 (2026-07-29).",
          "product_id": "grok-voice",
          "feature_id": "grok-voice-s2s",
          "url": "https://docs.x.ai/developers/model-capabilities"
        }
      ],
      "sources": [
        {
          "url": "https://docs.x.ai/developers/model-capabilities/imagine",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Imagine API docs"
        },
        {
          "url": "https://x.ai/news/grok-imagine-image-2",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Imagine Image 2.0"
        },
        {
          "url": "https://docs.x.ai/developers/model-capabilities",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "xAI model capabilities"
        },
        {
          "url": "https://docs.x.ai/developers/release-notes",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "xAI API release notes"
        }
      ],
      "confidence": "high",
      "tags": [
        "api",
        "media",
        "voice"
      ]
    },
    {
      "id": "grok-4-6-surfaces",
      "title": "Grok 4.6 via API, console, and partners",
      "summary": "The catalog records Grok 4.6 in Cursor, Grok Build, the xAI API, and partners: OpenRouter, Vercel, Cloudflare, Amazon Bedrock, and GitHub Copilot. Use this when the question is where the model runs, not how to operate Grok Build or Cursor agents.",
      "when": "The user asks where to call Grok 4.6, how it is priced on the xAI API, or which partner hosts are documented.",
      "products": [
        "grok-4-6",
        "grok-api"
      ],
      "features": [
        "grok-4-6-availability",
        "grok-4-6-pricing",
        "grok-4-6-reasoning-effort",
        "grok-4-6-context",
        "grok-api-models",
        "grok-api-console",
        "grok-api-partners"
      ],
      "steps": [
        {
          "title": "First-party API and console",
          "detail": "https://console.x.ai for keys and playground. Docs: https://docs.x.ai/developers/grok-4-6 and release notes. 500k context; reasoning low / medium / high (default) / xhigh.",
          "product_id": "grok-api",
          "feature_id": "grok-api-console",
          "url": "https://console.x.ai"
        },
        {
          "title": "Documented API pricing",
          "detail": "$2 / $0.50 / $6 per 1M tokens (input / cached / output) below 200k prompt tokens; $4 / $1 / $12 above. Fast variant is twice the price. Confirm on the official docs if you need current numbers.",
          "product_id": "grok-4-6",
          "feature_id": "grok-4-6-pricing",
          "url": "https://docs.x.ai/developers/release-notes"
        },
        {
          "title": "Documented hosts",
          "detail": "Cursor, Grok Build, xAI API, OpenRouter, Vercel, Cloudflare, Amazon Bedrock, GitHub Copilot. Availability changelog rows exist for Bedrock (2026-08-19) and GitHub Copilot (2026-08-14).",
          "product_id": "grok-4-6",
          "feature_id": "grok-4-6-availability",
          "url": "https://x.ai/news/grok-4-6"
        }
      ],
      "sources": [
        {
          "url": "https://x.ai/news/grok-4-6",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Introducing Grok 4.6"
        },
        {
          "url": "https://docs.x.ai/developers/grok-4-6",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "Grok 4.6 docs"
        },
        {
          "url": "https://docs.x.ai/developers/release-notes",
          "fetched_at": "2026-08-21T02:30:00+00:00",
          "title": "xAI API release notes"
        }
      ],
      "confidence": "high",
      "tags": [
        "api",
        "model",
        "availability"
      ]
    }
  ]
}
