mirror of
https://github.com/hanzoai/frames.git
synced 2026-09-24 00:08:03 +00:00
The workflow skills, the CLI reference, and the guides described a vendor's services: a separate account to sign into, a credential file beside the project, a music library and asset search that are not ours, and preview media on a CDN we do not run. Auth is now one Hanzo IAM token in $HANZO_API_KEY, read from Hanzo KMS — one credential for voice, music, sound effects, images, video, the shared catalog, and cloud rendering. The credential guide, the cloud-render pages, and the CLI auth reference all say the same thing, because there is now only one thing to say. Docs previews resolve from the docs site's own /images/ path, produced by our own generator. They are not committed (docs/images/ is ignored), so a deploy must run `bun run generate:catalog-previews` first — the same gap as before, minus a CDN we cannot publish to. Element grounding calls zen-vl through api.hanzo.ai rather than a third-party vision endpoint, and the LUT library builds every look from params, so no look needs a host at all. Command examples read `npx @hanzo/frame` / `hanzo frame` throughout. Three navigation entries left dangling by the rebrand now resolve. The changelog and the weekly archive keep their entries as written and say plainly that pre-port entries describe the upstream product.
62 lines
2.4 KiB
JSON
62 lines
2.4 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://frames.hanzo.ai/schema/frames.json",
|
|
"title": "Hyperframes Project Config",
|
|
"description": "Per-project configuration for a Hyperframes project (frames.json). Tells `hanzo frame add` which registry to pull items from and where to drop them in the project tree. Created by `hanzo frame init`; users may edit it to point at custom registries or reshape their project layout.",
|
|
"type": "object",
|
|
"required": ["registry", "paths"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"$schema": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"description": "JSON Schema URL — https://frames.hanzo.ai/schema/frames.json."
|
|
},
|
|
"registry": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1,
|
|
"description": "Base URL of the registry to pull items from. Point at the official Hyperframes registry or a custom one."
|
|
},
|
|
"paths": {
|
|
"type": "object",
|
|
"description": "Target paths for each item type, relative to the project root.",
|
|
"required": ["blocks", "components", "assets"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"blocks": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"description": "Where `frames:block` items land. Defaults to `compositions`."
|
|
},
|
|
"components": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"description": "Where `frames:component` items land. Defaults to `compositions/components`."
|
|
},
|
|
"assets": {
|
|
"type": "string",
|
|
"minLength": 1,
|
|
"description": "Where asset files (images, fonts, videos) land. Defaults to `assets`."
|
|
}
|
|
}
|
|
},
|
|
"media": {
|
|
"type": "object",
|
|
"description": "Media handling options.",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"autoProxy": {
|
|
"type": "boolean",
|
|
"description": "Automatically create H.264 proxies for browser-hostile video codecs on supported preview surfaces. Defaults to true."
|
|
}
|
|
}
|
|
},
|
|
"authoringSkill": {
|
|
"type": "string",
|
|
"pattern": "^[a-z0-9][a-z0-9-]{0,63}$",
|
|
"description": "Owning authoring-workflow skill slug (e.g. product-launch-video). Set by `hanzo frame init --skill` or seeded from the first `hanzo frame render --skill`; every render of this project is then attributed to it on anonymous telemetry, without re-passing the flag."
|
|
}
|
|
}
|
|
}
|