Protein–protein interaction (PPI) inhibitor discovery is constrained by friction, not by a lack of information.
Scientists work across papers, assay tables, protein sequences, three-dimensional molecular structures, predictive models, and historical experiment results. These assets often use inconsistent identifiers, units, conditions, and assumptions. Before choosing the next wet-lab experiment, researchers must manually reconcile the evidence and decide which conclusions are trustworthy.
I built PPI.Studio to move beyond a generic chatbot that summarizes papers. Its central idea is Bring Your Own Friction (BYOF).
Researchers bring their own protein problem, papers, datasets, structures, and models. PPI.Studio coordinates the autonomous, multi-agent work required to transform those fragmented assets into traceable evidence, ranked experiments, and a learning loop driven by assay feedback.
My hackathon demonstration focuses on the MDM2–p53 oncogenic interaction complex from Protein Data Bank structure 1YCR. Its well-characterized hotspot triad on the p53 peptide provides a concrete biophysical pathway for demonstrating interface analysis, hypothesis generation, model evaluation, experiment ranking, and feedback-driven learning.
Binding-energy change:
ΔΔG_bind = ΔG_bind(mutant) − ΔG_bind(wild type)
Computed hotspot values:
- Trp23 (Tryptophan 23):
ΔΔG = 5.61 REU(Rosetta Energy Units) — deep-pocket cleft insertion involving Leu54, Leu57, Tyr67, and Ile99 - Phe19 (Phenylalanine 19):
ΔΔG = 3.87 REU— core hydrophobic-groove anchor involving Leu54, Leu57, Ile61, and Met62 - Leu26 (Leucine 26):
ΔΔG = 2.64 REU— pocket-cap stabilization involving Val75, Phe86, and Ile99 - Interface solvent-accessible surface area:
SASA_interface = 1,420.6 Ų
What it does
PPI.Studio is a governed, multi-agent operating system for PPI inhibitor discovery.
Its intended workflow is:
Messy scientific inputs → normalized evidence → leakage-aware modeling → ranked experiments → scientist review → assay feedback → continuous learning
PPI.Studio is designed to:
- Ingest papers, assay datasets, sequences, structures, and existing models
- Normalize entities, units, conditions, and experimental metadata
- Preserve provenance and artifact lineage in a Google Cloud Spanner TrueTime event store
- Apply real-time input-boundary guardrails using Google Gemma 2B (
gemma-2-2b-it) - Detect contradictory evidence, missing information, and potential data leakage
- Explain protein interfaces and identify interaction hotspots through three PyRosetta JSON payloads
- Coordinate a two-specialist fleet—ProteinAgent on port 8082 and DrugAgent on port 8081—through the Google Agent-to-Agent (A2A) protocol
- Generate, dock, and evaluate more than 4,200 candidate conformers, including:
- Nutlin-3: cis-imidazoline,
ΔG = −9.4 kcal/mol, 3/3 triad match - RG7112: substituted imidazoline,
ΔG = −10.1 kcal/mol, 3/3 triad match - Idasanutlin / RG7388: pyrrolidine-based,
ΔG = −10.8 kcal/mol,IC₅₀ = 6 nM - AMG-232 / KRT-232: piperidinone,
ΔG = −11.2 kcal/mol,Kd = 0.045 nM
- Nutlin-3: cis-imidazoline,
- Rank the next defensible experiments
- Record scientist approvals and experimental outcomes with World Wide Web Consortium (W3C) distributed trace context
- Learn from assay feedback when producing future recommendations
Scientists remain responsible for consequential decisions. The agents perform the ingestion, normalization, analysis, orchestration, and documentation surrounding those decisions.
MDM2–p53 is my first deep validation pathway, not the boundary of the product.
How I built it
I designed PPI.Studio for the Fortified Enterprise Fleet category as a network of specialized institutional agents rather than a monolithic assistant.
The platform is engineered as a 19-module Java 21 Long-Term Support (LTS) Maven reactor at ppi_studio/Code/Java/pom.xml, following a Google Cloud software-development-kits-and-services-first approach:
- Google Agent Development Kit (ADK) Core: autonomous reasoning agents,
LlmAgent,BaseAgent, and lifecycle hooks - Google ADK Agent-to-Agent (A2A) protocol: inter-agent JSON-RPC (JavaScript Object Notation Remote Procedure Call) coordination between ProteinAgent and DrugAgent
- Google GenAI Java SDK: multimodal reasoning with Gemini 2.5 and boundary-moderation guardrails with Gemma 2B (
gemma-2-2b-it) - Google Cloud Spanner: globally distributed TrueTime event store (
ppi_events_v1), Data Definition Language (DDL) provisioning, and change streams - Google Cloud SQL: PostgreSQL metadata catalog through the official Google Cloud SQL Socket Factory
- Google Cloud Pub/Sub: event-streaming bus and asynchronous push-webhook ingestion
- Google Auth Library: zero-trust Google service-account OAuth 2.0 (Open Authorization 2.0) token management
- Google Protocol Buffers: high-throughput binary serialization for Command Query Responsibility Segregation (CQRS) event payloads
Lightweight agent controllers are separated from heavy computation:
- Structural interface scanning, pharmacophore distance matrices, conformer docking, and graph workloads execute asynchronously through isolated jobs
- Pub/Sub events pass artifact identifiers and W3C trace contexts (
traceId,spanId) instead of placing large scientific datasets directly inside messages - The platform emits OpenTelemetry-compatible telemetry in OpenTelemetry Protocol (OTLP) JSON format with high-precision Unix nanoseconds (
timeUnixNano)
For the molecular experience, I grounded the MDM2–p53 visualization in the authentic 1YCR crystallographic structure using a Web Graphics Library (WebGL) interface built with Three.js and React 19. The workbench is deployed on Google Firebase Hosting at https://ppi-workbench.web.app and https://ppi.studio.
Challenges I ran into
The largest challenge was scope. PPI.Studio represents a broad, closed-loop discovery system, but the hackathon requires one concise and undeniable demonstration. The MDM2–p53 workflow must prove the larger architecture without making the product appear limited to one target.
Scientific reliability was another major challenge. The system must distinguish published evidence from inference, preserve experimental conditions, expose uncertainty, detect train/test leakage, and avoid presenting generated hypotheses as experimentally validated discoveries. I addressed this by requiring thermodynamic validation through ΔΔG energy matrices rather than relying on ungrounded large-language-model output.
I also had to ensure that the multi-agent architecture was justified. Every specialist needs a distinct responsibility, scoped identity, durable state, observable execution, and a failure-recovery strategy. Giving several prompts different agent names would not solve the underlying scientific problem.
Finally, I had to implement real-time safety-boundary moderation with Gemma 2B without rejecting valid chemical names or complex biological pathway descriptions, while maintaining constructor purity—zero new allocations inside constructors—across the 19-module Java platform.
Accomplishments I’m proud of
I’m proud that PPI.Studio has a clear product thesis beyond “Artificial Intelligence for drug discovery.”
Bring Your Own Friction connects the hackathon mandate directly to a real scientific workflow: researchers bring their own papers, datasets, models, and unresolved decisions.
I also established an end-to-end loop before narrowing the implementation:
Evidence → models → experiment ranking → scientist approval → assay feedback
Key concrete milestones include:
- 24/7 live cloud deployment: API Gateway and specialist agents running continuously on Google Cloud Run at https://ppi-studio-api-942431888403.us-central1.run.app, with the workbench on Firebase at https://ppi-workbench.web.app and https://ppi.studio
- Google SDK alignment: eight official Google software development kits and services integrated natively
- Hackathon bonus integrations: +0.6 total multiplier from Gemma Open Models (+0.2), a technical Devpost publication (+0.2), and a public broadcast on X (+0.2)
- Real-time OTLP telemetry inspection: an interactive interface with formatted structured cards and expandable raw OpenTelemetry JSON drawers
- Authentic biophysical output: grounded in three PyRosetta JSON payloads—
hotspot_color_mapping.json,interface_metrics.json, andprotein_structure.json
What I learned
I learned that an agent is not defined by conversation. It is defined by its ability to make bounded decisions, invoke tools, modify state, coordinate work through protocols such as Google A2A, recover from failures, and produce inspectable results.
I learned that heavy scientific computation should not run inside agent controllers. Controllers should manage goals, state, policy, and delegation, while isolated compute performs scanning, docking, simulation, and graph processing.
I also learned that the long-term moat is not a single model. It is the governed learning loop created when an organization’s private papers, datasets, models, decisions, and assay outcomes become connected over time in a globally consistent event store such as Google Cloud Spanner TrueTime.
What’s next for PPI.Studio
My immediate goal is to complete the MDM2–p53 workflow as a live, end-to-end demonstration.
That means connecting user-provided evidence to interface analysis, hotspot identification, model evaluation, ranked experimental recommendations, scientist approval, and assay feedback. I deployed the agent services on Google Cloud, made their execution observable through OTLP JSON telemetry feeds, and demonstrated the security and persistent-state capabilities required by the Fortified Enterprise Fleet category.
After the hackathon, I want to validate the system with additional PPI targets, including KRAS–RAF, BCL-2/BAX, and PD-1/PD-L1, using real researcher-owned evidence. My ultimate goal is not to replace scientific judgment, but to make that judgment faster, more traceable, and easier to act upon.
Built With
- adk2
- java
- spanner
Log in or sign up for Devpost to join the conversation.