@magic-resume/resume-schema 是”简历的形状”的唯一真源。Web 应用、MCP 服务器、每一套模板、每一个 AI 工具都遵循它。Schema 里没有的字段,就是不存在的字段。

导出
basicsSchema、experienceSchema 等)也单独导出,以便调用方单独校验某一节。
构建产物
构建步骤做 两件事:tsc产生dist/和类型声明。scripts/write-schema.mjs生成dist/schema.json—— 一份静态的 JSON Schema 产物。
dist/schema.json 就是 MCP 服务器作为 resource 暴露给 AI 工具的东西,让模型可以在运行时不再调用就能知道简历形状。
Patch 流程
Mutation 都是 JSON Patch(RFC 6902)。一次往返:MCP 服务器里有
preview_resume_patch 工具,就是给你做这种”校验但不动数据”的环节用的。在执行任何破坏性操作前,AI 工具应该先调它。加一个新字段
- 把它加到
packages/resume-schema/src/里合适的子 Schema。 - 如果是必需字段,更新
defaultResume和sampleResume。 - 重新构建:
pnpm --filter @magic-resume/resume-schema build。 - 更新
packages/resume-templates里使用该字段的模板,以及apps/web/src/components/editor/里的编辑表单。 - 如果字段影响 AI 编辑,在
packages/mcp/src/resume-tools.ts的get_resume_editing_guide里加上对应指引。
加一个新模板 ID
模板 ID 是 Schema 的一部分(templateSchema 是基于 templateIds 的 Zod enum)。新增时,三个地方必须同步:
packages/resume-schema里的templateIdspackages/resume-templates/src/registry.ts里的templateRegistryapps/web/public/templates/jpg/{id}.jpg处的缩略图
