Inspiration

Bug-bounty and mobile-security hunts waste expensive model calls on spray commands and Instant-PARK packages. Gatekeeper is a refuse-first agent: local GO/PARK gates run before any cloud call, so Nebius Token Factory / NVIDIA Nemotron spend only on named hypotheses.

What it does

  • Local gates (gates.py): eligibility, Instant PARK, anti-spray — no LLM.
  • Optional Tavily grounding (tavily.py) in required mode for mechanism-relevant citations.
  • Optional Nemotron triage (nemotron.py) on Nebius Token Factory (nvidia/nemotron-3-super-120b-a12b).
  • Fail-closed without API keys (BLOCKED_INFRA). Offline CI + scripts/public_test.sh need no secrets.

How we built it

Python package + CLI. Public evidence for judges (see docs/REVIEWER_PACKET.md):

  • Start here: JUDGE_START_HERE.md on tip
  • Documented Tavily error (name collision FAIL 0/3): evidence/live/20260903T075935Z/ and 20260903T070111Z/ — AOSP/GKE “Gatekeeper”, not the synthetic Android mechanism
  • Citation-relevance PASS (3/3): evidence/live/20260903T102852Z/ — android.webkit.WebView / addJavascriptInterface, includes developer.android.com
  • Green Actions public-test on tip SHA

Challenges

Keeping retrieval honest: a synthetic package named gatekeeper collided with AOSP/GKE “Gatekeeper” in Tavily. We published the FAIL directories as error evidence, then corrected with a WebView fixture. Separating fail-closed demo video from live Token Factory JSON so judges are not misled.

What's next

Track: Best Apps and Agents (Personal AI memory/always-on is not demonstrated). Optional: shorter terminal demo that shows live Token Factory JSON on camera. Do not treat the current YouTube as a live Nemotron PASS — it shows fail-closed gates when keys are unset.

Built With

  • github-actions
  • hermes-agent
  • nebius-token-factory
  • nvidia-nemotron
  • python
  • tavily
Share this project:

Updates

Submission history