{
  "boundary": "Feature tiers are product guidance, not a billing source of truth. Premium features unlock only after server-side entitlement, provider authorization, and client-capability checks. A listed connector is not an authorized connector.",
  "features": {
    "free": [
      {
        "description": "Save and recall personal or sandbox context on this computer without uploading private data by default.",
        "freeBoundary": "Stored on this device. No managed backup, cross-device sync, or team sharing.",
        "key": "local_memory",
        "name": "Local memory and recall",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Good for proving the workflow before adding cloud continuity."
      },
      {
        "description": "Connect compatible desktop AI clients to HeapFile and start with prepare_work before broad searches.",
        "freeBoundary": "Manual setup only. Premium will add managed connector setup and support paths.",
        "key": "desktop_mcp",
        "name": "Desktop AI client setup",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Use Free to see whether HeapFile reduces repeated setup and context rebuilding."
      },
      {
        "description": "Use local capture, mobile companion demos, and manual handoff flows for pilot feedback.",
        "freeBoundary": "Manual handoff. No reliable mobile relay, notification loop, or cloud queue.",
        "key": "personal_capture",
        "name": "Personal capture and handoff demos",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Upgrade when captures need to follow you between devices without copy/paste."
      },
      {
        "description": "Use phones, tablets, and foldables for short foreground capture, selected recall, and approval review without running heavy AI jobs on the device.",
        "freeBoundary": "No background sync, no managed connector refresh, and no on-device local model execution.",
        "key": "mobile_low_power_helper",
        "name": "Mobile low-power helper",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Proves HeapFile is useful on mobile while protecting battery, heat, and private device data."
      },
      {
        "description": "Use local checked-out repositories as evidence when the user has already placed them on this machine.",
        "freeBoundary": "Only local files already present on this computer. No managed GitHub/AWS/Microsoft evidence retrieval.",
        "key": "local_git_evidence",
        "name": "Local repo evidence",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Upgrade when you want HeapFile to fetch authorized evidence through product-owned connectors."
      },
      {
        "description": "See local value measurements, context reuse, setup checks, and no-cost background snapshots before paying.",
        "freeBoundary": "Free reports only this device's measured local proof. Premium unlocks connector breadth, team context, and managed savings reports.",
        "key": "tka_free_taste",
        "name": "HeapFile local value proof",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "A free user should immediately see what HeapFile saved or made easier without inflated RTK-style claims."
      },
      {
        "description": "Run a goal as a verified loop on this computer: it keeps working only while a local machine-check (your tests, a metric) actually improves, and halts itself instead of burning tokens on no progress. Uses your own local model, so no hosted-model spend.",
        "freeBoundary": "One loop at a time, on this device, with your own local model. No managed scheduling, connectors, cross-device handoff, or team verified-done reporting.",
        "key": "verified_loop_local",
        "name": "Verified loops (local)",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Prove the anti-slop loop on your own work for free before paying for the managed runtime."
      },
      {
        "description": "Route reasoning across the local models you already run (Ollama), with ordered fallback, per-provider health, cooldowns, and a single fenced recovery probe. The local-only and local-first routing profiles keep every attempt on your own machine, so no hosted-model spend. Routing never authorizes paid spend, tool execution, or new credentials on its own.",
        "freeBoundary": "Routing and fallback across your own local models on this device. Hosted provider targets stay governed by the existing provider policy, daily budget, and premium boundaries \u2014 routing preference never unlocks paid spend.",
        "key": "local_model_routing",
        "name": "Local model routing and fallback",
        "status": "available",
        "tier": "free",
        "upgradePrompt": "",
        "valueHint": "Get resilient reasoning (automatic fallback when one local model is busy or missing) without leaving your machine or paying per call."
      }
    ],
    "premium": [
      {
        "description": "Sync selected memory, captures, device state, and handoff packets across trusted devices.",
        "freeBoundary": "Free keeps memory local to one device.",
        "key": "cloud_sync",
        "name": "Encrypted cloud sync",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when you want HeapFile to follow you across desktop and mobile.",
        "valueHint": "Best for people who lose time recreating the same context on another device or AI client."
      },
      {
        "description": "Queue phone and tablet captures to a trusted desktop or cloud-brain relay so HeapFile can prepare context for the next AI session.",
        "freeBoundary": "Free shows the mobile helper and local demo captures; reliable device relay stays locked.",
        "key": "mobile_handoff",
        "name": "Mobile-to-desktop handoff",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when phone captures need to become desktop-ready work without manual copy/paste.",
        "valueHint": "Best for users moving between phone, tablet, desktop, and multiple AI clients."
      },
      {
        "description": "HeapFile-owned GitHub, AWS, Microsoft 365, Jira, Confluence, and source-system connectors with explicit authorization.",
        "freeBoundary": "Free uses local files and manual evidence. Managed source connections stay locked.",
        "key": "smart_connectors",
        "name": "Smart connectors",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when you want HeapFile to retrieve authorized evidence instead of relying on each chat app connector.",
        "valueHint": "Best when expensive sessions are caused by repeated searching, re-reading, or switching between vendor tools."
      },
      {
        "description": "Measure avoided connector calls, repeated searches, and AI context waste with defensible reports.",
        "freeBoundary": "Free can show local usage basics, but team and organization reporting stay locked.",
        "key": "savings_reports",
        "name": "Savings path and usage reports",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when teams want to prove where HeapFile saves time and model spend.",
        "valueHint": "Best when a buyer needs proof that HeapFile saves more than it costs."
      },
      {
        "description": "Organization profiles, team policy, shared setup, support workflows, and admin-managed access.",
        "freeBoundary": "Free is a personal workspace. Shared org profiles, roles, and support workflows stay locked.",
        "key": "team_workspaces",
        "name": "Team workspaces",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when more than one person or device needs managed access.",
        "valueHint": "Best for pilots that need repeatable setup, admin visibility, and safer onboarding."
      },
      {
        "description": "Cloud-backed workflows, device relay, premium handoff queues, and higher-value automation gates.",
        "freeBoundary": "Free does not run managed background workers or monitored cloud jobs.",
        "key": "advanced_automation",
        "name": "Advanced automation",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when local-only setup is no longer enough for the workflow.",
        "valueHint": "Best when work should keep moving after the local session ends or another device needs to pick it up."
      },
      {
        "description": "Run HeapFile context readiness, compatibility intake, team savings proof, and background context availability across authorized connectors.",
        "freeBoundary": "Free keeps the engine local and honest. Premium expands it across managed connectors, teams, and reports.",
        "key": "tka_max_context",
        "name": "HeapFile max context engine",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when you want HeapFile to lead across every source, not just local proof on one device.",
        "valueHint": "Best when a team needs one context layer that makes future AI sessions start ready."
      },
      {
        "description": "HeapFile takes loops end to end: schedules them, runs them across managed connectors and devices, hands off between sessions, and stops every loop at a human-reviewed gate before anything merges or sends. Spend is bounded by a per-workspace daily budget.",
        "freeBoundary": "Free runs one local loop at a time with your own model. Managed scheduling, connectors, handoff, budget caps, and team verified-done reporting stay locked.",
        "key": "autonomous_loop_runtime",
        "name": "Autonomous loop runtime",
        "status": "locked",
        "tier": "premium",
        "upgradePrompt": "Upgrade when you want loops to run to a verified finish on their own, not just on your machine while you watch.",
        "valueHint": "Best when you want to pay for progress, not attempts: billed against verified-done work, with a daily budget cap so cost can never surprise you."
      }
    ]
  },
  "freePositioning": "Free is useful for local setup and proof. Premium is for cloud continuity, smart connectors, team use, savings proof, and background automation.",
  "generator": "scripts/generate_features_manifest.py",
  "jobs": [
    {
      "featureKeys": [
        "local_memory",
        "cloud_sync"
      ],
      "id": "durable_memory",
      "label": "Durable memory (Work Memory / Brain)",
      "summary": "Save and recall context across sessions and AI clients so the next session starts warm."
    },
    {
      "featureKeys": [
        "local_git_evidence",
        "smart_connectors"
      ],
      "id": "evidence_provenance_freshness",
      "label": "Evidence, provenance, and freshness",
      "summary": "Answers carry where they came from and how current they are, so an agent can trust or re-verify them."
    },
    {
      "featureKeys": [
        "desktop_mcp"
      ],
      "id": "prepare_work_warmup",
      "label": "prepare_work / warmup packets",
      "summary": "A scoped, ready-to-use context packet at the start of a session instead of a cold start."
    },
    {
      "catalogUrl": "https://heapfile.ai/connectors.json",
      "connectorIds": [
        "local_files",
        "local_git",
        "mcp",
        "local_ollama",
        "github"
      ],
      "featureKeys": [
        "local_git_evidence",
        "smart_connectors"
      ],
      "id": "connectors",
      "label": "Connectors (authorized evidence retrieval)",
      "summary": "Authorized retrieval of evidence from real systems. A listed connector is not an authorized connector."
    },
    {
      "detailUrl": "https://heapfile.ai/link/",
      "featureKeys": [
        "advanced_automation"
      ],
      "id": "link_remote_control",
      "label": "HeapFile Link (remote control / continuity surface)",
      "summary": "Bring a session's context to another device or participant. Hosted Link calls are not available in production yet."
    },
    {
      "featureKeys": [
        "team_workspaces"
      ],
      "id": "team_brain",
      "label": "Team Brain / team workspaces",
      "summary": "Shared, role-scoped context with connector policy and clean personal/team/customer boundaries."
    },
    {
      "featureKeys": [
        "tka_free_taste",
        "savings_reports"
      ],
      "id": "cost_governor",
      "label": "Cost governor / value reporting",
      "summary": "Local Value Ledger shows measured activity and context reuse; team savings reports are Premium. No guaranteed-savings claims."
    },
    {
      "connectorIds": [
        "local_ollama"
      ],
      "featureKeys": [],
      "id": "local_model_routing",
      "label": "Local-model routing",
      "summary": "Use local models (Ollama / local OpenAI-compatible runtimes) or data-center inference while HeapFile carries the context."
    },
    {
      "featureKeys": [
        "local_git_evidence"
      ],
      "id": "scout",
      "label": "Scout (bounded local topic learning)",
      "summary": "Maps a topic across permitted local files with strict budgets, no whole-disk crawl, and zero hosted-model calls."
    },
    {
      "featureKeys": [
        "desktop_mcp"
      ],
      "id": "approval_authorization",
      "label": "Approval / authorization boundaries",
      "summary": "Permission levels, policy engine, and send gates decide what an agent may read and may do, and report the data route first."
    }
  ],
  "links": {
    "account": "https://heapfile.com/account.html",
    "connectors": "https://heapfile.ai/connectors.json",
    "discovery": "https://heapfile.ai/.well-known/heapfile.json",
    "human": "https://heapfile.ai/",
    "llms": "https://heapfile.ai/llms.txt",
    "llmsFull": "https://heapfile.ai/llms-full.txt",
    "pricing": "https://heapfile.ai/pricing.html"
  },
  "origin": "https://heapfile.ai",
  "schema": "heapfile.public-feature-manifest.v1",
  "source": "app/feature_tiers.py",
  "summary": {
    "free": 8,
    "premium": 8,
    "total": 16
  },
  "upgradeNudges": [
    {
      "premiumPath": "Use smart connectors and saved evidence so HeapFile can reuse authorized context instead of rebuilding it.",
      "trigger": "A session starts re-reading the same files, repos, or account pages."
    },
    {
      "premiumPath": "Use encrypted cloud sync, device relay, and team workspaces.",
      "trigger": "The user wants work to continue on mobile, another desktop, or a teammate's account."
    },
    {
      "premiumPath": "Keep mobile in low-power capture/approval mode and use Premium relay for sync, handoff, and connector refresh.",
      "trigger": "A phone or tablet should help without getting hot or draining battery."
    },
    {
      "premiumPath": "Use savings and usage reports to show avoided repeated work and better context reuse.",
      "trigger": "A buyer asks whether HeapFile is saving more than it costs."
    },
    {
      "premiumPath": "Use Premium automation instead of one-off local actions.",
      "trigger": "The workflow needs background help, monitored jobs, or reliable retries."
    }
  ]
}
