BossHunter
스마트 구직 에이전트(소스 공개, PolyForm 비상업적 라이선스; 상업적 이용은 별도 서면 허가 필요)
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
AI agents that onboard a new customer for NovaCRM's customer success team: from the sales rep's deal email to a Rocketlane project and a Slack channel, with a phone call to the rep to confirm the plan.
• Problem statement: the original assignment.
• Requirements analysis: how I understood the problem, my assumptions and decisions, and what I'd change for production.
When a sales rep closes a deal, they email the customer success inbox. The email doesn't say which plan the customer bought, so the system has to find out.README 전문 보기 ↗AI agents that onboard a new customer for NovaCRM's customer success team: from the sales rep's deal email to a Rocketlane project and a Slack channel, with a phone call to the rep to confirm the plan.
Live app: https://novacrm-handoff.vercel.app
Demo recording: Rocketlane FDE.mp4
When a sales rep closes a deal, they email the customer success inbox. The email doesn't say which plan the customer bought, so the system has to find out.
You can watch every step of every deal in the web app, with the reason the agent gave for each action. The plans are just the templates in Rocketlane, so adding a template there adds a plan option on the call.
apps/web Next.js app: UI, API routes, agents
apps/web/supabase/schema.sql Database tables (novacrm_*)
pnpm install
cp .env.example .env # fill it in
pnpm dev # http://localhost:3100
Run apps/web/supabase/schema.sql once in the Supabase SQL editor on a fresh project.
/ Overview: the pipeline, deals that need attention, and every email the inbox watcher has read/deals/[id] One onboarding as a thread: the AE's email, then each agent's steps, results and outcome/settings Inbox watching and integrations (Gmail, Rocketlane, Slack via Composio; Sarvam and OpenRouter keys)PUBLIC_APP_URL, then Settings → Turn on live watching. Composio's Gmail trigger posts each new message to /api/webhooks/composio.Either way, a handoff email creates a deal and starts the agents in the background, so closing the tab doesn't stop a run.
pnpm test # all tests, once
pnpm --filter @novacrm/web test:watch
51 Vitest tests in apps/web/test/, offline and in under a second. They run the real inbox, workflow, agent runtime, tools and Sarvam call logic. Only the edges are replaced (test/support/):
| File | Covers |
|---|---|
happy-path.test.ts | Enterprise email → parse → call offering Rocketlane's templates → Enterprise project → personalised channel, welcome, customer email; every step logged. Template accuracy for Enterprise (dedicated CSM), Growth (pooled) and Mid Market (a template no code knows about) |
validation.test.ts | Missing customer, contact or contact email: collected on the call, never emailed; an email spelled with spaces is cleaned; a detail not given or malformed stops for a person; no AE phone stops without a call |
edge-cases.test.ts | No answer (redial, then stop), unclear answer, hedged answer, dropped call, busy line; Rocketlane down (retry, stop, recover); existing open project; similar-but-different company; a plan that wasn't offered; options matched exactly; only offered templates count; taken Slack name |
entity-resolution.test.ts | customerKey; one deal per customer across repeat handoffs, name variants and contact email; the same message seen twice |