OSAgentOSAgent

For engineering leaders

See execution behind the status.

The status report is written on Friday by people who are optimistic on Friday. The execution record is written by the work itself. OSAgent connects the two — what your team said, what your team decided, and what your team actually did.

OSAgent doesn't run your team. It gives you the context to run it.

Who this is for

You read more status than code, and you are accountable for both.

  • You run several teams and you cannot personally verify a single date on the plan.
  • You get the summary, never the sequence — and the summary is where the risk gets rounded off.
  • You usually learn something slipped at the point where it is too late to help.

The problem

Status says on track. The pull request says otherwise.

A status update is a summary written by a person with an audience. It is not dishonest. It is compressed — and compression is where the risk hides.

Meanwhile the execution record is complete, honest and unreadable: hundreds of pull requests, six channels, a dozen threads, and nobody whose job is to read all of it.

You don't need another report. You need the two connected.

What gets reported

Written weekly, by a human, for an audience. Short by design. Optimistic by default. Correct on the day it was written.

What actually happened

Written continuously, by the work. Long. Unsummarised. Correct right now, and nobody has time to read it.

What it looks like

Illustration

The update, next to the record, with both sources attached.

Example content, not a customer workspace. Note the third row: “done” is often true and incomplete at the same time, and that is a different conversation than a slip.

osagent — said vs. actually happened

Said

Search rewrite is on track for the 14th.

weekly update · Sep 2

Record

The pull request that closes it has been open twelve days with unresolved review comments, and has had no commits since Aug 26.

PR #377 · #eng-search, 6 messages

Said

Blocked on infra.

standup · Sep 3

Record

The infrastructure change merged on Sep 1. What is actually blocking it is a decision nobody has made: which region to cut over first.

PR #349 · #platform, 3 messages

Said

Migration is done.

sprint review notes · Sep 4

Record

The migration merged, and two follow-up items opened the same day are still unassigned.

PR #362 · 2 open items

What changes for you

You lead from what happened, not from what was written about it.

Your 1:1s start from the record.

Not from a recap of the record. The half hour goes to unblocking instead of catching up.

You find the stuck thing on Tuesday.

Work that stopped moving is a state you can see, not a date you miss later.

“Why did this slip?” has an answer.

Not a theory — the sequence of events, with the thread and the pull request that carried each one.

You stop taxing the team for status.

The people doing the work do not write a second copy of it for you every week.

How it works

Connect the sources once. The link between them is the product.

1

Connect the tools the work already lives in.

Slack, GitHub, Discord, meeting transcripts, docs, uploads, URLs and notes. Read access, scoped to the repositories and channels you pick.

2

OSAgent links the conversation to the commit.

The thread where a change was agreed, the pull request that carried it, the review that held it up.

3

It flags where the two disagree.

A claim in a status update the execution record does not support, with both sides cited.

4

You decide what it means.

OSAgent surfaces it and stops. It never reassigns, comments, closes or pushes.

Observes → Connects → Explains → Recommends → You decide.

Why you can trust it

It reads your systems. It never modifies your work.

The first question every engineering leader asks is what this thing can do to their repositories. The answer is nothing.

It never modifies your engineering work.

No branches, no review comments, no status changes, no commits. GitHub access is read-only. If your team enables delivery, OSAgent can post a digest to a Slack channel you authorize — and nothing else. Connect a repository, disconnect it, and delete what it contributed.

It flags a gap. It does not judge a person.

A contradiction is a question worth asking, not a verdict. It arrives with both sources so you read the context before you act on it.

Confidence is shown, not buried.

An extraction OSAgent is unsure about is marked for review rather than stated as fact. Low confidence is a flag, never a silent guess.

Nothing runs on its own.

Recommendations wait for a human to accept them. There is no autonomous execution and no writing into your systems.

Point it at the sprint that went sideways.

Pick a slip you already understand, and see whether OSAgent finds the same sequence you had to dig out by hand — with the thread and the pull request attached. OSAgent is in a private pilot; workspaces are set up with our team, so a demo is the way in.

What's real today