dify工作流+github actions实现翻译并创建PR

bookmark-summary启发,制作了一套翻译流程,使用浏览器插件收藏文章后,自动翻译并提交pr到github仓库,流程如下:

流程

浏览器插件Memo

浏览器收藏页面,支持添加标签,可以根据标签执行不同的流程,需要翻译的文章我会在增加一个#translate标签

github actions

github actions会监听到浏览器插件的收藏事件(仓库中markdown文件会新增一行),然后调用dify workflow翻译文章,翻译结果会提交到github仓库

dify workflow

使用jina抓取网页内容,返回markdown格式,在调用gpt翻译

创建pr

使用github actions创建pr

配置:

yaml 复制代码
# 创建pr
- name: pr blog
  uses: peter-evans/create-pull-request@v7
  with:
    path: blog # 需要pr的repo位置
    token: ${{ secrets.GH_TOKEN }} # github accesstoken
    commit-message: 提交翻译到仓库
    committer: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
    author: ${{ github.actor }} <${{ github.actor_id }}+${{ github.actor }}@users.noreply.github.com>
    signoff: false
    branch: posts
    delete-branch: true
    title: "提交翻译到仓库"
    body: |
      新增翻译内容
      - Auto-generated by [create-pull-request][1]
      [1]: https://github.com/peter-evans/create-pull-request
    labels: |
      automated pr : translate
    draft: false
注意

在一个github action 任务中checkout出2个仓库时有些需要注意的点,防止踩坑:

  • pr的目标仓库需要先设置允许访问(设置中打开 "Accessible from repositories owned by the user xxx"),否则会报错
yaml 复制代码
- name: Checkout bookmark
  uses: actions/checkout@v4
  with:
    path: bookmark

# 需要再blog repo打开配置 Access-> Accessible from repositories owned by the user 'yiGmMk'
- name: Checkout blog
  uses: actions/checkout@v4
  with:
    token: ${{ secrets.GH_TOKEN }}
    path: blog
    repository: yiGmMk/blog
    ref: master

效果

效果

工具

在这个流程中使用的工具:

相关推荐
旅之灵夫10 小时前
【GitHub项目推荐--HyperFrames:用 HTML 写视频,为 AI Agent 而生的渲染框架】
github
峰向AI10 小时前
阿里内部用了2年的代码审查工具开源了:21k Star背后的「工业级」设计
github
zandy101111 小时前
2026vibe coding背后 :Kimi Code、Cursor、Claude Code、GitHub Copilot等五款工具架构演进全面分析
架构·github·copilot
自动化和Linux11 小时前
【win11+virtual Box简单安装centos7,不使用GPT分区】
linux·gpt·虚拟现实
zandy101111 小时前
网络支付合规三重门:Kimi Code、Cursor、GitHub Copilot等五款AI编程工具国内实战测评
github·copilot·ai编程
ssshooter13 小时前
Tauri + GitHub Actions 自动化发布 Android APK 技术总结
android·github·android studio
wdfk_prog13 小时前
GitHub push 失败:如何扫描并清理 Git 历史中的大文件
git·elasticsearch·github
Da Zeng15 小时前
快速搭建GitHub Page
github
明月_清风15 小时前
GitHub Actions 从入门到实战:一文搞懂 CI/CD 自动化
后端·ci/cd·github
QUOR15 小时前
Zorv AI 终端:基于 proot 沙箱的 Android 终端模拟器架构全解析
github