🏰 Passion Intelligence — Devpost Submission

Inspiration

I kept seeing the same injustice in hiring: resumes reward pedigree, polish, and network—not evidence. Meanwhile, the people genuinely obsessed with a problem are already building toward it in public: GitHub repositories at 2 a.m., hackathon weekends on Devpost, technical writing on Dev.to and Medium, and architecture diagrams hidden inside project READMEs.

Nobody reads all that evidence because it is scattered across the internet, inconsistent, and often behind bot protection. Small startups feel this most: they cannot outspend large companies, so they need to find the few people who already care deeply about their mission.

Passion Intelligence turns that search into an auditable investigation. It does not ask, “Who has the best résumé?” It asks, “What does this person repeatedly choose to build, and does that genuine obsession match our mission?”

Agents that do this work cannot forget. If memory goes down, the investigation stops. That is why CockroachDB is the system of record—not a side query.

What it does

Passion Intelligence finds builders already working toward your problem—by evidence, not résumés.

You describe a mission, then choose one of two paths:

  • ✨ Free Discovery — provide no candidate names. The system searches GitHub from the mission’s technologies and domain, finds relevant builders who may never apply, and investigates them.
  • 🎯 Match Applicants — provide GitHub handles and optional links. The system auto-discovers each person’s repositories, technical writing, hackathons, portfolio, and contact trail.

A ten-agent society, powered by Grok 4.6 and backed by CockroachDB agentic memory on AWS, then:

  1. structures the company mission;
  2. discovers public, URL-backed evidence;
  3. analyzes repositories and architecture;
  4. reviews hackathon work;
  5. uses Grok 4.6 vision to inspect screenshots and diagrams;
  6. detects recurring passion signals;
  7. computes mission-to-evidence similarity with Amazon Bedrock Titan embeddings stored in a CockroachDB distributed VECTOR index;
  8. resolves competing signals with transparent weighted ranking;
  9. writes an evidence-cited recruiter narrative; and
  10. produces a captioned recommendation briefing stored on Amazon S3.

The results appear in a Next.js dashboard with live progress, ranked candidate cards, score explanations, visual portfolio analysis, source links, and a reusable talent pool. Every claim points to real evidence. Model-written prose cannot create evidence or override the deterministic ranking.

The impact: a self-taught engineer with years of relevant public work can outrank a polished résumé with no proof. It gives small teams a practical way to discover overlooked builders who are already committed to the problem—and the investigation remembers them the next time, globally, without a separate vector store.

How I built it

Grok 4.6

  • Grok 4.6 powers project understanding, repository analysis, passion interpretation, source verification, and evidence-grounded storytelling.
  • The same model reads real portfolio screenshots, product interfaces, and architecture diagrams (text + image input).
  • All agent calls use the SpaceXAI OpenAI-compatible API at https://api.x.ai/v1 with model grok-4.6.

Agentic memory: CockroachDB + AWS

Memory is the product. The ten agents write and read a shared, durable talent graph instead of re-scraping the same person on every run.

  • CockroachDB Cloud is the persistent memory layer: profiles, evidence, scores, full analyses, agent-run traces, and video metadata in one Postgres-compatible database.
  • CockroachDB Distributed Vector Indexing stores 512-dimensional embeddings as native VECTOR(512) with a cosine VECTOR INDEX (vector_cosine_ops). Similarity search stays in the same system of record as operational data—no pgvector extension, no extra vector database, no consistency gap.
  • CockroachDB Cloud Managed MCP Server (https://cockroachlabs.cloud/mcp) lets Cursor inspect cluster memory, schema, and queries with a single config snippet scoped to the hackathon cluster.
  • Amazon Bedrock Titan Text Embeddings V2 produces the vectors the similarity agent writes into CockroachDB.
  • Amazon S3 stores briefing MP4/SRT artifacts in a private bucket; playback uses presigned URLs.

If CockroachDB is unreachable, the API reports in-memory mode and the pipeline continues. It never pretends persistence exists.

Agent Society

The agents are separate specialists, not copies of one persona. They collaborate through a typed LangGraph state containing the mission, candidate profiles, evidence, visual analyses, passion fingerprints, embeddings, scores, narratives, and video metadata.

Repository and image reviews fan out concurrently. Later agents consume the structured work of earlier agents instead of repeatedly rereading raw inputs. Disagreement is resolved by a deterministic scoring core: semantic similarity, domain alignment, technology overlap, builder consistency, voluntary effort, innovation, and evidence quality contribute inspectable weights. The storytelling agent may explain a decision but cannot alter it.

Evidence collection

  • GitHub REST API — profiles, repository search, languages, READMEs, project activity, and portfolio images.
  • Dev.to API — public technical writing.
  • Hacker News Algolia API — Show HN and community activity.
  • Devpost, Kaggle, blogs, and personal sites — directly collected public project evidence.
  • Bright Data Web Unlocker — rendered access to bot-protected LinkedIn, Medium, and lablab.ai pages. Every collected item retains its source URL.

Product and infrastructure

  • FastAPI + Server-Sent Events streams the ten-agent execution to the UI.
  • Next.js 14 + Tailwind provides investigation, rankings, evidence, candidate maps, video, and talent-pool views.
  • CockroachDB Cloud is the always-on memory host (SQL + distributed VECTOR).
  • Amazon Bedrock supplies Titan embeddings for mission-to-evidence matching.
  • Amazon S3 is the artifact store for recommendation briefings.
  • Langfuse provides optional generation and agent observability.
  • ffmpeg + Pillow render the recommendation briefing and synchronized captions.

A complete live investigation passes through GitHub, Devpost, Hacker News, Kaggle, Bright Data/Medium, Grok 4.6 reasoning and vision, Bedrock embeddings, CockroachDB vector search, ranking, visual analysis, storytelling, and S3 video upload.

Where candidate data is stored

When CockroachDB is connected, data is written to purpose-specific tables:

  • candidate_profiles — identity, GitHub handle, location, email, and verified LinkedIn URL;
  • candidate_evidence — every discovered artifact with source, title, URL, description, technologies, domain tags, date, and confidence;
  • github_projects and hackathon_projects — deeper project-level analysis;
  • project_embeddings — Bedrock Titan vectors under a CockroachDB distributed VECTOR cosine index;
  • candidate_scores — transparent component scores, rank, explanation, and supporting evidence IDs;
  • analyses — the complete serialized analysis so shared links survive backend restarts;
  • agent_runs — status, latency, output summary, and trace ID for each agent;
  • video_reports — generated briefing metadata plus S3 URI.

The talent pool deduplicates people by GitHub handle and aggregates their evidence across analyses. Database failure never fabricates persistence: the API reports whether CockroachDB is connected, and the pipeline continues in memory.

Challenges I ran into

  • Keeping AI judgment auditable. An LLM can flatter any candidate. I inverted the design: source-backed evidence and deterministic math produce the ranking; Grok 4.6 explains the result within those constraints.
  • Messy public evidence. The same person may use different handles across GitHub, Devpost, Medium, and LinkedIn. The discovery layer follows verified profile links, deduplicates URLs, preserves provenance, and treats an empty source as empty rather than inventing a fallback.
  • Bot-protected sources. LinkedIn, Medium, and lablab.ai often return auth walls or anti-bot pages. Bright Data is isolated behind one adapter, with budget controls so paid derived sources are never queried accidentally.
  • Multimodal reliability. Portfolio images can be huge, duplicated, or irrelevant photos. The visual agent validates MIME types, caps downloads, deduplicates repository cards, retries transient failures, and filters people-centric images.
  • One memory plane, not two. Moving from hashed local vectors to 512-dimensional Titan embeddings meant replacing pgvector with CockroachDB native VECTOR(512) plus a distributed cosine index, so operational rows and semantic search cannot drift apart.
  • Cloud credential boundaries. AWS IAM keys administer S3/Bedrock; Grok 4.6 uses a separate SpaceXAI API key; CockroachDB uses its own SQL user and CA cert. All remain outside Git and are injected only at runtime.

Accomplishments that I’m proud of

  • A real ten-specialist agent society with shared state, parallel investigation, deterministic conflict resolution, and visible progress.
  • CockroachDB as production-grade agentic memory: state, embeddings, and transactional talent-graph data in one distributed database.
  • Grok 4.6 reasoning and vision plus Amazon Bedrock embeddings, without a separate vector store.
  • Bright Data successfully returning and parsing bot-protected evidence while retaining source URLs.
  • An anti-hallucination suite that rejects missing evidence IDs, nonexistent references, invented narrative projects, and evidence without URLs.
  • Free Discovery that finds relevant builders who never applied.
  • A persistent talent-graph design that reuses prior evidence instead of repeatedly scraping the same person.
  • A complete product—not a notebook—with a web dashboard, API, live agent progress, explainable scoring, visual analysis, and S3-backed video briefings.

What I learned

  • Agent specialization is most valuable when each role has a distinct contract and produces structured state for the next role—not when agents merely have different names.
  • The trustworthy division of labor is deterministic math for judgment and Grok 4.6 for interpretation, synthesis, and multimodal understanding.
  • Agents need memory that never goes down. Putting vectors beside operational data in CockroachDB is what makes the society useful on the next run, not only the current one.
  • Provenance must be attached at discovery time. Trying to reconstruct citations after generation is too late.
  • Graceful degradation is a production feature: a failed source should reduce evidence, not crash the investigation; a failed database should report in-memory mode, not silently claim persistence.
  • Provider swaps are easy at the chat API and hard everywhere else: embeddings, vector indexes, artifact storage, health reporting, and docs all had to move with the memory layer.

What’s next for Passion Intelligence

  • Measure agent-society quality and latency against a single-agent baseline.
  • Learn from recruiter feedback while expiring stale evidence and preserving an audit trail.
  • Add conference talks, package registries, papers, and opt-in community sources.
  • Build a “hidden gems” mode that explicitly boosts strong evidence relative to follower count, doubling down on evidence over privilege.
  • Add human approval checkpoints before outreach or any external action.

Built with (hackathon requirements)

CockroachDB tools (2+)

  • Distributed Vector Indexing — similarity agent KNN over project_embeddings
  • Cloud Managed MCP Server — Cursor connected to the Cloud cluster for schema and memory inspection

AWS services (1+)

  • Amazon Bedrock — Titan Text Embeddings V2 for mission-to-evidence vectors
  • Amazon S3 — private artifact bucket for briefing videos and captions

Built With

  • bedrock
  • cockroachdb
Share this project:

Updates

Submission history