GitHub, because the repo already knows.
An admin connects GitHub once. Hatch reads commits, reviews and pull requests, so engineering output is read from the work rather than described in a meeting.
How it works.
Engineering is one of the few functions that leaves a complete record of itself. Hatch reads that record, including review work, which usually goes uncounted.
Connected once, then nobody thinks about it.
An admin connects GitHub
One admin authorises the org. Nothing is migrated and no engineer is asked to log anything.
Hatch starts reading
Hatch reads the work already happening in the tool. Nobody answers a form, nobody fills in a survey, and nothing gets migrated.
CREATE MATERIALIZED VIEW revenue_by_min AS SELECT date_trunc('minute', ts) AS minute, currency, sum(amount) AS revenue, count(*) AS payments FROM payments WHERE status = 'captured' GROUP BY 1, 2;
It joins the picture
The signal sits alongside everything else Hatch reads, including the agent layer, so who is performing and where capacity sits is visible without anyone reporting on it.
curl https://api.basalt.dev/v1/views/revenue_by_min?limit=5 \ -H "Authorization: Bearer $BASALT_TOKEN"
What you get.
What Hatch reads
Commits, pull requests and the review work around them.
Who turns it on
An admin, once. It then runs for everyone without anyone else doing anything.
Who it is for
Everyone in the company, through the same picture of performance and capacity.
What it does not ask for
No forms, no surveys, no migration. SOC 2 Type II, and customer data never trains models.
Find out what you actually have.
Thirty days, one named engineer, and a readout of what your team and your agents actually produced. $2,500, credited in full against your first year.
.png)