{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1
    },
    "source": {
      "type": "string",
      "minLength": 1
    },
    "version": {
      "type": "string"
    },
    "source_kind": {
      "type": "string",
      "enum": [
        "github",
        "gitlab",
        "git",
        "local"
      ]
    },
    "installed_at": {
      "type": "string"
    },
    "updated_at": {
      "type": "string"
    },
    "features": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "rules",
          "commands",
          "agents",
          "skills",
          "mcp",
          "hooks",
          "ignore",
          "permissions"
        ]
      }
    },
    "pick": {
      "type": "object",
      "properties": {
        "skills": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "commands": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "rules": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "agents": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "target": {
      "type": "string",
      "enum": [
        "aider",
        "amazon-q",
        "amp",
        "antigravity",
        "augment-code",
        "claude-code",
        "cline",
        "codex-cli",
        "continue",
        "copilot",
        "crush",
        "cursor",
        "deepagents-cli",
        "factory-droid",
        "gemini-cli",
        "goose",
        "jules",
        "junie",
        "kilo-code",
        "kiro",
        "opencode",
        "pi-agent",
        "qwen-code",
        "replit-agent",
        "roo-code",
        "rovodev",
        "trae",
        "warp",
        "windsurf",
        "zed"
      ]
    },
    "path": {
      "type": "string"
    },
    "paths": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "as": {
      "type": "string",
      "enum": [
        "rules",
        "commands",
        "agents",
        "skills"
      ]
    },
    "content_hash": {
      "type": "string"
    },
    "license": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "name",
    "source",
    "source_kind",
    "installed_at",
    "updated_at",
    "features",
    "content_hash"
  ],
  "additionalProperties": false,
  "title": "agentsmesh-pack.yaml",
  "description": "AgentsMesh pack metadata (.agentsmesh/packs/{name}/pack.yaml)"
}
