整合

你可以在指令碼和 CI 中執行單一任務,也可以把 CrystalCode.Engine 接入自己的前端。

執行單一任務

crystal run 執行一次任務後結束,適合指令碼或 CI。Windows 上使用 CrystalCode。

Shell
crystal run --workspace . "Fix the failing test."

GitHub Actions

crystal run 不需要互動式終端機。工作流程可以先安裝 Crystal Code,再於儲存庫中執行一次任務,並在結束碼非零時讓工作失敗。

如果不使用整合套件,下面的工作流程會安裝 Crystal Code,再於儲存庫中執行一次任務。供應商金鑰放在儲存庫的 Secret 中。這裡直接呼叫 CrystalCode,因為 CI 執行器不會載入安裝指令碼設定的 shell 別名。

GitHub Actions
name: Crystal Code review
on: pull_request
permissions:
  contents: read
jobs:
  review:
    runs-on: ubuntu-latest
    timeout-minutes: 15
    steps:
      - uses: actions/checkout@v4
      - name: Install Crystal Code
        run: |
          curl --fail --location --show-error https://crystalcode.ink/install.sh | sh
          echo "$HOME/.crystal/binaries/code" >> "$GITHUB_PATH"
      - name: Review changes
        env:
          DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
        run: |
          CrystalCode run --workspace . --workspace-trust off \
            --plan --duration 600 \
            "Review the changes on this branch and list the risks."

範例用 --plan 做唯讀審查,並用 --workspace-trust off,因為 CI 目錄無法回應信任提示。這不會把該目錄記為已信任。

使用者指南:無介面執行

使用者指南:供應商認證資訊

以引擎為基礎打造

引擎是一個類別庫。其他前端可以直接引用,不必複製程式碼。模型端點由你提供。