Inspiration
Every real thing that appears in a movie script is a legal question. A brand on a table, a song playing, a real street, a real person's name. Before a scene can be filmed, someone has to find out who owns each one and clear it. Right now that is done by hand. It costs thousands of dollars and takes one to three weeks per script.
The research itself is mechanical: find the entity, find who owns it today, find the registration, write down the source. That is exactly the kind of work an agent should be able to do.
What it does
Clearance Agent reads a screenplay and finds every real-world entity in it: brands, songs, trademarks, real people, and real locations. For each one, it checks who currently holds the rights, using live search rather than relying on the model's memory, since rights holders and catalogues change hands over time.
For every entity the report shows:
- The current rights holder, with a source link
- A registration or serial number, where one exists
- What licence would be needed
- A RED, AMBER or GREEN risk rating with the reasoning stated
- Near-misses the tool considered and correctly ruled out
- If the sources do not clearly establish something, the report says so instead of guessing
Why the citations matter more than the answer
A tool that invents a rights holder is worse than no tool at all, because it produces confident text a production might act on. So nothing here is trusted on the model's own word.
After research, a separate verification pass checks every claim against the exact source that made it, not against a pool of everything found for that entity. If a claim cannot actually be found in its own cited source, it is dropped and marked as not established rather than kept. This is a programmatic check, not a second request asking the model to be more careful.
How it works
The pipeline is a real concurrent graph, built with the Google Agent Development Kit: parse the script, extract entities with Gemini, research each one at the same time using the Parallel Search API, verify every claim against its source, then build the report. Entities finish out of input order, which is the visible proof the concurrency is real rather than one call looping over a list.
One brand mentioned three different ways in a script is one clearance question, not three. A separate check after research groups those mentions into a single row, while keeping every original mention individually researched, verified, and fully visible underneath.
Challenges
The hardest problem was not the research, it was trust. Early versions sometimes pooled information across different sources for the same entity, which occasionally produced a confident answer that was simply wrong. The fix was to bind every claim to the one specific source that made it, and to verify each claim against only that source. A near-miss entity with a similar name to the real one is a common trap in clearance work, and the tool now surfaces those near-misses instead of hiding them.
Reliability under real cloud API limits was the other challenge. The concurrent research stage can hit rate limits on the underlying model provider. The pipeline now retries automatically on the specific errors that are safe to retry, without hiding real failures behind the retry.
What is next
Deploying the full concurrent graph itself, not just a simpler tool-calling agent, and extending the entity types to cover bands and other performing groups, which are currently a known gap.
Built With
- agent-development-kit
- api
- gemini
- google-adk
- google-cloud
- google-secret-manager
- parallel
- python
- search
- vertex-ai-agent-engine
Log in or sign up for Devpost to join the conversation.