{
  "surfaceId": "agent-target-packet",
  "schemaVersion": "shopflow.agent-target-packet.v1",
  "readOnly": true,
  "target": "codex",
  "placement": "front-door-primary",
  "currentEntryState": "repo-local-quickstart",
  "quickstartPath": "docs/ecosystem/codex-quickstart.md",
  "primaryCommand": "pnpm cli:read-only -- agent-target-packet --target codex",
  "recommendedCommands": [
    "pnpm cli:read-only -- integration-surface",
    "pnpm cli:read-only -- outcome-bundle --app ext-kroger",
    "pnpm cli:read-only -- runtime-consumer --base-url http://127.0.0.1:4317",
    "pnpm cli:read-only -- plugin-marketplace-metadata --target codex --output .runtime-cache/cli/plugin-marketplace-metadata.codex.json",
    "pnpm cli:read-only -- public-distribution-bundle"
  ],
  "repoOwnedArtifacts": [
    "docs/ecosystem/codex-quickstart.md",
    "docs/ecosystem/agent-quickstarts.md",
    "docs/ecosystem/public-distribution-bundle.md",
    "docs/ecosystem/examples/agent-target-packet.codex.json",
    "docs/ecosystem/examples/plugin-marketplace-metadata.codex.json"
  ],
  "capabilities": [
    {
      "id": "integration-surface",
      "label": "Builder integration surface",
      "state": "repo-local-read-only",
      "sourceCommand": "pnpm mcp:stdio -> get_integration_surface",
      "sourceDocs": [
        "docs/ecosystem/mcp-quickstart.md",
        "docs/ecosystem/builder-start-here.md",
        "docs/ecosystem/integration-recipes.md"
      ],
      "targetFit": [
        "codex",
        "claude-code",
        "opencode",
        "openhands",
        "openclaw"
      ],
      "summary": "Gives coding agents one machine-readable map of today/current-scope/later/no-go/owner-decision."
    },
    {
      "id": "runtime-seam",
      "label": "Provider runtime seam",
      "state": "repo-local-read-only",
      "sourceCommand": "pnpm mcp:stdio -> get_runtime_seam",
      "sourceDocs": [
        "docs/ecosystem/mcp-quickstart.md",
        "docs/adr/ADR-004-switchyard-provider-runtime-seam.md",
        "docs/ecosystem/integration-recipes.md"
      ],
      "targetFit": [
        "codex",
        "claude-code",
        "opencode",
        "openhands",
        "openclaw"
      ],
      "summary": "Makes the Shopflow-vs-runtime boundary explicit without turning the repo into a public runtime product."
    },
    {
      "id": "submission-readiness",
      "label": "Submission readiness report",
      "state": "repo-local-read-only",
      "sourceCommand": "pnpm mcp:stdio -> get_submission_readiness",
      "sourceDocs": [
        "docs/ecosystem/mcp-quickstart.md",
        "docs/ecosystem/claude-code-quickstart.md",
        "docs/runbooks/release-artifact-review.md"
      ],
      "targetFit": [
        "codex",
        "claude-code",
        "opencode",
        "openhands",
        "openclaw"
      ],
      "summary": "Surfaces what still blocks release or submission without pretending those external steps are already done."
    },
    {
      "id": "public-distribution-bundle",
      "label": "Public distribution bundle",
      "state": "repo-local-read-only",
      "sourceCommand": "pnpm mcp:stdio -> get_public_distribution_bundle",
      "sourceDocs": [
        "docs/ecosystem/mcp-quickstart.md",
        "docs/ecosystem/public-distribution-bundle.md"
      ],
      "targetFit": [
        "codex",
        "claude-code",
        "opencode",
        "openhands",
        "openclaw"
      ],
      "summary": "Surfaces the current read-only distribution bundle without pretending that public transport or external listing already happened."
    }
  ],
  "skills": [
    {
      "id": "shopflow-read-only-runtime-seam-consumption",
      "label": "Shopflow read-only runtime seam consumption",
      "sourcePath": ".agents/skills/shopflow-read-only-runtime-seam-consumption/SKILL.md",
      "distributionState": "repo-local-skill-scaffold",
      "targetFit": [
        "codex",
        "claude-code"
      ],
      "summary": "Keeps Switchyard seam consumption honest: read-only, repo-local, and separate from merchant live proof while serving as a starter-bundle companion for Codex and Claude Code.",
      "mustNotClaim": [
        "Public skill already distributed"
      ]
    },
    {
      "id": "shopflow-live-browser-ops",
      "label": "Shopflow live browser ops",
      "sourcePath": ".agents/skills/shopflow-live-browser-ops/SKILL.md",
      "distributionState": "repo-local-skill-scaffold",
      "targetFit": [
        "claude-code",
        "codex"
      ],
      "summary": "Encodes the browser/profile ownership rules, login-attempt ceiling, and focus-safe live helper order for operator lanes, which makes the Claude Code starter bundle more plug-and-play without claiming a public skills pack.",
      "mustNotClaim": [
        "Public live-browser skill already distributed"
      ]
    },
    {
      "id": "shopflow-builder-facing-discoverability-and-ready-sync",
      "label": "Shopflow builder-facing discoverability and ready-sync",
      "sourcePath": ".agents/skills/shopflow-builder-facing-discoverability-and-ready-sync/SKILL.md",
      "distributionState": "repo-local-skill-scaffold",
      "targetFit": [
        "codex",
        "claude-code",
        "openclaw"
      ],
      "summary": "Keeps agent-facing front doors, starter bundles, and ready-to-sync copy truthful instead of overclaiming public distribution.",
      "mustNotClaim": [
        "Public discoverability skill pack already shipped"
      ]
    }
  ],
  "pluginMetadata": {
    "target": "codex",
    "placement": "front-door-primary",
    "packagingState": "plugin-level-public-distribution-bundle",
    "suggestedSlug": "shopflow-read-only-builder-packet",
    "title": "Shopflow Read-only Builder Packet",
    "summary": "Plugin-level public distribution bundle for Codex with starter bundle, sample config, install docs, proof loop, and listing payload.",
    "boundaryNote": "Starter bundle and listing payload are repo-owned today. Official Codex docs and product surfaces exist, but this repo does not prove any Codex-owned listing surface or Shopflow publication there. Do not claim an official Codex plugin, official listing, or marketplace package until a real publication path is confirmed and used.",
    "screenshotSources": [
      "README.md",
      "docs/ecosystem/codex-quickstart.md",
      "docs/ecosystem/builder-start-here.md"
    ],
    "capabilityRefs": [
      "integration-surface",
      "runtime-consumer",
      "outcome-bundle",
      "submission-readiness"
    ],
    "skillsRefs": [
      "shopflow-read-only-runtime-seam-consumption",
      "shopflow-builder-facing-discoverability-and-ready-sync"
    ],
    "distributionBundle": {
      "truthfulSurfaceStatus": "plugin-level-public-distribution-bundle",
      "officialSurfaceStatus": "official-surface-confirmed-auth-required",
      "starterBundlePaths": [
        "docs/ecosystem/codex-quickstart.md",
        "docs/ecosystem/agent-quickstarts.md",
        "docs/ecosystem/examples/agent-target-packet.codex.json",
        "docs/ecosystem/examples/plugin-marketplace-metadata.codex.json"
      ],
      "sampleConfigPaths": [
        "docs/ecosystem/examples/agent-target-packet.codex.json",
        "docs/ecosystem/examples/plugin-marketplace-metadata.codex.json"
      ],
      "installDocs": [
        "docs/ecosystem/codex-quickstart.md",
        "docs/ecosystem/agent-quickstarts.md",
        "docs/ecosystem/agent-distribution-artifacts.md"
      ],
      "proofLoopCommands": [
        "pnpm cli:read-only -- agent-target-packet --target codex",
        "pnpm cli:read-only -- plugin-marketplace-metadata --target codex --output .runtime-cache/cli/plugin-marketplace-metadata.codex.json",
        "pnpm cli:read-only -- public-distribution-bundle"
      ],
      "listingPayloadPaths": [
        "docs/ecosystem/examples/plugin-marketplace-metadata.codex.json"
      ]
    },
    "mustNotClaim": [
      "Published Codex plugin",
      "Official Codex marketplace package",
      "Official Codex listing"
    ]
  },
  "summary": "Codex now has a plugin-level public distribution bundle with a starter packet, sample config, install docs, proof loop, and listing payload while still avoiding any official-listing claim.",
  "boundaryNote": "This bundle turns agent-specific onboarding, MCP capability prep, skills scaffolds, starter bundles, sample configs, proof loops, and plugin metadata into one repo-owned packet. It does not prove any official integration, official listing, published plugin, or distributed skills pack already exists.",
  "mustNotClaim": [
    "Official Codex integration",
    "Published Codex plugin",
    "Official Codex listing",
    "Public MCP already shipped for Codex"
  ],
  "nextHumanStep": "Use the bundle as the strongest truthful public distribution surface today, and only move to a Codex-owned publication flow after a real listing surface and auth path are explicitly available to Shopflow."
}
