958521cbf2
- Add security-assessment-v1, it-incident-triage-v1, common-grounds-deploy-v1, org-bootstrap-v1 - Add index.json registry index with full metadata - Add BLUEPRINT_SCHEMA_v1_0.json validation schema - Add SCHEMA.md reference docs Co-Authored-By: Eyean (EOA0000) <eyean@eios.local>
333 lines
11 KiB
JSON
333 lines
11 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://eios.xrayvu.com/schemas/blueprint/v1.0",
|
|
"title": "EIOS Blueprint Package Schema",
|
|
"description": "JSON Schema for all EIOS Blueprint packages — covers X-Frames display templates and Bridge agentic workflow packages.",
|
|
"version": "1.0",
|
|
"created": "2026-06-09",
|
|
"author": "EOA0000 (Eyean / EIOS IA)",
|
|
"type": "object",
|
|
"required": ["blueprint_id", "version", "name", "blueprint_type", "author", "license", "description"],
|
|
"additionalProperties": false,
|
|
|
|
"properties": {
|
|
|
|
"blueprint_id": {
|
|
"type": "string",
|
|
"pattern": "^[a-z0-9][a-z0-9/_-]{2,80}$",
|
|
"description": "Globally unique slug identifier. Format: <namespace>/<slug> for Bridge; <slug> for X-Frames. Example: healthcare/patient-discharge-summary-v1 or bp_minimal_dark_001",
|
|
"examples": ["healthcare/patient-discharge-summary-v1", "it/incident-triage-v1", "bp_minimal_dark_001"]
|
|
},
|
|
|
|
"version": {
|
|
"type": "string",
|
|
"pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
|
|
"description": "Semantic version (MAJOR.MINOR.PATCH). Breaking parameter/API changes = MAJOR.",
|
|
"examples": ["1.0.0", "1.2.3", "2.0.0-beta.1"]
|
|
},
|
|
|
|
"name": {
|
|
"type": "string",
|
|
"minLength": 3,
|
|
"maxLength": 80,
|
|
"description": "Human-readable display name for marketplace listings."
|
|
},
|
|
|
|
"blueprint_type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"xframes_template",
|
|
"bridge_workflow",
|
|
"bridge_system_selection",
|
|
"bridge_architecture",
|
|
"bridge_library",
|
|
"bridge_configuration",
|
|
"bridge_hybrid"
|
|
],
|
|
"description": "Discriminator for package structure interpretation. xframes_template = X-Frames room display template. bridge_* = Bridge platform agentic package types."
|
|
},
|
|
|
|
"author": {
|
|
"type": "object",
|
|
"required": ["entity_id", "display_name"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"entity_id": {
|
|
"type": "string",
|
|
"pattern": "^E[A-Z0-9]{2}[0-9]{4}$",
|
|
"description": "EIOS entity ID of the Blueprint creator (e.g. EOU0227, EOO9788)."
|
|
},
|
|
"display_name": {
|
|
"type": "string",
|
|
"description": "Public display name for marketplace attribution."
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"description": "Optional: creator profile or repository URL."
|
|
}
|
|
}
|
|
},
|
|
|
|
"license": {
|
|
"type": "string",
|
|
"enum": ["MIT", "Apache-2.0", "GPL-3.0", "AGPL-3.0", "CC-BY-4.0", "CC-BY-SA-4.0", "proprietary", "commercial"],
|
|
"description": "OSI-approved license or proprietary/commercial for paid Blueprints."
|
|
},
|
|
|
|
"description": {
|
|
"type": "string",
|
|
"minLength": 20,
|
|
"maxLength": 300,
|
|
"description": "Short description for search result cards (≤300 chars)."
|
|
},
|
|
|
|
"long_description": {
|
|
"type": "string",
|
|
"description": "Full markdown description rendered on the Blueprint detail page."
|
|
},
|
|
|
|
"domain": {
|
|
"type": "string",
|
|
"enum": [
|
|
"healthcare",
|
|
"legal",
|
|
"finance",
|
|
"government",
|
|
"education",
|
|
"technology",
|
|
"infrastructure",
|
|
"security",
|
|
"devops",
|
|
"communications",
|
|
"hr",
|
|
"marketing",
|
|
"general"
|
|
],
|
|
"description": "Industry/functional domain for marketplace categorization."
|
|
},
|
|
|
|
"tags": {
|
|
"type": "array",
|
|
"items": { "type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,30}$" },
|
|
"minItems": 1,
|
|
"maxItems": 15,
|
|
"uniqueItems": true,
|
|
"description": "Searchable tags. lowercase-hyphenated."
|
|
},
|
|
|
|
"certification": {
|
|
"type": "string",
|
|
"enum": ["community", "verified", "certified", "healthcare-certified"],
|
|
"default": "community",
|
|
"description": "Certification tier. community = free/unvetted; verified = $500 fee, basic review; certified = $2K, full audit; healthcare-certified = $5K, HIPAA/regulatory."
|
|
},
|
|
|
|
"pricing": {
|
|
"type": "object",
|
|
"required": ["model"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"model": {
|
|
"type": "string",
|
|
"enum": ["free", "one_time", "subscription", "usage"],
|
|
"description": "Pricing model. Free blueprints may still have a license fee."
|
|
},
|
|
"amount_credits": {
|
|
"type": "integer",
|
|
"minimum": 0,
|
|
"description": "Platform credits charged. 0 = free. For subscription: per-month. For one_time: total."
|
|
},
|
|
"usage_unit": {
|
|
"type": "string",
|
|
"description": "For usage model: what is billed per execution (e.g. 'per_run', 'per_document')."
|
|
},
|
|
"revenue_split": {
|
|
"type": "object",
|
|
"description": "Revenue distribution. Defaults to 70% creator / 30% platform.",
|
|
"properties": {
|
|
"creator_pct": { "type": "number", "minimum": 0, "maximum": 100 },
|
|
"platform_pct": { "type": "number", "minimum": 0, "maximum": 100 }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
"requires": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"eios_version": {
|
|
"type": "string",
|
|
"description": "Semver range constraint on EIOS platform version (e.g. '>=1.0.0 <2.0.0')."
|
|
},
|
|
"xframes_version": {
|
|
"type": "string",
|
|
"description": "Required for xframes_template type. Semver range."
|
|
},
|
|
"bridge_version": {
|
|
"type": "string",
|
|
"description": "Required for bridge_* types. Semver range."
|
|
},
|
|
"platform_features": {
|
|
"type": "array",
|
|
"items": { "type": "string" },
|
|
"description": "Named platform feature flags required (e.g. 'mem0', 'lightrag', 'otel')."
|
|
},
|
|
"actor_harnesses": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": ["claude-code", "aider", "openhands", "gemini-cli", "browser-use", "custom"]
|
|
},
|
|
"description": "For bridge_workflow: harnesses that must be available to execute this blueprint."
|
|
}
|
|
}
|
|
},
|
|
|
|
"dependencies": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["blueprint_id", "version"],
|
|
"properties": {
|
|
"blueprint_id": { "type": "string" },
|
|
"version": { "type": "string" }
|
|
}
|
|
},
|
|
"description": "Other blueprints this one depends on (installed automatically)."
|
|
},
|
|
|
|
"parameters": {
|
|
"type": "object",
|
|
"description": "For bridge_* types: parameterizable inputs. Keys are parameter names; values are parameter specs.",
|
|
"additionalProperties": {
|
|
"type": "object",
|
|
"required": ["type", "description"],
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"enum": ["string", "integer", "number", "boolean", "enum", "array", "object"]
|
|
},
|
|
"description": { "type": "string" },
|
|
"required": { "type": "boolean", "default": false },
|
|
"default": {},
|
|
"enum_values": {
|
|
"type": "array",
|
|
"description": "For type=enum: allowed values."
|
|
},
|
|
"sensitive": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "If true: value is a credential/secret, never logged or transmitted."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
"entry_point": {
|
|
"type": "string",
|
|
"description": "For bridge_workflow: relative path to the main workflow definition file (e.g. 'workflow.yaml' or 'main.py')."
|
|
},
|
|
|
|
"oss": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"description": "OSS publishing metadata. Present if this blueprint is intended for public release.",
|
|
"properties": {
|
|
"publish_ready": { "type": "boolean" },
|
|
"target_repository": { "type": "string", "format": "uri" },
|
|
"tier": {
|
|
"type": "string",
|
|
"enum": ["tier1", "tier2", "tier3"],
|
|
"description": "tier1 = publish immediately; tier2 = after internal hardening; tier3 = keep proprietary."
|
|
},
|
|
"stripping_required": {
|
|
"type": "boolean",
|
|
"description": "If true: must strip EIOS-internal references before publishing."
|
|
}
|
|
}
|
|
},
|
|
|
|
"xframes": {
|
|
"type": "object",
|
|
"description": "X-Frames-specific fields. Required when blueprint_type = xframes_template.",
|
|
"required": ["template_name", "system_name", "category"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"template_name": { "type": "string" },
|
|
"system_name": {
|
|
"type": "string",
|
|
"pattern": "^[A-Z][A-Z0-9_]{1,40}$",
|
|
"description": "UPPER_SNAKE_CASE system identifier used in X-Frames runtime."
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"enum": ["minimal", "standard", "verbose", "developer", "presentation", "custom"]
|
|
},
|
|
"platforms": {
|
|
"type": "array",
|
|
"items": { "type": "string", "enum": ["cli", "web", "mobile"] }
|
|
}
|
|
}
|
|
},
|
|
|
|
"marketplace": {
|
|
"type": "object",
|
|
"description": "Marketplace listing metadata (auto-populated/updated by platform).",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"published_at": { "type": "string", "format": "date-time" },
|
|
"updated_at": { "type": "string", "format": "date-time" },
|
|
"downloads": { "type": "integer", "minimum": 0 },
|
|
"stars": { "type": "integer", "minimum": 0 },
|
|
"installs": { "type": "integer", "minimum": 0 },
|
|
"status": {
|
|
"type": "string",
|
|
"enum": ["draft", "submitted", "under_review", "published", "deprecated", "archived"]
|
|
}
|
|
}
|
|
},
|
|
|
|
"changelog": {
|
|
"type": "array",
|
|
"description": "Version history. Most recent first.",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["version", "date", "changes"],
|
|
"properties": {
|
|
"version": { "type": "string" },
|
|
"date": { "type": "string", "format": "date" },
|
|
"changes": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
|
|
},
|
|
|
|
"if": {
|
|
"properties": { "blueprint_type": { "const": "xframes_template" } }
|
|
},
|
|
"then": {
|
|
"required": ["xframes"],
|
|
"properties": {
|
|
"requires": {
|
|
"required": ["xframes_version"]
|
|
}
|
|
}
|
|
},
|
|
"else": {
|
|
"if": {
|
|
"properties": { "blueprint_type": { "pattern": "^bridge_" } }
|
|
},
|
|
"then": {
|
|
"required": ["domain", "parameters"],
|
|
"properties": {
|
|
"requires": {
|
|
"required": ["bridge_version"]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|