{
  "title": "Claude Code and Codex GitHub Actions on Sengi: labels, prices and cost",
  "page": "https://sengi.run/blog/claude-code-github-actions",
  "publisher": "Sengi",
  "last_checked": "2026-10-27",
  "actions": {
    "claude_code": {
      "uses": "anthropics/claude-code-action@v1",
      "setup": "/install-github-app in Claude Code, or install the Claude GitHub App and add the secret by hand",
      "secrets": ["ANTHROPIC_API_KEY", "CLAUDE_CODE_OAUTH_TOKEN"],
      "trigger_phrase_default": "@claude",
      "modes": {"interactive": "no prompt input: responds to @claude in issues, PR comments and reviews", "automation": "prompt input: runs on any GitHub event, including a schedule"},
      "default_runs_on_in_examples": "ubuntu-latest"
    },
    "codex": {
      "uses": "openai/codex-action@v1",
      "secrets": ["OPENAI_API_KEY"],
      "default_safety_strategy": "drop-sudo",
      "permission_profile_for_workspace_edits": ":workspace",
      "default_runs_on_in_examples": "ubuntu-latest",
      "extra_step_on_sengi": "sudo sysctl -q -w kernel.unprivileged_userns_clone=1 || true; sudo sysctl -q -w kernel.apparmor_restrict_unprivileged_userns=0 || true",
      "why_extra_step": "codex-action sets these two sysctls itself only when runner.environment is github-hosted; Sengi runners report self-hosted"
    }
  },
  "switch": {"from": "runs-on: ubuntu-latest", "to": "runs-on: sengi-standard-2-ubuntu-2404"},
  "price_per_minute": {
    "currency": "USD",
    "unit": "USD/min",
    "rows": [
      {"size": "2 vCPU", "sengi_label": "sengi-standard-2-ubuntu-2404", "github": 0.006, "sengi": 0.003, "sengi_partner_rate": 0.0018},
      {"size": "4 vCPU", "sengi_label": "sengi-standard-4-ubuntu-2404", "github": 0.012, "sengi": 0.006, "sengi_partner_rate": "ask"},
      {"size": "8 vCPU", "sengi_label": "sengi-standard-8-ubuntu-2404", "github": 0.022, "sengi": 0.012, "sengi_partner_rate": "ask"}
    ]
  },
  "cost_of_10000_agent_minutes": {
    "currency": "USD",
    "job_minutes": 10000,
    "formula": "job_minutes * usd_per_minute",
    "rows": [
      {"size": "2 vCPU", "github": 60, "sengi": 30},
      {"size": "4 vCPU", "github": 120, "sengi": 60},
      {"size": "8 vCPU", "github": 220, "sengi": 120}
    ]
  },
  "sengi_included_minutes_per_month": {"2 vCPU": 3000, "4 vCPU": 1500, "8 vCPU": 750},
  "one_repo_jacks_med_oncall": {
    "period": "2026-10-01/2026-10-26",
    "job_minutes": 370650,
    "usd_github_2_vcpu": 2224,
    "usd_sengi_2_vcpu": 1112,
    "usd_sengi_partner_rate": 667,
    "page": "https://sengi.run/blog/ai-coding-agents-github-actions-bill",
    "data": "https://sengi.run/data/ai-coding-agents-github-actions-bill.json"
  },
  "partner_rate": {
    "usd_per_minute_2_vcpu": 0.0018,
    "for": "teams running coding agents at volume",
    "contact": "mailto:ops@sengi.run?subject=Sengi%20partner%20rate"
  },
  "migrate_with_an_agent": "https://sengi.run/agent",
  "sources": {
    "claude_code_github_actions_docs": "https://code.claude.com/docs/en/github-actions",
    "claude_code_action": "https://github.com/anthropics/claude-code-action",
    "codex_action": "https://github.com/openai/codex-action",
    "github_runner_prices": "https://docs.github.com/en/billing/reference/actions-runner-pricing"
  }
}
