Interview Cockpit
A hiring copilot that rides along in every Google Meet interview.
Chrome extension that auto-launches when I join a Google Meet. Pulls the candidate's CV and Ashby interview guide, lets me take structured notes live, then turns them into scored, Ashby-ready feedback.
// architecture
Two pieces: a Manifest V3 Chrome extension and a Next.js web app. The extension's service worker watches for a Google Meet tab and, when I join, opens the cockpit at the web app with the meeting code (deduped per meeting). The app cross-references my Google Calendar to find the event and its matched Ashby candidate, then pulls the CV, interview guide and feedback form over the Ashby REST API. As I type raw notes, an API route sends them to Claude Sonnet to structure against the scorecard.
// how it works
- 1
Auto-launch
The MV3 extension's service worker listens on chrome.tabs.onUpdated; when a Meet tab with a meeting code loads, it opens (or focuses) the cockpit at the web app with ?meet=<code>, deduped per meeting.
- 2
Match the candidate
The app cross-references my Google Calendar to find the event whose Meet link matches the code — and the Ashby candidate attached to it.
- 3
Pull the context
Over the Ashby REST API it loads the candidate, application, interview guide, feedback-form definition and CV into one panel.
- 4
Structure notes live
I type raw notes during the call; an API route sends them to Claude Sonnet, which returns key points, strengths, concerns and a summary mapped to the scorecard.
- 5
Score & hand off
I set the 1–4 recommendation and the full, Ashby-ready feedback is assembled to paste in. Direct write-back to Ashby isn't built yet — today it's a clean copy-to-clipboard.
// tool calls
chrome.tabs.onUpdatedservice worker detects the Meet tab and opens the cockpit with the meeting codeGoogle Calendar APImatches the meeting code to the event + its Ashby candidateAshby REST APIcandidate + application + interview guide + feedback form + CVPOST /api/structure-notesraw notes → Claude Sonnet → structured scorecardcopy-to-clipboardexports the assembled feedback (Ashby write-back is on the roadmap)
// structured notes
// stack
// infrastructure
- ▸Extension: MV3 service worker
- ▸App: Next.js (NextAuth / Google OAuth)
- ▸Reads: Ashby API + Google Calendar
- ▸LLM: Claude Sonnet
- ▸Ashby write-back: not built (clipboard export)
// why it exists
Interviewing well means being present, not scribbling. This keeps the candidate's context in front of me and turns messy live notes into clean, consistent scorecards.