All docs

PR Q&A

oh-my-pr includes a built-in PR question-answering system that lets you interrogate your pull requests using natural language.

Overview

Instead of manually reading through large diffs, you can ask questions like:

  • "What does this PR change?"
  • "Why did the tests fail?"
  • "What are the architectural implications of this change?"
  • "Does this PR introduce any security concerns?"

oh-my-pr queues the question as a durable background job and asks the configured local agent to answer from the PR context currently stored in the app.

How to Use

  1. Open a PR in the oh-my-pr dashboard.
  2. Navigate to the Q&A tab.
  3. Type your question and press Enter.

The agent will analyze the PR context and return a detailed answer within seconds.

What the Agent Sees

When answering a question, the agent receives:

  • PR metadata such as title, number, repository, branch, author, URL, status, and last check time.
  • Current test/lint pass/fail fields when known.
  • Feedback items stored on the PR, including status, decision, author, file, line, and a body excerpt.
  • The most recent 50 activity log entries for the PR.

The Q&A agent does not fetch the full diff, commit history, external docs, or issue trackers unless that information is already present in the stored PR context or logs.

Use Cases

Code Review Assistance

Ask the agent to summarize changes before you start reviewing:

"Summarize the key changes in this PR and flag anything that needs careful review."

Debugging Failed Checks

When CI fails, ask the agent to diagnose:

"The lint check is failing — what's causing it and how should it be fixed?"

Architecture Review

For larger PRs, get a high-level understanding:

"Does this PR change any public API surfaces? What are the breaking changes?"

Limitations

  • The agent only sees the PR context — it does not have access to external documentation or issue trackers.
  • Answers are generated by AI and should be verified for critical decisions.
  • Very large PRs (1000+ changed files) may exceed context limits.