I direct AI coding agents, and I check their work.

I study computer science and math at the University of San Diego and build AI tools for my own underwater footage. GitHub counted 30,433 contributions from me in 2026, nearly all in private repos. Of the 14,493 commits on my Mac, 49.5% name Claude as a co-author.

Point at a day, or drag across them

Wed, Oct 28, 2026 1,040 GitHub contributions
1,386 commits on my Mac, 38% with Claude as co-author Reef 1,353 Social Lab 8 Kelp forest 25
2023 1 contribution
2024 141 contributions
2025 313 contributions

2026 30,433 GitHub contributions

JanFebMarAprMayJunJulAugSepOctMonWedFri

Tap a day, or drag across them

Wed, Oct 28, 2026 1,040 GitHub contributions
1,386 commits on my Mac, 38% with Claude as co-author Reef 1,353 Social Lab 8 Kelp forest 25
  1. Feb 20: COOPR’s first commit
  2. Jun 8: Reef’s first commit
  3. Jul 20: COOPR’s last commit
  4. Oct 5: Grade Lab’s busiest day
  5. Oct 19: Social Lab’s first commit
  6. Oct 26: Kelp forest’s first commit
GitHub contributions a day
  • None
  • 1–24
  • 25–99
  • 100–249
  • 250–499
  • 500+
Commits a day by project. Pick one to show only its days.
Show the numbers by month
GitHub contributions and commits by month, with commits split by project
MonthGitHubCommitsCOOPRReefGrade LabSocial LabKelp forestOther
2023 to 2025455–––––––
February547474474–––––
March4,0732,4191,996––––423
April6,5643,1493,127––––22
May4,2752,0721,934––––138
June2,8081,067807260––––
July1,9031,248403845––––
August359538–538––––
September408937–91225–––
October9,48911,690–9,1091,23036393850
November7223–728–143–
Total30,88823,8178,74111,7361,2633631,081633

GitHub’s count comes from its contribution calendar, private repos included. Commits count each repo once: from this Mac where the repo lives here, and from GitHub where it doesn’t. In 2026 I can trace 29,262 of GitHub’s 30,433: 19,503 commits, 9,521 pull requests and 238 issues. A merged pull request counts as both a pull request and a commit, so the two columns don’t add up.

Where the commits went

Five projects hold 23,184 of the 23,817 commits I can count this year. GitHub’s 30,433 also counts pull requests, so a merged change often counts twice.

Reef's editor: a clip list on the left, a vertical kelp shot in the viewer, an agent's reply on the right, and a three-shot timeline below.
Rebuild Reef’s editor with a three-shot Catalina reel and the agent’s reply. Put together from real Reef interface captures and Catalina footage, with a prepared conversation.

Reef

In progress

SwiftUI · Python · MCP

A native Mac editor that finds the moments in hours of dive footage, and lets an agent edit the same timeline I do.

Implemented
The SwiftUI app runs over a Python engine. Agents reach it through 176 MCP tools: 96 read-only and 80 that write, each one free (145), ask first (15) or behind a hard gate (16). Every edit goes through one writer that checks the project revision first.
In progress
No end-to-end run, from raw footage to a finished cut, has been demonstrated yet.
Worth a look
Telling the describer where a dive took place raised its accuracy from 38 to 44 of 52 clips I labelled by hand, as I recorded it on Oct 5. 11,736 commits on this Mac since Jun 8, 9,919 of them on main.
COOPR’s Docs view: a draft of a sample wreck-dive episode with a suggested rewrite to accept or drop, and a chat of clip options on the right.
Rebuild COOPR’s Docs view with sample content, not a screen capture.

COOPR

Unfinished

React · TypeScript · Python · MCP

A creator workspace where the conversation turns into the document. Most of my commits before Reef went here.

Exists in source
Content Brain, the backend: audio and motion diagnostics, CUSUM and PELT change detection, and evidence retrieval with fallbacks. Reef reads it through a read-only client.
Left unfinished
I moved on to Reef before the interface was wired to the live backend.
Worth a look
8,741 commits from Feb 20 to Jul 20, and a $3,000 award from the University of San Diego in 2026.
Grade Lab's review page showing the same garibaldi frame twice: flat, grey camera log on the left and a deep blue, saturated grade on the right.
Screenshot Grade Lab’s review page: the camera’s log footage beside the grade I picked. Catalina, Garibaldi.

Grade Lab

In progress

Python · DaVinci Resolve · MCP

Underwater color that remembers what I said. An agent grades my footage inside DaVinci Resolve, on real nodes I can open and keep editing.

Works today
The agent builds each grade on a 20-node Resolve template through an MCP server I wrote, and saves every verdict I give: 133 on 26 shots so far. 21 of the 26 shots reached a grade I praised within three versions.
In progress
Replay proof is built but hasn’t been exercised yet.
Worth a look
1,263 commits on this Mac since Sep 29. The busiest day was Oct 5.
Sample data The two example creators from the Social Lab README, scored by its rule. Lift is plays over the creator’s median; cautious lift divides by the most generous median the data allows.

Social Lab

In progress

Python · Node

Finds real public posts like the dive videos I make, then asks whether each one actually beat its creator’s usual.

Works today
Each post is scored against the same creator’s other posts: a robust z from the median and MAD, and a seeded 2,000-draw bootstrap. It refuses to score with fewer than 10 other posts, and an evidence ladder stops an agent from claiming a level it hasn’t reached. 2,928 Python and 364 Node tests passed at the Oct 28 gate.
Worth a look
Indexing 2,062 captions cost $0.0415048, exactly the quote, across 21 of 21 requests.
A low-poly sandstone sea cliff at golden hour, sea lions resting on the ledge, the sun setting over the water on the left.
Screenshot The kelp forest’s opening shot, rendered on a Mac mini’s GPU.

Kelp forest

Done

three.js

The interactive version of this portfolio: a three.js coast and kelp forest you swim through.

Works today
Live at henrycooper.dev and henryhcooper.com. 1,815 tests, with 13 known failures tracked in a file and none new.
Worth a look
Built in seven days by agents working in parallel: 1,081 commits, 99 branches and 77 worktrees. Separate judge agents marked each change PASS, REVISE or NOT VERIFIED, and frame timings came from a real GPU on a second Mac.

Also

  • Algorithm studiesDone

    Six pieces of math from Reef, Grade Lab and Social Lab, each a JavaScript port of the real function with its real constants, run on sample inputs.

  • lensDone

    My footage library CLI. It backs up and organizes dive footage, and proves every copy with an md5 fingerprint. At the Oct 5 scan it held 123 trips and 3.7 TB.

How I build

ChatGPT was debugging my intro CS assignments, so I put my time into AI, system design, algorithms and math instead. I added a math major and moved into ML and data science. Now I write the rules, agents write most of the code, and nothing counts until it is checked.

AGENTS.md

  • Claims about Reef must distinguish implemented architecture from a verified demonstration.
  • No fake metrics, product screenshots or contribution counts.
  • Keep real photography separate from generated concept art.
Three lines from this site’s AGENTS.md, the file every coding agent reads before it touches the repo.
  1. Each agent gets its own worktree

    The kelp forest ran 77 worktrees in a week. No agent can overwrite another’s half-finished work, and nothing merges until I say so.

    Instead of one shared checkout

  2. A separate agent judges the work

    A judge that didn’t write the change compares it against the target and answers PASS, REVISE or NOT VERIFIED. The builder’s confidence doesn’t count.

    Instead of the builder’s own report

  3. Only my words approve

    A passing check is not approval, and a message from another agent is never my yes. Grade Lab keeps my verdicts with timestamps.

    Instead of a passed check counting as approval

Photos

The footage all of this is for. I shoot on a Canon EOS R7 in an Ikelite 200DLM housing.

  • Looking up through a golden kelp canopy, small fish against blue water.Under the kelp canopy
  • A spotted harbor seal swimming straight at the camera in deep blue water.A harbor seal at the lens
  • A pale ray with a long tail gliding over yellow-green kelp.A ray over the kelp
  • A sea turtle feeding on red algae among the kelp, close to the camera.A sea turtle feeding
Real frames Stills from my dive footage.

Résumé

Expected Dec 2026

University of San Diego

B.S. Computer Science (AI and Data Science), with a second major in Mathematics.

May – Aug 2025

FICO · Analytic Science Intern

Built autoencoder, random-forest and feature-dropout models that flag unusual shifts in financial risk scores, explained with SHAP, on Spark and Hive pipelines. Co-built a credit-coaching assistant for FICO’s first intern hackathon, in a team of five.

Jun – Aug 2024

Fictiv · Computational Geometry Intern

Rebuilt the in-house 3D part viewer with camera animations that walk through manufacturability feedback, and improved OCR-based extraction of export-control data.

Jan – Jun 2024

University of San Diego · Teaching Assistant

Programming Abstractions: weekly labs for 20 students on data structures and algorithm design.

2026

COOPR · University of San Diego award

$3,000 from the University of San Diego for COOPR.

Email

GitHub LinkedIn