Gemini销售找线索AI 评分 · 待评分AI 辅助编辑·未发现明显提示词注入风险n8n.io

n8n 自动化 AI 代码审查:Lint 检查 + Gemini 评分 + Google Sheets 记录 + Slack 通知

Google Sheets 输入代码 → n8n 触发 Lint 与 AI 双层审查 → 输出带红标修正结果与评分到表格并通知 Slack

有一点经验步骤流程提示词
给谁
软件工程师、QA 团队与技术负责人
你会得到
在 Google Sheets 中自动触发代码审查,获得 Lint 检查结果、AI 红标修正建议、0-10 综合评分,并推送摘要到 Slack
你需要
n8n · Google Sheets · Slack

硬约束

前置条件:n8n 实例;Google Sheets OAuth2 凭证(googleSheetsOAuth2Api);Slack OAuth2 凭证;可写入的 Google Sheet 权限。费用:n8n 自托管或云服务费用;Gemini API 调用费用按 Google 定价。输入:在指定 Google Sheet 的「対象コード」工作表新增或编辑包含 code 字段的行。输出:「レビュー結果」工作表追加审查记录;Slack 频道收到摘要。限制:模板中的 Lint 规则仅为示例(var、console.log、括号平衡),需按项目扩展;AI 提示词为日文+英文混合;未实测。

他们做了什么

模板作者 kazushi 在 n8n 上发布了一个工作流模板,将 Google Sheets 作为代码输入和审查结果的存储介质,通过 n8n 的 Google Sheets Trigger 轮询触发,依次执行 Lint 检查、AI Agent 审查(调用 Gemini)、结果格式化与聚合,最终将审查记录写回 Google Sheets 并向 Slack 发送摘要。

效果如何

作者报告该模板实现了「双层审查系统」:Lint 检查提供快速规则验证,AI 审查提供带严重级别分类和红标高亮的修正建议,最终输出 0-10 综合评分(来源自述,未经验证)。

值得知道

1. 模板中的 Lint 规则仅为示例(var、console.log、括号平衡),生产使用需扩展。2. AI Agent 提示词为日文+英文混合,如需纯中文/英文团队使用需改写。3. 依赖 Google Sheets OAuth2 凭证(googleSheetsOAuth2Api),需确保服务账号或 OAuth 应用有写入权限。4. 本站未实测该工作流,reproduction=not_tested。5. workflow.json 中可见节点名称和部分缓存 URL 为日文,实际使用时需匹配用户自己的工作表名称。

n8n 工作流模板

结构已检查 · 未实际运行

下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。

配置与测试清单

需要绑定的凭证

  • googleSheetsTrigger 节点:绑定Google Sheets OAuth2 凭证。
  • googleSheets 节点:绑定Google Sheets OAuth2 凭证。
  • lmChatGoogleGemini 节点:绑定Google 相关 OAuth2 凭证。
  • googleSheetsTool 节点:绑定Google Sheets OAuth2 凭证。
  • slack 节点:绑定Slack OAuth / Bot Token。

需要替换的配置

  • 源模板来自 n8n 公开库 #10034(约 16 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
  • Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。

测试输入与预期结果

  • 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
  • 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。

模板处理说明

  • 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
  • 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。

模板获取日期: 2026-10-24

步骤

  1. 连接凭证与替换占位符

    在 n8n 中连接 Google Sheets OAuth2 和 Slack OAuth2 凭证。打开模板后,将所有占位符替换为实际值: - `<YOUR_SPREADSHEET_ID>` → Google Sheet 文档 ID - `<YOUR_SHEET_GID_OR_NAME>` → 输入代码工作表名称(如「対象コード」)和审查结果工作表名称(如「レビュー結果」) - `<YOUR_SLACK_CHANNEL_ID>` → Slack 频道 ID 在 Google Sheets 节点中确认凭证已选中,Slack 节点中确认 authentication 为 oAuth2。

  2. 配置 AI Agent 与可选规约表

    确认 AI Agent 节点已连接 Google Gemini Chat Model 作为语言模型。检查「Get row(s) in sheet in Google Sheets」工具节点是否指向你的代码规约工作表(コード規約),该工具会被 AI Agent 调用以获取项目规范。如需调整,修改 documentId 和 sheetName 为实际值。

  3. 调整审查提示词与 Lint 规则(可选)

    根据项目需求,可修改 AI Agent 节点中的提示词或 Lint Check 函数节点的规则。提示词原文为日文+英文混合,包含 HTML 红标格式要求;Lint 规则当前仅检查 var、console.log 和括号平衡。扩展规则时,保持输出格式兼容(lintErrors 数组含 type 和 msg 字段,lintScore 为 0-10)。

    运行提示词 · 来源原文。AI Agent 节点的 text 参数(promptType=define)

    =Lint summary (consider in review):
    {{ JSON.stringify($('Lint Check').first().json.lintErrors) }}
    
    Lint score: {{ $('Lint Check').first().json.lintScore }} / 10
    
    =あなたはコードレビューの専門家です。以下のコードをレビューし、修正が必要な箇所を赤字で示してください。元のコードに対して、修正案を赤字(HTMLの<span style="color:red">タグ)で追記した形式で出力してください。
    
    {{ $json.reviewPrompt }}
    
    コード:
    {{ $('コード入力シート監視').item.json.code }}
    
    【Review Rules】
    - Classify issues as Critical / Major / Minor
    - Use <span style="color:red">red</span> for critical fixes; <span style="color:orange">orange</span> for minor suggestions
    - Append JSON at end: {"overall_score": <0-10 number>}
  4. 触发工作流:在表格输入代码

    在 Google Sheet 的「対象コード」工作表中新增一行,确保包含 code 字段(列名需与触发器配置匹配)。n8n 的 Google Sheets Trigger 节点(コード入力シート監視)会以每分钟轮询检测新增或编辑行,自动启动工作流。

  5. 查看双层审查执行过程

    工作流按以下顺序执行: 1. Lint Check 函数节点运行静态检查,输出 lintErrors(Critical/Major/Minor 分类)和 lintScore(0-10)。 2. AI Agent 节点将代码、Lint 摘要和规约表内容发送给 Gemini,要求返回带红标/橙标 HTML 的修正建议,并在末尾附加 {"overall_score": N} JSON。 3. Format Review Output 函数节点解析 AI 输出,提取 overall_score,与 lintScore 取平均得到 overallScore。 4. Aggregate Review Stats 函数节点统计各严重级别数量,生成 summaryText。

  6. 查看输出:表格记录与 Slack 通知

    审查完成后: - 「レビュー結果」工作表追加一行,包含 reviewedCode(AI 输出)、originalCode(原始代码)、timestamp(ISO 时间)。 - Slack 频道收到消息:「✅ Code Review Completed」+ 摘要(如 Critical:0 Major:1 Minor:2 / Score:7.5)。 检查 Google Sheets 和 Slack 节点执行日志确认无权限错误。若结果未写入,检查 spreadsheet ID、sheet name 和 OAuth 范围是否包含 spreadsheets 写入权限。

    运行提示词 · 来源原文。Post Review Summary 节点的 text 参数

    ={{ `✅ Code Review Completed\n${$json.summaryText}` }}

可复制提示词

搭建指导 · 本站建议版本。交给搭建助手,协助用户完成凭证配置、占位符替换和测试验证

这一段是提示词,页面不会在这里插入广告。

你是一个 n8n 工作流搭建助手。用户想要复现「AI 驱动的代码审查自动化」模板。请按以下顺序协助:
1. 确认用户已有 n8n 实例、Google Sheets OAuth2 凭证、Slack OAuth2 凭证。
2. 指导用户替换模板中的三个占位符:SPREADSHEET_ID、SHEET_GID_OR_NAME、SLACK_CHANNEL_ID。
3. 说明 Google Sheet 需包含「対象コード」(输入)和「レビュー結果」(输出)两个工作表,且输入表需有 code 列。
4. 如需扩展 Lint 规则,提示用户修改 Lint Check 函数节点的 functionCode。
5. 提醒用户激活工作流前先用测试行验证。

搭建前请确认 Google Cloud 项目中已启用 Google Sheets API,且 OAuth 同意屏幕包含 spreadsheets 范围。

来源

AI-powered code review with linting, red-marked corrections in Google Sheets & Slack · kazushi · n8n.io · 2025-10-22

留言与反馈

试过这个方法吗?分享效果、遇到的问题或改进建议。留言审核后公开,请勿填写敏感信息。

正在加载…

    相关用例