Inspiration
Construction sites generate important information all day, but most of it arrives through short calls, WhatsApp messages, photos, and voice notes.
A foreman might say that blockwork is finished, the electrician did not show up, cement is running low, and plastering starts tomorrow. That update takes a few seconds to send, but someone still has to update the schedule, record the blocker, check material needs, prepare a request, update the daily report, and make sure the right person follows up.
We wanted to build something that could take one ordinary site update and turn it into useful project action without giving an AI unlimited authority over the project.
What it does
OG Foreman turns everyday construction-site updates into coordinated project action.
A foreman can send a text update, voice note, or site photo. OG understands what happened, connects it to the existing project plan, and updates the parts of the project that can safely be updated automatically.
It can:
- update task progress
- record blockers and delays
- track material stock
- detect upcoming shortages
- prepare material requests
- update the daily site report
- create follow-up actions
- surface decisions that need a manager
When an action could commit money or make another consequential decision, OG stops and asks an authorized person to approve it.
In our demo, a foreman reports that first-floor blockwork is complete, the electrician did not arrive, cement has dropped to 10 bags, and plastering begins tomorrow.
From that one update, OG marks the blockwork complete, records the electrician as a blocker, checks the upcoming plastering work, detects a 90-bag cement shortage, prepares a material request, updates the daily report, and asks the project manager for approval before anything is purchased.
How we built it
We built OG Foreman as an event-driven agent using Google ADK and Gemini.
Gemini interprets the site's text, voice, and photo updates and turns them into structured project information. Google ADK coordinates the workflow and decides which project tools need to run.
The agent does not write directly to the project database. Typed tools handle changes such as updating a task, recording a blocker, changing material stock, or creating a request.
Firestore stores the project state, while the web app is built with Next.js and the backend runs on FastAPI and Google Cloud Run.
For actions such as material purchases, OG creates an approval and pauses. Once an authorized manager approves or rejects it, the same workflow continues from where it stopped.
Challenges we ran into
The hardest problem was making sure OG understood what a foreman actually meant without turning uncertain language into incorrect project updates.
Small wording differences matter a lot on a construction site. For example, "the electrician came" and "the electrician did not come" must lead to completely different actions.
We added structured extraction, project-aware entity matching, confidence checks, and clarification when OG does not have enough evidence to act safely.
Approvals were another challenge. We wanted the agent to stop for a human decision without losing the work it had already completed or repeating actions when the workflow resumed.
We also had to make retries safe so that the same site update could never accidentally create duplicate material requests, blockers, reports, or notifications.
Accomplishments we're proud of
The part we're most proud of is that OG Foreman does more than summarize a site update.
One short update can change task progress, record a blocker, update material inventory, detect a shortage, prepare an approval, refresh the daily report, and create follow-up work.
At the same time, OG has clear limits. It can coordinate routine project work, but it cannot silently make consequential decisions such as committing money.
We also built the entire workflow on real cloud infrastructure, with persistent project state, authenticated users, multimodal site updates, approval continuation, and an activity history showing what OG changed and why.
What we learned
The biggest lesson was that useful agents need responsibility, not unlimited autonomy.
OG Foreman became much more useful when we clearly separated the work it could safely perform from the decisions that should remain with a human.
We also learned that construction AI has to understand context. A good agent cannot treat every message as an isolated prompt. It needs to know the project, the current tasks, available materials, dependencies, blockers, and what happened before.
Finally, reliability matters as much as intelligence. If an agent repeats a purchase request, loses an approval, or changes the wrong task, users will stop trusting it very quickly.
What's next for OG Foreman
Next, we're turning OG Foreman into a SaaS product for contractors and construction teams.
Companies will be able to create projects, invite their site teams, upload schedules and material plans, and use OG as the coordination layer between what happens on site and what project managers need to act on.
We'll add multi-company workspaces, subscriptions, project templates, team roles, integrations, and a mobile-first experience for workers on site.
The long-term goal is simple: a foreman should be able to report what happened once, and OG Foreman should make sure the project reflects reality and the right people know what needs to happen next.
Built With
- agy
- fastapi
- gemini
- next.js
- pydantic
- python
- react
- typescript
Log in or sign up for Devpost to join the conversation.