# MotionGit > MotionGit é um padrão aberto e plataforma de colaboração para criação de vídeo com IA. Um modelo MotionGit (arquivo .motion) é um vídeo que você pode recriar: um pacote ZIP contendo código-fonte de renderização, texto e ativos substituíveis, ramificações de estilo, requisitos de tempo de execução, instruções e licenças. Envie para um assistente de IA, adicione seu conteúdo e exporte seu próprio vídeo. Identificação: o motion.json raiz declara "format": "motiongit-template". Leia nesta ordem: motion.json → a seção "Instruções para IA" no README.md → params.schema.json → ativos e licenças. Inspecione os dados antes de executar o código do pacote. ## Especificação - [Rascunho da especificação v0.1 (Markdown)](https://motiongit.cn/spec.md): estrutura do pacote, manifesto raiz, contrato de parâmetros, semântica de tempo de execução, segurança e legibilidade para IA - [JSON Schema do motion.json](https://motiongit.cn/schema/motion/0.1.json): URL permanente; versões antigas permanecem disponíveis - [Instruções para IA](https://motiongit.cn/ai.md): texto de entrega, etapas de processamento e limites de segurança ## Amostras - [Pacote de amostra válido](https://motiongit.cn/spec/samples/hello-motion.motion): deve passar - [有效样例:三个样式分支](https://motiongit.cn/spec/samples/valid-multi-style.motion): 预期通过 - [有效样例:竖屏 1080×1920](https://motiongit.cn/spec/samples/valid-portrait.motion): 预期通过 - [有效样例:方形 1080×1080](https://motiongit.cn/spec/samples/valid-square.motion): 预期通过 - [有效样例:含素材清单与 SVG 素材](https://motiongit.cn/spec/samples/valid-asset-manifest.motion): 预期通过 - [有效样例:时长跟随配音(4–60 秒)](https://motiongit.cn/spec/samples/valid-fit-voiceover.motion): 预期通过 - [有效样例:含 MotionGit API 能力声明](https://motiongit.cn/spec/samples/valid-api-capabilities.motion): 预期通过 - [无效样例:缺少根 motion.json](https://motiongit.cn/spec/samples/invalid-missing-manifest.motion): 预期错误 manifest.missing - [无效样例:多套了一层目录](https://motiongit.cn/spec/samples/invalid-nested-root.motion): 预期错误 manifest.missing - [无效样例:format 标识错误](https://motiongit.cn/spec/samples/invalid-wrong-format.motion): 预期错误 manifest.format - [无效样例:源码里带了 API 密钥](https://motiongit.cn/spec/samples/invalid-secret-leak.motion): 预期错误 secret.openai - [无效样例:带了本机绝对路径](https://motiongit.cn/spec/samples/invalid-local-path.motion): 预期错误 path.abs-unix - [无效样例:带了手机号](https://motiongit.cn/spec/samples/invalid-phone-number.motion): 预期错误 pii.phone-cn - [无效样例:打包了 .env](https://motiongit.cn/spec/samples/invalid-env-file.motion): 预期错误 content.secret-file - [无效样例:包含会被 AI 自动加载的 CLAUDE.md](https://motiongit.cn/spec/samples/invalid-agent-instructions.motion): 预期错误 content.auto-loaded - [无效样例:把个人 API Key 一起分发了](https://motiongit.cn/spec/samples/invalid-personal-key.motion): 预期错误 content.personal-key - [无效样例:ZIP 条目路径越界](https://motiongit.cn/spec/samples/invalid-path-traversal.motion): 预期错误 zip.read - [无效样例:文件路径大小写冲突](https://motiongit.cn/spec/samples/invalid-case-collision.motion): 预期错误 path.case-collision - [无效样例:异常压缩比(11 MiB 小样)](https://motiongit.cn/spec/samples/invalid-compression-bomb.motion): 预期错误 zip.bomb - [无效样例:样式分支预设文件缺失](https://motiongit.cn/spec/samples/invalid-variant-preset-missing.motion): 预期错误 variants.preset-missing - [无效样例:样式分支使用未声明参数](https://motiongit.cn/spec/samples/invalid-variant-unknown-param.motion): 预期错误 variants.unknown-param - [无效样例:样式分支不是数组](https://motiongit.cn/spec/samples/invalid-variants-shape.motion): 预期错误 variants.shape - [无效样例:超过 24 个样式分支](https://motiongit.cn/spec/samples/invalid-variants-too-many.motion): 预期错误 variants.too-many - [无效样例:样式分支 ID 不合法](https://motiongit.cn/spec/samples/invalid-variant-id.motion): 预期错误 variants.id - [无效样例:样式分支 ID 重复](https://motiongit.cn/spec/samples/invalid-variant-duplicate.motion): 预期错误 variants.duplicate - [无效样例:样式分支名称为空](https://motiongit.cn/spec/samples/invalid-variant-name.motion): 预期错误 variants.name - [无效样例:样式分支没有 preset 字段](https://motiongit.cn/spec/samples/invalid-variant-preset-field.motion): 预期错误 variants.preset - [无效样例:样式分支预设不是严格 JSON](https://motiongit.cn/spec/samples/invalid-variant-preset-json.motion): 预期错误 variants.preset-json - [无效样例:样式分支预览文件缺失](https://motiongit.cn/spec/samples/invalid-variant-preview-missing.motion): 预期错误 variants.preview-missing - [无效样例:根清单不是严格 JSON](https://motiongit.cn/spec/samples/invalid-manifest-json.motion): 预期错误 manifest.json - [无效样例:根清单缺少 runtime.entry](https://motiongit.cn/spec/samples/invalid-manifest-required.motion): 预期错误 manifest.required - [无效样例:模板 ID 不合法](https://motiongit.cn/spec/samples/invalid-manifest-id.motion): 预期错误 manifest.id - [无效样例:模板版本不是语义化版本](https://motiongit.cn/spec/samples/invalid-manifest-version.motion): 预期错误 manifest.version - [无效样例:参数声明顶层不是 object](https://motiongit.cn/spec/samples/invalid-params-shape.motion): 预期错误 params.shape - [无效样例:清单引用越界路径](https://motiongit.cn/spec/samples/invalid-manifest-ref-unsafe.motion): 预期错误 manifest.ref-unsafe - [无效样例:引导引用了不存在的参数](https://motiongit.cn/spec/samples/invalid-guide-unknown-param.motion): 预期错误 guide.param-unknown - [无效样例:时长可变但没有时长参数](https://motiongit.cn/spec/samples/invalid-guide-duration-param.motion): 预期错误 guide.duration - [无效样例:素材角色不在统一角色表中](https://motiongit.cn/spec/samples/invalid-guide-role.motion): 预期错误 guide.role - [无效样例:可选素材没写缺失时的处理](https://motiongit.cn/spec/samples/invalid-guide-if-missing.motion): 预期错误 guide.materials - [无效样例:ZIP 中包含符号链接](https://motiongit.cn/spec/samples/invalid-symlink-entry.motion): 预期错误 path.symlink ## Ferramentas - [MotionGit Skill](https://motiongit.cn/skill): empacotamento local, limpeza de dados pessoais e validação (formato Agent Skills) - [API MotionGit](https://motiongit.cn/developers.md): gerar imagens a partir de texto; encontrar e baixar adesivos animados. Autenticação: Bearer mgk_…; arquivo de chave do pacote: motiongit.key.json ## Opcional - [Galeria de modelos](https://motiongit.cn/templates)