Install ProPR, or skip the server
Run npm install -g propr-cli and propr setup on a Linux Docker host (quickstart). ProPR Hosted runs a dedicated instance for you when you would rather not run one.
OpenAI's Symphony watches your issue tracker and keeps Codex on each ticket until it reaches a handoff state. ProPR runs any of five agents in isolation, from approved plan to pull request to follow-up commits.

Symphony is a scheduler and runner, and the workflow lives in a prompt. ProPR is the workflow: planning, execution, review, and follow-up run as product features on your infrastructure.
WORKFLOW.md prompt tells the agent how to move the ticket and land the PR.What you keep: your GitHub repositories and review process, and the ChatGPT plan or OpenAI API key ProPR runs through the same Codex.
| Symphony | ProPR |
|---|---|
| Tracker issue in an active state | GitHub issue with the AI label |
WORKFLOW.md prompt | Plan approval, review, and follow-up as product features; .propr/workflow.yml for repository rules |
| Workspace per issue | Isolated workspace per task |
| Codex app-server | Codex, or any of four other agents |
| Status dashboard and JSON API | Web UI, desktop app, CLI, MCP |
| Handoff state in the tracker | Pull request, plus a state label on the issue |
Run npm install -g propr-cli and propr setup on a Linux Docker host (quickstart). ProPR Hosted runs a dedicated instance for you when you would rather not run one.
Open the web UI, sign in with GitHub, and add the repository. Sign in Codex with your ChatGPT plan or OpenAI API key.
Add the AI label to the issues Symphony polled, then approve each plan.
Review the diff the way you review any pull request. A plain comment on it becomes the next commit on the same branch; /review posts scored findings and /fix applies them. The CLI playbook drives the whole loop from the terminal.
What stays with Symphony: Symphony polls Linear, Jira Cloud, Asana, and GitLab as well as GitHub Issues; ProPR works with GitHub only.
Symphony is an Apache-2.0 specification with an Elixir reference implementation. Its Elixir reference implementation polls Linear, GitHub Issues, Jira Cloud, Asana, or GitLab, creates a workspace per issue, and runs Codex in app-server mode until the issue leaves its active states. The agent opens pull requests itself and updates the tracker through tools that Symphony executes with host-side credentials. OpenAI describes it as an engineering preview for trusted environments.
ProPR puts the process in the product. You approve a plan before code starts, the agent runs in isolation, ProPR opens the pull request, a second model reviews it, and plain PR comments become follow-up commits. Task history, logs, and cost live in the web UI.
| Question | Symphony | ProPR |
|---|---|---|
| Open source and self-hosted | Yes, Apache 2.0 | Yes, Apache 2.0 |
| Coding agents | Codex app-server | Claude Code, Codex, Antigravity CLI, Mistral Vibe, OpenCode |
| Issue trackers | Linear, GitHub Issues, Jira Cloud, Asana, GitLab (Elixir reference implementation) | GitHub |
| Where the workflow is defined | A repository prompt the agent follows | ProPR orchestrates each step |
| Plan approval before code starts | Not part of the spec | Yes |
| Isolated execution per task | Workspace directory plus Codex sandbox settings | Isolated workspace per task |
| AI review and comment-driven follow-up commits | The workflow prompt tells Codex to address PR feedback; no built-in review or comment trigger | Built in: /review, /fix, Ultrafix, plain comments |
| Durable task history | Tracker and filesystem; scheduler state in memory | Tasks, logs, and cost per run |
| Operator interface | Optional status dashboard and JSON API | Web UI, desktop app, CLI, and MCP |
Verified November 2026: Symphony repository, SPEC.md, Elixir reference implementation README.