簡介
今天,我們分享了一個使用 vm0-ai/run-action 的實用範例。這是一個 GitHub Action,讓您可以直接從 CI/CD 流水線觸發 VM0 工作流程。此整合將代理自動化帶入您的 GitHub 儲存庫,讓您能輕鬆排程並自動執行 AI 代理。
什麼是 VM0
VM0 是一個用於建構 AI 代理的代理執行環境。它提供基礎架構,用於協調代理技能、在沙箱中執行代理,以及使用自然語言定義代理工作流程。
什麼是 GitHub Actions
GitHub Actions 是 GitHub 內建的自動化平台,讓您可以根據事件或排程執行工作流程。透過 cron 任務,您可以按固定間隔自動執行任務,例如執行 CI 流水線、背景作業或 AI 代理。
從本機到雲端:使用 GitHub Actions 執行 VM0 工作流程
過去,執行 VM0 工作流程需要在本機執行 vm0 run 指令。雖然這在開發和測試時運作良好(VM0 目前也還在 beta 階段!),但在以下方面仍存在挑戰:
- 排程自動化 — 在特定時間執行代理需要手動介入
- CI/CD 整合 — 將代理納入部署流水線較為複雜
- 團隊協作 — 跨團隊共享與協調代理執行
- 正式環境部署 — 在正式環境中管理代理
有了全新的 vm0-ai/run-action,您現在可以使用簡單的 Action 設定,直接從 GitHub Actions 觸發 VM0 工作流程。不再需要手動執行指令,只需描述您的代理任務,讓 GitHub 負責排程與執行。
入門:您的第一個 VM0 GitHub Action
在 GitHub Actions 中使用 VM0 非常簡單。以下是一個基本範例:
- name: Run VM0 Agent
uses: vm0-ai/run-action@v1
with:
agent: my-agent
prompt: "Build and test the project"
artifact-name: my-artifact
vm0-token: ${{ secrets.VM0_TOKEN }}
設定驗證
若要讓 GitHub Actions 通過 VM0 的驗證,您需要在儲存庫中設定 VM0_TOKEN 密鑰。這是一次性的設定流程:
# Generate a VM0 authentication token and store it in GitHub Secrets
vm0 auth setup-token | gh secret set VM0_TOKEN
此指令會從您本機的 VM0 驗證資訊產生一個 token,並安全地儲存在您 GitHub 儲存庫的密鑰中,供您的工作流程使用。
實際案例:自動化內容發布
讓我們透過一個完整範例,展示 VM0 GitHub Actions 整合的強大之處。我們將建立一個自動化內容農場,每天將 AI 新聞文章發布到 dev.to。
情境說明
我們在 vm0-cookbooks/104-content-farm 有一個現有的 VM0 工作流程,可收集每日 AI 新聞並發布文章。現在,我們希望這個工作流程能按排程自動執行。
步驟一:建立 GitHub 儲存庫
首先,建立一個新的儲存庫來存放您的自動化工作流程:
# Create and set up your repository
git clone <https://github.com/yourusername/vm0-content-farm>
cd vm0-content-farm
步驟二:設定工作流程
在您的儲存庫中建立 .github/workflows/daily.yaml:
name: Content Farm
on:
schedule:
# Run at 10:00 AM UTC+8 (2:00 AM UTC) every day
- cron: '0 2 * * *'
workflow_dispatch:
jobs:
run-content-farm:
runs-on: ubuntu-latest
steps:
- name: Run Content Farm Agent
uses: vm0-ai/run-action@v1
with:
agent: content-farm
prompt: "Write an article about recent AI developments, providing brief summaries of each story to help readers quickly browse the news over their morning coffee"
artifact-name: content-farm-output
vm0-token: ${{ secrets.VM0_TOKEN }}
secrets: |
CLAUDE_CODE_OAUTH_TOKEN=${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
FAL_KEY=${{ secrets.FAL_KEY }}
DEVTO_API_KEY=${{ secrets.DEVTO_API_KEY }}
讓我們拆解幾個關鍵元件:
- schedule:使用 cron 語法,每天在 PST,UTC-8 凌晨 2:00 執行
- workflow_dispatch:允許手動觸發以進行測試
- agent:指定要執行的 VM0 代理
- prompt:提供代理應執行任務的指示
- secrets:將所需的 API 金鑰和 token 傳遞給代理
步驟三:設定密鑰
在您的儲存庫中設定必要的驗證 token:
# Set up Claude Code authentication
claude setup-token
gh secret set CLAUDE_CODE_OAUTH_TOKEN --body "your-claude-token"
# Set up other required API keys
gh secret set FAL_KEY --body "your-fal-key"
gh secret set DEVTO_API_KEY --body "your-devto-api-key"
安全性說明:這些密鑰安全地儲存在 GitHub 中,只有您的工作流程可以存取。它們不會在日誌或工作流程輸出中暴露。
步驟四:新增自動部署工作流程
建立 .github/workflows/publish.yml
name: Publish Agent
on:
push:
branches:
- main
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: vm0-ai/compose-action@v1
with:
vm0-token: ${{ secrets.VM0_TOKEN }}
每次推送到 main 分支時,這會自動部署您的代理設定。不再需要手動執行 vm0 compose。
步驟五:部署與測試
Deploy:
# Get the content-farm agent configuration
git clone https://github.com/vm0-ai/vm0-cookbooks
cp -r vm0-cookbooks/104-content-farm/* ./
# Push to trigger auto-deployment
git add .
git commit -m "feat: add content farm agent"
git push origin main
Test:
# Manually trigger the workflow
gh workflow run scheduled-run.yml
就這樣!您的代理現在會在推送時自動部署,並按排程執行。
結語
VM0 GitHub Actions 整合幫助您將 AI 代理融入現有的開發工作流程。
您不再需要手動執行代理,或將其視為一次性腳本,而是可以直接在 CI/CD 流水線中按排程執行它們。這讓以下事項變得更加容易:
- 自動執行重複性任務,無需人工盯守
- 將代理整合進您一般的開發與發布流程
- 與團隊共享並迭代代理工作流程
- 以更少的意外情況交付由代理驅動的自動化
無論您是在發布內容、產生報告、審查程式碼,還是自動化內部工作流程,VM0 GitHub Actions 都為您提供一種簡單可靠的方式,在需要時執行 AI 代理。
若要開始使用,請探索我們的 cookbooks 儲存庫,其中包含可直接使用的範例,並在您自己的 GitHub 工作流程中試用
其他資源
- VM0 文件:vm0.ai
- GitHub Action:vm0-ai/run-action
- Cookbooks:vm0-ai/vm0-cookbooks
- GitHub 儲存庫:vm0-ai/vm0





