Lite SuiteLite Suite

Manifest Schema

Reference for the manifest.json app registry format

Overview

The manifest.json file is the central registry that defines all available Lite Suite apps. The installer and LiteCore read this manifest to know what apps exist, where to download them, and how to install them.

The manifest is hosted at https://litesuite.dev/manifest.json and updated with each release. When you run the installer or check for updates in LiteCore, it fetches the latest manifest and compares it against your locally installed versions.

Schema

Root Object

| Field | Type | Description | |-------|------|-------------| | version | string | Manifest schema version (e.g., "1.0.0") | | updatedAt | string | ISO 8601 timestamp of the last manifest update | | apps | App[] | Array of app definitions |

App Object

| Field | Type | Description | |-------|------|-------------| | id | string | Unique app identifier, kebab-case (e.g., "litespeak") | | name | string | Display name (e.g., "LiteSpeak") | | description | string | Short one-line description shown in the installer UI | | version | string | Current app version using semver (e.g., "1.2.0") | | category | string | One of: "desktop", "service", "mcp", "python" | | downloadUrl | string | Direct URL to the app binary or archive | | size | number | Download size in bytes | | sha256 | string | SHA-256 hex digest of the download file | | installType | string | One of: "electron", "python", "native", "node" | | requires | string[] | Dependency constraints (e.g., ["python>=3.10", "gpu"]) | | optional | boolean | If true, the app is skipped during a minimal install | | changelog | string | URL to the changelog or release notes for this version |

Category Values

| Value | Description | |-------|-------------| | "desktop" | Electron GUI app | | "service" | Background service or daemon | | "mcp" | Model Context Protocol server | | "python" | Python-based app or service |

Install Type Values

| Value | Description | |-------|-------------| | "electron" | Packaged Electron app, installed to C:/Apps/ | | "python" | Python package, installed into a managed venv | | "native" | Standalone executable, no runtime required | | "node" | Node.js app, dependencies installed via pnpm |

Dependency Constraints (requires)

Dependencies are expressed as strings in the requires array. The installer checks these before downloading an app.

| Constraint | Meaning | |------------|---------| | "python>=3.10" | Python 3.10 or higher must be installed | | "python>=3.11" | Python 3.11 or higher must be installed | | "gpu" | A CUDA-capable GPU is required | | "gpu:vram>=8" | GPU with at least 8GB VRAM required | | "node>=18" | Node.js 18 or higher must be installed | | "litecore" | LiteCore must already be installed |

Example

{
  "version": "1.0.0",
  "updatedAt": "2026-03-01T00:00:00Z",
  "apps": [
    {
      "id": "litecore",
      "name": "LiteCore",
      "description": "Central hub and launcher for all Lite Suite apps",
      "version": "1.4.0",
      "category": "desktop",
      "downloadUrl": "https://litesuite.dev/releases/litecore-1.4.0-win.zip",
      "size": 98400000,
      "sha256": "a3f1c2e4b5d6789012345678abcdef01234567890abcdef01234567890abcdef0",
      "installType": "electron",
      "requires": [],
      "optional": false,
      "changelog": "https://litesuite.dev/changelog/litecore"
    },
    {
      "id": "litememory",
      "name": "LiteMemory",
      "description": "Obsidian vault MCP server for AI agent memory",
      "version": "1.1.0",
      "category": "mcp",
      "downloadUrl": "https://litesuite.dev/releases/litememory-1.1.0.zip",
      "size": 12800000,
      "sha256": "b7e2d3f4a5c6789012345678abcdef01234567890abcdef01234567890abcdef1",
      "installType": "node",
      "requires": ["node>=18"],
      "optional": true,
      "changelog": "https://litesuite.dev/changelog/litememory"
    },
    {
      "id": "liteimage",
      "name": "LiteImage",
      "description": "Local AI image generation with ComfyUI backend",
      "version": "2.0.1",
      "category": "python",
      "downloadUrl": "https://litesuite.dev/releases/liteimage-2.0.1.zip",
      "size": 450000000,
      "sha256": "c9a4e5f6b7d8901234567890abcdef01234567890abcdef01234567890abcdef2",
      "installType": "python",
      "requires": ["python>=3.10", "gpu:vram>=8"],
      "optional": true,
      "changelog": "https://litesuite.dev/changelog/liteimage"
    }
  ]
}

Validation

The installer validates the manifest at two points in the install process:

  1. On download — The fetched manifest.json is schema-validated before any app installation begins. If required fields are missing or types are wrong, the installer aborts and reports which entry is malformed.

  2. After each app download — The installer computes the SHA-256 hash of the downloaded file and compares it against the sha256 field in the manifest. If the hashes do not match, the download is rejected, the file is deleted, and an error is shown. This prevents installing corrupted or tampered files.

If you are hosting a private fork of the manifest, ensure your sha256 values are updated whenever a binary changes. Mismatched hashes will always cause installation failure.