pictify_create_video_template
Upload a Remotion scene YOU wrote as a new video template. Use when you want full creative control over the composition — write the TSX yourself instead of delegating the design to pictify_generate_video_template. The source passes a compile gate before anything is saved: on failure you get the compiler errors back and NO template is created, so fix the code and call again. SCENE RULES (violations fail the compile gate or the render): (1) Single file. It must contain export const schema = z.object({...}) AND export default a React function component typed with the schema's props. Every schema field must be flat, carry .default(...), and use .describe('...') — fields become the template's editable variables. (2) Imports ONLY from 'remotion', 'react' and 'zod'. No other packages, no relative imports. (3) ALL animation via useCurrentFrame() + useVideoConfig() with interpolate() and spring(). CSS transitions/animations and Tailwind are forbidden. Always clamp: { extrapolateLeft: 'clamp', extrapolateRight: 'clamp' }. (4) Layout with , inline styles, system font stacks. If you use , it MUST carry layout="none" and integer literals for from/durationInFrames. (5) No external assets: no fetch, no hard-coded media URLs. Media only via optional string props rendered with from 'remotion'. Use remotion's random(seed), never Math.random(). (6) Never reference require, eval, dynamic import(), fs, child_process, or the word 'process' — not even in comments or identifiers.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"name": "<name>",
"tsx": "<tsx>",
"context": "<context>"
},
"name": "pictify_create_video_template"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fps | No | Frames per second | |
| tsx | Yes | The complete single-file Remotion scene source, following the rules above | |
| name | Yes | Template name shown in the dashboard | |
| width | No | Canvas width in pixels | |
| height | No | Canvas height in pixels | |
| context | Yes | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization." | |
| durationSeconds | No | Video length in seconds (1-60) |