Answers from the documentation; checking which model is on duty
Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
image - Skill - OpenSmartRoute
Skillv1.0.0
image
Image renderer for json-render that turns JSON specs into SVG and PNG images via Satori. Use when working with @json-render/image, generating OG images from JSON, creating social cards, or rendering…
Imported from vercel-labs/json-render (skills/image/SKILL.md) via skills.sh. Install upstream with npx skills add vercel-labs/json-render --skill image. Copyright stays with the author.
@json-render/image
Image renderer that converts JSON specs into SVG and PNG images using Satori.
Root container. Defines width, height, background. Must be root.
Box
Layout
Container with padding, margin, border, absolute positioning
Row
Layout
Horizontal flex layout
Column
Layout
Vertical flex layout
Heading
Content
h1-h4 heading text
Text
Content
Body text with full styling
Image
Content
Image from URL
Divider
Decorative
Horizontal line separator
Spacer
Decorative
Empty vertical space
Key Exports
Export
Purpose
renderToSvg
Render spec to SVG string
renderToPng
Render spec to PNG buffer (requires @resvg/resvg-js)
schema
Image element schema
standardComponents
Pre-built component registry
standardComponentDefinitions
Catalog definitions for AI prompts
Sub-path Exports
Export
Description
@json-render/image
Full package: schema, components, render functions
@json-render/image/server
Schema and catalog definitions only (no React/Satori)
@json-render/image/catalog
Standard component definitions and types
@json-render/image/render
Render functions only
Installed into a catalogue, chosen by a router
Install image and it becomes one more candidate the router can pick - when it fits.
A listing is a routing target with a manifest: what it does, which domains it covers, what it costs and who publishes it. Once installed it sits beside your own models and tools, is scored like any other candidate for each request, and shows up in the trace when it wins. Ratings come from workspaces that installed it, one per account.
When a provider is down or over quota the request moves on; the trace says it did.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slotcurl-s-X POST https://osr-api.kindrock-caaab1a2.centralindia.azurecontainerapps.io/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Manifest
An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.
vercel-labs-json-render-image.ocm.jsonjson
{
"ocm": "1",
"id": "vercel-labs-json-render-image",
"kind": "skill",
"name": "image",
"description": "Image renderer for json-render that turns JSON specs into SVG and PNG images via Satori. Use when working with @json-render/image, generating OG images from JSON, creating social cards, or rendering AI-generated image specs.",
"publisher": "vercel-labs",
"version": "1.0.0",
"capabilities": {
"domains": [
"coding",
"general_chat"
],
"tags": [
"skill-md",
"skills-sh"
],
"languages": [
"en"
]
},
"quality_prior": 0.6,
"examples": [
"Image renderer for json-render that turns JSON specs into SVG and PNG images via Satori. Use when working with @json-render/image, generating OG images from JSON, creating social cards, or rendering AI-generated image specs."
],
"primary": false,
"metadata": {
"source": {
"provider": "skills.sh",
"repository": "https://github.com/vercel-labs/json-render",
"path": "skills/image/SKILL.md",
"ref": "HEAD",
"url": "https://www.skills.sh/vercel-labs/json-render/image",
"key": "vercel-labs/json-render/skills/image/SKILL.md"
}
},
"instructions": "# @json-render/image\n\nImage renderer that converts JSON specs into SVG and PNG images using Satori.\n\n## Quick Start\n\n```typescript\nimport { renderToPng } from \"@json-render/image/render\";\nimport type { Spec } from \"@json-render/core\";\n\nconst spec: Spec = {\n root: \"frame\",\n elements: {\n frame: {\n type: \"Frame\",\n props: { width: 1200, height: 630, backgroundColor: \"#1a1a2e\" },\n children: [\"heading\"],\n },\n heading: {\n type: \"Heading\",\n props: { text: \"Hello World\", level: \"h1\", color: \"#ffffff\" },\n children: [],\n },\n },\n};\n\nconst png = await renderToPn",
"cost": {
"context_tokens": 653
}
}
Fetch it by URL: GET /api/v1/registry/vercel-labs-json-render-image/manifest?version=1.0.0
Reviews
Star ratings from people who tried it. One review per account; edit yours any time.
No reviews yet. Install it, try it, and be the first to rate it.