{
  "schemaVersion": 1,
  "product": "Flowboard",
  "capabilities": [
    {
      "id": "visual-editor",
      "name": "Visual architecture editor",
      "status": "beta",
      "entitlement": "anonymous local draft; account required to publish",
      "entryPoint": "/app",
      "documentation": "/guide#quick-start",
      "limitations": "Local drafts are stored in your browser. Sign in to publish and manage access."
    },
    {
      "id": "portable-model",
      "name": "Markdown, JSON, and YAML round trips",
      "status": "beta",
      "entitlement": "anonymous local draft",
      "entryPoint": "/app",
      "documentation": "/guide#formats",
      "limitations": "JSON, Markdown and YAML are editable formats. GIF exports are presentations, not editable backups."
    },
    {
      "id": "nested-views",
      "name": "Nested and shared architecture views",
      "status": "beta",
      "entitlement": "anonymous local draft",
      "entryPoint": "/app",
      "documentation": "/guide#levels",
      "limitations": "Views share model objects; editing a shared object affects each view that uses it."
    },
    {
      "id": "animated-flows",
      "name": "Animated directional architecture flows",
      "status": "beta",
      "entitlement": "anonymous local draft",
      "entryPoint": "/app",
      "documentation": "/guide#formats",
      "limitations": "Reduced-motion preferences disable animation while retaining flow direction."
    },
    {
      "id": "shape-catalog",
      "name": "Core, AWS, Google Cloud, Kubernetes, Kafka, and delivery shapes",
      "status": "beta",
      "entitlement": "public",
      "entryPoint": "/api/shapes",
      "documentation": "/guide#markdown",
      "limitations": "Vendor icons identify services and do not imply affiliation or endorsement."
    },
    {
      "id": "agent-api",
      "name": "REST and MCP diagram automation",
      "status": "beta",
      "entitlement": "personal API key or trusted server credential for mutations",
      "entryPoint": "/mcp",
      "documentation": "/guide#api",
      "limitations": "Agent credentials inherit the issuing user’s permissions. OAuth requires a supported registered client."
    },
    {
      "id": "sharing",
      "name": "Private, email, public, and company sharing",
      "status": "beta",
      "entitlement": "account required; company sharing requires an organization",
      "entryPoint": "/app",
      "documentation": "/guide#publishing",
      "limitations": "Viewing access does not grant editing. Workspace sharing is subject to administrator policies."
    },
    {
      "id": "organizations",
      "name": "Organization ownership, roles, and governance",
      "status": "beta",
      "entitlement": "Team organization; advanced governance requires Enterprise",
      "entryPoint": "/profile",
      "documentation": "/guide#organizations",
      "limitations": "Team checkout requires configured Stripe billing. Owners and admins with editing access consume editor seats."
    },
    {
      "id": "collaboration",
      "name": "Presence, comments, and reconnecting team collaboration",
      "status": "beta",
      "entitlement": "active Team or Enterprise organization workspace",
      "entryPoint": "/app",
      "documentation": "/guide#review",
      "limitations": "Workspace roles determine who can edit, comment or view."
    },
    {
      "id": "enterprise-identity",
      "name": "SAML SSO and SCIM provisioning",
      "status": "foundation",
      "entitlement": "enterprise organization",
      "entryPoint": "/profile",
      "documentation": "/guide#sso",
      "limitations": "Identity setup requires an administrator and configured IdP. Mandatory SSO requires operator-verified domain ownership and recovery safeguards."
    },
    {
      "id": "github-generation",
      "name": "GitHub repository diagram generation",
      "status": "gated",
      "entitlement": "authorized enterprise organization with consent",
      "entryPoint": "/app",
      "documentation": "/guide#github",
      "limitations": "Requires Enterprise, administrator configuration and separate consent for selected repositories."
    },
    {
      "id": "revision-history",
      "name": "Revision history and recovery",
      "status": "beta",
      "entitlement": "Free personal diagrams; active Team or Enterprise workspace editing",
      "entryPoint": "/app",
      "documentation": "/guide#review",
      "limitations": "Restoration creates a new revision and requires current write permission; existing history is not overwritten."
    },
    {
      "id": "proposal-review",
      "name": "Human and agent proposal review",
      "status": "beta",
      "entitlement": "authorized review and current write access; organization proposals require Team or Enterprise",
      "entryPoint": "/app",
      "documentation": "/guide#review",
      "limitations": "Requires proposal service configuration. Reviewers must resolve stale-base conflicts before merging."
    },
    {
      "id": "walkthroughs",
      "name": "Named architecture walkthroughs",
      "status": "beta",
      "entitlement": "Free personal diagrams; Team and Enterprise workspace diagrams",
      "entryPoint": "/app",
      "documentation": "/walkthroughs",
      "limitations": "Reduced motion disables automatic playback; manual scene navigation remains available."
    },
    {
      "id": "billing",
      "name": "Self-service team subscription lifecycle",
      "status": "beta",
      "entitlement": "Team workspace owner or administrator; Free does not require billing",
      "entryPoint": "/profile?plan=team",
      "documentation": "/pricing",
      "limitations": "Team subscriptions are per editor. Viewers and commenters do not consume paid seats. Enterprise uses a custom agreement."
    }
  ]
}
