{
  "version": "2",
  "generatedAt": "2026-11-03T22:49:39.280Z",
  "listing": {
    "slug": "spree--spree",
    "name": "Spree Commerce",
    "tagline": "Rails commerce platform whose official CLI calls the Admin API directly, built for scripts and agents.",
    "shortTagline": "Rails commerce platform",
    "description": "Open-source headless e-commerce platform in Ruby on Rails with an admin dashboard, REST Admin and Store APIs with OpenAPI spec, a TypeScript SDK, and a Next.js storefront. The Builder ships @spree/cli, whose spree api get/post/patch/delete commands drive the Admin API with zero-config local credentials, plus 25 agent skills and a docs MCP. BSD-3-Clause; Enterprise is paid.",
    "capabilities": [
      "adaptable",
      "operable"
    ],
    "vertical": "ecommerce",
    "alternativeTo": [
      "Shopify",
      "Adobe Commerce"
    ],
    "shape": "business-app",
    "formFactor": "web-app",
    "executionModel": "deterministic",
    "provenance": "human-written",
    "codeStack": {
      "languages": [
        "Ruby",
        "TypeScript"
      ],
      "frameworks": [
        "Ruby on Rails",
        "Next.js 16"
      ],
      "packageManager": "bundler",
      "database": [
        "PostgreSQL"
      ],
      "hostingTarget": [
        "Docker",
        "Spree Cloud sandbox"
      ]
    },
    "modelStack": null,
    "repos": [
      {
        "url": "https://github.com/spree/spree",
        "owner": "spree",
        "name": "spree",
        "license": "BSD-3-Clause",
        "stars": 15661,
        "lastCommit": "2026-09-02"
      },
      {
        "url": "https://github.com/spree/agent-skills",
        "owner": "spree",
        "name": "agent-skills",
        "license": "MIT",
        "stars": 4,
        "lastCommit": "2026-07-06"
      }
    ],
    "interface": {
      "kind": "cli",
      "url": "https://spreecommerce.org/docs/developer/cli/admin-api",
      "official": true,
      "hosted": "both"
    },
    "operability": "official",
    "recommendedWrapper": null,
    "reach": [
      {
        "job": "Manage products, variants, prices",
        "reachable": true,
        "evidence": "README: spree api post /products example; Admin API"
      },
      {
        "job": "Manage orders",
        "reachable": true,
        "evidence": "README: spree api get /orders -q status_eq=complete"
      },
      {
        "job": "Customers, companies, customer groups",
        "reachable": true,
        "evidence": "Admin API resources; spree api endpoints lists routes and scopes"
      },
      {
        "job": "Promotions and gift cards",
        "reachable": true,
        "evidence": "Admin API; feature list names promotions engine"
      },
      {
        "job": "Markets, price lists, sales channels",
        "reachable": true,
        "evidence": "Admin API resources per feature list"
      },
      {
        "job": "Storefront shopping and checkout",
        "reachable": true,
        "evidence": "Store API with publishable keys; TypeScript SDK"
      },
      {
        "job": "Generate new API resources and run migrations",
        "reachable": true,
        "evidence": "spree generate api_resource, spree dev"
      },
      {
        "job": "Read the docs",
        "reachable": true,
        "evidence": "docs MCP at spreecommerce.org/docs/mcp (search and read only)"
      },
      {
        "job": "Enterprise-only features",
        "reachable": false,
        "evidence": "paid Enterprise edition"
      }
    ],
    "editions": [
      {
        "name": "Open source",
        "price": null,
        "open": true,
        "distributions": [
          {
            "kind": "source",
            "url": "https://github.com/spree/spree",
            "command": "npx create-spree-app@latest my-store"
          },
          {
            "kind": "hosted",
            "url": "https://console.spree.sh",
            "command": ""
          }
        ]
      },
      {
        "name": "Enterprise",
        "price": null,
        "open": false,
        "distributions": [
          {
            "kind": "hosted",
            "url": "https://spreecommerce.org",
            "command": ""
          }
        ]
      }
    ],
    "skills": {
      "kind": "bundled",
      "paths": [
        "skills/*/SKILL.md"
      ],
      "install": "/plugin marketplace add spree/agent-skills",
      "note": "Spree publishes an agent-skills plugin covering the admin, API, checkout, catalog and customization surface; the core repo separately carries contributor-only design skills."
    },
    "customization": {
      "summary": "create-spree-app scaffolds a Rails project you own (backend, admin, Next.js storefront). Store settings, markets, channels, and themes are managed in the admin. The CLI reads SPREE_API_KEY and SPREE_BASE_URL, keeps profiles in ~/.config/spree/config.json and project keys in .spree/credentials.json. Custom resources and storefront changes are small edits in generated files, guided by the Builder's agent skills.",
      "envVars": [
        "SPREE_API_KEY",
        "SPREE_BASE_URL"
      ],
      "configFiles": [
        "config/initializers/spree.rb",
        ".spree/credentials.json",
        "~/.config/spree/config.json"
      ],
      "promptFiles": [
        "agent skills from spree/agent-skills (npx skills add spree/agent-skills)"
      ],
      "effort": "light-edit",
      "editCount": 6
    },
    "useWhen": [
      "I want a Rails store for cross-border or B2B selling that my coding agent can extend using the Builder's own skills",
      "my agent should query and update the store from the terminal with one API key"
    ],
    "accounts": [
      "Spree Cloud sandbox (optional)",
      "Stripe (storefront payments)"
    ],
    "active": true,
    "lastActivity": "2026-09-02",
    "gotchas": [
      "The MCP the Builder publishes is docs-only (search and read); store operations go through the CLI or REST",
      "Auto-minted local keys are read_all only; write scopes need an explicit key",
      "Needs Node 22+ and Docker for the quickstart"
    ],
    "fit": {
      "adaptable": 3,
      "operable": 3
    },
    "evidence": {
      "formFactor": "README: Rails backend with admin dashboard and Next.js storefront",
      "executionModel": "no model at runtime",
      "operability": "packages/cli in the spree repo; docs at spreecommerce.org describe spree api commands 'built for scripts and AI agents'",
      "effort": "CLI docs name SPREE_API_KEY and SPREE_BASE_URL and config paths; generators documented",
      "editions": "README: everything in the repo is BSD-3; Enterprise exists per triage",
      "active": "pushedAt 2026-09-02"
    },
    "confidence": {
      "formFactor": 0.95,
      "executionModel": 0.95,
      "operability": 0.9,
      "effort": 0.75,
      "reach": 0.85,
      "editions": 0.6
    },
    "openQuestions": [
      "Enterprise pricing and feature split",
      "Rails-side env var names (DATABASE_URL, SECRET_KEY_BASE) in the generated project"
    ],
    "sources": [
      {
        "url": "https://github.com/spree/spree",
        "foundBy": "sourcing:ecommerce:github"
      },
      {
        "url": "https://spreecommerce.org/docs/developer/agentic/mcp",
        "foundBy": "analysis"
      },
      {
        "url": "https://spreecommerce.org/docs/developer/cli/admin-api",
        "foundBy": "analysis"
      }
    ],
    "research": {
      "stage": "verified",
      "verdict": "unverified",
      "reason": "Official CLI over a complete Admin API, designed for agents; docs MCP is read-only so the CLI is the stated interface.",
      "disputed": []
    },
    "url": "apps/spree--spree.html",
    "coverage": "partial",
    "paid": false,
    "source": "research/verified/spree--spree.json"
  }
}
