Guide
One repository, from first profile to merged pull request. Every step, what it produces, and what it costs in attention.
Teams adopting AI coding tools report the speed. They do not report the same gain further down the line. In a survey of 1,149 professional developers, positive impact fell away sharply between shipping faster and shipping better.
| Reported positive impact of AI-assisted code on… | Share of developers |
|---|---|
| Developer productivity | 89% |
| Time-to-market | 70% |
| Code quality | 58% |
| Technical debt | 47% |
| Defect rates | 39% |
| Vulnerability rates | 34% |
| Frequency of outages or incidents | 25% |
The gap between 89% and 25% is the problem this workflow addresses. Two more figures from the same study explain why it persists.
do not fully trust that AI-generated code is functionally correct.
always check AI-assisted code before committing it.
agree AI often produces code that looks correct but is not reliable.
Distrust is near universal. Checking is not. The difference is cost: a pass that returns forty comments is more expensive to read than the risk of shipping. Closing that gap means cutting the cost of checking, not raising the volume of it.
Hyrax is a hosted service. There is no CLI to install and nothing to self-host. Everything below happens in the web app and in GitHub.
Sign in with Google or an email code, which creates a workspace. Then install the Hyrax GitHub App on the repositories to be covered. That grants read access, and write access for submitting pull requests.
Discovery reads the repository and builds a structured profile of how it actually works. It runs automatically on the first repository connected. An audit cannot run until discovery has finished, because every later step reads this profile first.
Nothing is committed into the repository. The profile lives in the workspace.
The repository is cloned at a specific commit into isolated throwaway compute, analysed there, and the working copy is deleted when the job ends. Raw source is not retained.
Inside the run, fast deterministic pattern matching is combined with reasoning agents that read the code the way a careful reviewer would, across security, correctness, maintainability, performance, architecture and operations. Two depths are available on every plan: Standard as the everyday default, and Full for the complete catalog.
Every observation carries a stable reference such as HYRAX-42, a priority from P0 to P3, one of six categories, and the file locations it touches. Filter and sort by impact rather than reading top to bottom.
Dismissal is part of the workflow, not a failure of it. False positive, Won't fix and Out of scope stay closed and do not resurface. Stale, No longer found and Other can reappear if the issue is found again. Anything closed can be made active again.
Each fix is scoped to one observation, which keeps the resulting diff small, reviewable and traceable back to what prompted it. Four things happen in order.
The two failure paths differ deliberately. A change that fails tests still reaches a pull request by default, carrying a hyrax:verification-failed label and a warning, so the decision stays with a human. A change the diff review rejects outright is abandoned instead, no pull request is submitted, and the finding stays active. Both are adjustable per repository.
[HYRAX-42] fix(…): … on a hyrax/fix-… branch, easy to filter and trace. A finding closes as fixed only when that pull request merges. Closing it unmerged returns the finding to the active list. Where Linear is connected, a ticket is filed alongside and linked in both directions.Review is on by default for every repository connected, and can be turned off per repository. Each pull request gets a single review comment, updated in place as new commits arrive rather than accumulating, plus a Hyrax Review check run that can optionally be required for merge.
Point Claude Code, Cursor, Copilot or any MCP-capable agent at the Hyrax MCP server and it reads the discovered context and the active findings live, at the moment it needs them.
| What the agent needs to know | What it reads |
|---|---|
| What is this repository, and how is it built | Stack profile, domain summary and engineering principles, or the whole profile in one call |
| What is the canonical way to do this here | The repository's conventions and patterns, optionally narrowed to one area |
| What should I know before editing this file | The conventions and know-how that apply to that path |
| How is a common task done in this repository | The how-to guides, by title or in full |
| What has already been flagged here | Active findings and suggestions, including those touching a given file |
Revalidate re-checks existing observations against the latest commit and updates their status without generating new findings. It is a fast, low-cost correctness pass for confirming that work shipped.
A workable rhythm. Audit on a cadence, weekly or once per release, and after any significant refactor. Revalidate between audits to confirm fixes reached production. Re-run discovery after a new service, a restructured layout or a framework upgrade, and periodically to catch conventions drifting.
This workflow complements scanners and pull request reviewers rather than replacing them. Static analysis remains widely adopted, and its perceived value is rising rather than falling: 70% of developers in the same survey use static analysis, 57% already apply it to AI-assisted code, and expected value climbs from 60% today to 68% over the next two years.
The difference is the unit of work. A scanner returns a finding. A reviewer returns a comment. This loop returns a merged pull request, verified against the repository's own tests, with the architecture that justified it readable by every agent on the team.
Free includes a mini audit with five findings and five fixes per month, with no feature walls. Audit depth, revalidate, pull request review, commit mode and the MCP server are available on every plan.