devin ai可批量统一api响应格式为code/message/data三层结构:需先授权连接git仓库并指定分支,再发送含文件定位、响应包裹、错误处理及工具函数生成的精准指令,最后人工核对类型定义并确认提交pr。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要让Devin AI在真实项目中同时修改多个文件,把散落在各处的API响应结构统一成标准格式(如code/message/data三层结构),而不是逐个手动改controller、service、utils。
确认Devin已接入你的代码仓库
登录 app.devin.ai → 进入目标项目空间 → 点击右上角「Settings」→ 在「Code Repositories」中检查你的Git仓库是否显示为「Connected」且状态为绿色。如果显示「Pending authorization」,需点击「Authorize」完成OAuth流程。这一步不完成,Devin无法读取或写入任何文件。
Devin只能操作它被明确授权访问的仓库分支,默认只读主分支(main/master)。若要修改feature分支,必须在任务指令中明确写出分支名,例如:“请在feature/api-standardize分支上执行重构”。
构造精准的多文件编辑指令
在Devin Web控制台的输入框中,一次性发送完整指令,不要分多次提问:
“请将本项目中所有HTTP接口的返回格式统一为标准结构:{code: number, message: string, data: any}。具体操作包括:
① 找出所有导出函数名含‘handler’、‘controller’、‘api’或返回值含‘res.json’/‘ctx.body’的.js/.ts文件;
② 对每个匹配文件,定位到实际调用res.json()、ctx.body、res.send()等响应方法的行;
③ 将原始返回值包裹进{code: 200, message: 'success', data: 原值}对象;
④ 若原逻辑有错误处理(如try-catch中的res.status(500).json),请同步改为{code: 500, message: err.message || 'Internal error', data: null};
⑤ 修改完成后,在根目录新增文件src/utils/formatResponse.ts,导出一个通用函数formatResponse(code, message, data)。”
这个指令明确限定了文件范围、修改位置、替换逻辑和新增内容,避免Devin自由发挥导致格式不一致。它不接受模糊表述如“优化一下返回”或“让接口更规范”,这类说法会让Devin生成不可控的中间层封装,反而增加耦合。
验证与落地执行
Devin会先列出它识别出的待修改文件(例如:src/controllers/user.ts、src/routes/auth.js、src/handlers/payment.ts),并给出每处修改前后的代码对比。你必须逐行核对——【关键点:Devin不会自动跳过已有类型定义冲突】。例如,若原user.ts中某个接口返回类型是interface UserResponse { name: string },而你要求改成{ code: number; message: string; data: UserResponse },但未同步更新类型声明,Devin可能忽略类型修正,导致TS编译失败。
确认无误后,点击「Apply Changes」。Devin将直接提交PR到指定分支,标题自动设为「chore(api): standardize response format across controllers」,描述中包含所有修改文件路径及变更摘要。
这一步操作起来很简单,直接把文件拖进去就行。











