Inspiration One of the biggest challenges for independent journalists in particular is finding funds, so they can do their journalism work independently. And it’s not easy to find the suitable open opportunities across hundreds of websites. That problem is one I have myself, so I decided to build an agent that can help not just me but all independent journalists.

What it does

The agent finds the suitable open opportunities autonomously : discovers open calls, verifies each one against its own source page, deduplicates, ranks on amount / feasibility / urgency, organizes and visualizes the result as html, then emails a digest.

How I built it

Gemini with Google Search grounding on Vertex AI, on Cloud Run, triggered by Cloud Scheduler, state in Firestore. Discovery is deliberately two calls — search grounding and a strict responseSchema do not reliably coexist, so one call researches and a second, tool-free call extracts, forbidden from adding anything the first did not say.

Challenges

Search grounding vs structured output. Filtering the one that mattered most rather than presenting everything.

What I learned

I think I learned two things: First, because journalists are very skeptical about AI tools they don’t use it much. However, they can use AI in a useful way, without sacrificing credibility or genuinity. And this agent “Onwan Grants” proves it.

Second, All that matters about agents is clarity, so I tried to sketch the workflow cleanly and concisely and deliver the needed context, to get meaningful results.

Prior work

Onwan, a published Google Workspace Marketplace add-on for journalists, is my pre-existing project. https://workspace.google.com/marketplace/app/onwan/970590417505

Onwan Grants is a separate repository built entirely within the submission period; no code was carried over from it.

Built With

Share this project:

Updates

Submission history