fro-bot/Fro Bot Agent
AI agent with persistent memory for GitHub automation
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jul 11, 2026
- License
- MIT
Pinned Snippet
uses: fro-bot/agent@e7453bd14392acf2bc609ff96561bd323dcb8b44 # v0.85.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| github-token | GitHub token (App installation token or PAT) with write permissions | yes | — |
| auth-json | JSON object mapping provider IDs to auth configs | yes | — |
| prompt | Custom prompt for the agent | no | — |
| output-mode | Requested delivery mode for schedule/workflow_dispatch runs only. Values: auto, working-dir, branch-pr. Default: auto. Advisory only: reflects the requested/resolved contract, not observed delivery behavior. | no | auto |
| session-retention | Number of sessions to retain (default 50) | no | 50 |
| s3-backup | Enable S3 write-through backup | no | false |
| s3-bucket | S3 bucket for backup (required if s3-backup is true) | no | — |
| aws-region | AWS region for S3 bucket | no | — |
| s3-endpoint | Custom S3-compatible endpoint URL (e.g., https://account.r2.cloudflarestorage.com). Use for Cloudflare R2, Backblaze B2, MinIO, etc. Must be HTTPS unless s3-allow-insecure-endpoint is true. | no | — |
| s3-prefix | Prefix for all S3 keys. Defaults to 'fro-bot-state'. | no | fro-bot-state |
| s3-expected-bucket-owner | AWS account ID of the expected bucket owner. When set, protects against bucket-name squatting. | no | — |
| s3-allow-insecure-endpoint | Allow HTTP (non-HTTPS) S3 endpoints. Only for local MinIO dev. Default: false. | no | false |
| s3-sse-kms-key-id | KMS key ID for SSE-KMS encryption. When set, uses customer-managed key instead of AWS-managed default. | no | — |
| s3-sse-encryption | Server-side encryption: 'aws:kms' or 'AES256'. Default: aws:kms for AWS S3, AES256 for custom endpoints. | no | — |
| agent | Agent to use. When unset, uses OpenCode build agent. Must be a primary agent, not subagent. | no | — |
| enable-omo | Enable Oh My OpenAgent (oMo) for extended provider and agent support. Default: false. | no | false |
| enable-omo-slim | Enable OMO Slim (oh-my-opencode-slim) orchestration. Mutually exclusive with enable-omo. Default: false. | no | false |
| model | Model override (format: provider/model). If not set, uses agent's configured model. | no | — |
| timeout | Execution timeout in milliseconds for OpenCode execution only (not the whole GitHub Actions job). 0 = no Action-internal execution deadline. Default: 1800000 (30 minutes). Set the job-level timeout-minutes as the whole-job backstop, with headroom beyond this value for setup, fallback response delivery, and cleanup. | no | 1800000 |
| opencode-version | OpenCode CLI version to install if auto-setup is needed. Defaults to version pinned in source code if not set. | no | — |
| omo-version | oMo (Oh My OpenAgent) version to install if auto-setup is needed. Defaults to version pinned in source code if not set. | no | — |
| systematic-version | Systematic plugin version to register with OpenCode. Defaults to version pinned in source code if not set. | no | — |
| skip-cache | Skip session cache restore (default false) | no | false |
| omo-providers | Comma-separated list of oMo providers to enable. Values: claude, claude-max20, copilot, gemini, openai, opencode-zen, zai-coding-plan, kimi-for-coding. Default: empty (uses free OpenCode models) | no | — |
| omo-slim-preset | OMO Slim preset to install (single name). Values: openai, opencode-go. Only applies when enable-omo-slim is true. Default: openai. | no | openai |
| opencode-config | JSON object to merge into the OpenCode config (OPENCODE_CONFIG_CONTENT). Values are merged on top of the autoupdate:false baseline; user values win on conflicts. | no | — |
| systematic-config | Custom Systematic plugin configuration JSON (deep-merged with existing config). | no | — |
| dedup-window | Deduplication window in milliseconds. Skip execution if the agent already ran for the same PR or issue within this window. 0 = disabled. Default: 600000 (10 minutes). Note: dedup is best-effort suppression via cache sentinels, not an in-flight lock. Use workflow-level concurrency groups to prevent overlapping same-entity runs. | no | 600000 |
| response-mode | Controls whether the agent posts GitHub comments/reviews. Values: github, none. 'github' (default): agent posts exactly one comment or review per run via the gh CLI. 'none': agent does not post any GitHub comments, reviews, issues, discussions, reactions, or labels; the final assistant message and job log are the response surface. Use 'none' for non-posting automation runs (e.g., LLM merge, code generation). | no | github |
| review-skip-label | Label name that suppresses automatic PR-event reviews when present on a PR (case-insensitive). Set empty to disable. | no | skip-agent-review |
Outputs
| name | description |
|---|---|
| session-id | OpenCode session ID used for this run |
| resolved-output-mode | Resolved delivery mode for this run (working-dir, branch-pr, or empty string) |
| cache-status | Cache restore status (hit/miss/corrupted) |
| duration | Run duration in seconds |