Expand description
forza — autonomous GitHub issue runner.
Turns GitHub issues into pull requests through a staged pipeline. Agent-agnostic design with three separated layers:
GitHub (issues/PRs) --> Orchestrator --> Agent (claude/codex/etc)
platform layer domain layer execution layer§Architecture
- Platform (
github): Repository adapter for issues, PRs, comments, labels - Domain (
policy,triage,planner,workflow): Orchestration logic - Execution (
executor,isolation): Agent invocation and work isolation
Re-exports§
pub use config::RunnerConfig;pub use orchestrator::process_batch;pub use orchestrator::process_issue;pub use orchestrator::process_pr_with_config;
Modules§
- api
- REST API server — HTTP interface for forza operations.
- config
- Configuration — the route-based config model.
- deps
- Dependency validation — checks that required external tools are available on startup.
- error
- Error types for forza.
- executor
- Executor — agent-agnostic task execution.
- github
- GitHub platform adapter — issues, PRs, comments, labels.
- isolation
- Work isolation — git worktrees and cleanup.
- mcp
- MCP server — exposes forza capabilities over the Model Context Protocol.
- notifications
- Notification channels fired on run completion.
- orchestrator
- Orchestrator — the main pipeline that processes a single issue end-to-end.
- planner
- Planner — turn an issue + workflow template into an execution plan.
- policy
- Repository policy — per-repo configuration controlling automation behavior.
- state
- Run state — persisted records of execution attempts.
- triage
- Triage engine — evaluate issue readiness and decide next action.
- workflow
- Workflow templates — configurable stage chains per issue type.