用途:把 eve 布局的项目编译为 Zavu 智能体,或从 GitHub 一步导入并部署。
主要映射:agent/instructions.md 作为系统提示词(必需);agent/agent.ts 的字符串 model 作为模型,非字符串配置回退默认并告警;agent/tools/*.ts(默认导出 defineTool)按文件名生成同名工具;Zod / JSON Schema 的 inputSchema 转为 JSON Schema 参数;package.json 依赖在服务端安装,eve 包本身被编译掉。
用法:从 GitHub 导入并部署:npx zavudev import owner/repo --sender sndr_123;支持分支与 monorepo:npx zavudev import owner/repo#branch --root apps/agent;私有仓库需在环境变量设置 GITHUB_TOKEN(仅发送给 GitHub)。部署本地项目:cd my-eve-agent && npx zavudev deploy --sender sndr_123。sender 可用 --sender 内联,或用函数密钥 npx zavudev fn secrets set SENDER_ID sndr_123;两者都没有时智能体可部署但保持未连接,需在控制台附加 sender。
限制:agent/channels/ 不需要(Zavu sender 即通道);agent/schedules/ 的 cron 暂不可用;agent/skills/ 运行时不加载,需并入 instructions.md 或知识库;agent/subagents/、agent/sandbox/、agent/connections/、evals/ 不支持;工具审批门与 toModelOutput 按工具忽略;agent.ts 的 reasoning、compaction、limits、modelOptions、outputSchema 被忽略,均会告警。工具在文本(SMS/WhatsApp/Telegram)、语音和 flow 工具步骤中运行,每次回复最多 5 轮工具调用;agents test 为干跑,不执行工具。
要求与排查:编译需项目可解析 esbuild(npm install -D esbuild),import 会自动安装,仅 --no-install 跳过;inputSchema 必须是对象 schema(z.object({...}) 或 type: "object" 的 JSON Schema),特殊 Zod 类型回退为宽松 schema 并告警。部署后用 npx zavudev agents list 获取 agent id,再用 npx zavudev agents test <agentId> --message "hi" 干跑(不投递、不计费)。修改后重新部署:npx zavudev deploy,reconcile 摘要(+ / ~ / = / -)反映变更。