Hosted Scan Preview

Paste a repo.
See what's breaking.

The hosted scan takes any public GitHub repository, scans it for cross-branch agent collisions in 60 seconds, and shows you what your CI is missing. Backend is live next week. Sample scan on react-email shown below.

Coming soon
Hosted scan launches the week of April 28. Want early access? Run the risk check and we'll reach out.
Sample scan on react-email
react-email has 245 cross-branch conflicts right now.
100% of them came from AI coding agent branches. They appeared because no tool was watching. Install the GitHub Action on your own repo and every future PR gets scanned automatically. Code never leaves your runners. Free during early access.
Install GitHub Action
curl -fsSL https://rosentic.com/install.sh | bash
Scan results
github.com/resend/react-email  ยท  27 branches  ยท  351 pairs  ยท  11.3s
245
conflicts found
245
agent-authored ๐Ÿค–
0
human-authored ๐Ÿ‘ค
100%
agent attribution
cursor/template-rendering-v2 ๐Ÿค– โ†” claude/component-refactor ๐Ÿค–
Function signature mismatch in packages/render/src/render.ts. Cursor branch changed render(component: ReactElement) to render(component: ReactElement, options: RenderOptions). Claude branch is still calling the outdated signature in 7 locations across the components directory.
cursor/tailwind-config ๐Ÿค– โ†” copilot/component-props ๐Ÿค–
Prop type collision in packages/tailwind/src/tailwind.tsx. Both agents added conflicting prop definitions for TailwindProps.config with incompatible shape. Cursor expects TailwindConfig, Copilot expects Partial<TailwindConfig>.
claude/email-preview-api ๐Ÿค– โ†” cursor/preview-server ๐Ÿค–
HTTP route drift in packages/preview/src/server.ts. Claude branch added required query param templateId to GET /api/preview. Four callers in the preview-server branch are still using the old route shape without the parameter.
cursor/render-async ๐Ÿค– โ†” main ๐Ÿ‘ค
Return type drift in packages/render/src/render-async.ts. Cursor branch changed renderAsync from returning Promise<string> to Promise<RenderResult>. Three consumers in main are destructuring the string return and would break on merge.
About this scan This is a real scan result from react-email, run using the Rosentic engine on April 10, 2026. 27 active branches were compared across 351 pairs using tree-sitter AST analysis. The 245 conflicts shown here are real structural incompatibilities detected between branches. 100% of them were authored by AI coding agents (Cursor, Claude, Copilot), which we verified through branch name patterns, commit author signatures, and Co-authored-by trailers. Full methodology and false-positive history โ†’