Back to writing

Nous Research: my code merged fifteen times into Hermes Agent, one review of Bot Screen

Hermes Agent, Nous Research’s agent software, runs the agents of the owners I equip. When something is missing for them, I fix it. From April to September 2026, maintainers merged my code fifteen times: 22 commits, my name kept. In September, at Teknium’s invitation, I reviewed Bot Screen, which lets a person take the agent back: five problems reproduced, then fixed before the merge.

Context

Hermes Agent is Nous Research’s agent software. I use it for a fleet of agents built for owners who do not write software. The gaps I fix come from that use: the xAI provider, voice, image, reasoning effort, file delivery, context length.

None of my pull requests was merged as opened. Maintainers take them up again: cherry-pick, rebase, or salvage, with the author kept in the Git history. The useful count is elsewhere: the merged pull requests that contain my commits.

The survey of 27 September 2026 examined 114 pull requests. It counts 15 merged with my code, drawn from 16 of mine, and 22 commits of which I am the author on the main branch. I had opened 68: 49 closed, 19 still open that day. As of 28 September, no new merge; four pull requests opened on 27 September, after the survey, are waiting and are not integrations.

Nous Research is not a client. I have worked with the teams at Nous Research, in the sense of these merges and of this review.

What was done

The fifteen merges, from the first to the last. The date is the merge date, in UTC. The title is shortened. Each link is public.

PRMergedTitle
#56046 AprilxAI prompt caching
#709310 AprilGrok context lengths
#737210 AprilNative xAI provider
#992314 AprilxAI provider prefix
#1447323 AprilGrok transcription
#1476523 AprilxAI image generation
#228079 MayReasoning effort to xAI
#2927720 MayRetired models, migration
#2937620 MayVoice pauses, opt-in
#3057922 MayGrok Build context
#370892 JuneVideo model routing
#7051024 Julyx_search and xurl routing
#7217026 JulyFile delivery
#8543413 Augustgrok-4.6 context cache
#10929512 SeptemberSummary without a 400 error

Merges by month

April 6, May 4, June 1, July 2, August 1, September 1. Source: GitHub API, survey of 27 September 2026. Merges by month

AprMayJunJulAugSep
Merged pull requests containing commits of which I am the author, by month of merge, from the table above.
Category
Detail
Count
Code merged, authorship kept
22 commits
15 merges
Idea taken up, without my code
idea or approach
4
Review that led to fixes
Bot Screen
1
Credit in other PR closures
same fix (5), Bot Screen (1)
6
Pull requests I opened
49 closed, 19 open
68

GitHub API, read only, 27 and 28 September 2026.

Count from the survey of 27 September 2026, over 114 pull requests examined. Recount of 28 September: no new merge. The 19 pull requests still open that day, and the four opened since, are not integrations.

Two integrations are partial, two others shared. Pull request 9923 does not keep two of the proposed changes. Pull request 14765 drops the image-edit path. Pull request 72170 brings six contributors together: one of my commits out of ten. Pull request 109295 counts me as the author of the fix, with a co-author, and tests by other people.

The bodies of these merges say so. “Cherry-picked from #5548 by @Julientalbot”. “Salvaged from #7050, contributor authorship preserved”. “Credit to @Julientalbot — authorship preserved via rebase-merge”. On pull request 70510, the maintainer writes that the routing doctrine “was right and most of it survived verbatim”.

Other pull requests take up an idea I had proposed, without my code. On 3 May, pull request 19132: “Your config.yaml integration approach was the foundation”. On 6 April, pull request 5595 applies a fix proposed in mine, without naming me. On 10 May, pull request 23291 takes the same intent by a simpler path. On 13 May, pull request 25126 lists me among the proposals it replaces. The video code comes from another author.

On 12 September, four competing pull requests for the same fix were closed naming me as first author: three with the wording “cherry-picked from #32777 by @Julientalbot, the first submitter”, the fourth with “credit goes there”. A fifth, which rebased mine, was closed the same day: “Julien Talbot stays the author”. The fix itself is the one in pull request 109295.

The review stands apart. Bot Screen shows the agent’s desktop inside Hermes Desktop, lets a person take control, then hand it back. Pull request 108914 was opened by Teknium on 12 September, and merged on 23 September. At his invitation, I reviewed the interaction between the person and the agent. The review is public the same day, at 19:14 UTC. Five cases, each with a regression probe. Three priority ones: the browser tools kept acting while the person held control; a capture crossed a full take-and-hand-back cycle; an abnormal disconnect handed control back to the agent mid-input. Two secondary ones: a stale image stayed displayed as live; one host’s control state was applied to another host, at the same profile path. Two design notes completed those five points. I wrote the limits of the review: no real trial of the remote desktop, no study with users.

What changed

Measured, on the repository. Teknium replied the same day, at 19:54 UTC: “Thanks @Julientalbot — every finding reproduced.” The pull request body gives that second round a section, under my name, and names the browser probe as my test: “your probe, red on the previous head”. The five fixes and the note on an unreadable lease were in place at the merge. The note on the cue shown during human action was addressed, then the mechanism was removed on 13 September. Waiting for in-flight actions before confirming the takeover was declined, by a maintainer decision. I am a reviewer of Bot Screen, not its author. I am one reviewer among eighteen named in the body, the first on the list.

The fifteen merges are in the history. Whether they are still in today’s code, after later refactors, has not been audited.

Limits

A follow-up PR proposed on 22 September, pull request 118788, takes up three of my commits on voice transcription, authorship kept. It was open on 28 September, unmerged. That is not an integration.

The pull requests opened on 21 September for Grok 4.7 are not counted either. A closing line, “your contribution is what shipped”, on one of my closed pull requests, is contradicted by the attribution: the code that shipped comes from another author. I do not use it.

The work on these pull requests is assisted by agents. The figure of 68 pull requests opened is not a figure of 68 contributions. The figure that holds is 15 merges, 22 commits, one review.

Sources

  • Survey of 27 September 2026: 114 pull requests examined, GitHub API, read only. Recount of 28 September: no new merge containing my commits.
  • Fifteen merges, links in the table above. Review: pull request 108914, review of 12 September, Teknium’s reply.
  • Credits without code taken up: pull requests 19132, 5595, 23291, 25126. Closures with credit: 61777, 95796, 104377, 109207, 108747, 109446.