Catch the extra work before it eats your margin.
A fixed-fee project is running over and nobody logged the extra requests. Luminair compares the emails and hours with the signed contract and shows what was added.
Here is the signed scope for this project, the client emails, our call notes and the hours we logged. List every request that was not in the original scope, with the email it came from, and how many hours it took. Then draft a change order.
Claudefinds new requests in the emails and calls- Geminichecks whether each one was already covered by the contract
Codexadds up the hours and cost of the extra work
Project margin check
- 4 requests classified as out-of-scope since kickoff
- 1 already covered under the original clause 3.2
- Change order drafted, pending client sign-off
The project was fixed-fee. The hours are running ahead of plan. Somewhere in six weeks of emails and two client calls, the scope grew, request by small request, and nobody wrote it down as a change.
- Small “while you’re at it” requests never get logged as changes
- The budget conversation happens after the work, not before
- The team absorbs the cost because no one flagged it in time
Try it yourself in Luminair
Six steps. No setup beyond the AI plan you already have.
- 1
Install Luminair and sign in
Download Luminair and open it. Go to Settings → Models → Add account and sign in with an AI plan you already pay for, like Claude, ChatGPT or Gemini.
- 2
Make a folder for this job
In the sidebar, choose New folder… and name it “Project scope”. Then choose New session in this folder. Everything for this job stays together.
- 3
Bring the information in
You need: signed contract, client emails, call notes and hours logged. Connect Gmail, Fathom, Harvest and Asana in Settings → Connectors, or export the files and drag them into the chat.
- 4
Ask for the result
Paste this into the session, or say it in your own words:
Here is the signed scope for this project, the client emails, our call notes and the hours we logged. List every request that was not in the original scope, with the email it came from, and how many hours it took. Then draft a change order.
- 5
Get a second opinion
Pick a different model in the model picker and ask it to check the first answer:
Go through these extra requests one by one. Which were actually covered by the original contract?
- 6
Make it repeat
Open Flows → New and add the steps: Read this week's emails and hours → List requests outside the contract → Draft the change order. Choose when it runs, like every Monday at 09:00. Nothing is sent or changed until you approve it.
How it plays out
Start from the signed scope
Make a folder for the project and drop in the signed contract and any agreed changes. Connect Gmail, Fathom and Harvest in Settings → Connectors so the emails, calls and hours come in too.
Ask what was added since
Ask for a list of requests that go beyond the contract, each with the email or call it came from. Ask a second model to challenge which ones were really extra.
You decide, the client approves
Pick the items worth a change order and send the draft to the client. Once they sign, save the new scope in Journal so next week's check starts from it.
You stay in charge
A second model can flag a disagreement between the scope and the request; it cannot verify what was actually agreed on a call. That is your judgment.
The next “while you’re at it” gets caught in the week it happens, not in the margin report three months later.
Sign in with the AI plan you already have and start with this job.