Skip to content

iterate evolution

iterate evolution #218

Workflow file for this run

name: iterate evolution
on:
schedule:
- cron: '0 6,18 * * *' # Every 12 hours (11:30 AM & 11:30 PM IST)
workflow_dispatch:
permissions:
contents: write
issues: write
pull-requests: write
jobs:
evolve:
runs-on: ubuntu-latest
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
steps:
- name: Generate GitHub App token
id: generate-token
uses: tibdex/github-app-token@v2
with:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.APP_PRIVATE_KEY }}
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ steps.generate-token.outputs.token }}
- name: Clone iteragent for local replace
run: |
cd ..
git clone --depth 1 --branch v1.6.0 https://github.com/GrayCodeAI/iteragent.git
cd iterate
- uses: actions/setup-go@v5
with:
go-version: '1.25'
cache: false
- name: Configure git
run: |
git config user.name "iterate-evolve[bot]"
git config user.email "iterate-evolve[bot]@users.noreply.github.com"
- name: Run evolution with OpenCode
env:
OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
OPENCODE_API_KEY_2: ${{ secrets.OPENCODE_API_KEY_2 }}
ITERATE_PROVIDER: opencode
ITERATE_MODEL: mimo-v2-pro-free
GH_TOKEN: ${{ steps.generate-token.outputs.token }}
GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }}
DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
run: |
bash scripts/evolution/evolve.sh
- name: Show log
if: always()
run: cat .iterate/evolution.log 2>/dev/null || echo "(no log)"