PostHog · Schema

LLMSkill

A/B TestingAnalyticsFeature FlagsOpen SourceProduct AnalyticsSession Recording

Properties

Name Type Description
id string
name string Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters.
description string What this skill does and when to use it. Max 4096 characters.
body string The SKILL.md instruction content (markdown).
license string License name or reference to a bundled license file.
compatibility string Environment requirements (intended product, system packages, network access, etc.).
allowed_tools array List of pre-approved tools the skill may use.
metadata object Arbitrary key-value metadata.
files array Bundled files manifest. Each entry is path + content_type only; fetch content via /llm_skills/name/{name}/files/{path}/.
outline array Flat list of markdown headings parsed from the skill body. Useful as a lightweight table of contents.
version integer
created_by object
created_at string
updated_at string
deleted boolean
is_latest boolean
latest_version integer
version_count integer
first_version_created_at string
View JSON Schema on GitHub

JSON Schema

posthog-llmskill-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/LLMSkill",
  "title": "LLMSkill",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "description": "Unique skill name. Lowercase letters, numbers, and hyphens only. Max 64 characters.",
      "maxLength": 64
    },
    "description": {
      "type": "string",
      "description": "What this skill does and when to use it. Max 4096 characters.",
      "maxLength": 4096
    },
    "body": {
      "type": "string",
      "description": "The SKILL.md instruction content (markdown)."
    },
    "license": {
      "type": "string",
      "description": "License name or reference to a bundled license file.",
      "maxLength": 255
    },
    "compatibility": {
      "type": "string",
      "description": "Environment requirements (intended product, system packages, network access, etc.).",
      "maxLength": 500
    },
    "allowed_tools": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of pre-approved tools the skill may use."
    },
    "metadata": {
      "type": "object",
      "additionalProperties": true,
      "description": "Arbitrary key-value metadata."
    },
    "files": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LLMSkillFileManifest"
      },
      "readOnly": true,
      "description": "Bundled files manifest. Each entry is path + content_type only; fetch content via /llm_skills/name/{name}/files/{path}/."
    },
    "outline": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LLMSkillOutlineEntry"
      },
      "readOnly": true,
      "description": "Flat list of markdown headings parsed from the skill body. Useful as a lightweight table of contents."
    },
    "version": {
      "type": "integer",
      "readOnly": true
    },
    "created_by": {
      "allOf": [
        {
          "$ref": "#/components/schemas/UserBasic"
        }
      ],
      "readOnly": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "deleted": {
      "type": "boolean",
      "readOnly": true
    },
    "is_latest": {
      "type": "boolean",
      "readOnly": true
    },
    "latest_version": {
      "type": "integer",
      "readOnly": true
    },
    "version_count": {
      "type": "integer",
      "readOnly": true
    },
    "first_version_created_at": {
      "type": "string",
      "readOnly": true
    }
  },
  "required": [
    "body",
    "created_at",
    "created_by",
    "deleted",
    "description",
    "files",
    "first_version_created_at",
    "id",
    "is_latest",
    "latest_version",
    "name",
    "outline",
    "updated_at",
    "version",
    "version_count"
  ]
}